一周巡ってピープルウェア再論
いまでこそ「ピープルウェア」はソフトウェア開発における重要位置を占めているが、著者であるトム・デマルコはがちがちの管理主義者であったことを忘れてはいけない。彼が管理しようとしていたのは、ソフトウェア開発の標準化である。設計書に書かれていたものをコードに正しく書き写すことができれば、プログラマは穴を掘るようにコードを量産できると信じていたのである。
若きデマルコ少尉が言う。
「みなさん、ソフトウェア開発は塹壕堀のようなものです。この計画的な塹壕の道筋を正確に掘り進めれば、最終的に目的地に到達することができます。目的は敵地です。敵地の裏までに塹壕を掘り続け、そして一気に攻め込みます。私の設計図は完璧です。あとは、みなさんが計画通りに塹壕を掘り進めていければいいのです」
プログラマ兵隊たちは、設計図を渡された。図には掘り進める道筋と、敵地が書いてあった。ときには敵の砲台をよけ、敵の歩哨の目をかいくぐるための時間帯までが書いてあった。実に正確に記述してある。掘ったあとの土を運ぶ道筋、その人数、道具まで指定されている。確かに、これだとうまくいきそうだ。まずは、シャベルを手に取らねばいけない。
兵士は、デマルコ少尉に尋ねた。
「少尉殿、塹壕を掘るのに最適なシャベルはどれでしょうか?」
「いや、残念ながら、シャベルは用意されていない」
「え?」
いきなり頓挫である。しかし、戦闘は一刻の猶予もない。シャベルがなければ、スコップでやればいいじゃないですか? と言ったか言わなかったがそれは忘れてしまったが、デマルコ少尉は、小屋に立てかけてあるスコップを指差した。
「あそこにあるスコップ使え」
そう、地域によってはシャベルもスコップも同じだし、実は大きいほうがシャベルであったり、小さい植木鉢に使うようなものがスコップであったりする。しかし、逆の場合もある。結局のところ、兵站としてシャベルを用意するところをスコップを用意してしまったのかもしれない。つまりは用語の違いだ。チーム内では用語の統一は重要なのだが、それを怠ってしまったらしい。
しかし、代替品があるだけマシだ。しかたがない、そこのスコップを使おう。
「わかりました。少尉殿」
兵隊たちは、スコップを使って掘り進めて行った。しかし、小さいスコップではなかなか前に進まない。スコップは人数分あったものの、掘り進めるスピードは遅かった。彼らは、デマルコ少尉に報告をした。
「少尉、スコップではなかなか進みません。進捗が遅れがちです」
「いや、計画通りに進めるのだ。設計図通りに進めなければ、成功はおぼつかないぞ」
「しかし・・・」
「いや、我慢しろ」
デマルコ少尉は、設計図通りに進めることを求めた。なぜならば、設計図通りに進めることがプロジェクトを成功させる唯一の方法であり、逆に設計図通りに進めないから失敗するのだとデマルコ少尉は信じていたのだ。
兵士たちは、小さいスコップを使いながら、2交代制で必死に掘り進めた。倍の時間をかければなんとか計画通りに進めることができた。
しかし、目の前に敵の歩哨が立っていた。
幸いにして、歩哨はこちらに気付かない。しかし、設計図によれば、歩哨を回避して塹壕を進めることができた筈なのに、なぜ、ここに敵の歩哨がいるのだろうか? 兵士たちは不思議がった。当然のことながら、デマルコ少尉の不思議がった。
「仕方がない。敵の歩哨を無いものとして進めたまえ」
兵士たちは、歩哨を無視して掘り進める...ことはできなかったので、歩哨を拉致するしかなかった。幸いにして敵の歩哨は、派遣社員だったらしく、3倍の給料を提示するとあっさりと応じてくれた。
「ちょっと、向こうの方に歩哨の場所を移動してくれないか?」
「わかった」
予算がはみ出してしまったがしかたがない。塹壕掘りにはちょっとした不都合がつきものだ。設計図通りに進めることが重要であるので、多少の予算の超過は仕方がないところだろう。
あいかわらず、小さなスコップで塹壕を掘り進めるの時間がかかってしまったが、そこは兵士たちの気概である。2交代制を続けながら、眠気を振り払いながら頑張って塹壕を掘り進めた。
塹壕を掘り進めると、雨が降って来た。この地はあまり雨が降らないことで有名なので、デマルコ少尉の設計図には雨の計画は入っていなかった。すべて晴れで計画を立てていて、実に順調に日に数メートルずつという数値が記述してあった。しかし、雨が降ると事情は異なる。土砂が崩れて塹壕に入って来た。雨水を集めた小さな小川から水が入っていることもあった。これを兵士たちは水を掻き出さねばならない。
「少尉殿、水が入ってくるので、これを対策せねばなりません。塹壕を掘り進める前に、水対策をしなければいけません」
「いや、計画通りに進めるのだ。この設計書には水害の対策は入っていない。水害の対策をしてしまったら計画が遅れてすべてが台無しになってしまう。まずは、塹壕を掘り進めるのが先決だ。塹壕を掘り進めよ」
「しかし・・・」
兵士たちは、昼夜を通じて水を掻き出しながら作業を進めた。雨水が入ってくると同時に塹壕も掘り進めなければいけない。しかも小さなスコップで進めないといけないので、倍ぐらいの時間がかかってしまう。さらに、雨水の対策をしなければいけない。
しかし、そこは兵隊の根性である。兵隊たちは厳しい訓練と強い意志をもっていたので、雨水対策も含めて塹壕を掘り進めた。掘った土を壁面に練り上げて防水対策をする工夫もこなした。三人ひと組となり、塹壕を掘り進める担当、土を壁面に練り上げる担当、雨水を掻き出す担当と分担を行った。
つらい昼夜の仕事ではあるが、皆の意志は高かった。必ずや設計図通りに塹壕を掘り進めて、敵地を攻略しようという強い意志があった。
いつしか雨もやみ、兵士たちは順調に塹壕を掘り進めた。少しずつであるが塹壕を掘り進めるスピードが上がっていったのである。小さなスコップを回転させて、連続して掘り進める機械を発明した兵士がいた。歯車を回して次々に土を掻き出すベルトコンベアを作る兵士もいた。小型のエンジンを持ち出して、シャベルを回転させる機械を自動化して、少しでも休息ができるように創意工夫をこらしたのである。
必要は発明の母である。兵士たちの2交代制は少しずつマシになり、塹壕堀りのスピードも上がった。雨水対策で多少遅れていたものの、計画通り設計図通りに日程が進み始めたのである。
デマルコ少尉は、設計図を見ながらうなずいた。
「よし、順調だ。設計図通りに進んでいる。皆、引き続き頑張ってくれたまえ」
そして、ついに敵地の裏まで塹壕を掘り進めた。兵士たちは歓喜した。ついに設計図通り...いや、無理矢理設計図の思惑通りに塹壕を掘り進めることができた。
「やったぞ、これで、やっと敵に勝てる」
「やったぞ、これで、やっと帰れる」
「やったぞ、これで、やっと労働から解放される」
兵士たちは口々に叫びながら、敵の本拠地に乗り込んだ。
しかし、敵はそこにはなかった。デマルコ少尉は驚いた。
「なんだと? 敵がいないとはどういうことだ???」
遠くの反対のほうに、敵地からイイ感じの鍋の匂いが漂ってきた。
どうやら、そうだ、つまり、反対側を掘り続けていたらしい。
デマルコ少尉が、兵士たちにぼこぼこにされたのは想像に難くはない。
デマルコ少尉は反省した。
「ソフトウェア開発は、いや塹壕堀りは、設計図の管理に固執するのではなく、人が大事なのだな、うん、状況確認もだ、うん」
やる気があっても、方向が間違っていると、あらぬところに着いてしまって意味がない。それを再確認するデマルコ少尉であった。
こののちデマルコ少尉は「ピープルウェア」の著者として名を馳せることになるのだが、その話はまた別の機会に譲ろう。
「ピープルウェア」 via トム・デマルコ著




