ソリューションの開発中は、少なくとも3つの異なる環境が必要です。
- 開発:プログラマはいつでも自由に変更を加えて変更をプッシュし、コードをすばやくテストして他の変更と統合することができます。何も壊す恐れはありません。これはTESTデータベースとサービスに接続されています。
- UAT:ハードウェアに関する本番環境の「できるだけ良い」コピーが含まれている必要があるため、開発者は敬意を持って扱う必要があります。ただし、この環境は本番データの編集可能なコピーでUATデータベースに接続されている点が異なります。 Q&Aチームとユーザーの両方が、本番環境への変更を検証するために使用します
- 生産:本当の取引。
私はに見てきたソフトウェア工学にこの質問、およびServerFaultの上でこの質問、および彼らがステージング環境の意味は何に異なるように見えます。また、主題に関するウィキペディアのページには、次のように述べられています。
ステージング環境の主な用途は、本番環境に適用する前に、すべてのインストール/構成/移行スクリプトと手順をテストすることです。これにより、本番環境へのすべてのメジャーアップグレードとマイナーアップグレードが、エラーなしで、最小限の時間で確実に完了します。
私にとって、ステージングはUATと同じです。UATでは、現実の世界に移行する前に、アプリケーションと展開の手順をテストする必要があります。そのため、本番環境にプッシュするのと同じ方法でUATに変更を加えてパッケージをプッシュします。完全に自動化され、本番環境で必要なすべてのセレモニーが行われます。
とはいえ、UAT環境とステージング環境の適切な違いは何ですか?
-
編集:明確にするために、私はインターネットアプリケーションでもイントラネットウェブサイトでも、Webアプリケーションの観点から考えています。「フォーム」アプリやモバイルアプリはありません。