ポイント・オブ・ノー・リターンとは
ポイント・オブ・ノー・リターンとは、一度そこを越えると、元の状態・元の場所・元の関係・元の選択肢へ戻れなくなる境界点である。
- 日本語では「帰還不能点」「後戻りできない地点」「不可逆点」と訳される。
- 単なる重要な分岐点ではない。
- 重要なのは、選択後に元に戻すコストが極端に高くなる、または物理的・心理的・制度的に戻れなくなることである。
受託SI開発におけるポイント・オブ・ノー・リターン
受託SI開発におけるポイント・オブ・ノー・リターンとは、プロジェクトの前提が誤っていると判明しても、契約・納期・予算・組織・技術的制約によって、合理的な撤退や計画変更ができなくなる境界点である。
受託SIの構造
受託SI開発には、特徴的な構造がある。
- 契約によって、成果物・金額・納期に対する約束が発生する
- 顧客と受託側で、費用負担・意思決定権限・情報量が異なる
- プロジェクトが進むにつれて、設計・実装・試験・移行の成果物が相互依存する
- 投入済みの工数だけでなく、残された期間と人員が変更可能性を制約する
- 問題が発覚しても、顧客への説明、契約変更、体制変更に時間がかかる
重要なのは、失敗が確定する地点と、失敗を回避できなくなる地点は異なるということである。
例えば、結合テストで重大な設計不備が発見されたとする。技術的には修正できる。しかし、残された納期、予算、人員では修正と再試験を完了できない。
この場合、設計不備そのものがポイント・オブ・ノー・リターンなのではない。
設計不備を修正できるだけの時間的・経済的余力を失った時点が、ポイント・オブ・ノー・リターンである。
1.受託SI開発に存在する5つの不可逆性
| 不可逆性 | 境界を越える典型的な事象 | 失われる選択肢 |
|---|---|---|
| 契約的不可逆性 | 固定価格・固定納期で契約を締結する | 無条件でのスコープ・金額変更 |
| 経済的不可逆性 | 残予算が修正・再試験に必要な費用を下回る | 当初予算内での正常化 |
| 時間的不可逆性 | 残期間が最短の修正・検証期間を下回る | 当初納期を維持した品質確保 |
| 技術的不可逆性 | 誤った設計に多数の機能や外部システムが依存する | 局所修正による設計変更 |
| 組織的不可逆性 | 顧客・経営層・外部関係者が現行計画を前提に行動する | 関係者への影響を伴わない計画変更 |
これらは同時に発生するとは限らない。
例えば、時間的には手遅れでも、顧客と再交渉して納期を延長できれば、プロジェクト自体は正常化できる。一方、契約変更が可能でも、移行先システムがすでに稼働していれば、技術的な原状回復は難しい。
つまり、ポイント・オブ・ノー・リターンは単一の工程ではなく、何を守るための選択肢が、いつ失われるのかによって定義される。
2. 開発工程におけるポイント・オブ・ノー・リターン
工程ごとの代表的な不可逆点を整理すると、次のようになる。
| 工程 | 不可逆点になりやすい事象 |
|---|---|
| 提案・見積 | 不確実な要件を固定金額・納期で約束 |
| 要件定義 | 未解決の業務課題を残したまま要件確定 |
| 外部設計 | 顧客承認後、後続開発が一斉に開始 |
| 詳細設計 | 未検証の設計に多数の機能が依存 |
| 実装 | 未検証部分を残して大量のコードを生産 |
| 結合試験 | 残期間では欠陥の修正と再試験ができない |
| 移行・本番 | データや外部業務の状態が不可逆に変化 |
3. なぜ受託SIでは、不可逆点を越えても止まらないのか
ここには、技術よりも経営・組織の問題がある。
- サンクコストの誤認
- 「すでに数億円を使っているのだから、ここで止められない」と考える。
- 本来は、過去の支出ではなく、今後の追加費用と期待成果で判断すべきである。
- 契約と責任の固定化
- 計画変更が契約変更や責任分界の議論を引き起こす。
- その調整を避け、現場の努力で吸収しようとする。
- 進捗指標の錯覚
- 製造完了率90%でも、正常に動作する業務シナリオは50%かもしれない。
- 作業の消化率を、完成可能性と混同する。
- 報告の遅延
- 問題が確定するまで上位層へ報告しない。
- 確定した時点では、対応のための余力が失われている。
- 撤退という選択肢の欠落
- 当初計画の達成のみを成功と定義する。
- 縮小・延期・段階導入・中止が現実的な代替案として管理されない。
ソフトウェアプロジェクトには、失敗の兆候があっても投入を継続してしまう Escalation of Commitment(コミットメントのエスカレーション) という研究領域がある。
2000年のMIS Quarterly掲載研究では、サンクコストやリスク認識が継続判断に影響することが示されている。
ここから導かれる問題は、プロジェクトを継続すべきかという経営判断が、プロジェクトを継続できるかという技術判断に置き換わってしまうことである。実に興味深いが笑えない。
4. 生成AIによる開発高速化は、不可逆点を後ろへ移動させるのか
必ずしもそうならない。
AIによって実装速度が上がっても、設計の妥当性検証、顧客合意、システム統合、受入試験が同じ速度で進むとは限らない。
すると、次の現象が起きる。
- AIによって実装済みコードが急速に増える
- 未検証の設計や仕様に依存するコードも増える
- 統合・レビュー・試験がボトルネックになる
- 設計不備が発見されたときの影響範囲が拡大する
- 修正のために必要な資源が増え、不可逆点が前倒しになる
つまり、AIは開発速度を高める一方で、誤った前提を固定化する速度も高め得る。
この対策は、単純に実装速度を抑制することではない。
- 代表的な業務シナリオを早期にE2Eで検証する
- OpenAPIなどの契約を先に検証する
- 設計変更時の影響範囲をAIで分析する
- 未検証の成果物を下流工程に大量投入しない
- 完了した作業量ではなく、検証済みの価値を進捗として扱う
実装の高速化より、誤りを発見して修正できる状態をどれだけ長く維持できるかが重要になる。
シフトレフトが大事。
6. SIerが管理すべき指標を変える
従来の進捗管理は、「計画に対してどこまで進んだか」を中心に置いている。
しかし、ポイント・オブ・ノー・リターンを管理するためには、「現在の計画を変更する自由がどれだけ残っているか」を把握する必要がある。大雑把に言うとバッファの把握と言える。が、もう少し分解して指標を持ちたいところ。
| 従来の管理指標 | 加えて管理すべき指標 |
|---|---|
| 設計書の完成率 | 未確定の重要設計判断数 |
| 実装進捗率 | E2E検証済み業務シナリオ率 |
| 試験消化率 | 残欠陥の修正・再試験必要期間 |
| 予算消化率 | 残予算とETCの差 |
| スケジュール差異 | クリティカルパス上の残余余裕 |
| リスク件数 | 対応期限が不可逆点より前にあるリスク数 |
特に追加すべきなのは、意思決定の最終期限である。
例えば、外部IFの仕様が11月末までに確定しなければ結合試験に影響する場合、「11月末に決めればよい」のではない。
仕様の反映と検証に3週間、調整に1週間必要なら、実際の意思決定期限は10月末である。
リスク管理票には、発生確率や影響度だけでなく、「この日を越えると、どの選択肢を失うのか」を記載すべきである。
これらはすでにプロマネは暗にやっていると思う。
7. 最も重要なのは、不可逆点を越えないことではない
すべての不可逆性を避ければ、プロジェクトはいつまでも前へ進まない。
契約しなければ開発を始められない。設計を決めなければ実装に進めない。本番移行を決断しなければ顧客は価値を得られない。
したがって、ポイント・オブ・ノー・リターンは、越えてはいけない地点ではなく、越えるための条件を明確にすべき地点である。
受託SI開発において必要なのは、次の3つのPM能力である。
- 不可逆点を特定する能力:何を決定・実行すると、どの選択肢が失われるのかを明らかにする。
- 不可逆点の直前まで検証する能力:契約、設計確定、大量実装、本番移行の前に、重要な不確実性を解消する。
- 不可逆点を越える決断をする能力:残余リスクを認識し、責任と対応策を明確にしてから前進する。
まとめ
受託SI開発における真のポイント・オブ・ノー・リターンは、赤字が確定する日でも、納期遅延が判明する日でもない。
問題を認識し、計画を修正することが合理的であると分かっていながら、その修正を実行するための選択肢をすでに失っている地点である。
そして、優れたプロジェクトマネジメントとは、計画通りに進ませる技術だけではない。
計画が間違っていたと分かったとき、まだ引き返せる状態を維持するプロジェクトマネジメント技術でもある。また、計画が間違っていて引き返せないとしてもQCDの落とし所を見つけて辿り着かせること。プロマネこわい。
