Ao longo da minha carreira, trabalhei em empresas que tinham uma coleção de ambientes diferentes para diferentes propósitos. Sempre tivemos mais ou menos nosso ambiente de área de trabalho, um ambiente de teste, um ambiente de controle de qualidade, um ambiente de teste e um ambiente de produção. Isso foi válido para servidores / aplicativos e quaisquer fontes de dados que estávamos usando.
Quando comecei na minha empresa atual, descobri que 90% dos aplicativos eram desenvolvidos em um ambiente de desktop com fontes de dados de produção ou diretamente no servidor de produção, dependendo da plataforma. Isso não foi particularmente surpreendente, pois fui contratado em parte para fazer alterações para melhorar o funcionamento da equipe de desenvolvimento, o que ficou claro em meu processo de entrevista. Lentamente, começamos a mudar a filosofia e, em breve, a maioria dos aplicativos poderia ser executada em um ambiente de desktop, teste ou produção. Não demorou muito tempo para aparecer também.
Agora, a maioria dos nossos desenvolvedores vê o benefício dessa metodologia e a defende com atenção. No entanto, temos vários aplicativos herdados que nunca foram migrados. Também temos vários programadores legados que pensam nisso como uma perda de tempo. Infelizmente, recebemos elogios, mas nunca a adesão total da gerência. Conseguimos o que pensávamos ser um compromisso de investir substancialmente nisso há cerca de um ano, mas nada se materializou apesar do considerável planejamento que colocamos nele. Agora estamos descobrindo que precisamos de mais e mais ambientes. Precisamos da ajuda das equipes de administração de servidores / rede para a instalação e da participação das partes interessadas da empresa para apoiar o ciclo de lançamento. Agora estamos em um local em que um projeto pode funcionar o que os desenvolvedores razoáveis considerariam "normalmente"
Eu adoraria apresentar um argumento completo, mas a gerência realmente não tem tempo e interesse em me ouvir até que haja um problema crítico. Não consigo realmente articular os benefícios simplesmente porque sempre me pareceu uma segunda natureza. Fiquei me perguntando se existem razões boas, simples e irrefutáveis para a separação de ambientes que levariam os gerentes sem experiência em desenvolvimento a apoiar essa idéia? . Existem bons recursos / literatura sobre o tema?