システム開発で最も重要な工程の一つが「要件定義」です。ここで曖昧なまま進めてしまうと、後工程で大きな手戻りが発生し、納期遅延やコスト超過につながります。
要件定義では、顧客が「何をしたいのか」を整理します。ただし、顧客の言葉をそのまま受け取るだけでは不十分です。たとえば「使いやすい画面にしたい」という要望があっても、それが「入力項目を減らしたい」のか、「検索しやすくしたい」のか、「教育コストを下げたい」のかで、対応はまったく変わります。
また、要件定義では「やること」だけでなく、「やらないこと」を明確にすることも重要です。これを決めておかないと、開発途中で機能追加が膨らみ、いわゆるスコープ肥大が起こります。
優れた要件定義は、顧客の希望をそのまま文章化することではありません。業務を理解し、優先順位をつけ、実現可能な形に落とし込むことです。開発がうまくいく現場ほど、要件定義にしっかり時間をかけています。