You are on page 1of 6

SCRUM - Uma abordagem prtica

S EX TA- F EIRA,

2 9

D E

F EV EREIRO

D E

2 00 8

Metodologias geis vem ganhando um espao mais do que merecido no meio da comunidade, e vem sendo adotado de forma acelerada por grandes empresas, como Microsoft, Xerox, IBM, etc.. As vezes seguir a risca metodologias como RUP nem sempre a melhor opo para as empresas que possuem um tempo escasso para entregar o software com qualidade em prazos cada vez mais curtos, foi quando nos dias 11 a 13 de Fevereiro de 2001, caras como Martin Fowler, Kent Beck, Alistair Cockburn, Ward Cunningham e Ken Schwaber se reuniram em resort de ski em Snowbird (Utah) para mudar o rumo do desenvolvimento de software, foi nesta reunio que nasceu o XP, Scrum, DSDM, Crystal, FDD, e outras metodologias que visam "desburocratizar" o desenvolvimento de software, entre as metologias propostas esta o Scrum idealizado por Ken Schwaben, que vem ganhando cada vez mais adeptos. Esse post um tutorial prtico de SCRUM, para que se interessarem no assunto recomendo o livro Agile Project Management with Scrum de Ken Schwaben OBS> Esse tutorial fortemente baseado no documento pdf Scrum And Xp From The Trenches e no livro Agile Project Management with Scrum de Ken Schwaben.

O que Scrum ? SCRUM uma metodologia (ou Framework de acordo com o criador Ken Schwaber) onde a espinha dorsal que chamamos de Sprint. Que nada mais do uma lista de objetivos ou requisitos bem definidos cujo time de desenvolvimento ir trabalhar focado em um perodo de 30 dias.

Papis no Scrum ? No Scrum existem 3 papis que devem estar bem definidos, que so:

Product Owner

Scrum Master

Scrum Team

So os membros que O Scrum Master lidera o time formam o time de o "cliente" focal, de desenvolvimento, resolve desenvolvedores, designers, responsvel por reunir possveis impedimentos e consiste de 5 a 9 pessoas. todas as mudanas trabalha para assegurar que o Interagem com o Product planejadas para o produto e time possui a ferramentas e Owner para determinar o priorizar as funcionalidades condies necessrias para objetivo do Sprint e possveis. Administra o alcanar os objetivos priorizar as Backlog do Produto e estabelecidos pelo Sprint. funcionalidades, e quebrar assegura que o Scrum Realiza reunies dirias Daily o Sprint em tarefas Team esta trabalhando com Scrum com o Scrum Team detalhadas. as tarefas certas na para o acompanhamento das O time auto organizvel e perspectiva do negcio. atividades. tem a responsabilidade conjunta pelos resultados.

O Product Owner responsvel por compilar todas as requisies e especificaes no documento chamado Product Backlog, essas mudanas so referentes ao produto, como novas funes e correes de bugs. As prioridades devem ser feitas durante a criao de cada tarefa.

Em um perodo de 30 dias, feito uma reunio que ser definido o Sprint Backlog de acordo com os itens do product backlog levantado pelo Product Owner, ou seja, de acordo com os itens de maior prioridade criado o Sprint Backlog que a equipe ter a responsabilidade de terminar at o prximo Sprint.

Uma vez com o Sprint definido, o Scrum Masterdiariamente faz o Daily Scrum, que uma reunio com o Scrum Team cujo propsito eliminar qualquer impedimento. Cada integrante deve responder a 3 perguntas: 1 O que voc fez desde a ultima reunio ? 2 O que voc vai fazer entre esse e a prxima reunio ? 3 Tem algo impedindo voc de efetuar a sua tarefa ?
Qual o critrio para decidir a histria que ser includa no Sprint ? * Base da conversa * Clculo de Velocidade Base da conversa, ideal quando a equipe no possui histrico de sprints, ou seja, para equipes que nunca trabalharam com Scrum e no possuem dados esttiscos para realizar o calculo de velocidade. A conversa gira em torno dos desenvolvedores, onde o Scrum Master pergunta para cada membro do time quanto tempo uma atividade do Backlog demora para ser desenvolvida (em horas), e com base nisso as horas necessrias para o projeto. Quando j passou por alguns ciclos com Sprints, utilizado o Clculo de Velocidade uma medida em cima do total do trabalho feito, onde cada item recebe um peso de acordo com a sua estimativa inicial.

. Como estimar a velocidade ? Resp: A maneira mais simples de estimar a velocidade verificar o histrico do time. Qual foi a velocidade do time nos ltimos Sprints ? Ento assumir que a velocidade ser a mesma para o ltimo Sprint, mas isso s funciona se o time j tive feito alguns Sprints antes. Outra maneira de calcular atravs de clculo de recurso. Por exemplo, vamos assumir que estamos planejando um Sprint de 3 semanas (15 dias) com um time de 4 pessoas. O recurso Joo ficar dois dias de folga, Zezinho apenas 50%, colocando tudo isso no papel ficar:

Disponibilidade em dias Zezinho 7 Esta no ainda nossa estimativa de velocidade, Wagner 15 a nossa unidade de estimativa so os pontos de estria, que no nosso caso corresponde ao dias Joo 13 de recurso ideal. Trainee 15 Total 50 Dias de Recurso disponvel para este Sprint Recursos
Estimamos que a velocidade estimada ser menor que 50. Mas quanto menos ? Utilizamos o termo Fator Foco para isso: Frmula para velocidade estimada do Sprint: (Dias de Recurso Disponvel) * (Fator Foco) = (Velocidade Estimada) Fator Foco uma estimativa de como o time esta focado no Projeto. Um fator foco baixo significa que o time espera encontrar vrios inconvenientes. A melhor maneira de determinar um Fator Foco concreto analisando o ultimo Sprint, ou melhor, a mdia dos ltimos Sprints. Fator Foco do ltimo Sprint: (Fator Foco) = (Velocidade Atual) . (Dias de Recurso Disponvel) Velocidade atual a soma da estimativa inicial de todas as estrias que foram finalizadas no Sprint

anterior. Por exemplo, no ultimo Sprint complemos 18 pontos em um time de 3 pessoas, trabalhando por 3 semanas para um total de 45 Dias de Recurso. Vamos calcular o novo Sprint baseado nestes dados, para complicar imagine que chegou mais um recurso (Trainee), que totalizando d 50 Dias de Recurso com treinamentos, feriados, etc...

(40%) =(18 Pontos de estria) (45 Dias de Recurso) Velocidade Estimada Sprint: (50 Dias de Recurso) * (40%) = (20 Pontos estria) Fator Foco do ltimo Sprint:
Desta maneira a velocidade estimada para o prximo Sprint de 20 pontos de estria. Isso significa que o time deve adicionar estrias para o Sprint at o mesmo chegar perto de 20 pontos.

Index Cards: O que so ? As reunies de planejamento so gastas lidando com estrias do Product Backlog. Fazendo estimativas, priorizando-os, discutindo-os. Scrum prope uma maneira muito mais gil de expor os problemas que sero discutidos que so os Index Cards. Na verdade para cada item do backlog criado um carto e estes cartes so expostos em um mural. EX:

** Estas informaes sero as mesmas do Product Backlog que podem ser armazenadas em arquivo Excel

Os cartes devero conter as seguintes informaes **: ID: Identificador nico Nome: Descrio curta da estria. Importncia: Grau de importncia da estria. Ex: 1050. Alto: Mais importante. Estimativa inicial: Estimativa do time de quanto trabalho preciso, a medida feita por pontos de estria que corresponde a Dias de Recurso Demonstrao:Uma descrio de alto nvel de como ser feito a demo do Sprint. Observao: Outras informaes...

Quebrando estrias em tarefas: A diferena entre estrias e tarefas, que estrias so as funes que o Product Owner solicitou e que espera que elas sejam entregues. Desmembramos as estrias em tarefas unitrias de modo a distribuir as atividades do desenvolvimento da estria para toda a equipe. Ex:

No nosso exemplo o quadro branco (consulta de clientes) seria a estria (item de Sprint) e os post its amarelos as tarefas deste item de backlog. Grfico Burndown de acompanhamento dirio.

Na linha vertical, colocamos a quantidade de pontos de estria, que a quantidade de trabalho que deve ser feito para este Sprint atravs do clculo de velocidade por atividade, a velocidade estimada de todo o Sprint. Na linha horizontal, marcamos o primeiro dia do Sprint, nor exemplo 1 de Augusto, e esperamos terminar este Sprint no dia 19 de Junho, a linha tracejada indica a estimativa de trabalho. A linha azul indica o trabalho realizado, no exemplo o grfico nos mostra que no dia 16 ainda temos aproximadamente 15 pontos de estria de trabalho para fazer. O grfico atualizado diariamente durante o Daily Scrum.
Indicadores:
De acordo com o grfico podemos tomar algumas decises, e saber diariamente o que esta acontecendo no projeto, se est dentro do prazo, etc...

Dissecando o quadro indicador:

Retrospectiva Ao final de cada Sprint ideal a equipe e o Scrum Master e discutir o que cada um achou da Sprint e dar suas opinies. A idia central se resume na seguinte pergunta: O que podemos melhorar no prximo Sprint ? No quadro no exemplo, temos 3 colunas: 1Bom (Good): Se tivssemos que fazer outra Sprint, faramos da mesma maneira. 2Poderamos fazer melhor (Could have been better): Se tivssemos que fazer outra Sprint, faramos de maneira diferente.. 3 Melhorias (Improvements): Idias concretas que poderamos implementar no futuro Exemplo de um quadro de sugestes / anlise:

possvel ainda mesclar Scrum com XP, o que torna o trabalho ainda mais produtivo, em tempo oportuno mostrarei algumas das tcnicas utilizadas..

You might also like