11.0

View in English

11.0 第11部の導入: フロー: ディスカバリーとデリバリーのパイプライン

ソフトウェアが価値を届けるのは、良いアイデアが最初の思いつきから、本物のユーザーの手の中での測定された結果まで、すべての道を流れたときだけです。第11部は、そのフローを端から端まで扱います。組織は何を、なぜ築くかをどう決めるのか。検証されたアイデアを、動くソフトウェアに、安全かつ繰り返し可能にどう変えるのか。そして現実の結果を、次の決定にどうフィードバックするのか。これらは二つの順次の段階ではありません。継続的に並行して走る二つのパイプラインで、しばしばデュアルトラック開発と呼ばれ、その両方の下にフローの共有された数学的な理論があります。

大きなチームにとって、フローは価値の大半が勝ち取られあるいは失われる所です。デリバリーは優れているがディスカバリーが弱いチームを想像してください。間違ったものを効率的に築き、速く出荷し、ベロシティの目標を達成し、どの事業指標も動かしません。あるいは目標は明確だが、デリバリーが遅くリスクのあるチーム。その目標からフィードバックを奪います。そして待ち行列の数学を無視するチームは、平均値を軸に計画し、システムを熱くしすぎ、容量が埋まるにつれて爆発する待ち時間に、高くつく形で驚かされます。フローを明示的に、測定可能に、数学的に根拠づけることが、大きな組織が労力を成果につなげ続ける方法です。

企業と政府の文脈は、賭け金をさらに引き上げます。企業は共有の戦略に対して数十のチームを調整し、ずれた局所的な目標は無駄にされたポートフォリオへと複合します。政府のプログラムは、法定の義務づけに対して複数年の公的資金をコミットし、そこでは成果が実現しないなら「契約が言ったものを築いた」は弁明になりません。どちらにとっても答えは同じです。規律あるディスカバリー、産業化されたデリバリー、容量とフローの共有の言語。それが、意図を監査可能にし、逸話ではなく証拠で投資を正当化する方法です。

この部の章

  • 11.1 ディスカバリーパイプライン: 何を築くか、なぜかを決め、成功がどう見えるかを定義する仕事のフローです。問題、証拠、戦略を、目標と主要な結果(OKR)、重要業績評価指標(KPI)、明示的な品質特性(信頼性、パフォーマンス、セキュリティのような非機能の「-ility」)、リスクを下げる実験を通じて、優先順位づけされテスト可能な意図した成果の集合に変えます。
  • 11.2 デリバリーパイプライン: コードのコミットから本番の変更、測定された効果への産業化された道です。自動テスト、継続的インテグレーションと継続的デリバリー(CI/CD)、プログレッシブなデプロイを、小さく、元に戻せる、監査可能な変更を出荷し、機能したことを証明するアウトカムの指標を付ける、端から端までの一つの機械に組み立てます。
  • 11.3 待ち行列理論: フローの根底にある待ち行列の数学的研究で、少数の頑健な関係(最も重要なものはリトルの法則で、安定した待ち行列にある項目の平均数は、到着率に各項目がそこで過ごす平均時間をかけたものに等しいと述べます)を使って、リードタイム(仕事の項目の開始から終了までの経過時間)、スループット(単位時間あたりの完了数)、稼働率(容量がどれだけ十分に使われているか)、変動を、それらに驚かされるのではなく推論します。
  • 11.4 目標と主要な結果(OKR): 設定する目標です。OKRは、定性的で鼓舞する目標を、少数の測定可能でアウトカムに基づく主要な結果と組み合わせ、トップダウンとボトムアップで揃え、周期で運営し、0.0から1.0の尺度で誠実に採点し、野心が罰せられないよう報酬から離しておきます。
  • 11.5 重要業績評価指標(KPI): 持続させる尺度です。KPIは、継続的な健全性(先行対遅行、ゲーム化への防御)を追跡する、少数の揃えられ、所有され、対処可能な指標で、北極星の指標のもとの木に組織され、SLOやDORA指標のような運用上のものを含みます。
  • 11.6 バリューストリームマッピングと遅延のコスト: アイデアから価値までのフロー全体を見て、ボトルネックを見つけ、フロー効率を測り、それから遅延のコストと加重最短ジョブ優先で優先順位づけして、待つことの経済学が、最も声の大きい者が勝つ代わりに順序づけを駆動するようにします。

これらの章の相互関係

これらの章は一つのループを形成します。ディスカバリー(11.1)は、リスクが下げられ、よく枠づけられた仕事の用意された供給をデリバリー(11.2)に供給します。デリバリーはその仕事を出荷し、その実際の効果を測定します。そしてそれらの届けられた成果は、次の決定の証拠としてディスカバリーに再び入ります。ディスカバリーは何を、なぜに答え、デリバリーはどう安全に出荷し、どれだけ速く、実際に機能したかに答えます。どちらも他方なしには完全でなく、どちらも順次のゲートではなく継続的に走ります。

待ち行列理論(11.3)は、ループ全体の下にある数学的な基盤です。ディスカバリーの積み残しは待ち行列です。デリバリーのパイプラインは待ち行列の待ち行列(待ち行列に供給する待ち行列としてモデル化された複数段階のフロー)です。どちらも同じ法則に従います。リードタイムは仕掛かりの仕事をスループットで割ったものに等しく、待ち時間は稼働率が100%に近づくにつれて非線形に上がり、変動(作業負荷だけでなく)が遅延を生みます。それはプロダクトマネージャー、サイトリライアビリティエンジニア(SRE)、DevOpsチームに、容量計画と現実的な目標のための共有の語彙を与えます。到着率(仕事がどれだけ速く届くか)、サービス率(どれだけ速く処理されるか)、稼働率、待ち時間(作業ではなくキューで過ごされた時間)。

この部は外にもつながります。ディスカバリーの明示的な品質特性は、アーキテクチャの基礎(3.1章)とスケーラビリティ、パフォーマンス、レジリエンス(3.5章)のディスカバリー側の補完であり、7.3章と7.4章の分析と実験の仕組みに頼ります。デリバリーは他所で詳述された仕組みを組み立てます。テスト戦略(2.4章)、トランクベース開発(2.6章)、CI/CDとデプロイ戦略(8.1章)、インフラストラクチャ・アズ・コード(8.2章)、テストとプロセスの自動化(8.5章)、信頼性とSLO(サービスレベル目標、9.1章)。どちらのパイプラインもポートフォリオとプログラムの管理(10.1章)へ段階づけられ、待ち行列理論はそれらすべてを貫くフローと容量の決定の背後にある数学を提供します。