arcanum_jp’s blog

おっさんの日記

「プログラミングファースト開発の必要性」を読んで。

http://d.hatena.ne.jp/higayasuo/20080721/1216607451

 いや、本文ではなくコメント欄にあった言葉に反応しただけなんだけど。

私見ですが、ソースコードはhow(とwhat)の直接表現である一方で、whyを直接表現することができませんよね。一方、メンテにおいて最初に知りたいのはwhy (何故全体がこういう構成になっているのか、何故このコンポーネントでこのアルゴリズムが選択されているのか、etc.) です。なので、おおまかに言えばwhyが記されているドキュメントこそが保守に役に立つのではないかと>通りすがりさん

 あ、言いたい事言ってくれた。

 あと設計書(納品物)もWhyを直接は表現できません。ソースコードと対をなすものだから当たり前か。昔は自分もソースがあったらいいんじゃないと思っていたクチだけど、最近はちょっと違うようになってきた。


 最終的な成果物はソースだけど、立場によって見ることができる資料が異なるので、エンドユーザ、一次受けの会社(これをスーツ達って言うのか?)、製造会社の確認できる最適解(かどうかは分からないけど)が設計書じゃないかなぁ。


 でも、エンドユーザが理解できて、スーツが理解できて、プログラマが理解できて・・・そんな魔法の書なんかあるわけないけどね。


 えてして議事録に書かれることもないWhyは忘れ去られていく運命にあり、保守局面でそのうち「なんでこんな風にしたの??」とか言われるようになる。設計書も大事だし、もちろん動くソースも大事だが、見えないWhyを残す事の重要性が言われないのはなぜだろうと思った。


 → 契約に入ってなければ書く必要性も無いし・・・
 → 長い保守期間を見越した会社が製造しなければそんな資料は不要だし・・・
   (作った後は逃げるだけぇ・・・焼畑農業
 → 自称できる人には後に残されたできない人の事なんかわからないし。

 そんなところか・・・