要求や仕様のヌケモレを防ぐためには、トップダウンやボトムアップの手法で抽出し、要求と仕様を 対応付けてまとめあげることが大切であるということは理解できても、実際に要求仕様を書いてみるとヌケモレが少なくなったという実感が持てなかったり、他人に理解してもらえなかったりして困った経験をお持ちの方も多いのではないでしょうか?
多くの開発現場では、要求や仕様は自然言語のみ、もしくは自然言語と図、表、数式の組み合わせで表 現されていると思いますが、筆者は、先ほど挙げたような問題は自然言語によって適切に表現できていないことに原因があるのではないかと考えています。
文章を書くことのメリットの一つに、 自分が書いたものを読み返すことで、自分の考えや理解を検証したり、さらに深く検討したりできるようになることがあります。 しかし、書いた文章を後で読み返し た時に、自分でも内容をなかなか思い出せないような表現で書かれていたら、考えや理解を検証したり、さらに深く検討したりすることは困難です。 また、そのような文章では、他人に理解してもらい、間違いや不足を指摘してもらうことも難しいでしょう。
つまり、自分で書いた要求仕様から関連する別の要求仕様を連想できるようになったり、 自分が把握 した要求や決定した仕様、その意図を他人に伝えたりするには、自然言語で適切に要求や仕様を表現する方法を身に着ける必要があります。