B.F.Webster 著「オブジェクト指向開発の落とし穴」。
何か頓馬な状況に出くわした時に、しばしば、この本を読み返します。
本書が必要な理由
オブジェクト指向開発(OOD)は、ソフトウェア工学における大いなる進歩であると喧伝されてきた。この手法は、開発時間の短縮やコードの再利用などを約束し、採用した会社に競争力を与えると言われている。確かにこうしたOODの効用や利点は真実であるが、誇大な宣伝は、役員や管理職に過大な期待をさせてしまっている。
(中略)
2.7 オブジェクト技術に社運を賭ける
次のような情景を考えて欲しい。会社の幹部社員が集まって、情報の生産性を向上させる革命的な技術についてのプレゼンテーションを受ける。(中略)会社を根底から変え、明るい未来を保証する技術が次のように紹介される。「構造化開発手法が、まさにそれなのです!」。(中略)構造化開発でもうまくいかない会社が、どうやったらOODでうまくやれると言うのだろう?(中略)会社に利益をもたらすのはテクニックではなく、何をなぜ行うのかを知っている人が作った、賢くかつ目的に合ったアプリケーションなのである。オブジェクト技術を導入したとたんにすべてがよくなるという考えは、ほとんど迷信と言えるほど不合理である。
前兆
管理職からの非現実的な期待が出るようになる。営業部員が、出荷スケジュールと昨日のリストを課題に約束してしまう。技術管理職が、オブジェクト技術こそは最終兵器だと見なすようになる。
予防法
社運をオブジェクト技術にではなく、人に賭ける。これこそ、政治というものではなかろうか?
「1.3 オブジェクト技術がすべての問題を解決すると思う」、「1.4 オブジェクト技術が成熟したものだと考える」、「1.5 宣伝文句を概念と混同する」、「2.3 技術を過大に売り込む」、「2.4 オブジェクト指向開発を崇める」等々。
「オブジェクト指向開発」を「ソフトウェア開発自動化」や「アジャイル」と読み替えてもほぼ通用する点が、この本の偉大なところです。