Escolar Documentos
Profissional Documentos
Cultura Documentos
ENGENHARIA DE
SOFTWARE II
Modelagem gil com Scrum
AULA 3
Problema
Aparenta ser indisciplinado
2
Princpios da agilidade
1. A mais alta prioridade a satisfao do cliente, por meio
da liberao mais rpida e contnua de software de valor.
2. Receba bem as mudanas de requisitos, mesmo em
estgios tardios do desenvolvimento. Processos geis devem
admitir mudanas que trazem vantagens competitivas para o
cliente.
3. Libere software frequentemente (em intervalos de 2
semanas at meses), dando preferncia para uma escala de
tempo mais curta.
4. Mantenha pessoas ligadas ao negcio (clientes) e
desenvolvedores trabalhando juntos a maior parte do
tempo do projeto.
3
Princpios da agilidade
5. Construa projetos com indivduos motivados, d a eles o
ambiente e suporte que precisam e confie neles para ter o
trabalho realizado.
6. O mtodo mais eficiente e efetivo para repassar informao
entre uma equipe de desenvolvimento pela comunicao
face-a-face.
7. Software funcionando a principal medida de progresso
de um projeto de software
8. Processos geis promovem desenvolvimento sustentado.
Assim, patrocinadores, desenvolvedores e usurios
devem ser capazes de manter conversao pacfica
indefinidamente.
4
Gerenciamento gil de Projetos
Valores centrais
As respostas s mudanas so mais
importantes que o segmento de um plano
A entrega de produtos est acima da
entrega de documentao
Priorizao da colaborao do cliente
sobre a negociao de contratos
Os indivduos e suas interaes so mais
importantes que os processos e ferramentas
5
Gerenciamento gil de Projetos
Principais objetivos
Inovao contnua: a idia de inovao associada
a um ambiente cuja cultura estimule o auto-
gerenciamento e a autodisciplina
Adaptabilidade do produto: os produtos
adaptveis s novas necessidades do futuro
Tempos de entrega reduzidos: direcionamento
preciso e capacidade tcnica da equipe
Capacidade de adaptao do processo e das
pessoas: equipe confortvel com mudanas, processo
leve
Resultados confiveis: entrega de produtos que
garantam operao, crescimento e lucratividade da
empresa
6
Tcnicas de Gerenciamento gil de
Projetos
Foque nas pessoas
As pessoas e a maneira como interagem so
determinantes mais importantes para o
sucesso de um projeto
Organize seu projeto em iteraes
Curtos perodos de tempo onde ao seu final
chega-se a um objetivo especfico
Estabelea marco de entrega final
somente se for realmente necessrio
7
Tcnicas de Gerenciamento gil de
Projetos
Tenha um plano de projeto de alto nvel
Principais dependncias externas, iteraes
planejadas e uma estimativa de trmino (se
possvel)
Crie planos de iterao detalhados com base
no JIT (Just In Time)
Voc s pode planejar precisamente com algumas
semanas de antecedncia da realizao
Envolva todos da equipe no planejamento
Planejar as prprias atividades
8
Tcnicas de Gerenciamento gil de
Projetos
As pessoas deveriam escolher seu trabalho
ao invs de serem mandadas para faz-lo
Organizar o prprio trabalho
Faa estimativa de coisas pequenas
mais fcil fazer a estimativa de um trabalho que
levar apenas um dia do que estimar algo que
levar um ms.
As pessoas deveriam estimar seu prprio
trabalho
As melhores estimativas vm de baixo para cima
e no de cima para baixo
9
Gerenciamento gil de Projetos
Ambientes onde pode apresentar
problemas
Cultura da documentao
Dificuldade para aceitar mudanas
Demora para obteno da realimentao
Resistncia cultural
10
Gerenciamento gil de Projetos
Crticas
Dificuldade de manuteno pela falta de
documentao
Efetividade da programao em pares: custo x
benefcio
Dificuldade de se ter o cliente no local
Dificuldade de estabelecer contrato com
escopo varivel
Requer colaborao e confiana entre equipe
e cliente
11
Abordagem Clssica vs. Abordagem gil
Clssica gil
Desenvolvedor hbil gil
12
Abordagem Clssica vs. Abordagem gil
Ciclo de vida gil semelhante ao clssico
13
SCRUM
14
SCRUM
Iterativo e
Incremental
Resposta s
mudanas
Maior valor para o
negcio
Prticas de engenharia
livres
Framework de
processo 15
Scrum
Definio informal:
16
Scrum
Uma alternativa de utilizar mtodos geis
na gerncia de projetos
Pode ser aplicvel a qualquer tipo de
projeto
simples
Processo, artefatos e regras so poucos e
fceis de entender
A simplicidade pode ser decepcionante aos
acostumados com metodologias clssicas
17
Scrum
No um mtodo prescritivo
No define previamente o que deve ser feito em
cada situao
Projetos complexos no permitem prever todos
os eventos
Define um framework e um conjunto de
prticas
Aplica o senso comum
Combinao de experincia, treinamento,
confiana e inteligncia de toda a equipe
Senso comum em vez do senso de uma nica
pessoa uma das razes do sucesso do Scrum
18
nfases
Comunicao
Trabalho em equipe
Flexibilidade
Fornecer software funcionando
incrementalmente
19
Papis no Scrum
Todas as responsabilidades de gerenciamento so divididas entre
trs papis:
Product Owner
Scrum Master
Time
20
Papis no Scrum
21
Papis Product Owner
Responsvel por apresentar os interesses de
todos os stakeholders
Define fundamentos iniciais do projeto,
objetivos e planos de release
Responsvel pela lista de requisitos
(Product Backlog)
Certifica se as atividades com maior valor para
o negcio so desenvolvidas primeiro
Priorizao frequente das funcionalidades antes de
cada iterao
22
Product Owner
Determina a Viso do
Projeto
Define as
funcionalidades
Determina o valor de
negcio
Prioriza
funcionalidades
24
Scrum Master
Valores e Prticas do
Scrum
Resolve os
impedimentos
Conduz as reunies dirias,
de planejamento e reviso
Escudo para interferncias
externas
25
Papis Time
Equipe de Desenvolvimento
Responsvel por escolher as funcionalidades a serem
desenvolvidas em cada interao e desenvolv-las
O time se auto-gerencia, se auto-organiza
Postura multifuncional
Todos os membros do time so coletivamente
responsveis pelo sucesso de cada iterao
26
Time
Entre 5 e 10
pessoas
Multi-
funcional
Auto organizvel e Auto
gerencivel
Estima as
funcionalidades
Define as tarefas
Levanta impedimentos
(externos)
27
O que so os Stakeholders?
Alm dos trs papis j descritos,
certamente tambm existiro envolvidos
com o projeto, mas que no desempenham
um papel direto na sua execuo. Estes
elementos podem englobar usurios,
gerentes, diretores ou departamentos que
possuem interesses ou ainda, so afetados
pelos resultados do produto final.
28
Comprometido X Envolvido
29
Local do Encontro
Sempre o mesmo local Todos devem
e hora participar
Pode ser o local de Pode ser em p
desenvolvimento
Sala bem equipada,
Pessoas sentadas ao
redor de uma mesa quadro branco, etc.
A sala j deve estar
arrumada antes
Punies
(atrasos/faltas)
30
Fases
Planejamento
Sprints
Reunies Dirias
Reviso
Retrospectivas
Encerramento
31
Processo Scrum
32
Planejamento
Relativamente curto
Projeto da arquitetura do sistema
Estimativas de datas e custos
Criao do backlog Backlog
33
Product Backlog
Criado a partir da Viso do Produto
Contm todos os requisitos funcionais e
no funcionais
Geralmente escritos em User Stories
Idealmente representado por itens que
agregam valor aos usurios ou cliente
Priorizado pelo Product Owner
34
Product Backlog
O product backlog o corao do
Scrum. aqui que tudo comea. O
product backlog basicamente uma
lista de requisitos, estrias, Coisas que
o cliente deseja, descritas utilizando a
terminologia do cliente.
35
Product Backlog
36
37
Sprint Planning 1
Reunio de no mximo 4 horas
Revisar o product backlog
Determinar o objetivo da sprint
Selecionar parte do product backlog
Estimar e priorizar IBLs (itens de
backlog)
38
39
Sprint Planning 2
um planejamento ttico da equipe
Os itens selecionados do Product Backlog
so destrinchados em tarefas
O resultado final o Sprint Backlog
40
Sprint Backlog
As tarefas no so atribudas aos
membros do time
Cada membro escolhe sua tarefa
diariamente
Qualquer membro do time pode
adicionar ou remover itens do Sprint
Backlog (durante o daily meeting)
41
Sprint Backlog
Criado de acordo com os itens do
product backlog levantado pelo Product
Owner, ou seja, de acordo com os itens
de maior prioridade criado o Sprint
Backlog que a equipe ter a
responsabilidade de terminar at o
prximo Sprint.
42
Plannings 1 e 2
Histrias
A
Alta
B O que est dentro do Sprint
No pode ser alterado.
C
D
Prioridade
Sprint X
Retrospectiva
Reunio Reunio Reunio Reunio Reunio Reunio Reunio Reunio
diria diria diria diria diria diria diria diria
46
Sprint - Reunies Dirias
Objetivo
Cada membro deve responder as seguintes perguntas:
1. O que voc fez desde a ltima reunio diria?
2. O que voc pretende fazer at a prxima reunio
diria?
3. Existe algum problema que o impea de realizar suas
atividades?
Impedimentos reportados aqui
Durao
15 minutos (no mais que isso)
Qualquer pessoa pode participar, mas apenas o Scrum
Master e os Membros da Equipe podem falar
47
Sprint - Reunies Dirias
Benefcios:
Maior integrao entre os membros da
equipe
Rpida soluo de problemas
Promovem o compartilhamento de conhecimento
Progresso medido continuamente
Minimizao de riscos
48
Quadro Kanban
IBLs Tasks To Do Work In Progress Done
[IBL001]
[IBL003]
[IBL002]
49
Quadro Kanban
50
Sprint Burndown
51
Sprint - Reviso
Deve obedecer data de entrega
Permitida a diminuio de funcionalidades
Benefcios:
Apresentar resultados concretos ao cliente
Integrar e testar uma boa parte do
software Nova
Motivao da equipe funcionalidade
52
Sprint - Retrospectiva
Objetivo
Enumerar o que funcionou e o que no
funcionou durante o Sprint
Participantes
Product Owner, Scrum Master e os membros
do time
Time deve encontrar solues para os
problemas mais crticos
53
Retrospectiva - Exemplo
O que Funcionou O que no funcionou
Comunicao entre
Testes os membros
Reunies
Usurio Faltou
Dirias
melhor
Distante
planejamento
do Sprint
Alguns
membros
chegam tarde
54
Encerramento
Finalizao do projeto
Atividades:
Testes de integrao
Testes de sistema
Documentao do usurio
Preparao de material de treinamento
Preparao de material de marketing
55
QUAL O CRITRIO PARA
DECIDIR A ESTRIA QUE
SER INCLUDA NO
SPRINT ?
56
Velocidade dos sprints
Base da conversa
Clculo de Velocidade
57
Base da conversa
Base da conversa, ideal quando a equipe
no possui histrico de sprints, ou seja,
para equipes que nunca trabalharam com
Scrum e no possuem dados esttiscos
para realizar o calculo de velocidade.
58
Base da conversa
A conversa gira em torno dos
desenvolvedores, onde o Scrum Master
pergunta para cada membro do time
quanto tempo uma atividade do Backlog
demora para ser desenvolvida (em horas),
e com base nisso as horas necessrias
para o projeto.
59
Velocidade dos sprints
A maneira mais simples de estimar a
velocidade verificar o histrico do time.
Qual foi a velocidade do time nos ltimos
Sprints ?
Ento assumir que a velocidade ser a
mesma para o ltimo Sprint, mas isso s
funciona se o time j tive feito alguns
Sprints antes.
60
Velocidade dos sprints
Outra maneira de calcular atravs de
clculo de recurso.
61
Velocidade dos sprints
Frmula para velocidade estimada do
Sprint:
(Dias de Recurso Disponvel) = membro
da equipe * diasdisponiveis
62
Velocidade dos sprints
63
REGRAS DO SCRUM
64
Regras no Scrum
O ScrumMaster deve se certificar de que
cada envolvido no projeto siga suas regras
As regras permitem a execuo correta do
Scrum
Mudanas das regras devem se originar do
time
O ScrumMaster deve ser convencido de que
todos envolvidos entenderam suficientemente as
regras do Scrum para o correto discernimento
Discusses desnecessrias so perda de tempo
de produo da equipe
65
Sprint Planning Meeting
A reunio de planejamento do Sprint deve
ocorrer dentro de 8 horas com duas partes
de 4 horas
Primeiro seguimento:
Product Owner deve preparar o Product Backlog
antes da reunio
Seleo dos itens do Product Backlog que o time
se compromete em torn-los incrementos
potencialmente implementveis
Deciso final do Product Owner
Stakeholders no devem participar
66
Sprint Planning Meeting
Segundo seguimento:
Ocorre imediatamente aps o primeiro
Product Owner deve estar disponvel para o
que o time faa perguntas sobre o Product
Backlog
O time deve decidir sozinho como os itens
selecionados sero implementados
Nenhum outro participante pode fazer
perguntas ou observaes nesta parte
Resultado deste seguimento o Sprint Backlog
67
Scrum Daily Meeting
Reunio de no mximo 15 minutos, a
menos que o time seja grande o suficiente
para precisar de mais tempo
Deve ser feita no mesmo lugar onde o
time trabalha
Resulta em melhores resultados se
realizada no inicio do dia de trabalho
Todos os membros do time devem
participar desta reunio
68
Scrum Daily Meeting
ScrumMaster faz as seguintes perguntas para
cada membro do time:
O que voc fez desde a ltima reunio diria do
Scrum relacionada a este projeto?
O que voc ir fazer desde agora at a prxima
reunio diria do Scrum relacionada a este
projeto?
O que est impedindo voc de realizar o seu
trabalho o mais efetivamente possvel?
69
Sprint
No deve ser maior do que 30 dias
consecutivos
70
Sprint
Responsabilidades do time durante o
Sprint:
Participar das reunies dirias do Scrum
Manter o Sprint Backlog atualizado
Disponibilizar o Sprint Backlog publicamente
71
Reunio de Reviso do Sprint
Reunio de no mximo 4 horas sob responsabilidade do
ScrumMaster
O time no deve gastar mais de 1 hora na preparao desta
reunio
Objetivo:
Mostrar ao Product Owner e stakeholders as funcionalidades que
foram feitas
Artefatos no devem ser apresentados, pois no so
funcionalidades
No final da reunio
Cada stakeholder fala suas impresses e sugere mudanas com
suas respectivas prioridades
Possveis modificaes no Product Backlog so discutidas entre o
Product Owner e o time
ScrumMaster anuncia a data e o local da prxima reunio de
reviso do Sprint ao Product Owner e a todos stakeholders
72
Reunio de Retrospectiva do Sprint
No deve ser maior do que 3 horas
73
CONSIDERAES
74
Reflexo
Grandes projetos podem ser
gerenciados de forma gil?
Como possvel?
confivel?
Gerenciamento gil para qualquer tipo
de projeto
Construo de edifcios, avies,
robs
Como possvel?
75
Nem tudo so flores
76
Principais Dificuldades
Independncia de equipes
Problemas de comunicao
Barreiras Culturais
Modo de Trabalho
77
Consideraes Finais
Manifesto gil
Pares de alternativas se reforam
Processos e ferramentas podem melhor
capacitar os indivduos e interaes
Documentao ajuda as pessoas a entenderem
um software complexo
Negociao de contrato pode ser parte integrante
da colaborao do cliente
Seguir um plano pode ser o melhor modo para
responder a mudana, quando esta for previsvel
78
Consideraes Finais
Abordagens possuem pontos positivos e
negativos
Partem de pressupostos diferentes
79
Consideraes Finais
Projetos complexos e com restries de tempo
necessitam de uma nova abordagem
80
Mais Informaes
Agille Alliance - www.agilealliance.org
tima fonte sobre mtodos geis
82
Referncias
DECLARATION OF INTERDEPENDENCE. 2001. Declaration of
interdependence. Disponvel em <http://pmdoi.org/>. Acesso em 29 nov. 2006.
GRIFFITHS, M. Using agile alongside the PMBOK. PMI Global Congress
Proceedings, 2004.
HIGHSMITH, J. Agile project management: creating innovative products. Boston:
Addison-Wesley, 2004. 312 p .
KERZNER, H. Project Management: A Systems Approach to Planning, Scheduling,
and Controlling. New Jersey: John Wiley & Sons, 2003. 912p.
PROJECT MANAGEMENT INSTITUTE PMI. PMBOK Guide: Um guia do
conjunto de conhecimentos do gerenciamento de projetos. Pennsylvania: Project
Management Institute, 3. ed., 2004.
SCHWABER, K. Agile Project Management with Scrum. Microsoft Press, 2004.
MAGALHES, A. O gerenciamento de projetos desenvolvidos luz das
metodologias geis. PMI-MG jun/2006. Disponvel em
<http://www.pmimg.org.br/downloads/Palestra-GerenciamentoAgil.pdf>. Acesso em
29 nov. 2006
83