sábado, 7 de novembro de 2009

Um pouco de Scrum

Scrum & FDDScrum é uma metodologia ágil para gerenciamento de projetos, geralmente de software, mas pode ser utilizada para outros tipos, como desenvolvimento de produtos físicos, ou projetos diversos. Foi criada por Jeff Sutherland, Ken Schwaber e John Scumniotales na década de 1990, baseada no Pensamento Lean (Lean Thinking), desenvolvimento iterativo e incremental, e novas estratégias de criação de produtos. Sua aplicação não está limitada a projetos de software.
O nome foi inspirado numa jogada de Rugby. Após uma "reunião" (agrupamento em torno da bola), o objetivo é retirar os obstáculos à frente do jogador que correrá com a bola, para que possa avançar o máximo possível no campo e marcar pontos.

Processo Básico
A partir de uma lista de funcionalidades desejadas para o produto (Product Backlog), priorizada pelo Dono do Produto (Product Owner), o líder do projeto (Scrum Master) escolhe um certo número dessas funcionalidades (Sprint Backlog), que julga-se possível desenvolver num ciclo de 30 dias, chamado Corrida (Sprint).
O dia-a-dia desse ciclo contempla algumas atividades características, como a Reunião Em Pé (Standup Meeting) pela manhã, onde cada membro da equipe do projeto deve responder a três perguntas:
  1. O que fez para o projeto desde a última reunião?
  2. O que fará para o projeto até a próxima reunião?
  3. Há algum obstáculo para conseguir seu objetivo? Precisa de ajuda?
Gráfico de ConsumoPara acompanhar o progresso e a velocidade da equipe de desenvolvimento, o Scrum utiliza um painel de progresso chamado de Gráfico de Consumo (Burndown Chart), que ilustra a quantidade de funcionalidades que foram desenvolvidas até o momento no Sprint. A inclinação da curva dá a noção de Velocidade (Velocity) da equipe.

Scrum e FDD?
Sim, é possível uma convivência pacífica e proveitosa entre a FDD e o Scrum. Lembrando que Scrum é uma metodologia ágil de gerência de projetos, especialmente de produtos, podemos aproveitar o que ela oferece de melhor, como o arcabouço geral do ciclo de vida do produto. Mas Scrum não oferece técnicas para a engenharia do produto, daí a importante colaboração da FDD.
Conforme indicado na figura acima, a FDD pode ser praticada em dois momentos:
  • No início do projeto, para criar o backlog do produto, através da modelagem abrangente do domínio e construção da lista de features; o planejamento por feature determina a quantidade de Sprints necessários para entregar o produto completo, além da prioridade das features em cada Sprint
  • Dentro do Sprint, em conjunto com as atividades do Scrum, como a Reunião Em Pé e o Gráfico de Consumo (o que não exclui o Painel de Monitoramento do Progresso da FDD, que é mais abrangente e adequado para o acompanhamento mais detalhado do projeto).

Nenhum comentário:

Postar um comentário