変わりつつあるソフトウェア開発の価値観

http://www.biwa.ne.jp/~mmura/SoftwareDevelopment/twentyfirstcentury.html

第1回は、「建築」から「園芸」へメタファの遷移を論じる、興味深いエッセイとなっている。

1990年代に入り、新たなメタファが台頭することになってきました。 ソフトウェア開発というものは、コンクリートのような「無機物」を使ってものを組み立てる作業ではなく、もっと「有機的」なものを創造する作業であるというわけです。

ガーデニングを行う場合、庭師は庭の中で最も重要なところから手を入れていきます。 そして、周囲との調和を図りながら、少しずつその範囲を広げていくのです。 この際、庭の所有者との対話を絶やさないようにしながら、少しずつ微調整をしていきます。 ある植物が育ちすぎたのであれば、剪定したり、株分けしたりして周囲との調和を保つようにします。 また、ある植物がうまく育たない場合、庭としての全体的なバランスを崩さないようにしながら、日向に移動するなり、植え替えたりするのです。

これがホーティカルチャー(園芸学)のメタファです。 このメタファは、Andrew Hunt、David Thomasの著した『達人プログラマー』や、Kent Beckエクストリームプログラミング等、複数の人たちによって繰り返し提唱されています。 ソフトウェア開発というものは、今や建築学よりも園芸学というメタファの方がうまく説明できるのです。