要件定義と設計を理解する
要件定義は「何を実現するか」を合意し、設計はその要件を「どう実現するか」へ具体化する活動である。機能要件と非機能要件を分けて整理する。
この単元で学ぶこと
- 機能要件の意味と役割を説明できる
- 非機能要件の意味と役割を説明できる
- 要件定義の意味と役割を説明できる
- 機能/非機能要件と要件定義/外部設計/内部設計の役割を区別できる
本文解説
要件定義では利用者・業務・制約を確認し、機能要件と性能・可用性・セキュリティなどの非機能要件を明文化する。設計では外部仕様、画面・API・データ、内部構造などへ落とし込む。
機能要件 システムが提供すべき機能や処理を定める要件。 利用者が何をできるかを記述する。
非機能要件 性能・可用性・セキュリティ・保守性など機能以外の品質要件。 測定可能な基準へ具体化する。
要件定義 利害関係者と必要な機能・品質・制約を合意する活動。 実装方法より業務ニーズを中心にする。
外部設計 利用者や外部システムから見える仕様を設計する段階。 画面・帳票・API・データ入出力などを扱う。
内部設計 外部仕様を実現する内部構造や処理へ具体化する段階。 モジュール、データ構造、処理方式などを設計する。
「何を実現するか」なら要件、「利用者から見える仕様」なら外部設計、「内部構造」なら内部設計と読む。
「検索できる」は機能要件、「検索結果を2秒以内」は非機能要件。
図解
重要ポイント
- 機能要件: システムが提供すべき機能や処理を定める要件。
- 非機能要件: 性能・可用性・セキュリティ・保守性など機能以外の品質要件。
- 要件定義: 利害関係者と必要な機能・品質・制約を合意する活動。
- 外部設計: 利用者や外部システムから見える仕様を設計する段階。
- 要件定義と設計を混ぜず、業務ニーズ→外部仕様→内部実現へ段階的に具体化する。
間違えやすい点
- 性能目標を機能要件だけとして扱わない。
- 要件定義で実装方式を先に固定し過ぎない。
- 外部設計と内部設計の視点を混同しない。
用語解説
- 機能要件
- システムが提供すべき機能や処理を定める要件。
- 非機能要件
- 性能・可用性・セキュリティ・保守性など機能以外の品質要件。
- 要件定義
- 利害関係者と必要な機能・品質・制約を合意する活動。
- 外部設計
- 利用者や外部システムから見える仕様を設計する段階。
- 内部設計
- 外部仕様を実現する内部構造や処理へ具体化する段階。
関連教材
参考資料
教材データに登録された参考リンクです。リンク先の内容や更新日は提供元でご確認ください。
確認問題の出題・採点や学習履歴の保存にはログインが必要です。