Gestão ágil de projetos Scrum Gestão ágil de projetos
Igor Macaúbas e Marcos Pereira
Metas para o treinamento Metas para o seminário Explicar o que é Scrum Por que Scrum Mostrar que Scrum não é uma bala de prata Novo olhar sobre gestão de projetos
Veja Ouça Fale
“A maioria das nossas suposições sobre negócios, tecnologia e organizações têm pelo menos 50 anos. Elas tem sobrevivido ao seu tempo. Como resultado, estamos pregando, ensinando, e praticando políticas que estão cada vez mais desalinhadas com a realidade, e são contra produtivas.” Peter Drucker (1909-2005)
53% custam o dobro do estimado 31% são cancelados 53% custam o dobro do estimado Apenas 16% são completados no prazo e custo estimados * dados do CHAOS report
Mas por que?
Requisitos e especificações incompletas Falta de envolvimento do usuário Requisitos e especificações incompletas Falta de suporte da direção Falta de Pessoas e Recursos
Falhar é uma maneira muito forte de aprendizado, mas é preciso parar de apontar culpados
“Jogar a culpa dos problemas nas pessoas envolvidas é mais do que contra produtivo, é deixar uma situação ruim pior ainda.” Mary Poppendieck
Manifesto Ágil
Indivíduos e interação entre eles mais que processos e ferramentas
Software Funcionando mais que documentação abrangente
Colaboração mais que negociação de contratos
Responder às mudanças mais que seguir um plano http://www.agilemanifesto.org
Olá, Scrum!
Scrum é um processo iterativo e incremental para desenvolvimento de produtos.
O objetivo é entregar o máximo de valor de negócio O objetivo é entregar o máximo de valor de negócio* possível no menor tempo * Foco no ROI – Retorno de investimento
Scrum é também um meio de evidenciar os problemas Scrum tenta deixar os problemas evidentes para percebermos que o projeto vai falhar. Ou, claro, corrigir os erros para que o projeto ande melhor.
Mas Scrum não é bala de prata* * Não mata vampiros & afins * Exige trabalho duro e comprometimento
P D C A Plan, Do, Check, Act
Planejamento
Execução
Checagem
Retrospectiva e melhoria contínua
O processo não é avaliado enquanto está rodando Para refletir depois de ações efetivas. Da reflexão vêm ações mais efetivas ainda. Drucker O processo não é avaliado enquanto está rodando
Ciclo Scrum
Tipos de Processos
“É típico adotar a abordagem de modelagem definida quando os mecanismos subjacentes pelos quais um processo opera são razoavelmente bem entendidos. Quando o processo é muito complexo para ser definido, a abordagem empírica é a escolha apropriada.” (Ogunnaike and Ray, Oxford University Press) Um modelo de processos definidos requer que cada parte do trabalho seja completamente bem entendido Dado um conjunto de entradas bem definidos, a mesma saída é gerada sempre.
Processo definido vs Processo empírico
Desenvolvimento de software não é um processo que gera as mesmas saídas para as mesmas entradas Nós acreditamos que qualquer processo de desenvolvimento inserido em uma ambiente em mudança deve ser empírico, porque ele provê a melhor abordagem conhecida para se adaptar as mudanças.
Processos empíricos
Complexos, caóticos ou seus detalhes ainda não são conhecidos
Atividades podem ser cíclicas e tem duração com muitas variações
É difícil estimar tempos de execução
Fixar a maior quantidade possível de parâmetros
Parâmetros de contexto Parâmetros de entrada Parâmetros de saída Tempo, Esforço, Time Parâmetros de entrada Backlog, Prioridades, Estimativas Parâmetros de saída Objetivos, Critérios de avaliação
Exatamente o que Scrum faz! Aplique o PDCA para - Planejar as entradas - Trabalhar em um tempo fixo - Validar saídas Adicionar aprendizado para o próximo ciclo - Sprint Planning (Plan) - Sprint (Do) - Sprint Review (Check) - Sprint Retrospective (Act)
Timeboxing!
Ciclo Scrum Fonte: http://www.mountaingoatsoftware.com/scrum
Papéis e Responsabilidades
Fonte: http://www.implementingscrum.com
Scrum tem poucos papéis (não são cargos Scrum tem poucos papéis (não são cargos!): Product Owner, Team, Scrum Master
Scrum Master* *Mãe, quando eu crescer, quero ser Scrum Master.
Trabalhar com o Product Owner Cuidar do time Manter o processo funcionando Disseminar o Scrum Garantir comunicação
Product Owner* *Me dá, me dá, me dá, me dá!
Criar e compartilhar uma visão do projeto
Tomar decisões continuamente sobre os itens do product backlog
Escrever e priorizar itens de backlog
Validar software no final de cada Sprint
Estabelecer e manter o plano de entregas
Tomar decisões pensando no ROI do projeto responsável pelo lucro
Time* *Tudo eu! Tudo eu!
Responsabilidades: Estimar itens do backlog Se comprometer a entregar um incremento funcional de software Gerenciar o próprio progresso Auto organizados para entregar o que o PO quer As decisões de desenvolvimento são feitas pelo time. Ou seja, o time tem autoridade para fazer o que seja necessário para cumprir seus compromissos
Times Scrum
Como são compostos: Cross functional, sem papéis Multidisciplinares Auto sustentáveis Todos os skills e habilidades necessárias para desenvolver o produto 7pessoas (mais ou menos 2)
Cerimônias de Scrum: Sprint Planning 1 Sprint Planning 2 Daily Scrum Sprint Review Sprint Retrospective
Todas com timebox
Reunião de Estimativa: Preparação para o Sprint Planning Estimar baseado no tamanho, nunca em tempo Atualizar Product Backlog com as estimativas Importante para o PO criar o release plan
Sprint Planning 1: Product Backlog Capacidade da equipe Condições do Negócio Objetivos da Sprint Itens selecionados do backlog Aceite do time Revisa Considera Organiza
Sprint Planning 2: PO não precisa participar É um planejamento tático da equipe Os itens selecionados do Product Backlog são destrinchados em tarefas Sprint Backlog
Daily Scrum: Deve responder as três perguntas: O que fiz desde a ultima Daily Scrum? O que espero fazer até a próxima Daily Scrum? O que está impedindo o progresso? Impedimentos reportados aqui
Sprint Review: O que significa “pronto”? Team deve ter um critério técnico para indicar o que significa pronto! Incrementos funcionais são apresentados ao Product Owner e interessados
Consequências do Review: Estórias não concluídas voltam para o product backlog Atualizar Product Backlog para remover itens que a equipe implementou inadvertidamente Scrum Master trabalha para reformular a equipe
Consequências do Review: Product Backlog é repriorizado para tomar vantagem dos incrementos apresentados Decidir se haverá ou não outra Sprint
Sprint Retrospectives
O que aprendizado é
O que aprendizado não é
Cometer os mesmos erros e esperar resultados diferentes
Aprender é desapontar expectativas, mas não procure culpados O primeiro passo para aprender é respeitar o passado sem procurar culpados. As long as we blame someone or something for being the reason for our failure, we are not able to learn
Diretiva Primária
“Não importa o que descobrimos, nós entendemos e realmente acreditamos que cada um fez o melhor trabalho que pode considerando: O que era conhecido, suas habilidades, os recursos disponíveis e a situação no momento.” (Kerth, Project Retrospectives, 2001)
Passos para a Retrospectiva
Saídas da Retrospectiva: Team Backlog (para ajustar o processo) Backlog de impedimentos (mudanças na empresa) Os backlogs devem ser ordenados por importância
Onde, Quando, Quem?
Quando as retrospectivas não funcionam
O facilitador controla demais a reunião
Little less conversation, more action, please
Conflito de interesses O formato é muito repetitivo O facilitador não se prepara Itens de ação mal formulados
A Visão do Produto + Product Backlog Planejamento Estratégico A Visão do Produto + Product Backlog
O que é estratégia? “O conceito de estratégia, em grego strateegia, em latim strategi, em francês stratégie...”
Plano de ação a longo prazo criado pra atingir um objetivo
Selected Backlog + Sprint Backlog Planejamento Tático Selected Backlog + Sprint Backlog
Planejamento Tático é feito por Sprint
Em Scrum, as táticas são voláteis e de responsabilidade do time
O Product Backlog Emergente Priorizado e estimado Maior prioridade, mais detalhes Qualquer um pode contribuir Priorização é tarefa do PO Sempre visível Alinhado ao plano de negócios
O Product Backlog Priorizado e estimado Emergente Maior prioridade, mais detalhes Qualquer um pode contribuir Priorização é tarefa do PO Sempre visível Alinhado ao plano de negócios
O Product Backlog Maior prioridade, mais detalhes Emergente Priorizado e estimado Maior prioridade, mais detalhes Qualquer um pode contribuir Priorização é tarefa do PO Sempre visível Alinhado ao plano de negócios
O Product Backlog Qualquer um pode contribuir Emergente Priorizado e estimado Maior prioridade, mais detalhes Qualquer um pode contribuir Priorização é tarefa do PO Sempre visível Alinhado ao plano de negócios
O Product Backlog Priorização é tarefa do PO Emergente Priorizado e estimado Maior prioridade, mais detalhes Qualquer um pode contribuir Priorização é tarefa do PO Sempre visível Alinhado ao plano de negócios
O Product Backlog Sempre visível Emergente Priorizado e estimado Maior prioridade, mais detalhes Qualquer um pode contribuir Priorização é tarefa do PO Sempre visível Alinhado ao plano de negócios
O Product Backlog Alinhado ao plano de negócios Emergente Priorizado e estimado Maior prioridade, mais detalhes Qualquer um pode contribuir Priorização é tarefa do PO Sempre visível Alinhado ao plano de negócios
Escrevendo Estórias
TestáveisIndependentesNegociáveisValor para o clienteEstimáveisSmallTestáveis
TestáveisIndependentesNegociáveisValor para o clienteEstimáveisSmallTestáveis
TestáveisIndependentesNegociáveisValor para o clienteEstimáveisSmallTestáveis
TestáveisIndependentesNegociáveisValor para o clienteEstimáveisSmallTestáveisIndependentes
TestáveisIndependentesNegociáveisValor para o clienteEstimáveisSmallTestáveisIndependentesNegociáveis
TestáveisIndependentesNegociáveisValor para o clienteEstimáveisSmallTestáveisIndependentesNegociáveis
Estórias com critérios de aceitação criam entendimento sobre quando a tarefa está pronta e ajudam o time a estimar e dividir a estória em tarefas
Scrum foca em tamanho e não em duração
Estimar em tamanho relativo é mais simples
Monitorando a Sprint
Sprint Burndown
Sprint Burn Up
Capacidade
Problemas comuns na adoção de Scrum
Product Owner pouco presente Sem Visão Sem release plan Sem product backlog
Falta estimativa Falta priorização Falta acompanhamento Product Backlog não é mantido Falta estimativa Falta priorização Falta acompanhamento
Se as cerimônias não acontecem Falta planejamento Falta comprometimento para entregas PO pode aceitar itens que não estão prontos
Sem retrospectivas Falta de uma maneira de melhorar o trabalho do time Mesmos erros acontecem sempre Impedimentos não são removidos
Decomposição do trabalho Planejamento a longo prazo Tempo para pesquisa e folga
O que é difícil em Scrum? Detalhes podem escapar se não for gerenciado corretamente Criar e manter um Product Backlog requer trabalho
Resumo da ópera
É um embrulho para as práticas existentes de engenharia. É um processo ágil para gerenciar e controlar trabalho. É um embrulho para as práticas existentes de engenharia. É uma aproximação coletiva, iterativa e incremental, onde requisitos mudam rapidamente.
Controla o caos de interesses e necessidades conflitantes.
obstáculos que entrem no É uma forma de detectar e remover obstáculos que entrem no desenvolvimento e entregas
É melhorar a comunicação e maximizar cooperação.
Não é uma metodologia completa e com o carimbo de um fornecedor
Não é um ataque à documentação ou às ferramentas case
Não confundir Scrum com XP: são diferentes, mas se complementam!
?
Igor Macaúbas Marcos Pereira Scrum Igor Macaúbas Marcos Pereira
scrum@macaubas.com
http://delicious. com/macaubas http://delicious http://delicious.com/macaubas http://delicious.com/marcospereira http://scrumalliance.org http://br.groups.yahoo.com/group/scrum-brasil/ http://macaubas.com http://marcospereira.wordpress.com/
Copiar, distribuir, exibir e executar a obra Criar obras derivadas Este trabalho está licenciado através da “Atribuição-Uso Não-Comercial-Compartilhamento pela mesma Licença 3.0 Unported” Você pode: Copiar, distribuir, exibir e executar a obra Criar obras derivadas Sob as seguintes condições: Atribuição. Você deve dar crédito ao autor original, da forma especificada pelo autor ou licenciante. Uso Não-Comercial. Você não pode utilizar esta obra com finalidades comerciais. Compartilhamento pela mesma Licença. Se você alterar, transformar, ou criar outra obra com base nesta, você somente poderá distribuir a obra resultante sob uma licença idêntica a esta Para cada novo uso ou distribuição, você deve deixar claro para outros os termos da licença desta obra. Qualquer uma destas condições podem ser renunciadas, desde que Você obtenha permissão do autor. Nothing in this license impairs or restricts the author's moral rights. http://creativecommons.org/licenses/by-nc-sa/3.0/deed.pt