Scrum é um dos métodos de desenvolvimento de software mais usados na atualidade. A sua ampla adoção se deve a sua simplicidade, poucos papéis, poucos artefatos, poucos ritos, sendo assim, fácil de entender.

Escopo

O escopo é estruturado em um conjunto de histórias que compõem um backlog do produto.

A diferença do modelo cascata clássico que fixa o escopo para determinar prazos e custos, os modelos ágeis pelo geral fixam intervalos de trabalho (sprint) determinando iterações a custo fixo (equipe pré-definida) deixando aberto o escopo, que pode ser mudado ao longo do desenvolvimento do produto.

A cada início de iteração ou sprint é planejado o quais as histórias serão absorvidas pela equipe (gestão de escopo), a partir das prioridades do negócio (product owner), esclarecimento e narrativas das histórias e as estimativas do time, gerando um compromisso do time em relação às entregas no fim da sprint.  As histórias são desmembradas em atividades ou tarefas técnicas (gestão de tempo) para refinar o que precisa ser feito.

Reuniões

Diariamente são realizadas reuniões rápidas para conseguir analisar avanços, impedimentos e planejar o dia. Estas informações são registradas em quadros de acompanhamentos como burndown e kanban.

No fim de cada interação são realizadas reuniões de Revisão das Entregas, para avaliar os resultados do trabalho e ter feedback do negócio. Também é realizada uma reunião de retrospectiva, que permite avaliar melhorias no processo na iteração para estimular o aprendizado do time.

Como podemos adotar Scrum para DevOps?

Uma das disciplinas que podem ser adotadas é a Integração Contínua, junto com testes unitários e TDD. Aumentar a qualidade do software com testes automatizados, diminuir o tamanho do lote e envolver outros profissionais que estão fora do desenvolvimento para poder transitar em forma segura a produção é um dos requisitos para adotar DevOps. Isto nos permite quebrar alguns limites discretos do método para evoluir em uma base contínua, do fluxo de uma peça. Por isso que se tentar automatizar os processos de entrega usando um pipeline de implantação.

O resultado destas práticas, é que alteramos em forma paulatina um modelo orientado à capacidade (da equipe absorver histórias por sprints) a um modelo orientado a fluxo, com os princípios lean. DevOps visualiza o trabalho de toda a cadeia de entrega, estabelecendo mecanismos de colaboração efetivos para aumentar a qualidade, evitar desperdícios e estimular a responsabilidade técnica do trabalho.

Vamos comentar mais detalhes destas mudanças nos próximos post.

Leave a Reply