ユーザーからみた要件定義
要件定義は、予算や期間、技術の制約をベースに、顧客の要求から実現可能な項目を定めていくフェーズ。
ここでは、利用を想定したインフラのシステムの非機能要件(ビジネスロジック以外の基盤的な要件)も決める。
これは一般的な理解だと思う。
そして、これはユーザーサイドに立った、作業の意味。
ただ、実はもう一つの側面がある。
開発者がユーザーの業務を理解するフェーズ
要件定義は、単純にやることを決めるだけでなく、
事業や業務整理を通して、開発者がユーザーの事業や業務を理解するフェーズでもある。
つまり、開発者の教育期間でもある。
つくるシステムの理解なしに、システムは開発できない。
ユーザーと開発者、双方の立場を考慮する
よく設計はユーザーの立場に立っていろいろ語られるが、
実は、そこには開発者の認識や行動も当然付随する。
こうした両面の考慮をもって工程を進めないと、ゆくゆく認識不足が考慮漏れをもたらし、
失敗をもたらす。