scrum - desenvolvendo software e entregando valor

71
Scrum Desenvolvendo software e entregando valor sábado, 1 de junho de 2013

Upload: sergio-monteiro

Post on 07-Dec-2014

509 views

Category:

Technology


3 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Scrum - Desenvolvendo Software e Entregando Valor

ScrumDesenvolvendo software e entregando valor

sábado, 1 de junho de 2013

Page 2: Scrum - Desenvolvendo Software e Entregando Valor

• Problemas

• Agile

• Papéis no Scrum

• Processo Scrum

• Atenção

• Resultados

Agenda

sábado, 1 de junho de 2013

Page 3: Scrum - Desenvolvendo Software e Entregando Valor

Problemascom o método tradicional de desenvolver software

sábado, 1 de junho de 2013

Page 4: Scrum - Desenvolvendo Software e Entregando Valor

TradicionalDesenvolvimento em fases Antecipação de resultadosLevantamento total dos requisitos

sábado, 1 de junho de 2013

Page 5: Scrum - Desenvolvendo Software e Entregando Valor

Requisitos pouco clarosMedo de ir para a próxima fase

Paralisia da análise

sábado, 1 de junho de 2013

Page 6: Scrum - Desenvolvendo Software e Entregando Valor

Mudanças de RequisitosMudanças ficam cada vez mais caras

Clientes não consegues o que querem

sábado, 1 de junho de 2013

Page 7: Scrum - Desenvolvendo Software e Entregando Valor

Projetos LongosSomente 32% dos projetos são entregues com sucesso*

Projetos longos adiam a receita

* Fonte: Standish Groupsábado, 1 de junho de 2013

Page 8: Scrum - Desenvolvendo Software e Entregando Valor

TestesNão “sobra” tempo para testes

A garantia da qualidade é negociadaIntegração tardia = Falha no final

sábado, 1 de junho de 2013

Page 9: Scrum - Desenvolvendo Software e Entregando Valor

Desperdício de TempoSomente 52% de funcionalidades implementadas*64% dessas funcionalidades são raramente usadas*

* Fonte: Standish Groupsábado, 1 de junho de 2013

Page 10: Scrum - Desenvolvendo Software e Entregando Valor

Visibilidade pobre% de tarefas inúteis realizadas*

Média superada 43%*

* Fonte: Standish Groupsábado, 1 de junho de 2013

Page 11: Scrum - Desenvolvendo Software e Entregando Valor

AgileSoftware

Development

sábado, 1 de junho de 2013

Page 12: Scrum - Desenvolvendo Software e Entregando Valor

Projetos Caóticos

Projetos Ágeis

Projetos Estruturados

sábado, 1 de junho de 2013

Page 13: Scrum - Desenvolvendo Software e Entregando Valor

Manifesto Ágil

Estamos descobrindo maneiras melhores de desenvolver software fazendo-o nós mesmos e

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

Indivíduos e interação entre eles mais que processos e ferramentas

Software em funcionamento mais que documentação abrangente

Colaboração com o cliente mais que negociação de contratos

Responder a mudanças mais que seguir um plano

Ou seja, mesmo havendo valor nos itens à direita, valorizamos mais os itens à esquerda.

sábado, 1 de junho de 2013

Page 14: Scrum - Desenvolvendo Software e Entregando Valor

Princípios Ágeis

✓ Satisfação do cliente

✓Mudanças são bem-vindas

✓ Entregar frequentemente

✓ Trabalhar como um time

✓Motivar a equipe

✓Comunicação face a face

✓Medir o trabalho

✓Manter a cadência

✓ Buscar a qualidade

✓Manter a simplicidade

✓ Engajar

✓ Refletir regularmente

sábado, 1 de junho de 2013

Page 15: Scrum - Desenvolvendo Software e Entregando Valor

Adoção do Agile

sábado, 1 de junho de 2013

Page 16: Scrum - Desenvolvendo Software e Entregando Valor

Adoção do Agile

sábado, 1 de junho de 2013

Page 17: Scrum - Desenvolvendo Software e Entregando Valor

Scrum

sábado, 1 de junho de 2013

Page 18: Scrum - Desenvolvendo Software e Entregando Valor

Os Mentores

Ken Schwaber Jeff Sutherland

Mike Cohn

sábado, 1 de junho de 2013

Page 19: Scrum - Desenvolvendo Software e Entregando Valor

Objetivo do Scrum

Gerenciar a complexidade, imprevisibilidade e mudanças através da visibilidade, Inspeção e Adaptação

sábado, 1 de junho de 2013

Page 20: Scrum - Desenvolvendo Software e Entregando Valor

sábado, 1 de junho de 2013

Page 21: Scrum - Desenvolvendo Software e Entregando Valor

Papéis no Scrum

sábado, 1 de junho de 2013

Page 22: Scrum - Desenvolvendo Software e Entregando Valor

Product OwnerÉ o dono do projeto, representa o cliente.

sábado, 1 de junho de 2013

Page 23: Scrum - Desenvolvendo Software e Entregando Valor

Product OwnerDefine as funcionalidades de acordo com a visão.Prioriza as funcionalidades.Organiza as releases.Fornece feedback.Aceita ou rejeita os resultados.sábado, 1 de junho de 2013

Page 24: Scrum - Desenvolvendo Software e Entregando Valor

TimeDeve ser pequeno, multifuncional e auto-organizado.

sábado, 1 de junho de 2013

Page 25: Scrum - Desenvolvendo Software e Entregando Valor

TimeDefine as tarefas.Estima o esforço.Desenvolve o produto.Garante a qualidade.Evolui o processo.sábado, 1 de junho de 2013

Page 26: Scrum - Desenvolvendo Software e Entregando Valor

Scrum MasterLíder servidor, protetor do time e responsável pelo processo.

sábado, 1 de junho de 2013

Page 27: Scrum - Desenvolvendo Software e Entregando Valor

Scrum MasterRemove impedimentos.Previne interrupções.Facilitador para o Time.Garante o funcionamento do processo.Gerencia o gerenciamento.sábado, 1 de junho de 2013

Page 28: Scrum - Desenvolvendo Software e Entregando Valor

Porcos e Galinhas

sábado, 1 de junho de 2013

Page 29: Scrum - Desenvolvendo Software e Entregando Valor

Processo Scrum

sábado, 1 de junho de 2013

Page 30: Scrum - Desenvolvendo Software e Entregando Valor

Processo Scrum

sábado, 1 de junho de 2013

Page 31: Scrum - Desenvolvendo Software e Entregando Valor

Product BacklogExpressa valor e adia decisões

sábado, 1 de junho de 2013

Page 32: Scrum - Desenvolvendo Software e Entregando Valor

Product Backlog

Criado pelo Product Owner.Requisitos de alto nível.Expressa o valor para o negócio.Incompleto, imperfeito.Espera por mudanças e desenvolvimento.Visão limitada do futuro.sábado, 1 de junho de 2013

Page 33: Scrum - Desenvolvendo Software e Entregando Valor

Product Backlog

Priorizado pelo valor e risco.Contém User Stories bem escritas.Inclui as estimativas por pontos.Deve ser público e de fácil acesso.

sábado, 1 de junho de 2013

Page 34: Scrum - Desenvolvendo Software e Entregando Valor

User StoryEu como <usuário>, quero <funcionalidade> para que <benefício>.

Eu como bibliotecário, quero um sistema de busca para que seja possível encontrar livros facilmente.

sábado, 1 de junho de 2013

Page 35: Scrum - Desenvolvendo Software e Entregando Valor

Sprint

Timeboxed, funcionalidades congeladas, escopo variável, resultado entregável.

sábado, 1 de junho de 2013

Page 36: Scrum - Desenvolvendo Software e Entregando Valor

Sprint Planning

Capacidade do TimeProduct Backlog

NegócioTecnologiaObjetivo

sábado, 1 de junho de 2013

Page 37: Scrum - Desenvolvendo Software e Entregando Valor

Comunicação frente-a-frente.Pequenos passos reversíveis.Perspectivas do Usuário.

Sprint Planning

sábado, 1 de junho de 2013

Page 38: Scrum - Desenvolvendo Software e Entregando Valor

Sprint Planning - Parte 1Planejamento no nível estratégico.Priorizar e selecionar as funcionalidades.Discutir os critérios de aceitação.Alinhar o entendimento.Tempo: 1 hora por semana de Sprint.

Presença obrigatória:

PO, SM, Time.

sábado, 1 de junho de 2013

Page 39: Scrum - Desenvolvendo Software e Entregando Valor

Sprint Planning - Parte 2Planejamento no nível tático.Define os itens do Sprint Backlog.Estmativa dos itens do Sprint Backlog.Uso da Velocidade.Tempo: 1 hora por semana de Sprint.

Presença obrigatória: SM, Time.

sábado, 1 de junho de 2013

Page 40: Scrum - Desenvolvendo Software e Entregando Valor

Sprint BacklogQuebrando em tarefas técnicas os itens de negócio.

sábado, 1 de junho de 2013

Page 41: Scrum - Desenvolvendo Software e Entregando Valor

Sprint Backlog

Criado pelo time.O time organiza e aloca as tarefas.Nada é adicionado por outras pessoas.

sábado, 1 de junho de 2013

Page 42: Scrum - Desenvolvendo Software e Entregando Valor

Daily Scrum

sábado, 1 de junho de 2013

Page 43: Scrum - Desenvolvendo Software e Entregando Valor

Daily ScrumComprometimento e responsabilidade.Dizer o que esta fazendo e fazer o que está dizendo.Todo mundo é convidado a participar.Tempo: Até 15 minutos todos os dias.

sábado, 1 de junho de 2013

Page 44: Scrum - Desenvolvendo Software e Entregando Valor

Daily ScrumO que você fez desde o último daily meeting?O que você fará até o próximo daily meeting?Está com algum impedimento?Somente o Time fala.Não é para resolver problemas.

Tempo: Até 15 minutos todos os dias.

sábado, 1 de junho de 2013

Page 45: Scrum - Desenvolvendo Software e Entregando Valor

Task Board

Tarefas completas

Sprint Backlog

Tarefas em andamento

Gráfico de Burndown

sábado, 1 de junho de 2013

Page 46: Scrum - Desenvolvendo Software e Entregando Valor

Definição de ProntoEvite a síndrome dos 90%

Codificado, comentado, checked-in, integrado, revisado, com testes unitários, implantado em ambiente de testes, aceito pelos critérios de

aceitação e documentado.

Pronto!

sábado, 1 de junho de 2013

Page 47: Scrum - Desenvolvendo Software e Entregando Valor

Sprint Burndown

sábado, 1 de junho de 2013

Page 48: Scrum - Desenvolvendo Software e Entregando Valor

Sprint Review

Satisfazer o POObter feedback

sábado, 1 de junho de 2013

Page 49: Scrum - Desenvolvendo Software e Entregando Valor

Informal, sem slides.Todos do Time participam.Qualquer um pode ser convidado.

Sprint Review

sábado, 1 de junho de 2013

Page 50: Scrum - Desenvolvendo Software e Entregando Valor

Necessário preparação.Todas as funcionalidades devem ser mostradas.Os resultados podem ser aceitos ou rejeitados.Tempo: 2 horas para cada semana de Sprint.

Sprint Review

sábado, 1 de junho de 2013

Page 51: Scrum - Desenvolvendo Software e Entregando Valor

Sprint Retrospective

Melhorando o Processo

sábado, 1 de junho de 2013

Page 52: Scrum - Desenvolvendo Software e Entregando Valor

Reflexão sobre o processo e produto.Todos do Time participam.Não é necessário a participação do Product Owner.

Sprint Retrospective

sábado, 1 de junho de 2013

Page 53: Scrum - Desenvolvendo Software e Entregando Valor

O que precisamos começar a fazer?O que precisamos parar de fazer?O que precisamos continuar fazendo?

Sprint Retrospective

sábado, 1 de junho de 2013

Page 54: Scrum - Desenvolvendo Software e Entregando Valor

Release Planning

sábado, 1 de junho de 2013

Page 55: Scrum - Desenvolvendo Software e Entregando Valor

Planejar funcionalidades em Sprints e Releases.Releases dependem dos Sprints concluídos com sucesso.

Release Planning

sábado, 1 de junho de 2013

Page 56: Scrum - Desenvolvendo Software e Entregando Valor

Cancelar Sprint

sábado, 1 de junho de 2013

Page 57: Scrum - Desenvolvendo Software e Entregando Valor

Me dê um motivo lógico para

cancelarmos a Sprint!

sábado, 1 de junho de 2013

Page 58: Scrum - Desenvolvendo Software e Entregando Valor

Cancelar Sprint

• Somente em casos extremos.

• Time cancela: A meta da Sprint ficou inalcançável.

• Product Owner cancela: A prioridade mudou.

• Dar visibilidade ao problema.

sábado, 1 de junho de 2013

Page 59: Scrum - Desenvolvendo Software e Entregando Valor

SprintEntrega constante de valor para o

negócio.

Inspeção e Adaptação

sábado, 1 de junho de 2013

Page 60: Scrum - Desenvolvendo Software e Entregando Valor

SprintOrientado pelo Product Owner

Pequenos passosAs mudanças são bem-vindasOs Times são multifuncionais

Inclui design e testesMantém uma cadência na entregaCompartilha o comprometimento

Busca a alta qualidadeObtém feedback“Falha rápido”

sábado, 1 de junho de 2013

Page 61: Scrum - Desenvolvendo Software e Entregando Valor

ResultadosEfeitos do Scrum

sábado, 1 de junho de 2013

Page 62: Scrum - Desenvolvendo Software e Entregando Valor

Gerenciar a incertezaPequenos projetos, riscos menores

sábado, 1 de junho de 2013

Page 63: Scrum - Desenvolvendo Software e Entregando Valor

Escopo flexívelAceita mudanças em intervalos fixos

sábado, 1 de junho de 2013

Page 64: Scrum - Desenvolvendo Software e Entregando Valor

Entregas rápidasEntrega de valor em pequenos incrementos

sábado, 1 de junho de 2013

Page 65: Scrum - Desenvolvendo Software e Entregando Valor

Alta qualidadeTestes acontecem continuamente

sábado, 1 de junho de 2013

Page 66: Scrum - Desenvolvendo Software e Entregando Valor

Elimina o desperdícioNada é especificado, nada é construído

sábado, 1 de junho de 2013

Page 67: Scrum - Desenvolvendo Software e Entregando Valor

Aumenta a visibilidadeTodos os problemas são visíveis

sábado, 1 de junho de 2013

Page 68: Scrum - Desenvolvendo Software e Entregando Valor

Mais divertido, Times Felizes

sábado, 1 de junho de 2013

Page 69: Scrum - Desenvolvendo Software e Entregando Valor

Pré-Condições

✓ Empoderamento

✓Disciplina

✓Coragem

✓ Energia

✓ Paixão

✓Acompanhamento

✓ Times Estáveis

✓ Time Multifuncional

✓Colaboração

✓Cliente Disponível

sábado, 1 de junho de 2013

Page 70: Scrum - Desenvolvendo Software e Entregando Valor

Atenção!Scrum não é uma prática de engenharia

Parece simples, mas é dificilNão é bala de prata

É incompletoLeva tempo

sábado, 1 de junho de 2013

Page 71: Scrum - Desenvolvendo Software e Entregando Valor

[email protected]: @sergiomonteiro

Sérgio Monteiro

sábado, 1 de junho de 2013