IBM WebSphere: DevOps demanda mudanças culturais em toda a empresa

A adoção do DevOps precisa ser acompanhada por uma mudança nas estruturas e na cultura das empresas para ser bem-sucedida. Geralmente, os métodos DevOps não funcionam sem um compromisso com a cultura DevOps, que implica em uma abordagem organizacional e técnica diferentes para todos os processos dessas organizações. O próprio Gartner estima que 90% das organizações que tentam fazer a transição para DevOps sem reformar sua cultura e estrutura estão fadadas ao fracasso. 

Tentar implementar técnicas DevOps sem organização dos processos de implementação é como automatizar o caos. A desorganização da falta de controle permanece, só que agora de forma automatizada.

Portanto, o DevOps envolve uma mudança cultural maior que rompe a separação entre desenvolvedores, operações e demais partes interessadas presentes nos negócios. Essa estratégia abrange não apenas as equipes de desenvolvimento de software e operações de TI, mas também equipes de segurança, conformidade, governança, risco e linha de negócios. A adesão de todos os setores da empresa nessa mudança cultural é necessária para inovar rapidamente e continuamente e para incorporar qualidade ao software desde o início.

Neste artigo, vamos destacar a importância de uma mudança na cultura de toda a empresa para a implementação do DevOps.

Mudanças em todas as funções dos negócios 

Os processos de DevOps incorporam mudanças em todo o ciclo de vida de desenvolvimento de software. Isso inclui os recursos de engenharia de infraestrutura, segurança, conformidade, governança, gestão de risco, linha de negócios, usuários finais e clientes. Além disso, o DevOps requer comunicação contínua, colaboração e responsabilidade compartilhada entre todas as partes interessadas de entrega de software.

O DevOps tem como alicerce principal a automação do desenvolvimento de aplicações e das rotinas de testes. As práticas e ferramentas ágeis automatizam etapas importantes e aumentam a eficiência e a padronização operacional. As equipes de alto desempenho automatizam mais o seu gerenciamento de configuração, testes, implantações e processos de aprovação do que outras equipes. O resultado é mais tempo para inovação e um ciclo de feedback mais rápido.

Essas soluções possibilitam substituir os sistemas legados, de baixa produtividade, altos custos de manutenção e que oferecem experiências negativas aos usuários. Elas permitem migrar e transformar aplicações legadas para os novos sistemas de nuvem, favorecendo assim a inovação e a agilidade dos negócios.

No nível técnico, o DevOps requer um compromisso com a automação para que possa manter os projetos em andamento e dentro dos fluxos de trabalho. O feedback e medição e análise dos resultados também são importantes para que as equipes possam acelerar continuamente os ciclos e melhorar a qualidade e o desempenho do software.

Na maioria dos casos, a melhor maneira de introduzir essa estratégia é dividi-la em equipes distintas para cada etapa do processo de DevOps. Para isso, é necessário planejar o feedback, sem fazer transferências ou aguardar aprovação de outras equipes. Quando colocadas no contexto de desenvolvimento ágil, a responsabilidade e colaboração compartilhadas são a base para ter um foco de produto compartilhado que tem um resultado valioso.

Quase todas as funções de negócios adjacentes fazem parte, em última análise, do processo de software. Por isso, elas também precisam evoluir junto com as equipes técnicas de entrega, sem limitar o DevOps a um conjunto de práticas isoladas em nichos. Nessa perspectiva, são necessárias mudanças estruturais, culturais e comportamentais em todas as áreas envolvidas no processo DevOps, sejam elas de TI, de negócio ou operacional. O objetivo é basicamente permitir que as pessoas colaborem umas com as outras para alcançar as finalidades dos negócios.

A metodologia DevOps contribuiu diretamente para a cunhagem do termo “Everything as Code”. Basicamente,  pensar em “tudo como código” se resume em automatizar todos os processos da estrutura de TI a partir de códigos reutilizáveis gerenciados em um repositório de controle de versão. 

Ao tratar todos os elementos como código, a metodologia de gerenciamento e controle de soluções é padronizada. Desse modo, a colaboração entre os profissionais de Desenvolvimento e Operações é facilitada, gerando