Palestra de SCRUM em Juazeiro

45
Gerenciamento de Projetos de TI com SCRUM Paulo Roberto Furtado Serra, CSM 2009

description

 

Transcript of Palestra de SCRUM em Juazeiro

Page 1: Palestra de SCRUM em Juazeiro

Gerenciamento de Projetos de TI com

SCRUM

Paulo Roberto Furtado Serra, CSM

2009

Page 2: Palestra de SCRUM em Juazeiro

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)

Page 3: Palestra de SCRUM em Juazeiro

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

Page 4: Palestra de SCRUM em Juazeiro

Projetos...

Page 5: Palestra de SCRUM em Juazeiro

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!

Page 6: Palestra de SCRUM em Juazeiro

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

Page 7: Palestra de SCRUM em Juazeiro

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

Page 8: Palestra de SCRUM em Juazeiro

Problemas ...

Doenças do Gerenciamento de Projetos

Muita gente envolvida e pouca

gente comprometidaMuitas barreiras de

comunicação entre cliente e desenvolvedor

Page 9: Palestra de SCRUM em Juazeiro

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

Page 10: Palestra de SCRUM em Juazeiro

Comprometimento vs Envolvimento

O porco está COMPROMETIDO A galinha está apenas ENVOLVIDA

Page 11: Palestra de SCRUM em Juazeiro

Vocês conhecem essa?

Continua fazendo sentido?

Page 12: Palestra de SCRUM em Juazeiro

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

Page 13: Palestra de SCRUM em Juazeiro

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

Page 14: Palestra de SCRUM em Juazeiro

Desenvolvimento em CascataPor que mudar isso?

Requisitos

Especificação

Implementação

Homologação e Testes

Produção

Page 15: Palestra de SCRUM em Juazeiro

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

Page 16: Palestra de SCRUM em Juazeiro

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

e outras ...

Page 17: Palestra de SCRUM em Juazeiro

SCRUM

Page 18: Palestra de SCRUM em Juazeiro

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;

Page 19: Palestra de SCRUM em Juazeiro

A Dinâmica do Scrum

SPRINT

Page 20: Palestra de SCRUM em Juazeiro

Artefatos

Product Backlog

Sprint Backlog

Burndown Chart

Page 21: Palestra de SCRUM em Juazeiro

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

Page 22: Palestra de SCRUM em Juazeiro

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

Page 23: Palestra de SCRUM em Juazeiro

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

Page 24: Palestra de SCRUM em Juazeiro

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

Page 25: Palestra de SCRUM em Juazeiro

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

Page 26: Palestra de SCRUM em Juazeiro

Papéis no Scrum

Product Owner

Scrum Master

Equipe

Page 27: Palestra de SCRUM em Juazeiro

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

$$$$$$$$

$$

Page 28: Palestra de SCRUM em Juazeiro

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

Page 29: Palestra de SCRUM em Juazeiro

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

Page 30: Palestra de SCRUM em Juazeiro

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

Page 31: Palestra de SCRUM em Juazeiro

Cerimônias

Planejamento do Sprint

Reunião Diária

Demonstração

Retrospectiva

Page 32: Palestra de SCRUM em Juazeiro

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

Page 33: Palestra de SCRUM em Juazeiro

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

Page 34: Palestra de SCRUM em Juazeiro

Planejamento do SprintESTIMATIVAS em Story Points

Planning Poker

Page 35: Palestra de SCRUM em Juazeiro

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

Page 36: Palestra de SCRUM em Juazeiro

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

Page 37: Palestra de SCRUM em Juazeiro

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

Page 38: Palestra de SCRUM em Juazeiro

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

Page 39: Palestra de SCRUM em Juazeiro

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

Page 40: Palestra de SCRUM em Juazeiro

Quatro KanBan

Page 41: Palestra de SCRUM em Juazeiro

Product Backlog

Sprint Backlog

Burndown Chart

Artefatos do Scrum

Page 42: Palestra de SCRUM em Juazeiro

Burndown Chart

Page 43: Palestra de SCRUM em Juazeiro

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

Page 44: Palestra de SCRUM em Juazeiro

Referências

www.mountaingoatsoftware.com/scrum www.scrumalliance.org www.controlchaos.com [email protected] 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

Page 45: Palestra de SCRUM em Juazeiro

Dúvidas ?