A adoção do DevOps é um processo complexo, e como não há receita pronta, é muito particular ao time, as tecnologias e investimentos realizados, aos processos, as disciplinas e do cenário particular. Depende da cultura, da maneira de medir resultados e da capacidade de reagir frente aos problemas e desafios. Um cenário que precisa evoluir se queremos ser mais produtivos e influenciar o negócio para se posicionar como organizações de alta performance.

Paradoxo com o xadrez e adoção do DevOps

hnz-consultoria-e-treinamentos-blog-devops-a-adocao-do-devops-e-seu-paradoxo-com-o-xadrez

Mas como fazer isso? Existe neste paradoxo DevOps, princípios e fundamentos que sustentam práticas e disciplinas, objetivos e métricas que permitem tomar boas decisões.  As metodologias de desenvolvimento de software têm se posicionado como estratégicas no movimento de inovação, mas existem muitos outros fatores que influenciam de maneira ativa este processo.

Os cenários existentes na TI das organizações apresentam uma dinâmica cristalizada, que muitas vezes é avessa às mudanças, e aí lidamos com as resistências de toda ordem.  Uma avaliação de cenário atual (assessment) e o mapeamento do fluxo de valor, permitem colocar as peças no tabuleiro para tomar decisões evolutivas. Mas quais peças? qual seria o nosso oponente?

Para conseguir explicar este processo, faremos um paralelo com o conhecido e enigmático jogo do xadrez. O jogo de xadrez é uma interessante metáfora de como adotar DevOps. Vamos nas explicações.

As peças do xadrez

Existe um modelo de capacidade apresentado no State of DevOps Report 2014, que foi evoluindo em 4 anos, ou seja, até 2017, cujos autores tinham o grande desafio de entender o que é uma organização de alta performance e quais são os fatores e variáveis que podem influenciar para conseguir esta evolução. Eles determinaram 24 práticas chaves, presentes em estas organizações de alto desempenho, que no cenário particular, podem estar em diferentes estados de capacidade.

São estas 24 práticas que podemos mexer, influenciar para evoluir a TI, evoluir a organização. Entre piões (que podem ser ferramentas), torres, bispos, cavalos rainha e rei, também temos peças no DevOps. O Report classifica 24 dimensões divididas em 5 pilares. No próximo artigo, iremos encontrar cada uma destas. Elas vão de práticas de desenvolvimento, repositórios, testes, infraestrutura, monitoração, segurança, implantação, etc, como também modelos de gestão e habilidades culturais.

O oponente

Quem será nosso oponente nesta metáfora de adoção do DevOps? O oponente no xadrez é aquele que dará uma reação aos movimentos que daremos no jogo. Ou seja, a reação da realidade do cenário atual. A cada movimento teremos uma reação, uma resposta, um feedback. A cada peça que movimentaremos, teremos uma reação da organização em seu estado atual, ainda tradicional.

As peças no tabuleiro

A posição do tabuleiro coloca as peças do xadrez em condições de vantagens ou desvantagens frente às peças do oponente. Peças que tem possibilidades de movimento, outras em posição de ameaças ou até imobilizadas. Um exemplo de uma peça travada é a arquitetura fortemente acoplada ou monolítica, que limita as ações na construção de equipes menores e autogerenciados, limita a inclusão de testes, limitar agilizar a compilação e a execução de testes, limita a velocidade de investigar causa raiz, etc. Assim, será necessário de ações conjuntas para avançar no jogo e flexibilizar esta peça, ela ficou fechada pelas peças do oponente.  Um outro ponto importe é que as práticas Devops estão relacionadas, assim como as peças do xadrez, existem dependências claras entre as peças, dependendo da sua posição relativa. O desenrolar de algumas peças, permitirão desenvolver outras.

Na nossa metáfora, a posição do tabuleiro está sustentada pela execução de avaliação do estado atual, um assessment destas 24 práticas junto com um mapeamento do fluxo de valor. Este trabalho permitirá entender quais práticas estão ameaçadas, quais peças estão mais livres, quais delas precisamos desenvolver primeiro, etc.

Análise da jogada

O  State of DevOps Report 2014 apresenta uma base de dependências e correlações entre estas práticas, o que permite analisar como podemos avançar a cada jogada.

A cada iteração evolutiva, a cada passo que damos, temos reações novas do oponente que precisamos analisar. Assim como o jogo, a adoção do DevOps não é linear. Teremos ciclos curtos que nos permitem observar, analisar e jogar.  Asim, podemos analisar o tabuleiro, a posição das peças, o feedback do oponente. Claramente, a cada jogada teremos que repensar o próximo passo. Esse é o desafio do jogo.

Avaliação do Jogo para a vitória

Como saberemos se estamos avançando no jogo, vencendo nosso oponente em uma condição de melhoria. O Report nos propõe monitorar:

– Métricas de Entrega de Software

Frequência de implantação

Lead Time para mudanças

MTTR (Mean Time to Restore)

– Taxa de falha de mudanças

– Métricas de mudança cultural

São utilizados critérios da categorização de Westrum (culturas Patológica, Burocrática e Generativa).

Importante não avaliar somente uma peça ou uma ação e sim, o aumento da capacidade das peças como resultado do trabalho evolutivo com o negócio.

Como fazer uma jogada

Uma adoção DevOps usa normalmente técnicas embasadas em Lean de análise de fluxo valor, como por exemplo, Teorias das Restrições. A otimização do fluxo será os pontos de gargalos, de desperdícios que irão trazer ganhos. Assim temos o tabuleiro (modelo de capacidade da situação atual), MFV e sua análise para poder fazer uma boa jogada. A cada movimentação de peça, ou seja, a cada movimento para evoluir uma ou outra das 24 práticas chaves, estamos indo para mudar o cenário da TI e do negócio.

Jogos mestres

Sabemos que para aprender a jogar bem xadrez, precisamos estudar, tanto o potencial de movimentação de cada peça, como o momento e as etapas do próprio jogo: se é o momento da partida, o momento do jogo central e o momento da finalização. Talvez encaixe aqui uma metáfora dada por 3 maneiras apresentada no Manual DevOps: Fluxo, feedbacks e organização de aprendizado. Sabemos que será necessário estudar, fazer cursos e talvez alguma certificação. Estudar partidas de Capablanca, Alekhine, Fisher, Karpov, Kasparov, como os casos de sucesso da Netflix, Google, Amazon, Facebook, os unicórnios DevOps. Podemos assistir a eventos como o DevOpsDays, podemos participar de meetups. Há também uma vasta bibliografia.

Lembre-se, nunca poderemos copiar o que outra organização fez, assim como um jogo de xadrez nunca será igual a aquele do mestre jogando, mas podemos aprender com as experiencias do outro em cada case, em cada jogo.

Vamos aplicar este modelo na sua organização? Vamos construir o mapa, visualizar este tabuleiro, e evoluir em forma racional frente aos avanços e feedback do negócio, em um claro movimento para reposicionar o negócio no mercado de maneira estratégica? Vamos nos divertir com este xadrez do DevOps?

Leave a Reply