本ページはアフィリエイトプログラムによる収益を得ています
Amazon.co.jp ・本 (220ページ) / ISBN・EAN: 9784000076937
感想・レビュー・書評
-
213ページ(文献リストを除くと191ページ)と、コンパクトにまとめられた本なのですが、例のLondon大学の有名な6コママンガ(出典は、University of London Computer Center Newsletter, No. 53, March 1973だそうです)から、今で言うところのペアプログラミングまで、様々なテーマを扱っています。
ペアプロについては、
ふたりのプログラマが協調してひとつのプログラムを書くというやりかたは,単独のプログラマが個別にプログラムを書くよりも,ずっとよい結果を得るらしいということも分かった.私はこれを協同プログラミング(co-operative programming)とよび,推奨している.
……略
しかもふたりの能力が同じくらいでも,かなり差があっても,協調していくことができる.これが2という数の重要な点で,たとえ力が劣っていても,仲間の存在はプラスになるため,互いに協調していける.これが3人のグループでは,力のある者同士は競い合い,力のない者はとり残されてしまう傾向があるように,私は日頃の学生たちの観察から推測している.このあたりは,もっといろいろな状況での実験を行うべきであろう.
と書いてありました。20年以上も前の本なのに、すごい!
また、本書には、今は、『人月の神話』に載っているけれど、『ソフトウェア開発の神話』の方には載っていないブルックスの「銀の弾丸は存在しない」という主張の要約が載っています。 折角なので、ちょっと長いけど書き写してしまおう。
1) 複雑さ(complexity)
ソフトウェアは規模が巨大であるのに、どこも同じになっていない。しかもそれを実行するコンピュータ自体が複雑な機械である。同じことの繰り返しは生じない。数学あるいは物理モデルを利用することは、複雑さが偶発的であればうまくいくが、複雑さが本質的な場合はうまくいかない。
2) 適合性(conformity)
物理の世界は神が創造したものであるから、均一原理(unifying principle)がある。ソフトウェアは複数の人間たちが創造したものであるから、そうはいかず、乱脈きわまりない。
3) 変更性(changeability)
ソフトウェアは周りから常に変更の圧力を受けている。他の工業製品はモデル変更や機能追加があっても、それはその後出荷する製品に対してであり、すでに市場に出て運用されているものに対してではない。それに比べてソフトウェアは運用中のものに変更を加える。ソフトウェアはシステムの機能そのものであり、ソフトウェアは原理的には変更可能であるから、変更の圧力を受けることはしかたない。またソフトウェアの寿命は作成時の見込みを大幅に上回ることが多く、これも変更要求の原因になる。
4) 不可視性(invisibility)
ソフトウェアは実体を目で見ることができない。目で見ることは、対象を理解する上で大きい要素である。ソフトウェアを図的に表現する試みは成功していない。
ブルックスが挙げた「ソフトウェアの概念的構造(conceptual structure)に基づくソフトウェア工学の問題点」は、20年経った今も、それほど解決されていないなぁと思いました。詳細をみるコメント0件をすべて表示
有沢誠の作品
本棚登録 :
感想 :
