Em tempos de rápidas transformações e necessidade constante por inovação digital, executivos de TI e de áreas de negócio buscam unir forças para otimizar processos e garantir entregas contínuas de valor para seus clientes. A adoção e os benefícios do Scrum já são amplamente difundidos, mas essa metodologia sozinha não abrange todo o ciclo de vida de um produto de tecnologia, suas necessidades e times envolvidos.
Dessa forma, a implementação do DevOps surge com a proposta de minimizar ainda mais os silos organizacionais e estabelecer uma melhor integração, comunicação e cooperação entre as áreas de desenvolvimento e operações.
Como o DevOps contribui para expansão da mentalidade ágil?
Para o Gartner, o DevOps foca na entrega rápida dos serviços de TI utilizando metodologias ágeis e Lean por meio de uma abordagem orientada ao sistema. Além da entrega rápida e contínua de software, o DevOps busca fazê-lo de forma confiável e segura para garantir a estabilidade dos sistemas, mantendo a velocidade da entrega.
O envolvimento das equipes de desenvolvimento e operações gera um pensamento holístico durante todo o processo e ajuda a identificar possíveis problemas de viabilidade técnica de forma antecipada. A partir dessa integração, é possível minimizar erros e viabilizar um ambiente mais colaborativo e transparente.
Principais elementos para adoção do DevOps:
Utilizando como base o Ágil Escalado (ou SAFe, no inglês Scaled Agile Framework), apresentamos abaixo cinco elementos principais para a adoção do DevOps:
Fonte: traduzido e adaptado de Scaled Agile®.
- Cultura: a adoção de uma nova metodologia mexe com a cultura da organização. No DevOps, as equipes precisam trabalhar em conjunto e compartilhar conhecimento para entregar valor ao cliente. Ainda assim, não é fácil encontrar o equilíbrio entre as necessidades das áreas de desenvolvimento e de operações, o que pode ocasionar resistências ao longo do processo.
- Automação: o DevOps utiliza plenamente a automação, pois classifica os processos manuais como um risco à operação. Por isso, são exploradas técnicas de testes automatizados que encaram a infraestrutura como commodities, trabalhando com controle de versões e diversas ferramentas de integração, monitoramento e detecção de vulnerabilidade. Essas práticas são aplicadas para proporcionar uma entrega rápida, segura e escalável.
- Fluxo Lean: o DevOps busca minimizar o desperdício na cadeia de entrega ao diminuir o tempo entre a concepção e a implantação de uma solução. Com mudanças mais constantes do que em metodologias tradicionais, é explorada a entrega em pequenos lotes. Por isso, é importante um gerenciamento próximo das filas de desenvolvimento e implantação, garantindo que serão priorizadas atividades que gerem valor.
- Medição: no DevOps, a medição ajuda a entender a eficácia e a eficiência da entrega ao proporcionar visibilidade dos pontos que precisam ser aprimorados. O State of DevOps de 2019, publicado pelo Google, analisa quatro indicadores de performance para classificação da maturidade na adoção do DevOps. São eles:
- Lead time para as mudanças
- Frequência de implantações
- Taxa de falha das mudanças
- Tempo para restauração do serviço
- Recuperação: as falhas são parte esperada do processo de desenvolvimento e o DevOps busca errar de forma segura. Isso é feito de forma a minimizar impactos, com implantações de baixo risco, construção de planos de recuperação sólidos e capacidade da equipe de corrigir as falhas e retornar a um estado sistêmico estável de forma ágil. A infraestrutura e arquitetura, assim como os processos internos, devem estar aptos para possibilitar esta rápida recuperação.
Como o DevOps e o Scrum podem se relacionar no dia a dia
Fonte: traduzido e adaptado de 14h Annual State of Agile report (State of Agile, 2020).
Ao combinar o Scrum com o DevOps, o Time Scrum deve aprimorar a concepção do backlog do produto buscando o alinhamento e a visibilidade das equipes de operações quanto aos requisitos não funcionais. Isso exigirá ainda mais flexibilidade e conhecimento técnico para que sejam abordados temas como desempenho, arquitetura e, possivelmente, até diretrizes de rollback.
Na prática, o DevOps também pode ajudar o Product Owner a compreender mais sobre os requisitos não funcionais para que possam ser mapeados corretamente e discutidos em reuniões de planejamento da sprint ou de refinamento do backlog.
Já nas reuniões diárias, impedimentos e problemas relacionados à arquitetura, plataformas de suporte, integrações e aplicativos são assuntos que devem ser colocados em pauta, assim como o alinhamento com as áreas envolvidas.
Além disso, a cultura DevOps prevê ciclos curtos de entrega de software assim como as sprints. Durante as etapas de execução, os desenvolvedores focam em atualizações contínuas dos softwares, com base em ferramentas que automatizam testes, liberando incrementos com mais agilidade e maior frequência. As soluções desenhadas têm aperfeiçoamento constante a fim de reduzir falhas e outros problemas que possam comprometer a usabilidade do software e a experiência do usuário.
As reuniões de revisão e retrospectiva da sprint continuam seguindo os princípios ágeis de inspeção e adaptação, fundamentadas na criação de uma cultura de aprendizagem e experimentação contínua. Essas reuniões, assim como todo o processo, amplificam os ciclos de feedback para que as correções necessárias possam ser feitas constantemente.
Conclusão
Com o amadurecimento da adoção de metodologias ágeis e maiores exigências em relação à entrega de valor e continuidade do negócio, a combinação do DevOps com o Scrum representa uma oportunidade para gerar sinergia e ampliar o mindset ágil nas organizações.
O DevOps pode ser explorado de forma a proporcionar maior visibilidade e transparência durante todo o ciclo do produto em contextos que já utilizam Scrum. Além disso, o planejamento iterativo entre as equipes torna mais fácil a adaptação em caso de mudanças e os feedbacks contínuos dos clientes geram valor desde o início do projeto, diminuindo os riscos associados ao desenvolvimento e à operação.
Quer saber como a Bridge pode auxiliar sua organização em projetos ágeis? Agende um horário com um de nossos especialistas.
Mariana Vitali é gerente de projetos da Bridge & Co. Possui formação em Engenharia de Produção pela UFRJ e certificações Scrum Master, Product Owner, Scrum Foundation e ITIL. Gerencia equipes com foco em gestão de processos de TI e negócio, projetos e gestão de serviços de TI em clientes dos setores público e privado.
Renata Dannemann é líder de projetos da Bridge & Co. Possui formação em Engenharia de Produção pela PUC-RJ, MBA em Gerenciamento de Projetos e certificação Scrum Master pela Scrum.org. Atua em projetos que abordam metodologias tradicionais e ágeis principalmente nos setores de varejo e saúde.