Modelagem Ágil com Scrum. Scrum 2 Definição informal: Estratégia em um jogo de rugby onde...
Transcript of Modelagem Ágil com Scrum. Scrum 2 Definição informal: Estratégia em um jogo de rugby onde...
![Page 1: Modelagem Ágil com Scrum. Scrum 2 Definição informal: Estratégia em um jogo de rugby onde jogadores colocam uma bola quase perdida novamente em jogo através.](https://reader036.fdocumentos.tips/reader036/viewer/2022081502/552fc160497959413d8e8d47/html5/thumbnails/1.jpg)
Modelagem Ágil com Scrum
![Page 2: Modelagem Ágil com Scrum. Scrum 2 Definição informal: Estratégia em um jogo de rugby onde jogadores colocam uma bola quase perdida novamente em jogo através.](https://reader036.fdocumentos.tips/reader036/viewer/2022081502/552fc160497959413d8e8d47/html5/thumbnails/2.jpg)
Scrum
2
Definição informal:
Estratégia em um jogo de rugby onde jogadores colocam uma bola quase perdida novamente em jogo através de trabalho em equipe.
![Page 3: Modelagem Ágil com Scrum. Scrum 2 Definição informal: Estratégia em um jogo de rugby onde jogadores colocam uma bola quase perdida novamente em jogo através.](https://reader036.fdocumentos.tips/reader036/viewer/2022081502/552fc160497959413d8e8d47/html5/thumbnails/3.jpg)
Origens de Scrum• Jeff Suttherland - jeffsutherland.com
• Ken Schwaber - www.controlchaos.com• Mike Beedle - www.mikebeedle.com
• Conferências• OOPSLA 96, PLoP 98
• Inspiração• Desenvolvimento Iterativo e Incremental em empresas
(DuPont) nos anos 80
3
![Page 4: Modelagem Ágil com Scrum. Scrum 2 Definição informal: Estratégia em um jogo de rugby onde jogadores colocam uma bola quase perdida novamente em jogo através.](https://reader036.fdocumentos.tips/reader036/viewer/2022081502/552fc160497959413d8e8d47/html5/thumbnails/4.jpg)
Origens de Scrum• Desenvolvimento de software a partir de padrões de projeto (design patterns)
• Mas, o que é isto ???
4
![Page 5: Modelagem Ágil com Scrum. Scrum 2 Definição informal: Estratégia em um jogo de rugby onde jogadores colocam uma bola quase perdida novamente em jogo através.](https://reader036.fdocumentos.tips/reader036/viewer/2022081502/552fc160497959413d8e8d47/html5/thumbnails/5.jpg)
O quê são padrões ?• No final dos anos 70, o arquiteto Christopher Alexander escreveu dois livros com a idéia.
• Cada padrão descreve um problema recorrente no nosso ambiente e, em seguida, o princípio de sua solução.
• A solução pode ser aplicada diversas vezes, nunca da mesma maneira.
• Um exemplo: escritório com janela.
5
![Page 6: Modelagem Ágil com Scrum. Scrum 2 Definição informal: Estratégia em um jogo de rugby onde jogadores colocam uma bola quase perdida novamente em jogo através.](https://reader036.fdocumentos.tips/reader036/viewer/2022081502/552fc160497959413d8e8d47/html5/thumbnails/6.jpg)
Fundamentos de Scrum• Desenvolvimento de software depende muito de criatividade e de trabalho
• Logo, não é um bom candidato a processos pré-definidos • modelo de controle de processo empírico
• O desenvolvimento nem sempre será repetitivo e bem definido
• Mas existem padrões que podem ser usados
6
![Page 7: Modelagem Ágil com Scrum. Scrum 2 Definição informal: Estratégia em um jogo de rugby onde jogadores colocam uma bola quase perdida novamente em jogo através.](https://reader036.fdocumentos.tips/reader036/viewer/2022081502/552fc160497959413d8e8d47/html5/thumbnails/7.jpg)
História (processos)• Processo definido
• Funciona em ambientes controlados
• Processo empírico• Processos de controle industrial
• Babatunde "Tunde" Ogannaike• Process Dynamics, Modeling and Control, 94
• Funciona para processos• Complexos e Imprevisíveis
• Princípios: • Visibilidade, Inspeção e Adaptabilidade
7
![Page 8: Modelagem Ágil com Scrum. Scrum 2 Definição informal: Estratégia em um jogo de rugby onde jogadores colocam uma bola quase perdida novamente em jogo através.](https://reader036.fdocumentos.tips/reader036/viewer/2022081502/552fc160497959413d8e8d47/html5/thumbnails/8.jpg)
Ênfases• Comunicação
• Trabalho em equipe
• Flexibilidade
• Fornecer software funcionando • incrementalmente
8
![Page 9: Modelagem Ágil com Scrum. Scrum 2 Definição informal: Estratégia em um jogo de rugby onde jogadores colocam uma bola quase perdida novamente em jogo através.](https://reader036.fdocumentos.tips/reader036/viewer/2022081502/552fc160497959413d8e8d47/html5/thumbnails/9.jpg)
Principais Padrões• Backlog
• Equipes
• Sprints
• Encontros Scrum
• Revisões Scrum/Demos
9
![Page 10: Modelagem Ágil com Scrum. Scrum 2 Definição informal: Estratégia em um jogo de rugby onde jogadores colocam uma bola quase perdida novamente em jogo através.](https://reader036.fdocumentos.tips/reader036/viewer/2022081502/552fc160497959413d8e8d47/html5/thumbnails/10.jpg)
Backlog• Lista de todas as funcionalidades desejadas
• É gerada incrementalmente• Começa pelo básico, o extra aparece com o tempo
• Pode conter• Tarefas diretas, casos de uso e histórias (a la XP)
• A lista é priorizada pelo dono do projeto• Cliente, depto de marketing, ...
10
![Page 11: Modelagem Ágil com Scrum. Scrum 2 Definição informal: Estratégia em um jogo de rugby onde jogadores colocam uma bola quase perdida novamente em jogo através.](https://reader036.fdocumentos.tips/reader036/viewer/2022081502/552fc160497959413d8e8d47/html5/thumbnails/11.jpg)
O Backlog Inicial• Deve conter características que agreguem algum valor de
negócio ao produto
• Novos requisitos aparecem quando o cliente vê o produto
• A arquitetura do sistema surge enquanto o projeto surge e é refatorado
11
![Page 12: Modelagem Ágil com Scrum. Scrum 2 Definição informal: Estratégia em um jogo de rugby onde jogadores colocam uma bola quase perdida novamente em jogo através.](https://reader036.fdocumentos.tips/reader036/viewer/2022081502/552fc160497959413d8e8d47/html5/thumbnails/12.jpg)
Equipes• Sem nível hierárquico nem papéis
• Mas com várias especialidades
• Estão todos no mesmo barco
• Geralmente equipes pequenas (até 10)• Existem casos com equipes maiores (800 !)• Usa-se também Scrum hierárquico
• Comunicação é essencial• Encontro Scrum diário
12
![Page 13: Modelagem Ágil com Scrum. Scrum 2 Definição informal: Estratégia em um jogo de rugby onde jogadores colocam uma bola quase perdida novamente em jogo através.](https://reader036.fdocumentos.tips/reader036/viewer/2022081502/552fc160497959413d8e8d47/html5/thumbnails/13.jpg)
Sprint• Unidades básicas de tempo (até 30 dias)
• Começa com um encontro Sprint• Tarefas do Backlog são priorizadas• A equipe seleciona tarefas que podem ser completadas durante o
próximo Sprint• As mesmas podem ser quebradas para o Backlog do Sprint• Cada tarefa recebe um responsável na equipe• Não há mudança nas tarefas durante o Sprint
13
![Page 14: Modelagem Ágil com Scrum. Scrum 2 Definição informal: Estratégia em um jogo de rugby onde jogadores colocam uma bola quase perdida novamente em jogo através.](https://reader036.fdocumentos.tips/reader036/viewer/2022081502/552fc160497959413d8e8d47/html5/thumbnails/14.jpg)
Encontro Scrum 1/2• Pequenos encontros diários da equipe
• geralmente pela manhã• galinhas e porcos (só os porcos falam)• todos os porcos devem participar
• Questões que aparecem devem ser resolvidas durante o dia e não na reunião
• Os encontros iniciais são geralmente mais longos
14
![Page 15: Modelagem Ágil com Scrum. Scrum 2 Definição informal: Estratégia em um jogo de rugby onde jogadores colocam uma bola quase perdida novamente em jogo através.](https://reader036.fdocumentos.tips/reader036/viewer/2022081502/552fc160497959413d8e8d47/html5/thumbnails/15.jpg)
Encontro Scrum 2/2• Questões que devem ser respondidas por cada porco:• 1) O quê você fez ontem?• 2) O quê você vai fazer hoje?• 3) Quais os problemas encontrados?
• Ajuda a manter as promessas
• Evita: Como um projeto atrasa um ano?• Um dia por vez ...• Qualquer deslize pode ser corrigido de imediato
15
![Page 16: Modelagem Ágil com Scrum. Scrum 2 Definição informal: Estratégia em um jogo de rugby onde jogadores colocam uma bola quase perdida novamente em jogo através.](https://reader036.fdocumentos.tips/reader036/viewer/2022081502/552fc160497959413d8e8d47/html5/thumbnails/16.jpg)
Local do Encontro• Sempre o mesmo local e hora
• Pode ser o local de desenvolvimento
• Pessoas sentadas ao redor de uma mesa
• A sala já deve estar arrumada antes
• Punições (atrasos/faltas)
• Todos devem participar
• Galinhas ficam na periferia
• Pode ser em pé• Sala bem equipada, quadro branco, etc.
16
![Page 17: Modelagem Ágil com Scrum. Scrum 2 Definição informal: Estratégia em um jogo de rugby onde jogadores colocam uma bola quase perdida novamente em jogo através.](https://reader036.fdocumentos.tips/reader036/viewer/2022081502/552fc160497959413d8e8d47/html5/thumbnails/17.jpg)
Revisão do Sprint• No final de cada Sprint é feita uma reunião com todos os
interessados
• Geralmente• Na forma de demonstração• Informal (preparação rápida, sem projetor,..)• Deve ser o resultado natural de um Sprint
• O projeto é comparado com os objetivos iniciais do Sprint
17
![Page 18: Modelagem Ágil com Scrum. Scrum 2 Definição informal: Estratégia em um jogo de rugby onde jogadores colocam uma bola quase perdida novamente em jogo através.](https://reader036.fdocumentos.tips/reader036/viewer/2022081502/552fc160497959413d8e8d47/html5/thumbnails/18.jpg)
Scrum Master 1/2• Faz com que a equipe viva os valores e práticas de
Scrum
• Protege a equipe de:• Riscos e interferências externos• Excesso de otimismo
• Resolve os problemas que aparecerem• logísticos• de conhecimento/habilidade
18
![Page 19: Modelagem Ágil com Scrum. Scrum 2 Definição informal: Estratégia em um jogo de rugby onde jogadores colocam uma bola quase perdida novamente em jogo através.](https://reader036.fdocumentos.tips/reader036/viewer/2022081502/552fc160497959413d8e8d47/html5/thumbnails/19.jpg)
Scrum Master 2/2• Mantém o Backlog do Sprint
• Tarefas completadas• Identifica eventuais problemas
• Mantém um gráfico de “quanto falta”
19
![Page 20: Modelagem Ágil com Scrum. Scrum 2 Definição informal: Estratégia em um jogo de rugby onde jogadores colocam uma bola quase perdida novamente em jogo através.](https://reader036.fdocumentos.tips/reader036/viewer/2022081502/552fc160497959413d8e8d47/html5/thumbnails/20.jpg)
Exemplo real
20
![Page 21: Modelagem Ágil com Scrum. Scrum 2 Definição informal: Estratégia em um jogo de rugby onde jogadores colocam uma bola quase perdida novamente em jogo através.](https://reader036.fdocumentos.tips/reader036/viewer/2022081502/552fc160497959413d8e8d47/html5/thumbnails/21.jpg)
Scrum de Forma Gráfica
21
![Page 22: Modelagem Ágil com Scrum. Scrum 2 Definição informal: Estratégia em um jogo de rugby onde jogadores colocam uma bola quase perdida novamente em jogo através.](https://reader036.fdocumentos.tips/reader036/viewer/2022081502/552fc160497959413d8e8d47/html5/thumbnails/22.jpg)
Scrum Final• Não faz parte do Scrum padrão, mas é bem usado na
prática
• Um último Sprint para “fechar” o produto
• O objetivo é:• Preparar a versão de produção• O foco é a eliminação de erros
22
![Page 23: Modelagem Ágil com Scrum. Scrum 2 Definição informal: Estratégia em um jogo de rugby onde jogadores colocam uma bola quase perdida novamente em jogo através.](https://reader036.fdocumentos.tips/reader036/viewer/2022081502/552fc160497959413d8e8d47/html5/thumbnails/23.jpg)
Nem tudo são flores
Scrums are the most dangerous phase in rugby, since a collapse or improper engage can lead to a front row player damaging or even breaking his neck. (Wikipedia)
Scrums são as fases mais perigosa no rugby, uma véz que erros podem levar a um jogador da linha de frente danificar ou até mesmo quebrar o pescoço.
23
![Page 24: Modelagem Ágil com Scrum. Scrum 2 Definição informal: Estratégia em um jogo de rugby onde jogadores colocam uma bola quase perdida novamente em jogo através.](https://reader036.fdocumentos.tips/reader036/viewer/2022081502/552fc160497959413d8e8d47/html5/thumbnails/24.jpg)
Scrum Distribuído• Para grandes sistemas e grandes equipes
• É atualmente um tema em discussão (Jeff Sutherland – Agile2006)
• Possui novas dificuldades
24
![Page 25: Modelagem Ágil com Scrum. Scrum 2 Definição informal: Estratégia em um jogo de rugby onde jogadores colocam uma bola quase perdida novamente em jogo através.](https://reader036.fdocumentos.tips/reader036/viewer/2022081502/552fc160497959413d8e8d47/html5/thumbnails/25.jpg)
Principais Dificuldades
• Independência de equipes
• Problemas de comunicação
• Barreiras Culturais
• Modo de Trabalho
• Práticas de Scrum são para equipes reunidas
25
![Page 26: Modelagem Ágil com Scrum. Scrum 2 Definição informal: Estratégia em um jogo de rugby onde jogadores colocam uma bola quase perdida novamente em jogo através.](https://reader036.fdocumentos.tips/reader036/viewer/2022081502/552fc160497959413d8e8d47/html5/thumbnails/26.jpg)
Práticas Distribuídas• Particionar o trabalho eliminando dependências
• Fortalecer a comunicação
• Estabelecer Padrões
26
![Page 27: Modelagem Ágil com Scrum. Scrum 2 Definição informal: Estratégia em um jogo de rugby onde jogadores colocam uma bola quase perdida novamente em jogo através.](https://reader036.fdocumentos.tips/reader036/viewer/2022081502/552fc160497959413d8e8d47/html5/thumbnails/27.jpg)
Tipos de Scrum Distribuído
27
![Page 28: Modelagem Ágil com Scrum. Scrum 2 Definição informal: Estratégia em um jogo de rugby onde jogadores colocam uma bola quase perdida novamente em jogo através.](https://reader036.fdocumentos.tips/reader036/viewer/2022081502/552fc160497959413d8e8d47/html5/thumbnails/28.jpg)
Caso de Scrum Distribuído• SirsiDynix & StarSoft
• Objetivo: Produzir um sistema integrado e complexo para bibliotecas
• Mais de 50 desenvolvedores
• Mais de 1.000.000 de linhas de código
• Alocados em: EUA, Canadá e Rússia
28
![Page 29: Modelagem Ágil com Scrum. Scrum 2 Definição informal: Estratégia em um jogo de rugby onde jogadores colocam uma bola quase perdida novamente em jogo através.](https://reader036.fdocumentos.tips/reader036/viewer/2022081502/552fc160497959413d8e8d47/html5/thumbnails/29.jpg)
Práticas Adicionais
• Reunião diária com todos do desenvolvedores
• Reunião diária com o dono do produto
• Builds automáticos a cada hora
• Pradronização dos desenvolvedores
• Inserção de práticas de XP
29
![Page 30: Modelagem Ágil com Scrum. Scrum 2 Definição informal: Estratégia em um jogo de rugby onde jogadores colocam uma bola quase perdida novamente em jogo através.](https://reader036.fdocumentos.tips/reader036/viewer/2022081502/552fc160497959413d8e8d47/html5/thumbnails/30.jpg)
Mais Informações• Agille Alliance - www.agilealliance.org
• Ótima fonte sobre métodos ágeis
• Scrum Alliance - www.scrumalliance.org/
• Mountain Goat Software• www.mountaingoatsoftware.com• Site de um treinador de Scrum Masters
• Site do Ken Schwaber - www.controlchaos.com
30
![Page 31: Modelagem Ágil com Scrum. Scrum 2 Definição informal: Estratégia em um jogo de rugby onde jogadores colocam uma bola quase perdida novamente em jogo através.](https://reader036.fdocumentos.tips/reader036/viewer/2022081502/552fc160497959413d8e8d47/html5/thumbnails/31.jpg)
Perguntas
?www.agilcoop.org.br
31