ソフトウェア要求仕様の正当性
ソフトウェア要求仕様にもソフトウェア製品と同じように品質特性が定義されていたりします。たとえばIEEE 830-1998。
以下リンクより、正当性とは「ソフトウェアが持つべきすべての要素がSRSにふくまれており、それ以外の要求をSRSがふくまないこと」のことです。
それ以外の要求をSRSが含まないこと、を端的に言うと「いらんことやってないよね?」だと思います。現実世界ではこの「いらんこと」かどうかの判断がとても難しいと感じています。要求の源泉から要求を獲得するのですが、すべての要求を漏れなく獲得するのは容易ではなく、要求にはなんらかの「すき間」が発生します。要求仕様を書く際には獲得済みの要求にすき間があることを前提に、すき間を補完するように記述します。そのときに、要求の源泉(たとえばエンドユーザ)が期待していなかったことを書いてしまった場合、それが正当性に反する要求仕様になってしまうというわけです。
本来は、要求されていることしか要求仕様に書かない、のが正しいのだとは思いますが。。これは、要求仕様から設計書に落とす際にも同じようなことが起きえると思っています。
理想的な要求仕様というものをみてみたい。