テストケースによる仕様書(blikiより)

テストケースを仕様書として利用可能か?ということに対するマーチン・ファウラーの考え。

あるDbCファンがこう指摘していた。テストという観点から仕様書を書くとなれば、テスト仕様にある「入力」に対して、「コーディングされた出力」を出さないことには満足した仕様書が書けないということにはならないか、と。あ、そ。てきとーに返事をするとだな、ほう、貴様はこんなところに興味があるのか。だがな、「テスト 対 DbC」なんて、序章に過ぎぬのだよ。って感じか。しかしながら、ここには重要なポイントがある。テストでは不完全なことが往々にしてある。だから常に「代替案」を用意おかなければならない。私のような天邪鬼は、これを「プラス」であると考える。 SbE(テストケースによる仕様書)は明らかに十分じゃないのだから、すべてがまるっと伝わっているか確認しなきゃいかんのは当然じゃないか。昔ながらの要求仕様書で一番危なっかしいのは、「仕様書に書いてるから読んでるだろう」と考えてしまうことである。

仕様書としてのテストケースの弱点を「プラス」と考えるっていうのがおもしろい。確かに古典的仕様書は完璧な仕様+理解を求められますねー。
テストケースやXPの他のプラクティスは、僕ら不完全な人間として、自然であたりまえなやり方のような気がしてなりません。