改善型開発について思うこと (^o^)

改善型開発 〜 システムを作るのではなく育てるという発想

確かに他の業界には学ぶべきところは沢山あるが、そろそろソフトウェアの開発を、他の業界のアナロジーで考えるのではなく、正面から取り組んだ開発モデルというのもあって良いのではないだろうか。

この一文に非常に感銘を受けた。製造業や建築業などとソフトウェア開発では基本的に生産するものの性質が異なる。ハードは一度作ってしまうと容易に変更はできないがソフトウェアならそれが可能だ。ソフトウェア開発で製造工程といえばコンパイルとインストールパッケージの生成のみであとは全て設計。この設計工程の改善に製造工程の改善のノウハウを当てはめているところに既にずれが生じているのかもしれない。他の業界では設計にコストをかけて改善してモデルを成熟させ、後は製造工程で生産するのみである。ソフトウェア開発でもこれは同じ。開発はすべて設計の改善で生産は一瞬。生産はビルドプロセスで既に自動化されてるわけだし。だからよくある話としてソフトウェアの開発を工場における製品生産のメタファ等で語ることは正直どこか違うのではと感じている。生産ではなく製品設計の改善プロセスにフォーカスを当ててそのノウハウをソフトウェア開発に取り込んでいるのであれば納得するんだけど。

また、XPやってると最初のイテレーションだけが開発で後続のイテレーションは保守だと常々思っているので、 id:kuranukiさんの改善型開発の発想は時期早々だとは思わない。