
全員が正しいのに、プロジェクトは失敗する
会議が終わった。
今日決めることは、全部決まった。
誰も反対していない。
議事録にも、問題はない。
「では、この方向で進めます」
そう言って、会議は終わった。
数週間後。
完成した画面を見た顧客が、少し黙った。
そして言った。
「……あれ?」
エンジニアは仕様書を見る。
PMは議事録を見る。
顧客は画面を見る。
しばらくして、誰かが言った。
「これって、そういう意味だったんですか?」
誰も嘘をついていない。
誰もサボっていない。
それなのに、何かがおかしい。
こういう場面を、私は何度も見てきた。
人の頭の中にも、仕様書がある
たとえば、会議で「検索機能を作りましょう」という話になったとする。
議事録には、こう残る。
「検索機能を実装する」
何も問題はない。
ただ、PMが想像する検索と、エンジニアが想像する検索と、顧客が期待する検索は、本当に同じだろうか。
PMは、一覧画面に検索欄があればいいと思っている。
エンジニアは、指定された項目を検索できればいいと思っている。
顧客は、多少の表記揺れがあっても、探しているものが見つかると思っている。
全員が「検索」と言っている。
全員が、間違っているわけではない。
ただ、見ているものが少し違う。
人の頭の中にも、仕様書がある。
過去の経験や、業務上の常識や、「普通はこうだろう」という感覚。
そうしたものが、書かれていない仕様を埋めている。
本人にとっては当たり前だから、わざわざ説明しようとも思わない。
本人ですら、自分が何を前提にしているのか、気づいていないこともある。
文書なら、並べて比べられる。
でも、頭の中の仕様書は、そのままでは比べられない。
だから、会議で「分かりました」と言っても、同じものを理解しているとは限らない。
それぞれが違うものを想像しながら、うなずいている。
そして、その違いがコードになっていく。
チケットは緑だった
プロジェクト管理ツールは便利だ。
チケットがある。
担当者がいる。
期限がある。
ステータスがある。
進捗率が上がっていく。
私自身、こうした道具に何度も助けられてきた。
ただ、チケットが管理してくれるのは、見える仕事だ。
何をやるか。
誰がやるか。
いつまでにやるか。
どこまで終わったか。
そこには、「みんなが同じものを想像しているか」までは出てこない。
チケットは完了している。
コードレビューも終わっている。
テストも通っている。
進捗表は緑。
それでも、顧客が画面を見た瞬間に、
「……あれ?」
となることがある。
作業は、正しく進んでいた。
ただ、違うものを作っていた。
見積もりが外れたように見えても、そもそも見積もった対象が違っていたのかもしれない。
対象が違えば、見積もりの数字だけを正確にしても解決しない。
コードを書く前に、確かめるべきことがある。
私たちは、何を作ろうとしているのか。
早く「あれ?」と言ってもらう
コードレビューは重要だ。
バグを見つける。
読みやすさを確認する。
保守性を見る。
でも、正しいコードで、間違ったものを作ることはできる。
だから、コードを書く前に、できあがるものを見せてみる。
手書きの絵でもいい。
画面のラフでもいい。
サンプルデータでもいい。
きれいに仕上げる必要はない。
むしろ、荒い段階で見せた方がいい。
早く見せる。
早く違和感が出る。
早く「あれ?」と言ってもらう。
その方がいい。
人は、それぞれ違う。
経験も違う。
立場も違う。
見えている制約も違う。
最初から完全に同じ認識になることを期待するより、違いがあることを前提にした方がいい。
大事なのは、ズレないことではない。
早くズレに気づくことだ。
画面のラフなら、まだ直せる。
業務フローなら、話し合える。
サンプルデータなら、設計を変えられる。
でも、リリース直前なら、そうはいかない。
コードがある。
テストも終わっている。
スケジュールも詰まっている。
関係者も疲れている。
そこで初めて、
「思っていたものと違う」
と言われる。
同じズレでも、見つかる時期によって、手戻りの大きさは変わる。
「あれ?」と言える場所
プロジェクトがうまくいかなかったとき、誰が悪かったのかを探したくなる。
要件定義が悪かった。
PMが悪かった。
エンジニアの確認不足だった。
顧客の説明が足りなかった。
もちろん、本当に誰かのミスが原因のこともある。
でも、そうではないこともある。
開発者は、正しく実装していた。
PMは、正しく進捗を管理していた。
顧客は、自分の業務に必要なものを説明していた。
それでも、全体としてはうまくいかなかった。
それぞれの「正しい」が、同じ場所を向いていなかったからだ。
私は、プロジェクトに必要なのは、間違えない人ばかりではないと思っている。
「あれ?」
と言える人がいること。
そして、「あれ?」と言っても大丈夫な空気があること。
「すみません。確認ですが……」
と言ったときに、
「今さら?」
ではなく、
「いいところに気づきましたね」
と言えること。
それだけで、プロジェクトは少し変わる。
早い段階で出てきた「あれ?」は、プロジェクトを止める言葉ではない。
プロジェクトを守る言葉かもしれない。
進捗表を見る。
チケットを見る。
テスト結果を見る。
それと同じように、ときどき立ち止まって考えてみる。
みんな、本当に同じものを見ているだろうか。
会議は終わった。
チケットは緑だった。
誰も間違っていないと思っていた。
そして、数週間後。
完成した画面を見た誰かが言った。
「……あれ?」
プロジェクトの失敗は、その日に始まったのではない。
そのときにはもう、みんなが別々のものを作り始めていた。
よろしかったら、こちらもどうぞ。
マガジンの玄関はこちらです
よろしければ、ここから全体の流れをご覧ください。
全体の玄関はこちらです
ほかのテーマやシリーズへの入口を、ここにまとめています。