Fundamentos Internacionais do Scrum Master
1.0 O que é o Scrum
Construir aplicativos de software pode ser uma tarefa difícil. A metodologia Scrum vem como uma solução para executar essa tarefa tão complicada. Ela ajuda a equipe de desenvolvimento a se concentrar em todos os aspectos do produto, como qualidade, desempenho, usabilidade e assim por diante.
O Scrum é uma estrutura ágil muito popular para gerenciar projetos de desenvolvimento de software. É uma estrutura adaptável, iterativa, rápida, flexível e eficaz, projetada para entregar, prioritariamente e de forma rápida, o que tem maior valor para o cliente. O cliente está o tempo todo no centro para reduzir as perdas com retrabalho. O Scrum garante transparência na comunicação e cria um ambiente de responsabilidade coletiva e progresso contínuo.
Equipes multifuncionais, auto-organizadas e capacitadas são os pontos-chave do Scrum e são capazes de entregar incrementos nos produtos em ciclos curtos e concentrados chamados Sprints. A figura mostra uma visão geral do fluxo Scrum.
Antes que uma equipe de desenvolvimento possa iniciar o trabalho, deve haver uma contribuição da parte interessada sobre que tipo de software eles precisam. Em um projeto tradicional, o trabalho começa com alguns casos de negócios e declarações de visão do produto. Em seguida, o Dono do Produto desenvolve uma lista de requisitos prioritários, que contém a priorização dos requisitos do negócio e do projeto. Normalmente, é escrita na forma de histórias de usuário (voltaremos a esse assunto em um capítulo posterior – apenas veja como requisitos do produto, alguma coisa que o cliente/ usuário precisa valorizar).
A lista de requisitos do produto é uma longa lista de todos os recursos que o Dono do Produto pode pensar, ordenados de acordo com a importância, começando pelo mais considerável
Em uma reunião de planejamento de Sprint, a equipe de desenvolvimento (scrum master + membros do time) se reúne com o Dono do Produto para selecionar as histórias de usuário da lista de requisitos e inserir na sua lista de requisitos do Sprint. Essa lista é uma relação de tudo que a equipe se compromete a desenvolver dentro do próximo Sprint.
Durante a segunda metade da reunião de planejamento do Sprint, as histórias de usuário são divididas em tarefas. Tarefas são pequenas atividades que precisam ser executadas, seja pelo desenvolvimento, testes, documentação, arquitetura, etc. Os itens e tarefas da lista de requisitos são exibidos em um painel de tarefas do Sprint, seja virtual ou físico. Aqui está um layout de exemplo:
Agora, o Sprint pode começar.
Um Sprint é o período de iteração enquanto a equipe cria o software; normalmente, dura de 2-4 semanas. Nesse período, o time cria o código, testa, documenta e entrega um incremento no produto 100% pronto. Todos os dias, a equipe realiza uma reunião rápida de Scrum. Nessa reunião, as tarefas são movidas no quadro do Sprint, os membros da equipe compartilham o que fizeram no dia anterior, no que irão trabalhar durante o dia, e se alguma coisa está atrasando ou impedindo a realização das tarefas.
Após o Sprint, haverá uma revisão do Sprint durante a qual, a equipe analisa cada item da entrega através de um demonstrativo do software que está sendo trabalhado, e o Dono do Produto verificará se todos os critérios do DoD (definição de concluído) foram atendidos. A equipe de desenvolvimento também realizará uma reunião de retrospectiva do Sprint que foi concluído - o que foi bem, o que não foi tão bem e sugestões de melhorias para o próximo Sprint são feitas. Isso garantirá que a equipe continue fazendo o que demonstrou ser bem-sucedido e melhore continuamente em áreas onde não foram tão eficazes.
Vamos nos aprofundar mais sobre isso nos próximos capítulos. O Scrum é uma estrutura bastante simples, mas ainda assim, muitas equipes têm problemas em seguir regras simples. Tente não pensar que sua equipe é diferente de outras equipes ou empresas - para ter sucesso, você precisa seguir as regras.