O documento fornece uma visão geral do framework Scrum para gerenciamento de projetos, descrevendo seus principais conceitos como papéis, ferramentas e reuniões, além de destacar seus benefícios como maior produtividade, qualidade e visibilidade.
2. Agenda Scrum Visão Geral Ferramentas Reuniões Scrum e Eng. de Software - O que é Scrum? - Benefícios do Scrum - Gestão da Complexidade - Esqueleto - Papéis - Product Owner - Time - Scrum Master Estórias Story Points - Dashboard - Burndown Chart - Estimation Meeting - Sprint Planning 1 - Sprint Planning 2 - Daily Scrum Meeting - Sprint Review Meeting - Retrospective Meeting Projetos & Software
3. O que é Scrum? U m processo iterativo e incremental para o desenvolvimento e controle de projetos! Características: - Adaptativo e evolucionário Wrapper para práticas de engenharia existentes Baseado em equipes multidisciplinares Controla conflitos de interesse e necessidades Permite a detecção e remoção de riscos e impedimentos Permite o desenvolvimento de diferentes tipos de projeto - É um processo escalável para o gerenciamento de organizações inteiras
4. Vantagem competitiva Maior gerenciabilidade Benefícios do Scrum - Maximização do ROI - Respostas mais rápidas às mudanças - Geração de valor antecipada - Maior qualidade - Aumento significativo da produtividade - Maior assertividade - Maior visibilidade evolução e impedimentos visíveis - Motivação, auto-estima, c omunicação, cooperação, autonomia - Gerenciamento da complexidade
5. Pilares da complexidade em desenvolvimento de software Gestão da Complexidade “ Scrum ataca a complexidade através de seu processo empírico e suas práticas e regras simples” - Requisitos - Tecnologia - Pessoas
7. Visão Geral - Esqueleto O Esqueleto e o Coração de Scrum
8. Product Owner - Representa os stakeholders - Foco no négocio - Planeja os releases - Elabora e prioriza funcionalidades - Feedback & aprovações - Maximiza o ROI Scrum Master - Inspeção e adaptação - Age como facilitador - Define limites - Proteje o time Time - Entrega - É auto-organizado - É multi-disciplinar - Estima as estórias - Reporta progressos - Reporta impedimentos Compromisso Equipe Scrum completa Visão Geral - Papéis SM PO Time
10. Geradas pelo Time ou pelo Product Owner Contém Normalmente não são dependentes de outras estórias Não são designadas à uma pessoa Armazenadas em story cards e fixadas na parede Ferramentas - Estórias - Funcionalidades descritas de forma extremamente simples - Não são especificações - Condições de aceite que possam ser testadas na revisão - Todo o time é responsável pela estória
11. Indica o tamanho de uma estória em termos de esforços Seguem a escala Fibonacci Ferramentas - Story Points - São base para medir a velocidade - São base para priorizar estórias - 1, 2, 3, 5, 8, 13, 21, 34... - A unidade mínima (1 sp.) é definida pelo time Estimativas são acordadas pelo time
12. Controle da visão do produto - Product Backlog - Selected Product Backlog Controle do Sprint - Sprint Backlog - To do - Under working - Done - Impediments Backlog Benefícios - Gerenciamento das estórias - Visibilidade - Noção visual de progresso e impedimentos - Participação colaborativa Ferramentas - Dashboard
13. Benefícios Ferramentas - Burndown Chart - Visibilidade - Noção de velocidade - Evita surpresas
15. Reuniões - Ciclo de Reuniões Oficiais Estimation Planning 2 Planning 1 Daily Meetings Sprint Review Retrospective DIA 1 DIA 30
16. Reuniões - Fluxo do Scrum Vision Product Backlog
17. Participantes PO SM Time Objetivo - Product Owner - Scrum Master - Time Estimar o tamanho das próximas estórias relevantes Ter estimativas como base para o release planning Estórias previamente priorizadas por valor Compartilha a visão de negócio Time-boxed: 4 horas Estima em story points Estimation Meeting
19. Objetivo - Product Owner - Scrum Master - Time Reuniões - Sprint Planning 1 Definir o objetivo da iteração Selecionar as estórias para a iteração Compartilha a visão de negócio Define objetivo da iteração Time-boxed: 4 horas Disponibiliza resultados da iteração anterior Agenda todos os meetings e tamanho da iteração Ajuda a definir objetivo da iteração Coleta informações sobre as estórias Participantes PO SM Time
21. Dividir estórias em tarefas Firmar compromisso com o objetivo da iteração Reuniões - Sprint Planning 2 Objetivo - Product Owner - Scrum Master - Time Participação opcional Deve estar acessível para responder questões Aprova eventuais mudanças no selected backlog Time-boxed: 4 horas Desmembra estórias em tarefas - Tarefas menores que 1 dia - Multi-disciplinares (code, review, doc, tests, learn, draw...) Participantes PO SM Time acessível
23. O time responde às questões Sincronização e visibilidade 15 minutos todos os dias mesmo horário mesmo local Sem telefones, teclados ou interrupções Reuniões - Daily Meeting Que tarefas foram realizadas? Que tarefas pretende realizar? O que está no seu caminho? Caso haja uma discussão: agenda-se um meeting específico Tarefas - Adicionar, remover e ordenar no sprint backlog - Mover tarefas do “In Progress” para o “Done” Impedimentos Andamento Burndown Chart Participantes SM Time
25. Reuniões - Review Meeting Objetivo - Product Owner - Scrum Master - Time Time-boxed: 2 horas Validar o objetivo da iteração Validar finalização das estórias Valida os resultados Reavalia situação do produto Prepara ambiente para demonstração Demonstra cada estória selecionada Participantes PO SM Time
27. Reuniões - Retrospective Meeting Time-boxed: 2 horas Atitude positiva - Procurar soluções, não culpados Objetivo - Product Owner - Scrum Master - Time Avaliar e aprender com a experiência da iteração visando aumentar a produtividade Participação Opcional Avaliar pontos positivos e negativos - Análise SWOT - Quem está no controle dos pontos negativos? Participantes SM Time
30. Engenharia - Projetos & Software Nova Curva de Valor
31. Samuel Crescêncio CEO – Chief Executive Officer OnCast Technologies [email_address] Muito Obrigado!
32. Simplicidade - Adiciona velocidade ao desenvolvimento Conseqüentemente, diminui o custo de desenvolvimento e manutenção - Coisas simples são mais fáceis de manter do que as complexas Simplicidade - Benefícios - Máxima - O mais simples e mais barato caminho para atingir um objetivo, com integridade - Utilizada no design e na codificação de uma solução - Objetividade, Foco, Limitar-se ao escopo - Keep it as simple as possible
33. Testes Automatizados Melhoria no design - O código deve ser testável - Redução drástica do tempo gasto com debug - Isolar bugs demora mais do que corrigir bugs - Documenta melhor o código - Feedback instantâneo - Confiança e auto-estima; Entrega com segurança; e Permite refactorings Teste Automatizado - Benefícios - Tipos de testes - Uma porção de código (código de teste) que exercita outra (código de produção) - De unidade, integração, aceitação, stress/carga e funcional
34. Refactoring - Habilita a evolução contínua da qualidade do software - Torna a manutenção futura do software mais segura - Garante sustentabilidade e produtividade Refactoring - Benefícios Melhoria da estrutura do código sem alterar sua funcionalidade - Realizado em código coberto por testes - Normalmente realizado em pequenos pedaços de código de cada vez - Organiza um eventual crescimento desordenado da aplicação
35. Integração Contínua - Integração mais freqüente e mais fácil - Feedback instantâneo - Proporciona integridade - Proporciona aumento da velocidade de desenvolvimento - Proporciona maior segurança para todos os envolvidos Como funciona: - Execução automática dos testes a cada alteração no código - Problemas notificados imediatamente Integração Contínua - Benefícios
37. SMs Time SM Sprints 1 2 3 4 PO SM PO POs SM PO Meeting dos Product Owners Meeting dos Scrum Masters Integrantes iniciais Integrantes após crescimento - O projeto inicial com uma equipe pequena - Como ocorre o crescimento Escalabilidade Time inicial torna-se time de Product Owners Divisão por funcionalidade não por camada Possibilidade de se criar um time de integração Gerenciamento global e local Burndown chart global Cada equipe tem seu burndown e dashboard
38. Adoção Scrum Programas integrados Scrum atuando na VISÃO da empresa Tipo C Projetos escalados e programas Tipo B Projetos isolados Tipo A