Na primeira parte dessa série DESTRINCHANDO O SCRUM, fomos introduzidos ao framework SCRUM, uma breve história de seu surgimento no desenvolvimento de software e como o SCRUM se relaciona com o Manifesto Ágil a partir de seus 4 valores e 12 princípios.
Portanto, se você já leu a PARTE 1, podemos começar segunda parte.
Neste artigo, daremos início ao framework propriamente dito, assim, abordaremos os papéis, os eventos e os principais artefatos do SCRUM e como se relacionam dentro do desenvolvimento de um projeto.
Basicamente, existem 3 papéis importantes na equipe que implementam o SCRUM. São eles:
- Product Owner (Dono do Produto).
- Scrum Master.
- Development Team (Time de Desenvolvimento).
Em alguns materiais são informados outros dois, os Stakeholders (Partes Interessadas) e os Gerentes.
Porém, embora sejam muito importantes, não tratarei desses papéis nesta série, pois a relação destes dois papéis são auxiliares e eles não se envolvem integral e frequentemente com os processos do SCRUM.
Product Owner
Todo projeto possui por excelência stakeholders, sejam os clientes, os fornecedores, investidores, a comunidade, os parceiros, o governo ou qualquer outro órgão que possa estar envolvido no projeto.
Portanto, dentro de uma equipe SCRUM é fundamental a presença de um Product Owner. Ele é o principal responsável por ser a ponte entre a equipe e os stakeholders, podendo assim gerar valor ao projeto.
Além disso, o Product Owner é o membro responsável por escrever as Product Backlogs – artefato abordado mais abaixo.
É importante ressaltar que cada equipe SCRUM possui apenas um Product Owner.
Scrum Master
O Scrum Master é o líder facilitador do time SCRUM, cuja as principais funções são remover os impedimentos que possam vim a atrapalhar a execução das Sprints, ajudar o Time de Desenvolvimento a entender e praticar corretamente o framework, assim como garantir sua implementação dentro da organização.
Além disso, o Scrum Master também é o responsável por guiar o Time de Desenvolvimento em suas tarefas diárias, auxiliar os Daily Meetings (Reuniões Diárias) e servir como ponte entre o Time e o Product Owner.
Development Team
Por fim, temos o Time de Desenvolvimento, o time de pessoas responsável por executar as Sprints determinadas pelo Product Owner da equipe e entregar o produto.
O Time de Desenvolvimento é, geralmente, composto por 5 pessoas, no máximo nove, sendo a equipe constituída de profissionais multidisciplinares e auto gerenciáveis, no qual seu principal objetivo é entregar algum tipo de incremento funcional em cada Sprint.
O que é um SPRINT?
No esporte, um Sprint é quando um atleta se esforça para dar o máximo de si a fim atingir sua velocidade máxima, seja correndo, pedalando ou nadando. Por conta da fisiologia humana, as pessoas não conseguem se manter neste estado por muito tempo, então os sprints são rápidos, algo de 30 a 35 segundos.
Os Sprints do SCRUM seguem o mesmo preceito, isto é, são pequenos períodos de tempo, no qual o Time de Desenvolvimento se esforça para desenvolver e entregar alguma parte do trabalho. Assim como no esporte, os sprints do SCRUM duram pouco tempo, geralmente, entre 1 semana a 1 mês.
A ideia é que dividindo o trabalho em pequenas partes, a equipe possa entregar parte do projeto ao cliente e, assim, receber um feedback do trabalho realizado. Na primeira parte desta série, isto foi citado nos Princípios do AGILE, nos tópicos 1, 3, 7 e 12.
Eventos do SCRUM
Os Eventos do SCRUM são, basicamente, as tarefas que giram em torno dos Sprints. O framework apresenta 4, que são os:
- Daily Meeting (Reunião Diária)
- Planning Meeting (Reunião de Planejamento)
- Sprint Review (Revisão do Sprint)
- Sprint Retrospective (Retrospectiva do Sprint)
Daily Meeting
Como o próprio nome sugere, os Daily Meetings são as famosas Reuniões Diárias do SCRUM que ocorrem todos os dias durante um Sprint.
O objetivo destas reuniões é alinhar os participantes com o que foi feito, o que deve ser realizado no dia, além de ajudar o Scrum Master a identificar os possíveis impedimentos e, por isso, cada membro deve fazer as seguintes perguntas:
- O que você tem feito desde ontem em direção à meta?
- O que você planeja fazer hoje em direção à meta?
- Há algo que pode te impedir de realizar seu objetivo em direção à meta?
As Reuniões Diárias do SCRUM não ultrapassam o tempo de 15 minutos, além de serem realizadas em pé – por isso às vezes também são chamadas de Stand up Meeting. O objetivo disso é gerar um ambiente levemente desconfortável, assim as reuniões são mais práticas e eficazes.
Planning Meeting
As Planning Meeting, ou Reuniões de Planejamento, são as reuniões que ocorrem com toda a equipe SCRUM, no início de cada Sprint, a fim de definir qual o objetivo do Sprint e ajudar o Product Owner a gerar o Sprint Backlog.
É importante a presença de todos os membros, pois a Equipe precisa definir o “Que” deve ser feito, “Como” e também” Quem” fará o que. Planejar bem é muito importante, pois além de ajudar a concluir o processo com mais eficiência, ajudará a motivar a equipe conforme as etapas são finalizadas.
Review Sprints
As Revisões de Sprints são as reuniões que a equipe SCRUM organizam no final de cada Sprint com o objetivo de rever o trabalho que foi executado, as tarefas que deixaram de ser feitas e apresentar as novas funcionalidades para os Stakeholders.
Além disso, durante esta reunião é importante que o projeto seja avaliado em relação ao objetivo da Sprint que foi previamente definido na Reunião de Planejamento.
Nesta reunião, participam o Time de Desenvolvimento, o Product Owner, o Scrum Master, além dos gerentes, engenheiros, clientes e qualquer outra Parte Interessada no projeto.
Sprint Retrospective
Os Sprint Retrospectives são reuniões que ocorrem no final de cada Sprint. São, geralmente, a última atividade dentro de um Sprint, pois seu objetivo é, principalmente, procedural.
Nestas reuniões a equipe SCRUM avaliará o andamento dos Sprints a fim de buscar possíveis melhorias no processo. Perceba a diferença entre a Retrospectiva do Sprint e as Revisões de Sprint, no qual esta se preocupa com o que a equipe está construindo, enquanto aquela trata de como o processo está sendo executado.
Artefatos do SCRUM
Por fim, temos os dois artefatos oficiais do SCRUM. O Scrum Guide, o manual oficial do SCRUM, os definem como:
- Product Backlog [Backlog do Produto]
- Sprint Backlogs
Product Backlog
Como vimos anteriormente, na parte de papéis do SCRUM, uma das funções do Product Owner é gerar os Product Backlogs.
Em inglês um Backlog é “um acúmulo de algo, especialmente um trabalho incompleto ou questões que precisam ser tratadas” (Dicionário de Oxford). Seguindo esta linha de raciocínio, um Product Backlog – ou Backlog do Produto – nada mais é do que uma lista que contém os requisitos do cliente em uma ordem prioritária.
Portanto, os Product Backlogs são extremamente necessários na execução da Sprint, uma vez que ditará o que deve ser realizado.
Porém, caso o Product Owner sinta necessidade de alterações, ele – como o responsável pelo Backlog do Produto – pode mudar durante a Sprint.
Sprint Backlog
Já a Sprint Backlog é uma lista de tarefas extraída a partir do Product backlog. Estas tarefas deverão ser executadas durante a Sprint.
Os Sprints Backlogs são criados durante a Reunião de Planejamento, onde a equipe SCRUM seleciona um número de itens da Product Backlog, além de estimar a quantidade de horas necessárias para realiza-los.
Na Reuniões Diárias, o Time de Desenvolvimento poderá realizar alguma mudança no Sprint Backlog, caso seja necessário. Por exemplo, se as tarefas estiverem quantitativamente menor que a capacidade da equipe ou muito difíceis de serem executadas em uma única Sprint.
Por fim, espero que tenha ficado claro quais são os Papéis, os Artefatos e Eventos do SCRUM. Atente-se às palavras em negritos, pois tratam-se de conceitos importantes para o framework. Espero você na PARTE 3 da série, até logo!
Aproveite e siga o Blog da Engenharia no Instagram!