書籍『デザインのためのデザイン』(2) [プログラマー現役続行]
以前、英語版を購入したのですが、積ん読状態になっていたのと、翻訳版が出たので日本語版で読んでいます。
物を作るほとんどの人間は、実装してみて初めて、アイデアが不完全で矛盾していることに気付く。したがって、書いたり、実験したり、練習したりすることは理論家にとって不可欠な訓練なのである。オブジェクト指向の世界においては、分析→設計→実装と順に行われたりしますが、それらを分業してしまうとウォータフォール開発になってしまいます。物作りという観点からは、すべての行程を経験する必要があります。したがって、いわゆるアーキテクトと呼ばれる人達は、分析・設計・実装・デバッグのすべてを経験している必要があります。それらの経験を踏まえて、システム全体のデザインを考えられるのがアーキテクトだと私は考えています。『デザインのためのデザイン』(5頁)
私自身の開発経験からのバイアスがかかっていると思いますが、実際に設計・コーディングしてデバッグまでをきちんとできない人が、上流だけを行い、分業してウォータフォール開発を行うことでプロジェクトが成功する確率はかなり低くなると思います。ここでの成功とは、プロジェクトが中止にならなくても、技術的負債を残さないことも含めています。
ウォータフォールモデルは間違っており有害である。私たちはこのモデルから脱却しなければならない。実際のプログラミングやデバッグを伴うソフトウェア開発経験を若い頃に行い、それらの経験に基づいて、さらに上流からのシステムの設計を行う必要があります。そして、上流工程行っているからといって、プログラミングやデバッグに関心がないということはありえなく、むしろ、実際の開発での問題を未然に防止するための施策を実施したり、必要とあれば開発者を手伝ってコードレビューやデバッグまでできたりする必要があります。『デザインのためのデザイン』(34頁)
2011-01-03 08:06
nice!(0)
コメント(0)
トラックバック(0)
コメント 0