terça-feira, 17 de junho de 2008

Metodologias Ágeis - 2

SCRUM

O SCRUM é uma metodologia ágil que prega que equipes auto-organizáveis devem entregar softwares funcionando constantemente para sua validação baseando-se nas iterações especificadas inicialmente e totalmente abertas a ajustes no decorrer do projeto.

No SCRUM não existe uma hierarquia de cargos e funções, todos da equipe devem ser aptos a executar todas as tarefas (desenvolvimento, teste, user experience e etc.) e devem se organizar por si só.

Alguns pontos do SCRUM:

• Product Backlog – Contém as características do projeto, uma especificação inicial, onde são listadas as iterações.

• Sprint
– Período curto de tempo onde uma iteração será desenvolvida, após esse período o produto resultante desse sprint será apresentado ao cliente para validação

• Sprint Backlog
– Iterações específicas do sprint .

• Standup Meeting – Reuniões diárias e rápidas afim da equipe se organizar dentro dos sprints e para os próximos.Nessas reuniões devem constar as seguintes perguntas para todos os membros da equipe:

1 – O que eu fiz ontem?

2 - O que eu vou fazer?

3 – Existe algum obstáculo que impede a continuidade?

O resultado dos sprints necessariamente deve ser apresentado em forma de produto (software funcionando), o qual será validado junto ao cliente (ou não).Uma iteração só é completa com o total aval do cliente, isso não quer dizer que posteriormente essa iteração não será adaptada, porém de forma gerenciada.

Durante o sprint é o único momento que a iteração em questão não deverá ser alterada para que o foco sempre seja mantido, caso haja uma alteração critica da ‘iteração v1’ com relação à ‘iteração v2’ o sprint deve ser cancelado e cabe ao gestor determinar o que será feito a seguir.

Uma apresentação bem legal sobre o SCRUM

Em resumo:

• Definir as iterações, eleger equipe das iterações, cada um é responsável pelo que faz e todos são responsáveis pelo projeto.

• Baseado em iterações

• Reuniões rápidas diárias

• Equipe auto-organizável -> A própria equipe se delega tarefas e atualiza o quadro de iterações

• Software funcionando ->Inclusive a equipe tem a liberdade de incrementar funcionalidades a fim de tornar a solução uma SOLUÇÃO, porém de forma controlada.

• Antecipar riscos

• Trabalhar junto ao cliente

Um comentário:

Augusto Pierzynski disse...

Fala Cris, novamente eu aqui postando um comentário. Dessa vez é mais uma dúvida!!!

Já li alguma coisa sobre SCRUM, mas nunca utilizei a metodologia dentro de um projeto.

O SCRUM (como você escreveu) diz que todo o profissional envolvido no projeto deve ser apto a desenvolver qualquer tarefa dentro dele. A questão é que dentro de um projeto temos áreas completamente diferentes, por exemplo:
• layout (que trabalha com user experiences, RIA, usability, ...)
• desenvolvimento (criação/manutenção de módulos do sistema, regra de negócio, ...)

Como conseguir profissionais com perfis tão diferentes? Ou eu entendi errado o conceito?