マネジメント系

要件定義とは何か — システムに「何を作るか」を決める工程

導入

システム開発で「できあがったものが思っていたのと違う!」という事態を防ぐために欠かせないのが要件定義です。お客様の「こういうものが欲しい」を正確に文書化するこの工程は、開発全体の土台になります。

くわしく知ろう

要件定義とは、開発するシステムが「何をすべきか」をユーザーやステークホルダー(利害関係者)と合意し、文書として明確にする工程を指します。システム開発ライフサイクルの中でも最も上流に位置し、ここでの決定が後工程の設計・開発・テストに大きく影響します。

要件は大きく2種類に分けられます。機能要件とは「システムが実現すべき具体的な機能」のことで、たとえば「商品の検索ができる」「注文履歴を確認できる」といった内容が該当します。一方、非機能要件とは「性能・信頼性・セキュリティ・操作性」など機能以外の品質特性を指し、「1秒以内に検索結果を返す」「99.9%の稼働率を確保する」などが例として挙げられます。

要件定義でよく使われる手法として、ヒアリングとユースケースがあります。ヒアリングはユーザーにインタビューや質問票で要望を聞き取る手法で、潜在的なニーズを引き出す点で重要です。ユースケースは「誰が(アクター)・何をする(ユースケース)」という形式でシステムの使い方を整理したもので、要件の漏れを防ぐのに役立てられています。

この工程の成果物として要件定義書が作成され、以降の設計・開発フェーズの基準になります。

具体例

通販サイトを新規開発する場合、「商品を検索して購入できる(機能要件)」「スマートフォンでも快適に操作できる(非機能要件)」といった要件を、担当者へのヒアリングやユースケース図を使って整理します。この文書なしに開発を始めると、完成後に大幅な手戻りが発生することになります。

まとめ・試験ポイント

  • 要件定義=システムが「何をすべきか」をユーザーと合意し文書化する工程
  • 機能要件=システムが実現すべき具体的な機能(検索・注文など)
  • 非機能要件=性能・信頼性・セキュリティなど品質特性
  • ユースケース=「誰が・何をする」形式でシステムの使い方を整理
  • 要件定義書が後工程(設計・開発・テスト)の基準となる
  • 試験では機能要件と非機能要件の区別を問う問題が頻出

学習した内容を試験形式で確認しよう。ITパスポート入門試験100問に挑戦できます。

入門試験100問に挑戦する