O que é?
“Uma maneira melhor de construir produtos” (scrum.org)
O Scrum é um framework no qual as pessoas podem lidar com problemas complexos de adaptação, ao mesmo tempo em que fornecem produtos de maneira mais produtiva e criativa.
O Scrum em si é uma estrutura simples para colaboração eficaz da equipe em produtos complexos. Os co-criadores do Scrum, Ken Schwaber e Jeff Sutherland escreveram o Guia do Scrum para explicar o Scrum de forma clara e sucinta. Este guia contém a definição de Scrum. Essa definição consiste nos papéis, eventos, artefatos e regras da metodologia.
Scrum é:
- Leve
- Simples de entender
- Difícil de dominar
A estrutura desafia as premissas da abordagem tradicional e sequencial do desenvolvimento de produtos e permite que as equipes se organizem, incentivando a localização física ou a colaboração online estreita de todos os membros da equipe, bem como a comunicação cara-a-cara diária entre todos os membros da equipe e disciplinas envolvidas.
Um princípio chave do Scrum é o duplo reconhecimento de que os clientes mudam de idéia sobre o que desejam ou precisam (geralmente chamado de volatilidade de requisitos) e que haverá desafios imprevisíveis – para os quais uma abordagem preditiva ou planejada não é adequada.
Dessa forma, o Scrum adota uma abordagem empírica baseada em evidências – aceitando que o problema não pode ser totalmente entendido ou definido com antecedência, e focando em como maximizar a capacidade da equipe de entregar rapidamente, responder a requisitos emergentes e adaptar-se à evolução. tecnologias e mudanças nas condições de mercado.
Quais seus valores?
O Scrum é uma abordagem orientada a feedback que, como todo controle de processo empírico, é sustentada pelos três pilares da transparência, inspeção e adaptação. Todo o trabalho dentro da estrutura do Scrum deve estar visível para os responsáveis pelo resultado: o processo, o fluxo de trabalho, o progresso etc.
Para tornar essas coisas visíveis, os times do scrum precisam inspecionar frequentemente o produto que está sendo desenvolvido e quão bem o time está trabalhando. Com uma inspeção frequente, a equipe pode identificar quando seu trabalho se desvia dos limites aceitáveis e adaptar seu processo ou o produto em desenvolvimento.
Esses três pilares exigem confiança e abertura no time, que os cinco valores seguintes do Scrum permitem:
- Compromisso: Os membros do time comprometem-se individualmente a atingir seus objetivos a cada sprint.
- Coragem: Os membros do time sabem que têm a coragem de lidar juntos com conflitos e desafios para que possam fazer a coisa certa.
- Foco: Os membros do time se concentram exclusivamente nos objetivos de sua equipe e no backlog do sprint; não deve haver outro trabalho além da lista de pendências.
- Abertura: os membros do time e seus stakeholders concordam em ser transparentes quanto ao trabalho e aos desafios que enfrentam.
- Respeito: Os membros do time se respeitam por serem tecnicamente capazes e por trabalhar com boas intenções.
Como funciona?
Como uma metodologia ágil, o Scrum possui iterações chamadas de Sprint, onde representam ciclos de duas a quatro semanas, dentro do qual um conjunto de atividades deve ser executado.
O escopo destas iterações é gerenciado em um artefato conhecido como Product Backlog. Ao início de cada Sprint, é realizada uma cerimonia chamada Sprint Planning, onde o Product Owner prioriza os itens mais importantes do backlog e o time seleciona as atividades que serão capazes de implementar durante a Sprint. Estas atividades, por vez, são estimadas e gerenciadas através do Sprint Backlog.
Diariamente a equipe realizar uma cerimonia de acompanhamento chamada Daily Scrum. O objetivo é de compartilhar o status das atividades do time de desenvolvimento, informando o andamento do que já foi feito e do que está em andamento, afim de identificar possíveis impedimentos.
Ao fim de cada Sprint, o time se reúne, apresenta o incremento entregue e realizar a cerimonia de Sprint Review, onde irá coletar o feedback do Product Owner sobre o esperado. Esta talvez seja a cerimônia mais importante, já que serve como termômetro para o time quanto à maturidade entre time e o objetivo esperado pelo cliente.
Por fim, após a realização da Sprint Review, o time realiza a Sprint Retrospective, onde é feita uma retrospectiva com base nos acontecimentos durante a sprint. Os ponto são levantados e discutidos entre o atim afim de que ocorra uma melhoria contínua que possa amadurecer o time.
Assim o ciclo se reinicia por todos os passos enquanto perdurar o deadline do projeto.
Quais são as limitações?
O Scrum pode ser ineficiente quando:
- Times cujos membros estão isolados de alguma maneira. O time de desenvolvimento deve possuir interação próxima e contínua, idealmente trabalhando juntos no mesmo espaço na maioria das vezes. Embora as recentes melhorias na tecnologia reduzam o impacto dessas barreiras (por exemplo, poder colaborar em board digital, kanban,…), o manifesto ágil prega que a melhor comunicação é cara-a-cara.
- Times cujos membros possuem habilidades muito específicas. O time deve ser multidisciplinar, permitindo que trabalhem em tarefas fora de sua especialidade. Isso pode ser incentivado pela boa liderança do facilitador. Embora os membros da equipe com habilidades muito específicas possam e contribuam bem, eles devem ser incentivados a aprender mais e colaborar com outras disciplinas.
- Produtos com muitas dependências externas. No Scrum, dividir o desenvolvimento do produto em sprints curtos requer um planejamento cuidadoso; dependências externas, como testes de aceitação do usuário ou coordenação com outras equipes, podem levar a atrasos e falhas de sprints individuais.
- Produtos maduros, herdados ou com controle de qualidade regulamentado. No Scrum, os incrementos do produto devem ser totalmente desenvolvidos e testados em um único sprint; os produtos que precisam de grandes quantidades de testes de regressão ou de segurança para cada versão, são menos adequados para sprints curtos do que para versões mais longas em cascata.
- Da perspectiva dos negócios, o Scrum tem muitas virtudes, uma das quais é que foi projetado para oferecer as melhores soluções de negócios. No entanto, a eficiência com que o faz em qualquer organização pode variar bastante e depende em grande parte da capacidade da organização de aderir às diretrizes de implementação. Toda empresa tem sua própria estrutura organizacional, cultura e conjunto de práticas comerciais distintas, e algumas são mais naturalmente acessíveis a essa metodologia do que outras.