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.
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
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
• 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
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.
• 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
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
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.
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.
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
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
• Conhecimento diversos: • Programadores, testers, user experience designers, etc. • Membros são full-time • Pode haver exceções (ex.: administrador do banco)
• 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
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)
• 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
é 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
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
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
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
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
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
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
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
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
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
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