ソフトウェア開発の4つの層

ソフトウェア開発では伝統的に、以下の4つの層でアプリケーションを作成します。
  • Development:開発
  • Integration:統合
  • Staging:ステージング
  • Production:本番
Development:開発
省略可能です。これは、個々の開発者や小規模なチームの作業環境です。他の層と分離した環境で、開発者はチームの他のメンバーに悪影響を与えずに、コードに大胆な修正を試すことができます。
Integration:統合環境
すべての開発者がコードの修正をコミットする共通の環境です。 この環境の目標は、ステージング環境に昇格される前に、プロジェクトチーム全体の作業を結合し検証することです。 開発環境と統合環境は統合が可能です(開発者がソースコードのローカルコピーを使用しない場合→つまり構成管理ツールとマメに同期を取っているのなら要らないということかな)
Staging:ステージング環境
ステージング環境は、可能な限り本番環境と同一にした環境です。 ステージング環境の目的は、可能な限り本番環境のシミュレートをすることです。 ステージング環境は、デモ/トレーニング環境としての役目を兼ねることができます。
Production:本番環境
本番環境は、単一のマシンまたは多くのマシンを含む巨大なクラスタを含めることができます。

※以下のサイトの内容の一部を翻訳しました。
Disruptive Library Technology Jester

※統合環境は「IT」と呼んだり、2つある場合には「IT-a」「IT-b」と呼ぶ場合もある。