top of page

Chapter 5 
開発環境構成ルール

Chapter 5

このChapterで定義するのは、
開発環境を用途と責任で明確に分離するためのルールである。

環境を分ける目的は、
動かすためでも、見せるためでもない。

判断・実験・説明・本番運用を混在させないこと
それ自体が目的である。

5-1. 環境は「技術」ではなく「責任範囲」で分ける

環境分離は、
インフラや設定の都合で行うものではない。

本Wikiでは、
環境=責任範囲と定義する。

  • 何をしてよい環境か

  • 何をしてはいけない環境か

  • 事故が起きた場合、誰の責任か

これを明確にするために、環境を分ける。

5-2. Dev 環境の役割

Dev は、
実装と実験のための環境である。

  • コードを書く

  • 試す

  • 壊す

ことを前提とする。

Dev 環境のコードは、
未確定の判断を含んでいてよい。

5-3. Staging 環境の役割

Staging は、
判断結果が正しく統合されているかを確認する環境である。

  • 複数判断の組み合わせ

  • 非機能要件の確認

  • リリース前の最終チェック

を行う。

Staging では、
新しい判断を追加してはいけない。

5-4. Demo 環境の役割

Demo は、
説明と合意形成のための環境である。

  • 顧客への説明

  • 関係者への共有

  • 操作イメージの提示

が目的であり、
検証や実験の場ではない。

Demo 環境のコードは、
見せるために整えられていてよいが、
本番運用に混入してはならない。

5-5. Production 環境の役割

Production は、
実運用のための唯一の環境である。

  • 確定した判断のみが存在する

  • 実験コードは存在しない

  • 説明用の調整は行わない

Production に入るコードは、
すでに判断が完結しているものだけである。

5-6. 環境を混在させてはいけない理由

環境を混在させると、

  • どこで何を確認したのか分からなくなり

  • 誰の判断で入ったコードか不明確になり

  • 事故時の切り分けができなくなる

環境分離は、
トラブルを防ぐためではなく、
トラブル時に即断するための構造である。

まとめ

  • 環境は用途と責任で分ける

  • Dev は実装と実験の場

  • Staging は検証と統合確認の場

  • Demo は説明と合意形成の場

  • Production は実運用のみ

  • 判断・実験・説明を混在させない

bottom of page