Workshop Scrum
Tópicos

●   Definições
●   Apresentando o Scrum
●   Papéis do Scrum
●   Cerimônias do Scrum
●   Ferramenta IceScrum
●   Porque usar o Scrum
Metodologia Ágil

 As Metodologias Ágeis de desenvolvimento de Software são
 indicados como uma opção às abordagens tradicionais para
 desenvolver softwares

 Comparadas a outras metodologias, produzem pouca
 documentação

 São recomendadas para projetos que:
  ●   Existem muitas mudanças;
  ●   Os requisitos são passíveis de alterações;
  ●   A equipe é pequena;
  ●   As datas de entrega curtas acarretam alto custo;
  ●   O desenvolvimento rápido é fundamental;

 Essas metodologias foram criadas com o objetivo de vencer
 as fraquezas da Engenharia de Software.
Metodologia Ágil

 ●   Ágil não é fazer mais rápido!
 ●   Ágil é fazer entregas constantes através de ciclos curtos
 ●   Ágil é responder a mudanças
 ●   Ágil é melhoria contínua (PDCA).
Manifesto Ágil


        Indivíduos e                    Processos
       suas interações                 e ferramentas


           Software                    Documentação




                         ao invés de
         funcionando                    abrangente


         Colaboração                    Negociação
          do cliente                    de contrato


         Responder                        Seguir
        às mudanças                      um plano
Metodologia Ágil

 ●   XP (Extreme Programming)
 ●   DAS (Desenvolvimento Adaptivo de Software)
 ●   DSDM (Dynamic Software Development Method)
 ●   Scrum
 ●   Crystal
 ●   FDD (Feature Driven Development)
 ●   Modelagem Ágil
ROI (Return of Investiment)


●   ROI não é apenas um retorno financeiro
●   Um dos principais objetivos do Scrum é entregar o
    maior valor de negócio para o cliente no menor tempo
    possível. Quanto mais dinheiro o cliente puder ganhar
    e quanto mais rápido, melhor (ROI).
Uso de Funcionalidades




 Ou seja: 64% de desperdício e apenas 20% agregam o valor.
 Mas porque isso?
Processo Definido x Processo Empírico


  Um Processo Definido usa uma base de conhecimento
  sobre o processo e são descrito como reproduzíveis
  Um Processo Definido gera as mesmas saídas para as
  mesmas entradas


  Um Processo Empírico envolve atividades complicadas,
  não reproduzíveis e com resultados imprevisíveis
  Um Processo Empírico é caótico e complexo. Ou seja os
  seus detalhes não são conhecidos.
Envolvidos e Comprometidos
Tópicos

●   Definições
●   Apresentando o Scrum
●   Papéis do Scrum
●   Cerimônias do Scrum
●   Ferramenta IceScrum
●   Porque usar o Scrum
Scrum – Definição Informal



                         Estratégia em um jogo de
                         rugby onde os jogadores
                         repõem uma bola novamente
                         em jogo através de um
                         trabalho em equipe.
Scrum – Definição Formal



                           É uma metodologia
                           (framework) focado no
                           desenvolvimento e gerência
                           ágil de projetos de software.
Scrum – Pilares da Metodologia


 ●   Transparência
     Todo e qualquer fator ou acontecimento relacionado ao processo de entrega, que possa
     impactar o resultado final do projeto (produto), deve ser visível e do conhecimento de todos
     envolvidos, inclusive o cliente.

 ●   Inspeção
     Todos os aspectos do processo de entrega que possam impactar o resultado final do
     projeto devem ser inspecionados frequentemente, para que qualquer variação prejudicial
     possa ser identificada e corrigida o mais rápido possível.

 ●   Adaptação
     Toda vez que uma variação prejudicial é identificada, o processo deve ser ajustado
     imediatamente, como forma de evitar outros desvios.
Scrum – Características da Metodologia


 ●   Comunicação
 ●   Trabalho em Equipe
 ●   Flexibilidade
 ●   Desenvolvimento Incremental.
Scrum – Ponta do Iceberg


                           Processos: Reunião de
                           planejamento, Reunião diária,
                           Retrospectiva, Sprints, cerimônias...
                           Ferramentas: Kanban, Post-it, User
                           Story, Burnup
                           Pessoas: Scrum Master, P.O., Time



                           Cultura: Time multi-disciplinar, auto-
                           gerenciável, valores, envolvimento
                           com o cliente, entrega frequente,
                           respeito...
Scrum não é bala de Prata




    Processos Existentes
Scrum não é bala de Prata




    Processos Scrum
Scrum – Montando um Backlog


      Os desejos do cliente
  ●   Eu quero um sistema que gerencie “todas” as linhas de produção
  ●   Eu quero um sistema que cadastre “tudo”
  ●   Eu quero uma tela que eu possa ver “qualquer” informação
  ●   Eu quero relatórios “mirabolantes”
  ●   Eu quero controle de acesso “maluco”



  Mas cliente, vamos detalhar e priorizar esses desejos?
  O que deve ser feito para que você tenha um ROI alto?
Scrum – Montando um Backlog


 #              Funcionalidades
 1   Eu quero controlar a minha linha principal
                                                                Estórias
 2   Preciso cadastrar os itens inicialmente
                                                   Controle da Linha Principal
 3   É necessário que apenas o(s) gerente(s)
     cadastre esses itens                          Cadastro de Itens
 4   Eu preciso de um relatório diário dos itens   Controle de Acesso dos Gerentes
     utilizados
                                                   Relatório Diário da Linha
 5   Eu preciso que essa linha obtenha
     informações das linhas auxiliares             Troca de informações entre Linhas
 6   Essas linhas auxiliares precisam informar     Notificações das Linhas
     que estão produzindo mais que o
     necessário                                    Relatório de funcionários
 7   Preciso de um relatório com os
     funcionários que trabalharam nessa linha
Tópicos

●   Definições
●   Apresentando o Scrum
●   Papéis do Scrum
●   Cerimônias do Scrum
●   Ferramenta IceScrum
●   Porque usar o Scrum
Scrum – Product Owner


 ●   É o responsável do projeto
 ●   É o responsável por definir o que é o produto
 ●   É o responsável por priorizar o Backlog visando o ROI e o
     valor do projeto
 ●   Ele deve detalhar e refinar o Backlog
 ●   Ele só pode ser uma pessoa e não um comitê
 ●   É ele quem aceita ou rejeita as entregas
Scrum – O que se esperar de um P.O.?


 ●   Bom relacionamento
 ●   Facilidade de criar a visão do produto e transmiti-la
 ●   Sempre disponível
 ●   Está comprometido com o projeto (ser um porco).
Scrum – Problemas comum de um P.O.?


 ●   P.O. Não tem poder de decisão sobre o produto
 ●   Baixa disponibilidade do P.O. para atender as dúvidas e
     demandas
 ●   Cultura organizacional
 ●   Backlog mal priorizado.
Scrum – Scrum Master


 ●   Ajuda o Time e a organização a adotarem o Scrum
 ●   Educa o Time treinando-os e levando-os a serem mais
     produtivos
 ●   Combate o comando-controle
 ●   Deve remover os impedimentos
 ●   Deve facilitar as reuniões
 ●   Ele não é o gerente do Time!
Scrum – Time


 ●   Transformam o Backlog em incrementos de funcionalidades
     potencialmente entregavéis
 ●   Devem produzir um produto com qualidade e valor
 ●   Devem ser auto-gerenciável e multi-funcional
 ●   Devem ser comunicativos
 ●   Devem ser porcos
 ●   Devem ter entre 3 e 9 pessoas.
Tópicos

●   Definições
●   Apresentando o Scrum
●   Papéis do Scrum
●   Cerimônias do Scrum
●   Ferramenta IceScrum
●   Porque usar o Scrum
Scrum – Cerimônias
Scrum – Sprint Planning


 ●   Priorizar o Product Backlog
 ●   Separar as estórias para a Sprint Backlog
 ●   Definir as meta da Sprint
 ●   Estimar as estórias em pesos (Planning Poker)


 ●   Quebrar as estórias em pequenas
     tarefas. (Sindrome do estudante)
Scrum – Planning Poker


 ●   A ideia principal é permitir que todos os membros do Time
     participem colocando a sua visão de complexidade para que
     juntos possam chegar a um indicador comum de
     complexidade
 ●   É uma ótima ferramenta de comunicação
 ●   Utiliza a sequencia de Fibonacci (0, 1, 2, 3, 5, 8, 13, …).
Scrum – Planning Poker (Regras)


 ●   Inicialmente o Time identifica a estória mais simples e passa a
     ser a estória de referência para as demais
 ●   Após uma breve discussão, o participante escolhe sua carta,
     que deve representar a sua estimativa
 ●   Todos devem apresentar sua estimativa juntos
 ●   Em caso de não unanimidade, os extremos se justificam
 ●   Jogam até que haja unanimidade.
Scrum – Planning Poker (Velocidades)



    Estória    Peso
 Estória #1     8
 Estória #2     5      Sprint #1 [18]
 Estória #3     5
 Estória #4     8
 Estória #5     5      Sprint #2 [19]
 Estória #6     3
 Estória #7     3
 Estória #8     21     Sprint #3 [21]
 Estória #9     13
                       Sprint #4 [21]
 Estória #10    8
Scrum – Quebrando as Estórias em Tarefas


 ●   Quem identifica as tarefas é o Time
 ●   As tarefas são pedaços detalhados do trabalho necessário
     para converter o Backlog em algo funcional
 ●   As tarefas devem ser definidas para que possam ser feitas
     em menos de um dia.
Scrum – Sprint


 ●   São eventos com duração fixa
 ●   Tanto a composição do Time quanto as metas devem
     permanecer constantes
 ●   Pode ser um período de 2 a 4 semanas
 ●   Um período constante leva a um melhor ritmo
 ●   O Time se preocupa apenas com o que está planejado.
Scrum – Daily Meeting


 ●   Objetivo: Alinhar o desenvolvimento com a meta
 ●   Realizada diariamente e em pé
 ●   Duração máxima de 15 minutos
 ●   3 perguntas devem ser realizadas
     ●   O que você fez ontem?
     ●   O que você irá fazer hoje?
     ●   Existe algum impedimento?

 ●   Não é uma reunião de status
 ●   Não são discutidas questões técnicas ou como serão feitas.
Scrum – Sprint Review


 ●   Apresentação dos resultados para todos
 ●   P.O. avalia se a meta foi atingida
 ●   Ajusta o Backlog
 ●   Identifica avanços no projeto
 ●   Para ou inicia um novo Sprint
 ●   Calcula a velocidade da equipe.
Scrum – Sprint Retrospective


 ●   O que aconteceu de errado nessa Sprint?
 ●   Quais foram os impedimentos?
 ●   O que aconteceu de bom?
 ●   Que melhorias podemos aplicar para a nova Sprint?
Scrum – De novo mais um ciclo...
Tópicos

●   Definições
●   Apresentando o Scrum
●   Papéis do Scrum
●   Cerimônias do Scrum
●   Ferramenta IceScrum
●   Porque usar o Scrum
IceScrum - Estrutura

 Projeto
   Release

     Sprint #1                               Sprint #2
      Estória #1   Estória #2   Estória #3    Estória #4   Estória #5   Estória #6    Estória #7




     Sprint #3                               Sprint #4
      Estória #8                              Estória #9                Estória #10
IceScrum - Dashboard
IceScrum - Timeline
IceScrum - Release
IceScrum - Sprint
IceScrum - Burnup
Tópicos

●   Definições
●   Apresentando o Scrum
●   Papéis do Scrum
●   Cerimônias do Scrum
●   Ferramenta IceScrum
●   Porque usar o Scrum
Scrum – Para o Time


 ●   Motivação maior para o Time
 ●   Melhor visualização do Projeto
 ●   Diminuição dos Bugs
 ●   As prioridades podem ser alteradas
 ●   Funcionalidades que agregam valor em primeiro lugar.
Scrum – Para o Cliente


 ●   Scrum é um framework que permite entregar um VALOR DE
     NEGÓCIO mais elevado num período de tempo curto
 ●   Scrum permite entrega de um Software FUNCIONANDO e de
     QUALIDADE a cada 2 semanas (feedback constante)
 ●   O Cliente é quem define as prioridades. O Time apenas se
     auto-organiza para definir a melhor forma de entregar
     funcionalidades.
Scrum – Para a Instituição


 ●   A aplicação de metodologias Ágeis (Scrum) padroniza as
     atividades de um setor
 ●   Capacidade de fidelizar o cliente.
Scrum – Comparações
Scrum – Crie seu jeito ágil...

Scrum workshop

  • 1.
  • 2.
    Tópicos ● Definições ● Apresentando o Scrum ● Papéis do Scrum ● Cerimônias do Scrum ● Ferramenta IceScrum ● Porque usar o Scrum
  • 3.
    Metodologia Ágil AsMetodologias Ágeis de desenvolvimento de Software são indicados como uma opção às abordagens tradicionais para desenvolver softwares Comparadas a outras metodologias, produzem pouca documentação São recomendadas para projetos que: ● Existem muitas mudanças; ● Os requisitos são passíveis de alterações; ● A equipe é pequena; ● As datas de entrega curtas acarretam alto custo; ● O desenvolvimento rápido é fundamental; Essas metodologias foram criadas com o objetivo de vencer as fraquezas da Engenharia de Software.
  • 4.
    Metodologia Ágil ● Ágil não é fazer mais rápido! ● Ágil é fazer entregas constantes através de ciclos curtos ● Ágil é responder a mudanças ● Ágil é melhoria contínua (PDCA).
  • 5.
    Manifesto Ágil Indivíduos e Processos suas interações e ferramentas Software Documentação ao invés de funcionando abrangente Colaboração Negociação do cliente de contrato Responder Seguir às mudanças um plano
  • 6.
    Metodologia Ágil ● XP (Extreme Programming) ● DAS (Desenvolvimento Adaptivo de Software) ● DSDM (Dynamic Software Development Method) ● Scrum ● Crystal ● FDD (Feature Driven Development) ● Modelagem Ágil
  • 7.
    ROI (Return ofInvestiment) ● ROI não é apenas um retorno financeiro ● Um dos principais objetivos do Scrum é entregar o maior valor de negócio para o cliente no menor tempo possível. Quanto mais dinheiro o cliente puder ganhar e quanto mais rápido, melhor (ROI).
  • 8.
    Uso de Funcionalidades Ou seja: 64% de desperdício e apenas 20% agregam o valor. Mas porque isso?
  • 9.
    Processo Definido xProcesso Empírico Um Processo Definido usa uma base de conhecimento sobre o processo e são descrito como reproduzíveis Um Processo Definido gera as mesmas saídas para as mesmas entradas Um Processo Empírico envolve atividades complicadas, não reproduzíveis e com resultados imprevisíveis Um Processo Empírico é caótico e complexo. Ou seja os seus detalhes não são conhecidos.
  • 10.
  • 11.
    Tópicos ● Definições ● Apresentando o Scrum ● Papéis do Scrum ● Cerimônias do Scrum ● Ferramenta IceScrum ● Porque usar o Scrum
  • 12.
    Scrum – DefiniçãoInformal Estratégia em um jogo de rugby onde os jogadores repõem uma bola novamente em jogo através de um trabalho em equipe.
  • 13.
    Scrum – DefiniçãoFormal É uma metodologia (framework) focado no desenvolvimento e gerência ágil de projetos de software.
  • 14.
    Scrum – Pilaresda Metodologia ● Transparência Todo e qualquer fator ou acontecimento relacionado ao processo de entrega, que possa impactar o resultado final do projeto (produto), deve ser visível e do conhecimento de todos envolvidos, inclusive o cliente. ● Inspeção Todos os aspectos do processo de entrega que possam impactar o resultado final do projeto devem ser inspecionados frequentemente, para que qualquer variação prejudicial possa ser identificada e corrigida o mais rápido possível. ● Adaptação Toda vez que uma variação prejudicial é identificada, o processo deve ser ajustado imediatamente, como forma de evitar outros desvios.
  • 15.
    Scrum – Característicasda Metodologia ● Comunicação ● Trabalho em Equipe ● Flexibilidade ● Desenvolvimento Incremental.
  • 16.
    Scrum – Pontado Iceberg Processos: Reunião de planejamento, Reunião diária, Retrospectiva, Sprints, cerimônias... Ferramentas: Kanban, Post-it, User Story, Burnup Pessoas: Scrum Master, P.O., Time Cultura: Time multi-disciplinar, auto- gerenciável, valores, envolvimento com o cliente, entrega frequente, respeito...
  • 17.
    Scrum não ébala de Prata Processos Existentes
  • 18.
    Scrum não ébala de Prata Processos Scrum
  • 19.
    Scrum – Montandoum Backlog Os desejos do cliente ● Eu quero um sistema que gerencie “todas” as linhas de produção ● Eu quero um sistema que cadastre “tudo” ● Eu quero uma tela que eu possa ver “qualquer” informação ● Eu quero relatórios “mirabolantes” ● Eu quero controle de acesso “maluco” Mas cliente, vamos detalhar e priorizar esses desejos? O que deve ser feito para que você tenha um ROI alto?
  • 20.
    Scrum – Montandoum Backlog # Funcionalidades 1 Eu quero controlar a minha linha principal Estórias 2 Preciso cadastrar os itens inicialmente Controle da Linha Principal 3 É necessário que apenas o(s) gerente(s) cadastre esses itens Cadastro de Itens 4 Eu preciso de um relatório diário dos itens Controle de Acesso dos Gerentes utilizados Relatório Diário da Linha 5 Eu preciso que essa linha obtenha informações das linhas auxiliares Troca de informações entre Linhas 6 Essas linhas auxiliares precisam informar Notificações das Linhas que estão produzindo mais que o necessário Relatório de funcionários 7 Preciso de um relatório com os funcionários que trabalharam nessa linha
  • 21.
    Tópicos ● Definições ● Apresentando o Scrum ● Papéis do Scrum ● Cerimônias do Scrum ● Ferramenta IceScrum ● Porque usar o Scrum
  • 22.
    Scrum – ProductOwner ● É o responsável do projeto ● É o responsável por definir o que é o produto ● É o responsável por priorizar o Backlog visando o ROI e o valor do projeto ● Ele deve detalhar e refinar o Backlog ● Ele só pode ser uma pessoa e não um comitê ● É ele quem aceita ou rejeita as entregas
  • 23.
    Scrum – Oque se esperar de um P.O.? ● Bom relacionamento ● Facilidade de criar a visão do produto e transmiti-la ● Sempre disponível ● Está comprometido com o projeto (ser um porco).
  • 24.
    Scrum – Problemascomum de um P.O.? ● P.O. Não tem poder de decisão sobre o produto ● Baixa disponibilidade do P.O. para atender as dúvidas e demandas ● Cultura organizacional ● Backlog mal priorizado.
  • 25.
    Scrum – ScrumMaster ● Ajuda o Time e a organização a adotarem o Scrum ● Educa o Time treinando-os e levando-os a serem mais produtivos ● Combate o comando-controle ● Deve remover os impedimentos ● Deve facilitar as reuniões ● Ele não é o gerente do Time!
  • 26.
    Scrum – Time ● Transformam o Backlog em incrementos de funcionalidades potencialmente entregavéis ● Devem produzir um produto com qualidade e valor ● Devem ser auto-gerenciável e multi-funcional ● Devem ser comunicativos ● Devem ser porcos ● Devem ter entre 3 e 9 pessoas.
  • 27.
    Tópicos ● Definições ● Apresentando o Scrum ● Papéis do Scrum ● Cerimônias do Scrum ● Ferramenta IceScrum ● Porque usar o Scrum
  • 28.
  • 29.
    Scrum – SprintPlanning ● Priorizar o Product Backlog ● Separar as estórias para a Sprint Backlog ● Definir as meta da Sprint ● Estimar as estórias em pesos (Planning Poker) ● Quebrar as estórias em pequenas tarefas. (Sindrome do estudante)
  • 30.
    Scrum – PlanningPoker ● A ideia principal é permitir que todos os membros do Time participem colocando a sua visão de complexidade para que juntos possam chegar a um indicador comum de complexidade ● É uma ótima ferramenta de comunicação ● Utiliza a sequencia de Fibonacci (0, 1, 2, 3, 5, 8, 13, …).
  • 31.
    Scrum – PlanningPoker (Regras) ● Inicialmente o Time identifica a estória mais simples e passa a ser a estória de referência para as demais ● Após uma breve discussão, o participante escolhe sua carta, que deve representar a sua estimativa ● Todos devem apresentar sua estimativa juntos ● Em caso de não unanimidade, os extremos se justificam ● Jogam até que haja unanimidade.
  • 32.
    Scrum – PlanningPoker (Velocidades) Estória Peso Estória #1 8 Estória #2 5 Sprint #1 [18] Estória #3 5 Estória #4 8 Estória #5 5 Sprint #2 [19] Estória #6 3 Estória #7 3 Estória #8 21 Sprint #3 [21] Estória #9 13 Sprint #4 [21] Estória #10 8
  • 33.
    Scrum – Quebrandoas Estórias em Tarefas ● Quem identifica as tarefas é o Time ● As tarefas são pedaços detalhados do trabalho necessário para converter o Backlog em algo funcional ● As tarefas devem ser definidas para que possam ser feitas em menos de um dia.
  • 34.
    Scrum – Sprint ● São eventos com duração fixa ● Tanto a composição do Time quanto as metas devem permanecer constantes ● Pode ser um período de 2 a 4 semanas ● Um período constante leva a um melhor ritmo ● O Time se preocupa apenas com o que está planejado.
  • 35.
    Scrum – DailyMeeting ● Objetivo: Alinhar o desenvolvimento com a meta ● Realizada diariamente e em pé ● Duração máxima de 15 minutos ● 3 perguntas devem ser realizadas ● O que você fez ontem? ● O que você irá fazer hoje? ● Existe algum impedimento? ● Não é uma reunião de status ● Não são discutidas questões técnicas ou como serão feitas.
  • 36.
    Scrum – SprintReview ● Apresentação dos resultados para todos ● P.O. avalia se a meta foi atingida ● Ajusta o Backlog ● Identifica avanços no projeto ● Para ou inicia um novo Sprint ● Calcula a velocidade da equipe.
  • 37.
    Scrum – SprintRetrospective ● O que aconteceu de errado nessa Sprint? ● Quais foram os impedimentos? ● O que aconteceu de bom? ● Que melhorias podemos aplicar para a nova Sprint?
  • 38.
    Scrum – Denovo mais um ciclo...
  • 39.
    Tópicos ● Definições ● Apresentando o Scrum ● Papéis do Scrum ● Cerimônias do Scrum ● Ferramenta IceScrum ● Porque usar o Scrum
  • 40.
    IceScrum - Estrutura Projeto Release Sprint #1 Sprint #2 Estória #1 Estória #2 Estória #3 Estória #4 Estória #5 Estória #6 Estória #7 Sprint #3 Sprint #4 Estória #8 Estória #9 Estória #10
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
    Tópicos ● Definições ● Apresentando o Scrum ● Papéis do Scrum ● Cerimônias do Scrum ● Ferramenta IceScrum ● Porque usar o Scrum
  • 47.
    Scrum – Parao Time ● Motivação maior para o Time ● Melhor visualização do Projeto ● Diminuição dos Bugs ● As prioridades podem ser alteradas ● Funcionalidades que agregam valor em primeiro lugar.
  • 48.
    Scrum – Parao Cliente ● Scrum é um framework que permite entregar um VALOR DE NEGÓCIO mais elevado num período de tempo curto ● Scrum permite entrega de um Software FUNCIONANDO e de QUALIDADE a cada 2 semanas (feedback constante) ● O Cliente é quem define as prioridades. O Time apenas se auto-organiza para definir a melhor forma de entregar funcionalidades.
  • 49.
    Scrum – Paraa Instituição ● A aplicação de metodologias Ágeis (Scrum) padroniza as atividades de um setor ● Capacidade de fidelizar o cliente.
  • 50.
  • 51.
    Scrum – Crieseu jeito ágil...