<aside> 💬
Contexto: O sistema da Chapecoense está instalado no seu computador e funcionando perfeitamente. Você mostra para o diretor e ele aprova. Aí você instala no computador da secretaria do clube — e nada funciona. Banco de dados com nome diferente, porta bloqueada, Node.js desatualizado. O que aconteceu? Você esqueceu que o ambiente do cliente não é o seu ambiente.
</aside>
No contexto de sistemas, ambiente é o conjunto de infraestrutura, configurações e dados onde um sistema está rodando.
Dois computadores diferentes são dois ambientes diferentes — mesmo que tenham o mesmo sistema operacional e o mesmo software instalado. Pequenas diferenças de configuração podem causar comportamentos completamente distintos.
Por isso, na área de TI, é prática padrão separar o trabalho em três ambientes distintos, cada um com um propósito específico.
É onde o sistema é criado e modificado. Roda na máquina do desenvolvedor ou numa máquina dedicada à equipe de desenvolvimento.
Características:
Quem usa: desenvolvedores
Exemplo na Chapecoense: o sistema rodando no notebook do desenvolvedor com um banco chamado chapecoense_dev com 5 sócios fictícios para testar as funcionalidades.
É onde o sistema é validado antes de ir para o cliente. Simula o ambiente de produção o mais fielmente possível.
Características: