![Page 1: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/1.jpg)
Métodos Ágeis
Jerry Medeiros
Introdução às Metodologias Ágeis De Desenvolvimento
![Page 2: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/2.jpg)
Minha avó me convidou para
visitá-la e almoçar o salpicão que eu
adoro nesse sábado às 13h
![Page 3: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/3.jpg)
• Ela irá acordar às 8h; • Banho até as 8h30min; • Café da manhã até as 9h; • Consulta médica às 10h; • Supermercado às 11h; • Voltará para a casa às 12h;• Almoço pronto às 13h.
O que ela deve fazer?
![Page 4: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/4.jpg)
•O ônibus atrasar?•O médico atrasar?• Não tiver os ingredientes no
supermercado ?
E se...
MAS
![Page 5: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/5.jpg)
E se...
Meu netinho, você se importa de eu fazer uma sopinha de legumes em vez do salpicão ?
![Page 6: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/6.jpg)
E se...
Meu netinho, você se importa de eu fazer uma sopinha de legumes em vez do salpicão ?
![Page 7: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/7.jpg)
Objetivos Principais
Reencontrar minha vovó
Matar a fome
![Page 8: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/8.jpg)
Escopo Variável
•Sempre há um escopo
•Teoricamente não será alterado durante o projeto, porque existe um contrato
•Existe uma ilusão de previsibilidade
![Page 9: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/9.jpg)
O cliente acredita que:
•O escopo é previsível;•O prazo é previsível;•O custo é previsível;
![Page 10: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/10.jpg)
A equipe acredita que sabe:
•O que tem que fazer;•Em quanto tempo fará;•Quanto vai ganhar;•Quais recursos vai precisar.
![Page 11: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/11.jpg)
Então não há problema !!
Tranquilo ?
![Page 12: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/12.jpg)
Só que.....
“O Cliente sabe o que quer desde o início do projeto.
![Page 13: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/13.jpg)
Só que.....
“A equipe consegue estimar o tempo exato necessário para a produção.
![Page 14: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/14.jpg)
![Page 15: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/15.jpg)
O escopo não é fixo
•Variáveis do Projeto
•Prazo•Escopo•Custo•Qualidade
![Page 16: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/16.jpg)
Priorização do Escopo
Princípio de Pareto se aplica:
20% das funcionalidades geram 80% do valor
![Page 17: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/17.jpg)
Funcionalidades nunca ou raramente utilizadas
64%
![Page 18: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/18.jpg)
64% de desperdício de tempo e dinheiro
![Page 19: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/19.jpg)
Resultado
• Projetos que falha;• A maioria das funcionalidades nunca será usada pelo usuário;• Nos projetos com sucesso, apenas 42% dasfuncionalidades previstas no início estavam no produto final;
![Page 20: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/20.jpg)
Como é feito
![Page 21: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/21.jpg)
Como é feito
![Page 22: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/22.jpg)
Como é feito
![Page 23: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/23.jpg)
O Cliente precisa de Resultado
Sempre entregar valor
![Page 24: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/24.jpg)
Entender as Necessidades
![Page 25: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/25.jpg)
Mudança de Paradigma
![Page 26: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/26.jpg)
Como Mudar essa situação ?
![Page 27: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/27.jpg)
Manifesto Ágil
Em 2001, dezessete especialistas em processos de desenvolvimento de software estabeleceram princípios comuns compartilhados por diferentes métodos e criaram o Manifesto Ágil.
![Page 28: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/28.jpg)
Como Mudar essa situação ?
![Page 29: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/29.jpg)
Manifesto Ágil
“Estamos descobrindo maneiras melhores de desenvolver software fazendo‐o nós mesmos e ajudando outros a fazê‐lo. Através desse trabalho, passamos a valorizar:
![Page 30: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/30.jpg)
Valores
Indivíduos e Interações
Ferramentas e Processos
![Page 31: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/31.jpg)
Valores
Software Funcionando
Documentação Abrangente
![Page 32: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/32.jpg)
Valores
Colaboração com Cliente
Negociação de contratos
![Page 33: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/33.jpg)
Valores
Responder a mudanças
Seguir um plano
![Page 34: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/34.jpg)
Princípios
“Nossa maior prioridade é satisfazer o cliente através da entrega adiantada e contínua de software de valor
![Page 35: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/35.jpg)
Princípios
“Aceitar mudanças de requisitos, mesmo no fim do desenvolvimento. Processos ágeis se adéquam a mudanças para que o cliente possa tirar vantagens competitivas
![Page 36: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/36.jpg)
Princípios
“Entregar software funcionando com frequência, na escala de semanas ou meses, com preferência aos períodos mais curtos
![Page 37: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/37.jpg)
Princípios
“Pessoas relacionadas a negócio e desenvolvimento devem trabalhar em conjunto e diariamente, durante todo o curso do projeto
![Page 38: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/38.jpg)
Princípios
“Construir projetos ao redor de indivíduos motivados dando a eles o ambiente necessário, e confiar que farão seu trabalho
![Page 39: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/39.jpg)
Princípios
“O método mais eficiente e eficaz de transmitir informações para, e por dentro de um time de desenvolvimento, é através de uma conversa cara a cara
![Page 40: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/40.jpg)
Princípios
“Contínua atenção à excelência técnica e bom design aumenta a agilidade
![Page 41: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/41.jpg)
Princípios
“Simplicidade: A arte de maximizar a quantidade de trabalho que não precisou ser feito - KISS
![Page 42: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/42.jpg)
Princípios
“Software funcional é a medida primária de progresso
![Page 43: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/43.jpg)
Princípios
“Em intervalos regulares, o time reflete como ficar mais efetivo, então, ajustam e otimizam seu comportamento
![Page 44: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/44.jpg)
Princípios
“As melhores arquiteturas, requisitos e designs emergem de times auto-organizáveis
![Page 45: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/45.jpg)
Envolvimento e Comprometimento
![Page 46: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/46.jpg)
Características de Um Time Ágil
Comprometimento
Coragem
Confiança
Respeito
Comunicação
Feedback
Motivação
Transparência
Responsabilidade
Interdisciplinaridade
Sem hierarquia formal
Adaptabilidade
Auto-organização
Auto-gerência
![Page 47: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/47.jpg)
É um processo para construir software incrementalmente em ambientes complexos, onde os requisitos não são claros ou mudam com muita frequência.
Scrum
“
![Page 48: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/48.jpg)
Em Rugby, Scrum é um time de oito integrantes que trabalham em conjunto para levar a bola adiante no campo. Ou seja: times trabalhando como uma unidade altamente integrada com cada membro desempenhando um papel bem definido e o time inteiro focando num único objetivo.
Scrum
![Page 49: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/49.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 lista é priorizada pelo dono do projeto– Cliente, depto de marketing, ...
![Page 50: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/50.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
![Page 51: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/51.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
![Page 52: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/52.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
![Page 53: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/53.jpg)
Daily Scrum• 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
![Page 54: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/54.jpg)
Daily Scrum• 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
![Page 55: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/55.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.
![Page 56: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/56.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
![Page 57: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/57.jpg)
Scrum Master • 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
![Page 58: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/58.jpg)
Scrum Master• Mantém o Backlog do Sprint
– Tarefas completadas– Identifica eventuais problemas
• Mantém um gráfico de “quanto falta”
0
10
20
30
40
50
60
70
80
90
100
horas
![Page 59: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/59.jpg)
Exemplo real
![Page 60: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/60.jpg)
Scrum de Forma Gráfica
![Page 61: Introdução às Metodologias Ágeis de Desenvolvimento](https://reader034.vdocuments.site/reader034/viewer/2022052307/5590b6121a28ab035f8b462a/html5/thumbnails/61.jpg)
Dúvidas?