2012/09/10●今回の発端いにしえのブルックスより現在に至るまで、ソフトウェア開発に対する報酬は人月単位で払われています。成果に基付く報酬など、別案もありますが、かちんとして受け付けられません。1つ理由みたいなものを思い付きましたので、披露致します。●頭としっぽまた、アンビバレントな話です。ソフトウェアは簡単である。ソフトウェアは学んでも尽きないほど高度である。どちらも正しく聞こえます。すると、例によってまた、隠れた構造があることが予測されます。ソフトウェアは“要求は簡単で、作っている最中は難しく、できたら簡単になる”と考えると、上記のつじつまが合うということです(もちろん上流工程の要求も、下流と実情は同じで“できたら簡単になる”のだと思います。上流工程の要求は常に簡単だといっているわけではありません)。●成果に基付く報酬なんてとんでもない!これ以降、上記の構造が妥当だとして話を進めます。要するに、成果物で推し量られると、やっていけないほど損になるのです。しても成果物で量ることをされると、多分作る側は半製品を完成品だとして納品することになると思います。からしても、できた簡単な成果物より、途中までの難しい成果物の方に価値があり、学術的にも優れているように見えると思います。筆者も職業的立場から離れてみるなら、そうだと思わざるを得ません。●(突然ですが)資格審査報告この次の段で、ある侮蔑的な言葉を言いますが、筆者は言っても問題ないだろうことを示すエピソードを述べます。筆者は前に、汎用機のデータをRDBに変換するプログラムを作ったことがあります。その際の条件として、VSAMのマスタは読むだけ特定のVOL=SERで中間ファイルは作り放題もう、その汎用機はあまり使っていないので、SUBMITもし放題で、結局、2本マッチング、3本マッチングをぐちゃぐちゃに織り交ぜて、何とかRDBの世代データにすることができました。その際、つい同僚にその言葉を言ったのですが、同じフロアに居た別の会社の人が、ものすごい形相でにらんできました。次の日、(多分筆者の作ったソースを見たのだと思いますが)「まぁ、おまえなら言ってもいいや」とかぼそっと言ってくれました。これで万事とは言いませんが他社さんの(ある意味)ピアレビューとして、取りあえずこの場で、その侮蔑的な言葉を言うだけの根拠にはなると思います(その人は名前も存じ上げませんし、その後もお会いしたことはありませんが、この場で感謝したいと思います。)●コボラーとはなんだったのかあーあ、言っちゃった(笑)しかしながら、このコボラーという侮蔑も、「束構造」で考えると見通しが良くなります。かなりの部分が不当なものだと反論できるようになります。思いつく限りでも、コピペである。ソースを表か何かのように画一的に作る変数を階層的に長く作る部品化しないとかありますが、すべてネタは同じです。それはコボラー側には「難しい作っている最中」の状態を割り当て、非難する側は「簡単なできた」状態を割り当てているということです。上図を見ていただくと分かりますが、プログラミングが(当コラムの仮定により正しいとした)「束構造」であるならば、1.も2.も最適中の最適ですし、部品化とは出来てからが部品化で、作っている最中に部品化言われても「なんのこっちゃ」です。●もう1つ、別の話ですが不案内な分野なので、ご案内にとどめますが、ソフトウェアの「見積もり」というのも、「簡単な要求」から「難しいものを作っている最中」を推し量るものだと整理できるのではと思います。(筆者はそうだと思っていますが)確かに大変な仕事だと思います。今回はこんなところです。●コラムのコメント欄の方針コメントに対し、当意即妙の回答を、それなりのタイミングでする自信がありません。このコラムで、わたしは基本的にコメントに答えないコメントを書く人は、回答がない前提で議論を進めていただくとさせていただきます。名前を記憶しておくコメント:くわぢ初めてのPCはMZ-80Cでした。終わるまで」とか習わされました。あなたはどこ見ていますか?書籍「誰でも身につく!暗算力」を読んでみた。未成年者略取ムチャか?男気か?部下も立て続けに。利用規約ITmediaはアイティメディア株式会社の登録商標です。