メインコンテンツへ
システム企画

要件定義のプロセスに関する記述として、最も適切なものはどれか。

ア.要件定義は開発者が主導して行い、利用者(ユーザ)の意見は取り入れない。
イ.要件定義が完了すれば、その後の設計・開発フェーズで要件が変更されることはない。
ウ.要件定義とは、システムが実現すべき機能や性能・制約を明確化し、関係者間で合意を形成するプロセスである。正解
エ.要件定義はシステムテストが終わった後に実施される事後確認作業である。

解説

要件定義は「何を作るかを全員で合意する」プロセス。「どうやって作るか(設計)」より前に来る、最も上流の重要な工程です。

なぜ ウ が正解か

ウが正解。要件定義は、利用者・発注者・開発者が協力して「システムが何をすべきか」を明確にするプロセス。機能要件(何をするか)と非機能要件(性能・可用性・セキュリティなど)に分けて整理し、SRS(システム要件仕様書)などにまとめて関係者間で合意する。上流工程でのコスト:下流での修正コスト=1:100とも言われるほど重要。

なぜ ア は間違いか

要件定義はユーザ(利用者)の業務知識と開発者の技術知識を組み合わせて行う協働作業。ユーザの意見こそが要件の源泉。

なぜ イ は間違いか

現実には要件変更は頻繁に発生する。アジャイル開発はその変化を前提とした手法で、変更管理をプロセスに組み込んでいる。

なぜ エ は間違いか

要件定義はシステム開発の最上流フェーズ(企画・計画後、設計前)に実施するもの。テスト後に要件定義を行うのは本末転倒。

出典: AI生成問題(学習用)