Adotando o DevOps e CALMS

Já falamos em posts anteriores sobre a Jornada DevOps, os conceitos iniciais e a Cultura DevOps na organização. Dando continuidade a parte teórica, o acrônimo CALMSCulture, Automation, Lean, Measurement and Sharing, criado por Jez Humble, é um framework comumente utilizado para análise da estrutura organizacional e prontidão da organização para adoção de DevOps..

O framework engloba todos os stakeholders em DevOps, incluindo os responsáveis de produto, operações de TI, QA e equipes de desenvolvimento. Também apoia os gestores a avaliarem se a empresa está pronta para o DevOps, e se não, o que precisa ser o que precisa ser mudado.

Algumas leituras associam o CALMS como alternativa ao ITSM (Information Technology Service Management), abordagem estratégica para os processos de TI, mais relacionada ao ITIL, e considerada por alguns muito rígido e incompatível com DevOps. O CALMS vem como uma forma de tratar as diferenças entre as duas abordagens.

Os cinco pilares do CALMS para o DevOps são:

CULTURA
A cultura da responsabilidade compartilhada e colaboração. Começar mudando as pessoas, adequando o mindset para ter foco em objetivos comuns e colaborar independentemente da área de especialização.

responsabilidade-compartilhada

AUTOMATION
O ideal é automatizar tudo que for possível. O trabalho manual cria processos repetitivos e não confiáveis.

automated-devops

LEAN
Relacionado a melhoria no desempenho dos processos da empresa, eliminando desperdícios. O foco é no valor, redução de custos e no cliente.

  • Foco no valor e no cliente
  • Eliminar desperdício
  • Entregas menores e contínuas
  • Aumentar a aprendizagem

Lean-casa

MEASUREMENT
O monitoramento das aplicações e de infra podem eliminar o finger-pointing. As métricas são fundamentais para direcionar as equipes. Entre as principais estão: Throughput (capacidade de vazão do time) com indicadores de frequência de deployment e lead timeStability (estabilidade destas implementações) com MTTR e taxa de falha em mudanças.

  • Medir tudo que for possível
  • Apresentar melhorias
  • Monitoração e controle

Continuous Delivery (livro de Jez Humble e David Farley): “Feedback is at the heart of any software delivery process. The best way to improve feedback is to make the feedback cycles short and the results visible. Measure what really matters… Once you know the cycle time for your application, you can work out how best to reduce it. You can use the Theory of Constraints to do this“.

SHARING
Compartilhar é essencial para melhorar o fluxo de comunicação e o trabalho em equipe. O feedback loop deve ser estabelecido em todos os estágios de fluxo de valor.

  • Compartilhar
  • Colaborar
  • Transparência
  • Feedback

feedback-loop