ソフトウェア開発におけるシステム要件定義において, 業務上の要件が満たされていることを確認するのに適切な者は誰か。
平成24年度 春期 ITパスポート試験 問43
この問題の解説と、これまでの解答の記録です。
問 43
不正解ア
運用部門のオペレータは、システムが稼働した後にジョブの実行・監視・バックアップなどの運用手順を担当する役割である。バッチの実行時間帯や運用の負荷といった運用要件については有益な意見を出せるが、業務そのものの目的や、その業務が要件どおりに遂行できるかを判断する立場ではない。また、部門を代表して要件定義書を承認する権限もなく、業務上の要件が満たされているかの確認者としては適切でない。
不正解イ
開発部門のプログラマは、定義された要件を受けて設計・実装を行う作り手の側である。技術的な実現可能性や工数の妥当性は判断できるが、業務要件が正しいか・過不足がないかを決めるのは利用部門であり、開発側が代わりに判断してよいものではない。加えて、自分たちが作る対象の要件充足を自ら判定するのは客観性を欠き、要件の思い込みや解釈違いをそのまま持ち込む危険がある。
不正解ウ
監査部門のシステム監査人は、開発や運用の当事者から独立した立場で、統制やプロセスが適切に整備・運用されているかを評価し、助言・勧告する役割である。要件定義の進め方や合意手続が妥当かを点検することはあっても、業務要件の中身に踏み込んで「これでよい」と当事者として確認・承認すれば独立性を損なう。よって業務上の要件が満たされていることを確認する者としては適切でない。
- エ
正解 正解はエ「利用部門の部門長」。システム要件定義とは、利用部門が抱える業務上の要求 (業務要件) を出発点に、それを実現するためにシステムが備えるべき機能・性能・制約を定義し、発注側と開発側で合意する工程である。ここで確認すべきは「そのシステム要件どおりに作れば、自分たちの業務が回り、業務上の目的が達成されるか」という点であり、これを判断できるのは業務の内容・手順・例外ケースを最もよく理解している当事者、すなわち実際にそのシステムを使う利用部門である。さらに、要件定義の成果物は後工程の設計・開発の前提となり、確定後の変更は手戻りとコスト増を招くため、単に「詳しい人」ではなく、部門を代表して内容をレビューし、責任をもって承認・合意できる権限をもつ者が確認する必要がある。利用部門の部門長はこの二つの条件 (業務知識と承認権限) を同時に満たす立場であり、要件定義書のレビュー・承認者として最も適切である。共通フレームなどでも、要件定義は利用者側 (取得者側) の責任で行い、利害関係者の合意をもって確定するとされている点も、この考え方を裏づけている。
- システム要件定義における役割分担 — 業務要件を提示し、その充足を確認して要件定義書を承認・合意するのは利用部門 (発注側) の責任であり、開発部門は実現、運用部門は稼働後の運用、監査部門は独立した立場での評価と、それぞれ役割が異なる。
- 確認者に必要な二条件 — 業務の内容と目的を熟知していること、および部門を代表して要件に合意・承認できる権限をもつことの両方を満たす者が適任であり、この観点から利用部門の部門長が選ばれる。