unoh.github.com

イマドキのベンチャーがテストにかけるコスト

Thu Jun 01 04:49:34 -0700 2006

こんにちは! やまもと@テスト番長です。

今回はテストにかけるコストのお話をしましょう。
コストといっても色々ですが、例えば時間。果たしてどれくらいの時間をかけるのがいいでしょうか?
有名な「人月の神話」の中に、こんな指標が出てきます。

[ 設計1/3 コーディング1/6 単体テスト1/4 システムテスト1/4 ]

実に工程の1/2がテストに充てられています。実際バグをほぼ完全に消すにはこれくらいの時間が必要です。70年代のメインフレーム中心の時代であることも考慮すれば、かなりうなずける数字だと思います。

ただし、著者のブルックスが後に言っているようにこれはウォーターフォールモデルでの指標です。
現代流のXPやV字モデルとなると話は違ってきますね。その場合コーディングが反復する度に、テストも反復されるはずです。そうすると話は複雑になってきます。

更にイマドキのベンチャーの場合ですと、いわゆるWEB2.0の構成要素である「永遠にβ版」という命題があります。アプリは頻繁に更新され、最低限動作すればよく、それ以上チェックのコストをかけていると競合他社に追い越されるかもしれない。実際アメリカのアプリを見ているとそういう割り切りを感じる時が多々あります。

さて。色々矛盾が見えてきますね。
テストにかけるべきコストを導きだすのは簡単ではありません。

ただ言えることは、テストに使うコストもシステムデザインなど同様にデザインされるべきだということです。つまり、ポリシーを持ってどうあるべきかを選択すべきということです。
一番してはいけないコストのかけ方は、デザインされていないコストをずるずると割り当ててしまうことではないでしょうか?