Definição e Conceitos do Scrum
Quando falamos em Scrum temos que ter em mente alguns conceitos,
mas antes de falarmos destes conceitos que são usados diariamente no ambiente
que utiliza o Scrum, iremos dar uma breve definição do que é o Scrum.
O Scrum é uma metodologia ou processo de desenvolvimento de
software iterativo e incremental para gerenciamento de projetos e
desenvolvimento ágil de software. O scrum possui algumas características, como
por exemplo: reuniões frenquentes, rápido feedback, transparência no
planejamento e desenvolvimento, entregas freqüentes entre outros.
Agora que já vimos uma breve
definição do scrum, vamos descrever alguns conceitos. Para uma melhor
aprendizagem eles irão ser divididos em 3 partes: papeis, artefatos e eventos.
Papeis
Productowner – Podemos dizer que é o dono do produto, ou seja, é o
cliente do produto ou alguém que o cliente considera como responsável para
tomar as decisões em relação ao projeto como por exemplo priorizar
funcionalidades desejada, esclarecer as regras de negócio e dar o feedback
sobre o produto produzido.
Scrum Master- É uma espécie de
gerente, porém não atribui tarefas nem fiscaliza o trabalho. O Scrum Master atua como facilitador e mediador garantindo que o
time seja sempre produtivo e garante que nenhuma dificuldade interfira no
andamento do projeto. Ele também é responsável por garantir que as práticas do
Scrum sejam seguidas (as reuniões, os artefatos, etc). Quanto maior o nível de
maturidade do time menor a importância do Scrum Master.
Scrum Team –Ou como é normalmente é chamado “O time Scrum”, é um grupo
multidisciplinar, de 5 a 9 pessoas, que vai projetar, desenvolver, testar e
implantar o software. O time não possui um gerente, ele é auto gerenciável. Não
há quem delegue tarefas. Cada pessoa escolhe que tarefa vai assumir dentro do
que foi definido para o sprint. Se algum integrante encontra dificuldade
em uma tarefa o Scrum Master (ou alguém no grupo que possua conhecimento sobre
o domínio em questão no caso de uma dificuldade técnica) deve ajudar. Se
algum integrante não está trabalhando com o comprometimento suficiente o grupo
deve cobrá-lo. Ou seja, a função de controle não pertence a um gerente e sim ao
próprio time como um todo. O time deve escolher a melhor maneira de trabalhar
para cumprir os objetivos do projeto. O time tem que estar comprometido com o
projeto.
Artefatos
ProductBacklog – É a lista com todas
as funcionalidades referente ao projeto. OProductBacklog é mantido pelo
ProductOwner no qual pode adicionar ou alterar funcionalidades a qualquer
momento desde que essas funcionalidades não estejam dentro do sprint atual.
Sprint Backlog – Contém as
funcionalidades do ProductBacklog que, baseado na prioridade definida pelo
cliente e na complexidade estimada, o time
e o ProductOwner
escolheram para executar no sprint. Quando vão entrar no Sprint Backlog as
funcionalidades são quebradas em tarefas específicas que serão implementadas
pelo time.
Burn-downchart – É um gráfico que
possibilitauma forma rápida de visualizar oandamento das atividades. Pode existir
um para o sprint e um geral para o projeto. Mostra dia a dia o quanto de
trabalho já foi realizado. Com ele você vê facilmente os pontos em que o
projeto não rendeu o esperado e pode investigar os motivos e corrigir pra
melhorar a produtividade.
Exemplo de gráfico Burn-Down:
Burn Down Chart (Gráfico Burn Down)
Eventos
Sprint Planning - reunião entre o time e
o ProductOwner(PO) para negociar o que será produzido no sprint. Com base na
prioridade definida pelo PO o time vai dividindo as funcionalidades do
ProductBacklog em tarefas menores e estimando a complexidade dessas tarefas.
Daily Scrum – Reunião diária entre
os membros do time na qual deve durar no máximo 15 min que tem como objetivo é manter a equipe e o Scrum
Master informados de todo o progresso e das dificuldades que possam estar
atrasando o desenvolvimento do progresso.
Sprint Reviews – Reunião
informal realizada no final de cada sprint. O objetivo é apresentar (e
demonstrar o uso se for o caso) do que foi produzido no sprint.
Sprint Retrospectives – Reunião também realizada ao
final do Sprint com objetivo de analisar a forma como foi executada as
atividade do Sprint e procurar maneiras de melhorar o processo.