要件定義とは、「誰が、何を、何のために行うのか」を明確にすることです。
しかし、しばしばこの「何のために」が正しく認識されないまま要件定義が完了し、必要のない機能、意図不明な機能、まったく使い物にならない機能などが 着々と開発されていく一方では要件定義漏れが発生し、矛盾による仕様エラーとあわせて多くの手戻りや仕様変更が続出・・・という事態はこの今もどこかでおこっています。
確かに「誰が、何を、どのように実現するか」といったユースケース等を作成するうち、whyではなくhowばかりに重心が置かれてしまうということ は、よく言われるところです。ただ、このような言い方の場合、プロジェクト全体の大局的なWhyを意味している場合が多いようです。ただ要件定義とは Whyが出発点であり、それがHowに置き換わるようなことは順番も論理も違うので、あまり言い訳にはなりません。
とにかくどのような小さな要求にも理由や必然があるのです。
様々なフローやマトリクスによるモデリングを行い、美しく作られた要求仕様書が、「何のために」を明確に表しているかというと、これはまったく別の話となります。
大局的な理想や目的を謳うコンサルタントが、個別機能の話になると聞いた要求をそのまま「〜の実現方法を検討する必要がある!」とお得意のパワーポイントでお得意のメッセージを掲げ、いきなり実現方法の検討に入ってしまっているといったこともしばしば見られます。
また様々なモデリング技法や方法論を熟知し、精緻な要求開発手法を実行可能できる(あるいはそう思っている)ことと、要求の理由と必然を明確にし、その妥当性を理解できることは、これもまた別の話です。
例えば要求仕様定義書に聞いただけの「何のため行うのか」という理由がただ書いてあるだけでは何の意味もありません。要件定義の成果物はただの議事録ではないのです。
とにかくむきだしの要求をむきだしのまま機能とするほど危険なことはありません。
複数のユーザークラスの要求を一般化にしたり、あるいは矛盾する複数の要求を調整し、「欲しいもの」と「必要なもの」を整理するには、当然、その理由を明確にする必要があります。でなければ正確なトリアージもできていないことになります。
また 一方、基幹業務システムにおいては実は多くの要求は再利用の要求です。ERPパッケージは再利用された要求の塊と言えるでしょう。そのためいきなり専門家同士の突っ込んだ議論となることも多く、要求開発のメソドロジーなどにのせる意味も意義もほとんどない場合も多いかもしれません。
特に会計などは要求の再利用の弊害や問題が最も少ない領域です。そのほとんどが再利用の要求と言っても過言ではありません。(「要件定義はほとんど終わっている」と聞いていたプロジェクトにいざ入ってみると、面倒で重要なところは何も決まっておらずひどい目にあった、という話がよくあるのは、ほとんどの要件は要件定義を行う前から実はもう決まっていることを理解していないSEやコンサルタントが「ほぼ終わっている」と言ってしまうことに起因するのかもしれません)
ユーグロナコンサルティングのコンサルタントはそれらを正しく判断し、常に無駄のない要件定義を実施いたします。