Palestra de SCRUM em Juazeiro

Post on 05-Dec-2014

2.298 views 1 download

description

 

Transcript of Palestra de SCRUM em Juazeiro

Gerenciamento de Projetos de TI com

SCRUM

Paulo Roberto Furtado Serra, CSM

2009

Objetivos

Relembrar os principais problemas do Gerenciamento de Projetos

Repassar os princípios que

norteiam as Metodologias Ágeis Introduzir os principais conceitos do Scrum, bem como seus principais

artefatos, papéis e

cerimônias (reuniões)

Apresentação do Instrutor Paulo Furtado Serra trabalha a mais de 10

anos na área de desenvolvimento de Software

A 3 anos vem se especializando em Metodologias de Gerenciamento e Desenvolvimento Ágeis

Mestre em Engenharia de Teleinformática pela Universidade Federal do Ceará

É Certified Scrum Master (CSM) pela Scrum Alliance

Projetos...

Os três “Quem”

- Quem já participou de algum projeto de

software do Início ao Fim...

... que tenha terminado no prazo?

- Quem participa de algum projeto de software hoje?

Se sim, esse projeto já têm algo em produção?

- Quem já participou de algum projeto de software onde

os requisitos não mudaram? Se sim, então NÃO era um projeto de

Software!

Estatísticas Chaos Report

Fonte: The Standish Grouphttp://www.infoq.com/articles/chaos-1998-failure-stats

2000 2002 2004 2007 20090%

10%

20%

30%

40%

50%

60%

70%

80%

90%

100%

FalhouDesafiadoSucesso

Estatísticas Uso de Funcionalidades

7% 13%

16%

19%

45%

Média de uso de funcionalidades de sistemas

SempreFre-quente-menteÀs vezesRaramenteNunca

Standish Group, 2002

Problemas ...

Doenças do Gerenciamento de Projetos

Muita gente envolvida e pouca

gente comprometidaMuitas barreiras de

comunicação entre cliente e desenvolvedor

Doenças do Gerenciamento de Projetos

Multi-tarefa nociva Equipes enfrentam constantemente prioridades que

mudam, fazendo com que interrompam uma tarefa e trabalhem em outra

Lei de Parkinson Mais tempo de segurança, mais tempo de projeto

Síndrome do Estudante O trabalho quase sempre é adiado

Dependência entre tarefas O atraso é passado adiante, mas o adiantamento não

Comprometimento vs Envolvimento

O porco está COMPROMETIDO A galinha está apenas ENVOLVIDA

Vocês conhecem essa?

Continua fazendo sentido?

Então, o que fazer? Em 2001, um grupo de profissionais veteranos na área de

software decidiu se reunir em uma estação de esqui, nos EUA.

O objetivo seria discutir formas de melhorar o desempenho de seus projetos.

Embora cada envolvido tivesse suas próprias práticas e teorias sobre como fazer um projeto de software ter sucesso, cada qual com as suas particularidades, todos concordavam que, em suas experiências prévias, um pequeno conjunto de princípios sempre parecia ter sido respeitado quando os projetos davam certo;

O grupo era composto de grandes nomes do mundo do software, tais como: Kent Beck, Jim Highsmith, Alistair Cockburn, Martin Fowler, Ken Schwaber e Jeff Sutherland;

O encontro deu origem ao MANIFESTO ÁGIL

O Manifesto Ágil“Estamos descobrindo melhores maneiras de desenvolver software, fazendo

software e ajudando outros a fazê-lo. Através deste trabalho passamos a valorizar:

Processos e ferramentasProcessos e ferramentasIndivíduos e interaçõesIndivíduos e interações

Seguir um planoSeguir um planoResposta à mudançasResposta à mudanças

Documentação abrangenteDocumentação abrangenteSoftware que funcionaSoftware que funciona

Negociação de contratoNegociação de contratoColaboração do clienteColaboração do cliente

Mais que

Isto é, embora haja valor nos itens do lado direito, nós valorizamos mais os do lado esquerdo.”

http://www.agilemanifesto.org

Mais que

Mais que

Mais que

Desenvolvimento em CascataPor que mudar isso?

Requisitos

Especificação

Implementação

Homologação e Testes

Produção

Desenvolvimento Incremental e IterativoPensando um pouco...

PLANEJAMENTOPOR FASE

Requisitos

POR QUE NÃO...ITERAÇÕES?

Iteração 1 Iteração 2 Iteração N

...

Especific.

Desenvolv

TestesProduçã

o

Isso não é do jeito que eu

queria !!!

ENTREGA 1 ENTREGA 2

Empresas/Instituções que estão tendo sucesso com Agile

e outras ...

SCRUM

O que é Scrum?Algumas definições

Scrum é um processo iterativo e

incremental para o desenvolvimento de qualquer produto e gerenciamento de qualquer trabalho.

Scrum é um processo ágil para o

gerenciamento e controle de projetos;

Scrum é uma abordagem para desenvolvimento de sistemas e produtos onde os requisitos

sofrem constantes mudanças; Scrum é um processo que controla o

caos dos conflitos de interesses;

A Dinâmica do Scrum

SPRINT

Artefatos

Product Backlog

Sprint Backlog

Burndown Chart

Product Backlog

Criado a partir de uma Visão do Projeto

Lista de funcionalidades

priorizadasFuncionalidade Prioridade

Func. A 10

Func. B 20

Func. C 30

Func. D 40

Func. E 50

Func. F 60

Func. N 70

Maiorprioridade

Menor Prioridade

Sprint Backlog Parte do Product Backlog que vai ser feita numa

iteração (Sprint) Montado a partir das funcionalidade que estão no

topo do Product Backlog

Funcionalidade Prioridade

Func. A 10

Func. B 20

Func. C 30

Func. D 40

Func. E 50

Func. F 60

Func. N 70

Maiorprioridade

Menor Prioridade

SprintBacklog

Mas o que é um Sprint?

Um período de Tempo entre 2 a 4 semanas

Sempre deve ter um objetivo a ser atingidao pela equipe

É normal que o tempo de duração dos Sprints possam variar no início do projeto, mas o ideal é que se chegue num tempo único para todos os sprints

Todos os Sprints devem pessuir uma estrutura exatamente igual

Estrutura de um Sprint

1º 2º 3º 4º 5º 6º 7º 8º 9º 10º

DIAS

Pla

neja

men

to –

Spr

int X

Apr

esen

taçã

oS

prin

t X

Pla

neja

men

to –

Spr

int X

+1

SPRINT X

Reunião

diária

Reunião

diária

Reunião

diária

Reunião

diária

Reunião

diária

Reunião

diária

Reunião

diária

Reunião

diária

Ret

rosp

ectiv

a

Dinâmica do Product Backlog

A

B

C

Pro

du

ct B

ackl

og

F

G

H

I

D

Sprint 1O que está dentro do SprintNão pode ser alterado.

- O que está fora do Sprint pode Ser alterado de acordo com a necessidade do cliente.

- Ele pode alterar prioridades, inserir novas tarefas ou retirar tarefas existentes.

- Algumas tarefas podem ser inseridas pela equipe. Ex: Montar ambiente para Integração contínua

Pri

ori

dad

e

Alta

Baixa

E

Histórias

Papéis no Scrum

Product Owner

Scrum Master

Equipe

Product Owner

Define as funcionalidades do produto Decide datas de lançamento e

conteúdo Responsável pela rentabilidade

(Return Of Investiment - ROI) Prioriza funcionalidades de acordo

com seu valor para o negócio Gerencia a entrada de novos

requisitos e suas prioridades Aceita ou rejeita o resultado dos

trabalhos

$$$$$$$$

$$

Interação do PO com os Usuários

Usuários

ProductOwner

Backlog

Caso de Uso 1

Caso de Uso 3

Caso de Uso 4

...

Caso de Uso N

Isso não impedeEquipe de

desenvolvimento

Scrum Master

Representa a gerência para o projeto

Responsável pela aplicação dos valores e práticas do Scrum

Remove obstáculos Garante a plena funcionalidade e

produtividade da equipe Garante a colaboração entre os diversos

papéis e funçõesEscudo para interferências externas

Equipe

Tamanho variável , é aconcelhável não mais que 9 pessoas e não menos que 4

Multi-funcional▪ Programadores, testadores, desenvolvedores...

Aconcelhável trocas só na mudança de Sprints Faz o que for preciso para alcançar a Meta do Sprint,

uma vez que se compromete com o que vai ser entregue

Apresenta aos interessados o resultado do Sprint

Cerimônias

Planejamento do Sprint

Reunião Diária

Demonstração

Retrospectiva

Planejamento do Sprint(Sprint Planning Meeting)

Reunião que define O objetivo (meta) do Sprint Uma lista dos membros da equipe que estarão

comprometidos com a meta Um Sprint Backlog (lista com todas as

funcionalidades incluídas no sprint) Uma Data para demonstrar que foi produzido

durante o sprint Hora e lugar definido para acontecerem as

reuniões diárias Dependendo do projeto, esta reunião pode durar

de 4 a 16 horas

Planejamento do SprintESTIMATIVAS

Como estimar?Story Points

Um “peso” dado para cada história

Indica quanto uma história é maior ou mais complexa que outra

Horas Tempo estimado por cada tarefa

Planejamento do SprintESTIMATIVAS em Story Points

Planning Poker

Reunião de planejamento de Sprint

Product Backlog

Caso de Uso 1

Caso de Uso 3

Caso de Uso 4

Caso de uso 5

Caso de Uso 2

...

Caso de Uso N

ScrumMaster

ProductOwner

Time de Desenvolvimento

Sprint Backlog

Caso de Uso 1

Caso de Uso 3

Caso de Uso 4

Reunião de Planejamen

to

Reunião Diária(Scrum Daily Meeting)

Objetivo Cada membro deve responder as seguintes perguntas:

1. O que você fez desde a última reunião diária?2. O que você pretende fazer até a próxima

reunião diária?3. Existe algum problema que o impeça de

realizar suas atividades?Duração

15 minutos (não mais que isso) Sugestão: Todos em Pé Qualquer pessoa pode participar, mas apenas o

Scrum Master e os Membros da Equipe pedem falar

Reunião de Demonstração(Sprint Review)

Objetivo Mostrar o que foi produzido no Sprint

Duração 30 a 60 minutos

Participantes Product Owner, Scrum Master, membros do

time, clientes, Usuários, Stakeholders e qualquer pessoa que esteja interessada no resultado da Sprint

Qualquer participante pode falar, fazer perguntas ou observações

Retrospectiva(Sprint Retrospective)

Objetivo Enumerar o que funcionou e o que não funcionou

durante o Sprint Duração

30 a 60 minutos Participantes

Product Owner, Scrum Master e os membros do time Esta reunião pode ser feita à frente de um

quadro branco onde membro cola post its dizendo o que funcionou e o que não funcionou

Feita após cada Sprint

RetrospectivaExemplo

O que Funcionou O que não funcionou

Testes Comunicação entre os membros

Usuário

Distante

Reuniões

Diárias

Alguns membros chegam tarde

Faltou melhor

planejamento do Sprint

Quatro KanBan

Product Backlog

Sprint Backlog

Burndown Chart

Artefatos do Scrum

Burndown Chart

Paradigmas a serem quebrados

Equipes auto-gerenciáveisEquipes multi-disciplinaresAté onde a documentação é último

Comunicação Referência

Desenvolvimento por iteraçõesZonas de conforto

Referências

www.mountaingoatsoftware.com/scrum www.scrumalliance.org www.controlchaos.com scrumdevelopment@yahoogroups.com Agile Software Development with Scrum

by Ken Schwaber and Mike Beedle Agile Project Management with Scrum by

Ken Schwaber Scrum and the Enterprise by Ken

SchwaberScrum and XP from the trenches

Dúvidas ?