曖昧な要望を具体的な要件に変える ― 認識のずれを防ぐ整理術
「使いやすくしてほしい」「もっと速くしてほしい」「いい感じにしてほしい」
クライアントからの要望は、そのままでは実装できないことが多いです。
こうした曖昧な要望を、具体的な要件に落とし込む。
そのプロセスで私たちが意識していることをお伝えします。
まず「なぜ」を聞く
要望を聞いたら、まず「なぜ」を聞きます。
「この機能がほしい」と言われたら、なぜその機能がほしいのか。
どんな課題を解決したいのか。
誰がどんな場面で使うのか。
「なぜ」が分かると、本当に必要なものが見えてきます。
「検索機能がほしい」という要望。
「なぜ」を聞くと、「特定のデータをすぐに見つけたい」という課題が見える。
それなら、検索機能だけでなく、フィルタ機能や並び替え機能も検討できます。
「なぜ」を聞くことで、より良い解決策を提案できることがあります。
「なぜ」を聞くと提案につながる
「なぜ」を聞くと、要件が変わるというより、より良い提案につながることが多いです。
クライアントは、自分なりに考えて「この機能が必要だ」と結論を出している。
しかし、それは技術的な知識に基づいた結論ではないことも多い。
「なぜ」を聞いて背景を理解すれば、技術者として別の選択肢を提案できます。
「この方法もご検討いただけますか」と。
クライアントにとっても、自分たちの課題を言語化する機会になります。
「なぜ」を問われることで、「そうか、本当に解決したいのはこれだった」と整理されることもある。
優先度をつける
すべての要望を同時に実装することはできません。
優先度をつける必要があります。
「これがないと使い物にならない」「あると便利だが、なくても困らない」「将来的にあるといい」
クライアントと一緒に、優先度を整理します。
すべての要望を同時に進める優先度をつけて段階的に進める優先度が明確になると、スケジュールも立てやすくなります。
「まずは必須の機能を作って、その後で追加機能を検討しましょう」
優先度を決めるときも、「なぜ」が役立ちます。
その機能がなぜ必要か分かれば、どれくらい重要かも判断できる。
曖昧な表現を具体的にする
曖昧な表現は、具体的にします。
速くしてほしい現状5秒 → 目標2秒以内- 「速くする」なら、どのくらい速くするのか。現状は何秒で、目標は何秒か。
- 「使いやすく」なら、誰にとって使いやすいのか。初心者か、ヘビーユーザーか。
- 「いい感じに」なら、どういう状態が「いい感じ」なのか。参考になるサイトはあるか。
数字で表せるものは数字で。
「3秒以内に表示する」「入力項目を5つ以下にする」
数字で表せないものは、具体例で。
「このサイトのような雰囲気」「この操作はスマホでもできるように」
具体的にすることで、認識のずれを防げます。
必ず書き出す
整理した要件は、必ずテキストに残します。
口頭で合意しただけでは、後から「そんなはずじゃなかった」となることがある。
Slackでもドキュメントでも、形式は問いません。
書いて共有することで、認識を揃えます。
完璧でなくていい。
途中で変わることもある。
しかし、その時点での合意を残しておくことが重要です。
変更があれば、テキストも更新する。
「言った」「言わない」のトラブルを防げます。
書いてあれば、何を合意したか確認できる。
スコープを明確にする
何を作るかだけでなく、何を作らないかも明確にします。
「この機能は今回のスコープには含まれません」 「これは次のフェーズで検討します」
スコープが曖昧だと、後から「これも含まれていると思っていた」となる。
期待値のずれがトラブルになる。
最初にスコープを明確にしておけば、追加の要望が来たときに「これはスコープ外なので、追加費用がかかります」と言いやすい。
変更を受け入れる
要件は変わるものです。
開発を進める中で、新しい発見がある。
実際に動くものを見て、考えが変わることもある。
ビジネス環境が変化することもある。
変更を恐れず、受け入れる姿勢が必要です。
ただし、変更にはコストがかかることも伝えます。
「この変更だと、スケジュールが延びます」
「この追加機能は、別途費用がかかります」
変更を受け入れつつ、影響範囲を明確にする。
それが、プロジェクトを健全に進める方法です。
要件整理は対話
要件整理は、一方的なヒアリングではありません。
対話です。
クライアントの話を聞く。質問する。提案する。また話を聞く。
このサイクルを繰り返すことで、本当に必要なものが見えてくる。
クライアント自身も気づいていなかったニーズが発見されることもある。
対話を通じて、クライアントと一緒に要件を作り上げていく。
それが、良いプロダクトにつながると考えています。

