Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Scrum [pt-br]

Scrum [pt-br]

Introdução ao Scrum.

zegomesjf

August 17, 2012
Tweet

Other Decks in Technology

Transcript

  1. Mountain Goat Software, LLC Não para a corrida de revezamento

    Hirotaka Takeuchi and Ikujiro Nonaka, lThe New New Product Development Gamez, Harvard Business Review, January 1986. lO estilo da “corrida de revezamento” aplicado ao desenvolvimento de produtos pode conflitar com o objetivo de flexibilidade e velocidade máxima. Ao invés disso, um estilo holístico ou uma abordagem “rugby”, onde a equipe tenta percorrer uma unidade passando a bola pra frente e pra trás, pode servir melhor às atuais necessidades competitivas.
  2. Mountain Goat Software, LLC • Scrum é um processo ágil que

    permite manter o foco na entrega do maior valor de negócio, no menor tempo possível. • Ele nos permite verificar rapidamente o desenvolvimento de um software (de 2 a 4 semanas) • O cliente determina as prioridades. As equipes se auto- organizam a determinar a melhor maneira de entregar as funcionalidades de maior prioridade. • Entre 2 a 4 semanas, qualquer um pode ver o desenvolvimento real do software e decidir se ele pode ser entregue ou se deve continuar a ser melhorado por mais uma sprint. Scrum em 100 palavras
  3. Mountain Goat Software, LLC Origens do Scrum • Jeff Sutherland • 

    Inplantou scrum na Easel Corp em 1993 •  IDX e mais de 500 pessoas usando scrum. • Ken Schwaber •  ADM •  Apresentação na OOPSLA 96 com Sutherland •  Autor de três livros sobre scrum • Mike Beedle •  Padrões do scrum na PLOPD4 • Ken Schwaber e Mike Cohn •  Fundaram a Scrum Alliance em2002, inicialmente com a Agile Alliance
  4. Mountain Goat Software, LLC Quem usa Scrum? • Microsoft • Yahoo • Google

    • Electronic Arts • High Moon Studios • Lockheed Martin • Philips • Siemens • Nokia • Capital One • BBC • Intuit • Intuit • Nielsen Media • First American Real Estate • BMC Software • Ipswitch • John Deere • Lexis Nexis • Sabre • Salesforce.com • Time Warner • Turner Broadcasting • Oce
  5. Mountain Goat Software, LLC Scrum é usado para: •  Software

    comercial •  Desenvolvimento interno •  Desenvolvimento por terceiros •  Projetos de preço fixo •  Aplicações financeiras •  Aplicações certificadas pela ISO 9001 •  Sistemas embarcados •  Sistemas disponíveis 24x7, 99.999% •  Desenvolvimento por hacker solitários • Desenvolvimento de games • Sistemas de controle crítico a saúde • Sistema para controle de satélites • Websites • Software para handheld • Aplicações para celulares • Aplicações para redes • Aplicações de ISV • Para usar em aplicações de grande escala.
  6. Mountain Goat Software, LLC Características • Equipes que se auto organizam

    • Produto avança em uma série de “sprints” ao longo dos meses. • Requisitos são armazenados como itens em uma lista do “product backlog” • Não há prática de engenharia prescrita (Srum se adequa a todas) • Use regras generativas para criar um ambiente ágil para entregar projetos • Um dos processos ágeis
  7. Mountain Goat Software, LLC O Manifesto Ágil – nossos valores

    Processos e ferramentas Indivíduos e interações sobre Seguir um plano Responder as mudanças sobre Source: www.agilemanifesto.org Documentação extensiva Software funcionando sobre Negociação de contrato Colaboração do cliente sobre
  8. Mountain Goat Software, LLC Nível do ruído em um projeto

    Simples Complexo Anarquia Tecnologia Requisitos Longe de um acordo Perto de um acordo Perto da certeza Longe da certeza Source: Strategic Management and Organizational Dynamics by Ralph Stacey in Agile Software Development with Scrum by Ken Schwaber and Mike Beedle.
  9. Mountain Goat Software, LLC Scrum Cancel Gift wrap Return Sprint

    2-4 semanas Return Meta da sprint Sprint backlog Produto desenvolvindo a ser entregue Product backlog Coupons Gift wrap Coupons Cancel 24 horas
  10. Mountain Goat Software, LLC Sprints • Projetos Scrum acontece em uma

    série de “sprints” (Similar as iterações do XP) • Duração típica de 2 a 4 semanas (no máximo) • O produto é projetado, codificado e testado durante a sprint.
  11. Mountain Goat Software, LLC Sem alterações durante a sprint • Planeje

    a duração da sprint por volta de quanto tempo você pode se comprometer a deixar a sprint sem mudanças. alterações
  12. Mountain Goat Software, LLC Scrum framework • Product owner • ScrumMaster • Team

    Roles • Sprint planning • Sprint review • Sprint retrospective • Daily scrum meeting Ceremonies • Product backlog • Sprint backlog • Burndown charts Artifacts
  13. Mountain Goat Software, LLC Scrum framework • Sprint planning • Sprint review

    • Sprint retrospective • Daily scrum meeting Ceremonies • Product backlog • Sprint backlog • Burndown charts Artifacts • Product owner • ScrumMaster • Team Roles
  14. Mountain Goat Software, LLC Product owner • Decide as funcionalidades do

    produto • Decide a data e o conteúdo do lançamento. • Responsável pela rentabilidade (ROI) • Prioriza as funcionalidades de acordo com o valor de mercado • Ajusta as funcionalidades e a prioridade a cada iteração, de acordo com a necessidade • Aceita ou rejeita o resultado do trabalho
  15. Mountain Goat Software, LLC The ScrumMaster • Representa o gerenciamento do

    projeto • Responsável pela execução dos valores e das práticas do Scrum • Remove os impedimentos • Garante que a equipe seja funcional e produtiva • Garante a colaboração entre os papéis e funções • Proteje o time de interferências externas
  16. Mountain Goat Software, LLC The team • Tipicamente de 5-9 pessoas

    • Conhecimento diversos: • Programadores, testers, user experience designers, etc. • Membros são full-time •  Pode haver exceções (ex.: administrador do banco)
  17. Mountain Goat Software, LLC The team • São auto organizáveis • A

    composição da equipe deve mudar somente entre as sprints.
  18. Mountain Goat Software, LLC • Product owner • ScrumMaster • Team Roles Scrum

    framework • Product backlog • Sprint backlog • Burndown charts Artifacts • Sprint planning • Sprint review • Sprint retrospective • Daily scrum meeting Ceremonies
  19. Mountain Goat Software, LLC Sprint planning meeting Priorização da sprint

    •  Analisar e avaliar o produtct backlog •  Definir a meta da sprint Sprint planning •  Decidir como atingir a meta da sprint (projeto) •  Criar o sprint backlog (tasks) a partir dos items do product backlog (user stories / features) •  Estimar a sprint backlog em horas Meta da Sprint Sprint backlog Condições do negócio Capacidade da equipe Product backlog Tecnologia Produto atual
  20. Mountain Goat Software, LLC Sprint planning • Equipe seleciona os itens

    do product backlog que eles se comprometem a concluir • Sprint backlog é criado •  Tasks são identificadas e estimadas de (1 a 16 horas) •  Feito pela equipe, não somente o ScrumMaster • Planejamento de alto nível é considerado Como um nerd solteiro e quebrado, eu quero jogar diablo 3 Trabalhar pra juntar a grana (8 horas) Comprar o jogo online (1) Ler o manual (2) Baixar o jogo (16) by felix Jogar Diablo 3 (16)
  21. Mountain Goat Software, LLC The daily scrum • Regras • Diário • 15-minutos

    • Todos em pé • Não é para resolver problemas • Todo mundo está convidado • Somente os membros da equipe, ScrumMaster, product owner, podem falar • Ajuda a evitar reuniões extras desnecessárias
  22. Mountain Goat Software, LLC Todos respondem 3 perguntas • Isto não

    é um relatório para o ScrumMaster • São compromissos assumidos para os colegas O que você fez ontem? 1 O que você vai fazer hoje? 2 Tem algo no seu caminho? 3
  23. Mountain Goat Software, LLC The sprint review • A equipe apresenta

    o que foi realizado durante a sprint • Normalmente como uma forma de demonstrar as novas funcionalidades ou da arquitetura • Informal • 2 horas de preparação • Sem slides • A equipe inteira participa • Todos estão convidados
  24. Mountain Goat Software, LLC Sprint retrospective • Periodicamente verificar o que

    está e o que não está funcionando • Normalmente de 15 a 30 minutos. • Feito após cada sprint • A equipe inteira participa • ScrumMaster • Product owner • Team • Possivelmente o cliente e outros
  25. Mountain Goat Software, LLC Start / Stop / Continue • A

    equipe diz/discute o que gostaria de: Começar a fazer Parar de fazer Continuar fazendo Esta é uma das maneiras de se fazer uma sprint retrospective.
  26. Mountain Goat Software, LLC • Product owner • ScrumMaster • Team Roles Scrum

    framework • Sprint planning • Sprint review • Sprint retrospective • Daily scrum meeting Ceremonies • Product backlog • Sprint backlog • Burndown charts Artifacts
  27. Mountain Goat Software, LLC Product backlog • Os requisitos • Uma lista

    de todo o trabalho desejado para o projeto • O ideal é que cada item tenha um peso/valor para o usuário ou para o cliente do produto • Priorizado pelo product owner • Repriorizado no início de cada sprint Este é o product backlog
  28. Mountain Goat Software, LLC Exemplo de um product backlog Item

    do Backlog Estimativa Permitir um usuário a fazer uma reserva 3 Como um usuário, eu quero cancelar uma reserva. 5 Como um usuário, eu quero alterar a data da reserva. 3 Como um empregado do hotel, eu posso gerar um relatório do consumo por quarto 8 Melhorar o tratamento de exceções 8 ... 30 ... 50
  29. Mountain Goat Software, LLC The sprint goal • Uma curta declaração

    para mostrar o foco do trabalho durante a sprint. Aplicação do BD Serviços financeiros Ciências da vida Suporte as funcionalidades necessárias para estudar a genética da população. Dar mais suporte de indicadores técnicos que a companhia Xpto em tempo real. Fazer a aplicação rodar no Sql Server além de rodar no Oracle
  30. Mountain Goat Software, LLC The sprint goal • Uma curta declaração

    para mostrar o foco do trabalho durante a sprint. Compras Inserir a funcionalidade de Registro de Preço
  31. Mountain Goat Software, LLC Gerenciando a sprint backlog • Indivíduos se

    inscrevem para o trabalho de sua escolha. • Trabalho nunca é atribuído • Trabalho estimado restante é atualizado diariamente
  32. Mountain Goat Software, LLC Gerenciando a sprint backlog • Qualquer membro

    da equipe pode adicionar, excluir ou alterar a sprint backlog (tasks). • O trabalho aparece a partir da sprint • Se uma tarefa não é clara, defina o item com mais horas, e subdivida-a depois • Atualize o trabalho restante conforme vem o conhecimento
  33. Mountain Goat Software, LLC Um exemplo de sprint backlog Tarefas

    Codificar a interface do usuário Codificar a regra do negócio Testar a regra do negócio Escrever ajuda online Escrever a classe Foo Seg 8 16 8 12 8 Ter 4 12 16 8 Qua Qui 4 11 8 4 Sex 8 8 Adicionar log para os erros 8 10 16 8 8
  34. Mountain Goat Software, LLC Horas 40 30 20 10 0

    Seg Ter Qua Qui Sex Tarefas Codificar a interface do u Codificar a regra de negóc Testar a regra do negócio Escrever a ajuda online Seg 8 16 8 12 Ter Qua Qui Sex 4 12 16 7 11 8 10 16 8 50
  35. Mountain Goat Software, LLC Escalabilidade • Cada equipe contém 7 ±

    2 pessoas • Escalabilidade vem de equipe de equipes • Fatores para escalar • Tipo da aplicação • Tamanho da equipe • Dispersão da equipe • Duração do projeto • Scrum vem sendo usado em projetos múltipos com mais de 500 pessoas
  36. Mountain Goat Software, LLC Material para ler •  Agile and

    Iterative Development: A Manager`s Guide by Craig Larman •  Agile Estimating and Planning by Mike Cohn •  Agile Project Management with Scrum by Ken Schwaber •  Agile Retrospectives by Esther Derby and Diana Larsen
  37. Mountain Goat Software, LLC Material para ler •  Agile Software

    Development Ecosystems by Jim Highsmith •  Agile Software Development with Scrum by Ken Schwaber and