DevOps tem a meta principal melhorar a integração entre desenvolvedores de softwares e a equipe de infraestrutura. Em uma TI tradicional, a comunicação entre os dois sujeitos ainda é muito difícil: desenvolvedores são cobrados por entregar valor na forma de funcionalidades em aplicações, enquanto a operação (infra) é cobrada por manter a estabilidade do ambiente. Ambos são pressionados pela empresa em direção a esses objetivos, mas em uma TI tradicional eles parecem opostos.
Com o modelo de produção antigo este conflito é uma consequência natural: desenvolvedores têm pouco ou nenhum contato com o ambiente produtivo de suas entregas, assim como o formalismo imposto pelos silos operacionais tornam cada iteração uma repetição de problemas recorrentes.
Mas a prática e ferramental DevOps permitem que essa comunicação seja facilitada, modificando completamente as fronteiras de responsabilidade e favorecendo o trabalho de ambos os times, tornando muito mais fluida a entrega de valor no ambiente de tecnologia dentro de uma empresa.
Como era antes do DevOps?
Para começar a entender o modelo antigo de produção tecnológica, vamos lembrar do nosso ensino médio quando estudamos Revolução Industrial. Existia uma grande demanda por produtos manufaturados e foi necessária uma espécie de esteira de montagem para agilizar o processo.Essa lógica também foi implementada na construção de software no modelo em cascata, que consistia no levantamento de requisitos, projeto, implementação, teste, implantação e manutenção. Frequentemente (muito mesmo!) ele gerava problemas de toda ordem.
Um dos problemas é que a tecnologia possui um dinamismo avassalador, que faz com que os requisitos sejam alterados a todo o tempo. Outra dificuldade é que o cliente dificilmente sabe exatamente o que quer quando pede um software – e mesmo quando sabe, frequentemente está errado, pois o que o usuário final realmente precisa pode ser ainda diferente.
Por essa razão, fez-se necessária a criação de metodologias ágeis para conduzir projetos de software, e estas mesmas metodologias demandaram práticas e ferramentas totalmente diferentes das que estavam em uso até então, reordenando completamente as fronteiras que definiam os papéis de desenvolvimento e infraestrutura. Como dissemos no início do texto, não existe uma fórmula mágica de fazer DevOps, mas vamos indicar as práticas mais comuns e suas ferramentas. Confira abaixo!
União DevOps/Agile
Você se lembra quando falamos do problemático modelo de desenvolvimento em cascata? Ao longo dos anos várias outras metodologias foram experimentadas pela indústria de TI. Os métodos ágeis têm a hegemonia atual porque assumem explicitamente que a produção de aplicações é um ciclo contínuo e que o excesso de formalismo na coleta de requisitos é perda de tempo.A prática DevOps possui algumas diretrizes: Algumas utilizam ferramentas que propiciam colaboração e integração contínua entre Desenvolvimento e Infraestrutura. Elaboramos um esquema abaixo que ilustra de forma resumida a adoção de DevOps, mas ao longo do nosso conteúdo explicaremos melhor pontos interessantes na hora de adotar a prática.
