読み方 : ソフトウェアようけんていぎ
ソフトウェア要件定義
概要
ソフトウェア要件定義とは、開発するソフトウェアが満たすべき機能や性能、制約条件などを明確にし、関係者の間で共通の理解を形成する工程。利用者の目的や業務内容を整理し、ソフトウェアに求められる要件を文書化する作業である。

システム開発では、利用者が求める機能や業務上の目的を整理し、それをシステムとして実現可能な形に定義する必要がある。この作業を体系的に行う工程が要件定義であり、その中心となる活動がソフトウェア要件定義である。利用者や関係部門へのヒアリング、既存業務の分析、利用シナリオの整理などを通じて、システム全体の中でソフトウェアが提供すべき機能や処理内容を明確にする。
要件定義では、ソフトウェアがどのような処理を行うかを示す機能的な要件だけでなく、性能、信頼性、セキュリティ、操作性などの品質に関する条件も整理される。これらは一般に「機能要件」と「非機能要件」に分けて扱われることが多い。機能要件は具体的な処理やサービスの内容を示すのに対し、非機能要件は応答時間や可用性、運用条件などシステムの品質特性を定めるものである。
ソフトウェア要件定義の結果は、ソフトウェア要件定義書や仕様書として文書化され、後続の設計工程や開発工程の基礎となる。例えば、画面の構成や業務の処理手順、扱うデータの種類、外部システムとの連携方法などが整理され、これを基にソフトウェアの構造や具体的なプログラムの設計が行われる。また、ソフトウェア要件定義は開発者と利用者の認識のずれを防ぐ役割も持つ。開発初期の段階で要求内容を明確にすることにより、開発途中の仕様変更や誤解による手戻りを減らすことが可能となる。