私のキャリアを通して、私はさまざまな目的のためにさまざまな環境のコレクションを持つ企業で働いていました。デスクトップ環境、テスト環境、QA環境、ステージング環境、実稼働環境は常に多かれ少なかれありました。これは、サーバー/アプリケーションと私たちが使用していたデータソースの両方に当てはまりました。
現在の会社で仕事を始めたとき、アプリケーションの90%が実稼働データソースに対するデスクトップ環境で開発されたか、プラットフォームに応じて実稼働サーバーで直接開発されたことがわかりました。これは特に驚くことではありませんでした。開発チームの機能を改善するために一部変更を加えるために雇われたため、インタビュープロセスから明らかでした。私たちはゆっくりと哲学を変え始め、ほとんどすぐに、ほとんどのアプリをデスクトップ、テスト、または実稼働環境で実行できました。ステージングもまたそう長くはかからなかった。
現在、ほとんどの開発者はこの方法論の利点を理解し、慎重に防御しています。ただし、移行されていない多くのレガシーアプリがあります。また、これを時間の無駄だと考える多くのレガシープログラマもいます。残念ながら、リップサービスは受けましたが、経営陣からの完全な賛同を得ることはありませんでした。約1年前にこれに実質的に投資するというコミットメントだと思いましたが、かなりの計画を立てましたが、何も実現しませんでした。今、私たちはますます多くの環境を必要としていることに気付いています。セットアップにはサーバー/ネットワーク管理チームの支援が必要であり、リリースサイクルをサポートするにはビジネス関係者の参加が必要です。合理的な開発者が「通常」と考える機能をプロジェクトが機能できる場所になりました
私は完全な議論をしたいと思いますが、経営陣は重大な問題があるまで私を聞くことに時間と関心を本当に持っていません。単にそれが私にとって常に第二の性質であるように思えたので、私は単に利点を実際に明確にすることはできません。開発経験のないマネージャーがこのアイデアをサポートできるようにする環境を分離するための良い、シンプルで反論できない理由があるのだろうかと思っていましたか?。トピックに関する優れたリソース/文学はありますか?