要求変更で支払うコスト
2019/07/29
要求変更からくる仕様変更は、想像した以上の工数(コスト)増だよ、という話。
要求は 、ソフトウェアシステムが何をすべきかを詳述したもので 、ソリュ ーションへの第一歩である 。
〜中略〜
要求が明記されていれば 、ユ ーザ ーはそれを読んで同意することができる 。要求が明記されていないと 、プログラマが要求を決めながらプログラミングする羽目になる 。明確な要求があれば 、ユ ーザ ーが何を求めているかあれこれ考えずに済む 。
あるあるですね。
「いるのかな?これ。いらないように見えるけど設計者は要ると判断したんだからしょうがない」と思いながらコードを書き始め、ある程度動くようになったころに、「やっぱりこれいらないよね」と判断した誰かによって内容が取り消される。
曰く「消すだけだから簡単だよね」
大規模なプロジェクトでは一般に 、ア ーキテクチャの作成時に検出された要求のエラ ーを修正するコストが 、要求の策定時に検出されたエラ ーの 3倍に及ぶことが示されている 。コ ーディング時に検出された場合のコストは 5 ~ 1 0倍 、システムテストの段階では 1 0倍 、そしてリリ ース後は 1 0 ~ 1 0 0倍に跳ね上がる 。管理コストの低い小規模なプロジェクトでは 、リリ ース後の修正コストは 1 0 0倍まではいかず 、 5 ~ 1 0倍程度となる ( B o e h m a n d T u r n e r 2 0 0 4 ) 。いずれにしても 、これだけの金額を給料から差し引かれるのはごめんだ 。
消すだけでも影響は甚大なのです。
上流でもうちょっと踏み込んで考えて止めていてくれれば、コードの削除、影響範囲の調査、テストの修正、総合テストのやり直し、その他諸々一切合切の手間がかからないんです。
上流工程を担当する人がもう少しだけ想像力があれば、どれだけみんなが幸せになることでしょうか。(コストダウン含み)