Vous êtes sur la page 1sur 162

1

Mtodos geis de Gerncia de


Mtodos geis de Gerncia de
Desenvolvimento de
Desenvolvimento de
Software
Software
Rodrigo de Toledo
Rodrigo de Toledo
CCE / PUC-Rio CCE / PUC-Rio
10-17 abril 2010
10-17 abril 2010
gmail: rodrigodetoledo gmail: rodrigodetoledo
2
Plano
Plano
ntroduo:
Motivao
Histrico
Princpios
XP
Scrum:
Fluxo Scrum (Scrum Flow)
Personagens, artefatos e meetings
Prtica:
Velocidade, Sprint, Review
Aplicaes, mitos e restries
Exemplos
Concluso:
Metodologias geis no mundo
Scrum e CMM
Pontos fortes e pontos frgeis
Como introduzir metodologias geis
Por onde comear?
Contratos
Dicas
3
nformaes Gerais!
nformaes Gerais!

Assunto apaixonante

Assunto polmico

Quebra de paradigmas

"Depende sempre a melhor resposta

Uso excessivo do ingls

Termos

Dificuldades de traduo (ex: "meetings cerimnias)

No se desespere

Mtodos geis no servem para tudo

Arrogncia x Respeito

Perguntas a vontade (mas respostas s no momento certo)

Horrio intervalo?
4
ntroduo
ntroduo
5
Motivao Mtodos geis
Motivao Mtodos geis
Metodologias apropriadas a essa nova cincia: a
engenharia de software
O que tem de to interessante:
Processos iterativos,
Orientado a pessoas,
Times multidisciplinares,
nspeo/adaptao,
Time-box
Alta produtividade (4 a 10 vezes maior)
Satisfao de todos: clientes, usurios, gerentes e
desenvolvedores
6
Motivao Mtodos geis
Motivao Mtodos geis

Mudanas de paradigma
7
Motivao
Motivao

Quais so os problemas mais freqentes


em projetos de T ?

Responder interativamente

Lembrar dos diferentes pontos de vista:

Desenvolvedor

Gerente de T

Cliente

Usurio
8
O que
O que
Mtodo gil
Mtodo gil
?
?

um processo?

No

um novo modelo mental?

Talvez

um "nome-guarda-chuva para diversos


mtodos?

Sim

uma jogada de marketing?

Provavelmente
9
Motivao Auto-ajuda
Motivao Auto-ajuda
1. ndependente da situao, voc sempre
pode melhorar.
2. Voc sempre pode comear a melhorar
por voc mesmo.
3. Voc sempre pode comear hoje.
X
Kent Beck
(XP
10
Termos
Termos
Mtodos geis:
Se contrapem s metodologias de engenharia clssica, usualmente aplicados ao
desenvolvimento de software.
Ex: XP, Scrum, Crystal, Lean, (RUP?), DSDM , FDD, Evo ...
!tera"#o:
Etapas curtas (1 a 4 semanas) de planejamento/desenvolvimento.
Se contrapem ao processo em cascata.
$da%ta"#o:
Opo verdadeira natureza imprevisvel do desenvolvimento de software.
Troca-se o par planejamento/controle por inspeo/adaptao.
$&to'organi(a"#o:
As pessoas so responsveis pelo seu prprio trabalho.
(orientado a pessoas X orientado a processos).
)ime'*o+:
Todas as etapas devem estar contidas no seu tempo.
sso mais importante que a completude do escopo.
Prazo fixo, escopo varivel.
11
Um pouco de histria do
Um pouco de histria do
desenvolvimento de software
desenvolvimento de software
12
Motivao Caos
Motivao Caos

Desenvolvimento catico

"Code and fix ou "Quick and dirty

Um cara s faz tudo - generalista

Pode funcionar para aplicaes pequenas

Pontos negativos:

mprevisvel

"Dono do cdigo

Baixo reuso

Dificuldade de manuteno

...
13
Motivao - Engenharia
Motivao - Engenharia

Metodologias de engenharias

Eng. de sw muito nova comparada com as demais

Por que no usar outras metodologias clssicas?


Engenharia civil, mecnica...
Planejamento mplementao
Linha de montagem (cascata)
Cada etapa tem um responsvel diferente - especialistas

Benefcios:

Gerenciamento facilitado (pessoas so peas)

Reuso possvel

Mais formalidade no relacionamento com o cliente


14

Metodologias de engenharias

Questionamentos:

Esforo no planejamento muito maior que nas


outras engenharias

previsvel ?

Desenvolvimento de sw considerado a atividade mais


complexa do ser humano.

Pontos negativos:

Software no prdio

Perda de flexibilidade

Falsas verdades
Motivao - Engenharia
Motivao - Engenharia
15
Motivao - Engenharia
Motivao - Engenharia

Construir software NO
igual a construir prdio

Metforas so perigosas (mas quase inevitveis)

Nosso peo um arquiteto (criativo, artista)

Desde a primeira prova de programao


Peo feliz/infeliz (muro/igreja)

Se derrubar uma parede errada, basta fazer um ctrl+z

Falta um tijolo no prdio falta um " ; no cdigo ?

No estamos presos a leis fsicas


Ex: gravidade, replicao ...

Mudanas tecnolgicas maiores em impacto e


freqncia.
16
Motivao - Engenharia
Motivao - Engenharia
Perda de Flexibilidade
Mudanas externas constantes
Decorrentes da impreciso dos requisitos
Falha de quem est levantando
ncapacidade do cliente em detalhar
(ex: construo customizada de um carro)
Frase comum: "o problema deste projeto
que os requisitos vivem mudando
Mudana de tecnologia
Decorrentes das mudanas de necessidades do negcio
17
Motivao - Engenharia
Motivao - Engenharia
Perda de Flexibilidade - The Scrum Papers: Nuts, Bolts, and Origins of an Agile Process
(Jeff Sutherland et al. 08)
!ncerte(a inerente e inevit,vel em desenvolvimento de
software- %rocessos e %rod&tos
The Uncertainty Principle in Software Engineering The Uncertainty Principle in Software Engineering
.adar /iv
0m &m novo sistema- os re1&isitos n#o ser#o com%letamente
con2ecidos at 1&e os &s&,rios o ten2am &sado
!i"cipline for Software Engineering !i"cipline for Software Engineering
3atts .&m%2re4
5#o %oss6vel es%ecificar com%letamente
&m sistema interativo
Peter 3egner
#hy $nteraction i" More Powerful than
lgorithm"
#hy $nteraction i" More Powerful than
lgorithm"
18
BDUF Big Design Up Front
BDUF Big Design Up Front
Projetos de T:

1993, Caper Jones


Grandes sistemas:
65% de fracasso

1999, Jarzombek
DOD:
75% de fracasso

2001, Thomas
Sistemas em UK:
87% de fracasso
19
Motivao - Engenharia
Motivao - Engenharia

Mitos sobre as metodologias de engenharia:


Esforo maior apenas no incio do projeto
Pessoas so apenas peas do processo
Quanto mais informao escrita melhor

Previsibilidade
Processos criativos no so fceis de planejar
((A engenharia de software ao mesmo tempo uma cincia
precisa/matemtica e um exerccio criativo/humano))
Pior ainda: Fingir que previsvel
Documentos que no so lidos
Documentos para descrever como algo ser feito escritos depois desse
algo feito

Fim do projeto! Bom projeto tem fim ?


O que um produto de sucesso ?
No prazo, no custo e de acordo com o plano
Maior valor agregado (business value) no menor custo No!
20
Video
Video
21
Histrico Mtodos geis
Histrico Mtodos geis

Anos 80 (qualidade)

Nonaka e Takeuchi:

"Knowledge Management (gesto do conhecimento)

Papers: "The New New Product Development Game, 1986


"The knowledge-creating company

Toyota, Xerox, 3M, Fujifilm ...

Lenda ou fato?
Qualidade comeou nos anos 70 com um americano *

SmallTalk (Xerox, 1980)


OO, metaclasses, dev. Environment.
1983: virtual machine e unit test
* http://en.wikipedia.org/wiki/W._Edwards_Deming
http://en.wikipedia.org/wiki/Joseph_M._Juran
22
Histrico Mtodos geis
Histrico Mtodos geis
Anos 90
XP (Kent Beck e Ron Jeffries, ~97)
5 valores, 14 princpios, 24 prticas
Outra lenda:
Kent Beck desafia QA's (GQS) em 2001
TDD (Test Driven Development)
Scrum (Jeff Sutherland, Ken Schwaber, Mike Beedle
93~95~99)
Mais gerencial que XP
Crystal (Alistair Cockburn)
FDD
Lean / Kanban
(Toyota)
23
Histrico Mtodos geis
Histrico Mtodos geis
nfluncia do Scrum no XP
"Tem como pegar umas cpias do artigo sobre SCRUM
do HBR? Tenho escrito alguns patterns para algo bem
similar e gostaria de ter certeza que estou 'roubando' o
mximo de idias possveis. Kent
24
Histrico Mtodos geis
Histrico Mtodos geis

Anos 2000

Grande divulgao

Diversos exemplos de uso

2001

Agile Manifesto

Agile Alliance

ltimos anos

Google, Yahoo, Borland, Sega (todas as


grandes empresas de jogos), MS .
25
Agile Manifesto
Agile Manifesto
over
over
over
over
(A) Documentao compreensiva
(B) Negociao contratual
(C) Colaborao com o cliente
(D) Seguir um plano
(E) ndivduos e interaes
(F) Processos e ferramentas
(G) Responder a mudanas
(H) Software funcionando
26
Manifesto for $gile Software Develo%ment
We are uncovering better ways of developing
software by doing it and helping others do it.
Through this work we have come to value:
Individuals and interactions over processes and tools
Working software over comprehensive documentation
Customer collaboration over contract negotiation
Responding to change over following a plan
That is, while there is value in the items on
the right, we value the items on the left more.
Kent Beck
Mike Beedle
$rie van Bennek&m
$listair 7ock*&rn
3ard 7&nning2am
Martin 8owler
9ames Grenning
9im .ig2smit2
$ndrew .&nt
:on 9effries
9on Kern
Brian Marick
:o*ert 7; Martin
Steve Mellor
Ken Sc2wa*er
9eff S&t2erland
Dave )2omas
27
Princi%les *e2ind t2e $gile Manifesto
Princi%les *e2ind t2e $gile Manifesto
Our highest priority is to satisfy the customer through early and
continuous delivery of valuable software.
Welcome changing requirements, even late in development. Agile processes
harness change for the customer's competitive advantage.
Deliver working software frequently, from a couple of weeks to a couple
of months, with a preference to the shorter timescale.
usiness people and developers must work together daily throughout the
pro!ect.
uild pro!ects around motivated individuals. "ive them the environment and
support they need, and trust them to get the !ob done.
#he most efficient and effective method of conveying information to and
within a development team is face$to$face conversation.
Working software is the primary measure of progress.
Agile processes promote sustainable development. #he sponsors,
developers, and users should be able to maintain a constant pace
indefinitely.
%ontinuous attention to technical e&cellence and good design enhances
agility.
'implicity$$the art of ma&imi(ing the amount of work not done$$is
essential.
#he best architectures, requirements, and designs emerge from self$
organi(ing teams.
At regular intervals, the team reflects on how to become more effective,
then tunes and ad!usts its behavior accordingly.
28
$lg&ns desta1&es dos %rinc6%ios geis
$lg&ns desta1&es dos %rinc6%ios geis
)ossa maior prioridade * satisfa(er o cliente
atrav*s de entrega cont+nua e antecipada de
software que agregue valor ,valuable software-
.eceber bem as mudan/as de requisitos
,welcome-, mesmo que se!am tardias no processo
de desenvolvimento.
0ntregar software funcional com freq12ncia
3essoas motivadas
'implicidade 4 a arte de ma&imi(ar o trabalho
n5o feito
0m intervalos regulares, o time reflete em como
ser mais eficiente
%onversar cara$a$cara
29
Comunicao face-a-face
Comunicao face-a-face
%omunica/5o
6nterativa
Chat
Wiki?
30
Video
Video
Mr. Walter Falls and A. Giles
31
Mudanas de paradigma
Mudanas de paradigma

Modelo cascata Modelo iterativo

Escopo fixo Tempo fixo (qualidade fixa)

Planejamento/controle nspeo/adaptao

Orientado a processo Orientado a pessoas

Time" multidi"ciplinare" e auto-organi%ado"

Mudanas de requisitos so bem vindas

Melhoria contnua

Desenvolvimento:
orientado a camadas orientado a fatias
32
Camadas x Fatias
Camadas x Fatias

A cada ciclo de desenvolvimento (iterao)


termina-se uma nova fatia e no uma camada
X
33
XP eXtreme Programming
XP eXtreme Programming
34
XP eXtreme Programming
XP eXtreme Programming
VALUES
PRNCPLES
PRACTCES

5 Valores

~14 Princpios
~24 Prticas

VALUES

Comunicao

Feedback

Simplicidade

Coragem

Respeito
35
XP Valores (1/2)
XP Valores (1/2)

Comunicao:

Compreenso do projeto

Reaproveitamento de solues

Noo de time

Simplicidade:

&alor de maior esforo intelectual

"Qual a coisa mais simples que poderia funcionar?

Respeito:

Aos indivduos (profissional e pessoalmente)

Aos objetivos do projeto/empresa


36
XP Valores (2/2)
XP Valores (2/2)

Feedback:

Essencial a um processo iterativo sujeito a mudanas

Seria melhor se fosse possvel acertar de primeira,


mas...
Pode ser impossvel prever a melhor maneira
O melhor hoje pode ser ruim amanh

Planejar o melhor possvel pode ser to custoso (ou


demorado) que inviabilize o projeto

Ateno, o feedback no pode ser maior que a


capacidade de process-lo

Coragem:

Coragem para jogar fora solues ruins

Coragem para quebrar paradigmas

Encorajar o time

Ateno, coragem sozinha pode ser bem perigoso


37
XP Princpios
XP Princpios

Alguns dos princpios:

Melhoria contnua (impro'ement)

Diversidade
equipes multidisciplinares

Fluxo contnuo

oposto ao mtodo cascata

Falhar

no ter medo de errar se isso trouxer aprendizado


s vezes a nica maneira de acertar...

Qualidade (robustez)
no pode ser uma varivel
faa o melhor possvel dentro do contexto

Outros:

Economic"( Self-"imilarity( )aby "tep"( ccepted re"pon"ibility


38
XP Prticas
XP Prticas

Segundo Kent Beck:

So prticas que objetivam a melhora

Motivar a busca pela perfeio

Divididas em dois grupos:

Primrias

teis independentemente das outras

Melhoria imediata

Derivadas (corolrias)
((antes ou depois do Scrum ?))
39
XP Prticas (primrias)
XP Prticas (primrias)

Sentar juntos / time completo

Quase sempre os problemas so peopleware

Times *ro""-functional (SCRUM d mais nfase nisto)

Espao de trabalho informativo

(como SCRUM)

Trabalho energizado

O que mais produtivo, 40h ou 80h semanais ?

Comprometimento (Slac+)

Evitar o'ercommitting

Evitar underdeli'ering
40
XP Prticas (primrias)
XP Prticas (primrias)

Story

Diferente de requisito

Estimativa do esforo

Ciclo semanal

Stories selecionadas devem acabar na sexta

Psicologicamente bom terminar para sexta

!eployable 'er"ion ao final do ciclo

Ciclo quinzenal

Planejar as prximas 2 semanas

mpedimentos

Momento para dar ateno ao projeto como um todo


41
XP Prticas (primrias)
XP Prticas (primrias)

ntegrao contnua / Ten-minute Build

"Programao um problema de dividir para conquistar e integrar

Test-first Programming (TDD)


Proporciona coeso e confiana (inclusive para refactoring)
Ritmo: test, code, refactor, test, code, refactor...
1:2 linhas de cdigo para linhas de teste

Design ncremental
Dirio (para aquele dia)

Estratgia mais ecnomica:


Grandes decises no incio
Decises pequenas progressivamente

Diferente da teoria do Barry Boehm 1960's

Adaptao
42
Pair programming
Pair programming
Esclarecer pequenas dvidas de concepo
Motivao mtua (+ foco, - interrupes)
Padronizao
codificao, design, testes, comportamentos.
Nivela por cima
Aprendizado (inclusive de detalhes), cro""-training
Aprimorao de quem ensina
Maior compreenso coletiva da soluo ((cro""-functional))
Reduo de bugs (um debugger do outro) (escalas =)
,aurie #illiam"- .Pair Programming $lluminated.- /001
15% menos bug, 15% mais lento
Ateno:
trocar pares, variando (experiente-inexperiente; exp-exp; inexp-inexp)
cuidado com a invaso de espao (cultural: bubble "pace2
No faz sentindo para trabalhos braais
Dicas:
Ping-pong programming (test and code)
No Scrum, acontece naturalmente, mas deve ser induzido
43
XP Prticas (
XP Prticas (
7orollar4
7orollar4
)
)

Envolvimento do cliente
No Scrum um pouco diferente

Deployment incremental (e dirio)


Como alternativa s "uper-relea"e"

Continuidade do time

Evitar desmembrar o time

Reduo do time (Shrin+ing Team")

Toyota Production System


"Tentar deixar todo mundo ocupado pode ocultar o fato do time
estar com folga nos seus recursos

Anlise de causa raiz


Bug Teste Correo Entender motivo Ao
Five Whys (5 porqus)

Quase sempre o problema de pessoal

Cdigo compartilhado / Base nica de cdigo

Codificao e teste (no documentao)


44
Terminologia SCRUM
Terminologia SCRUM
Product Owner
Scrum Master
Done
Visibility
Retrospectives
Planning POKER
Stand-up
Meeting
Sprint
Product Backlog
Selected Backlog
Sprint Backlog
Team
Burn-down Chart
Story Points
Time Box
Task Board
45
SCRUM
SCRUM
46
Scrum
Scrum

Metaprocesso (framework)

"Metodologia que diz que metodologias no


so to importantes

Adaptvel

1 regra: as regras podem ser alteradas*

Promete alta qualidade

Software robusto

Promete alta produtividade

4 a 10 vezes mais produtivo

Mais "business value ou valor agregado


* Existem algumas pr-condies
47
Scrum
Scrum

Vamos ver:

Primeiros conceitos

Personagens

Artefatos

Meetings (cerimnias)

Diferena entre estratgia e ttica:


48
Planejamento ceberg
Planejamento ceberg
Stories Stories
Tarefas Tarefas
t
t
picos picos
49
Scrum Primeiros Conceitos
Scrum Primeiros Conceitos

Sprint:

terao (i, i+1, i+2, ...)

Perodo de < a = semanas de trabalho da equipe

Sprint dirio:

1 dia de trabalho da equipe

Product backlog:

Lista de requisitos em formato u"er-"tory

Ordenada por prioridade

Selected backlog:

Lista de stories a serem realizadas durante a sprint

Baseada nas maiores prioridades do product backlog

De acordo com a capacidade da equipe em uma


sprint
50
Scrum
Scrum
51
Scrum - Personagens
Scrum - Personagens
52
Scrum - Personagens
Scrum - Personagens

Apenas trs

No tm relao direta com cargos e


hierarquias
Scrum Master
Product Owner
Time
53
Scrum - Personagens
Scrum - Personagens

Product Owner

Fornece a viso do negcio

Mantm os itens do product bac+log


atualizados e priorizados

A cada incio de sprint participa da


elaborao do "elected bac+log

Maximiza RO ("valor agregado")

Aceita ou rejeita o que foi produzido

Alta participao em incio e fim de "print"

Disponvel para esclarecer dvidas


54
Scrum - Personagens
Scrum - Personagens

Scrum Master

8acilitador

No tem autoridade (lidera)

Conduz reunies e eventos

Mantm o Scrum funcionando

Remove empecilhos e obstculos

Presta servi"o ao time

Protege o time

Ajuda o time nas suas tarefas

Ajuda o product owner nas suas tarefas

De olho na prxima sprint


55
Scrum - Personagens
Scrum - Personagens

Time

Multidisciplinar

sem papis especficos

Auto-gerenciado

De 5 a 9 pessoas

Comprometido com o objetivo e consigo mesmo

esforado, pontual, focado etc.

Autoridade para fazer o que for necessrio para


atingir o objetivo

Comunicao constante

transparncia e dilogo
56
57
58
Scrum - Comprometimento
Scrum - Comprometimento

Comprometimento x Envolvimento

Porcos e galinhas
- 3orco, estava pensando que poder+amos abrir um restaurante !untos.
- 0 qual seria o nome7
- 8ue tal 93resunto com ovos:7
- 0nt5o n5o, porque eu estaria comprometido e voc2 apenas envolvido;
s vezes somos porcos, s vezes galinhas
59
Scrum - Artefatos
Scrum - Artefatos
60
Scrum Artefatos
Scrum Artefatos

User Story (backlog items)

U"er "torie" so os itens do Product e Selected )ac+log".

Campos:
D, Ttulo (ou descrio sucinta)
Valor
Valor medido pelo product owner (business value)
e / ou
valores relativos sem significado absoluto (apenas para priorizar)
Story point"
Esforo medido pelo time
Descrio mais detalhada
Suficiente para compreenso de time
Pode conter uma descrio da interao com o usurio
ou uma prvia da li"ta de tarefa" ou ...
"Me <name>, as <&ser role>, would like to <feature>, so that <value>
)este de aceita"#o
Outros possveis campos:
Nmero da sprint de realizao
Roteiro de demonstrao
NVEST
61
Scrum Artefatos
Scrum Artefatos

Exemplo de Selected Backlog

Siviep (Excel)
62
Scrum Artefatos
Scrum Artefatos

Story Points

Medida de esforo de implementao

Associado a cada "tory

Valores concretos ou relativos?


Pode ser associado a uma referncia concreta
ex: Homem-dia de trabalho
Pode ser simplesmente um valor relativo
Ex: Escolhe-se a story mais simples e pontua com valor 2

Usa-se uma srie adaptada de Fibonacci:


1, 2, 3, 5, 8, 13, 20, 40 e 100

Medida para determinar a >elocidade da equipe


63
Por que usar pontos (e no tempo)?
Por que usar pontos (e no tempo)?
Foco em estimativa relativa
Foco em tamanho/esforo e no durao
Usar Homem-dia sempre leva a um fator de ajuste
Performances individuais diferentes
Com HDia a acelerao da equipe pode ficar mascarada
Tarefas similares tendem a diminuir HDia com o tempo
Ao entrar mais um membro na equipe:
Em pontos, esperado uma queda de produtividade do time
Com HDia h um aumento irreal de produtividade.
Obs: 3 sprints para estabilizar a velocidade da equipe.
Cria-se uma noo intuitiva de pontos
Evita presso externa sobre as estimativas
Sndrome do estudante e lei de Parkinson
Mas pode atrapalhar ao juntar grupos diferentes
A aritmtica fcil (comparada a horas e minutos)
http://visaoagil.wordpress.com/2008/12/08/por-que-usar-story-points/
64
Scrum Artefatos
Scrum Artefatos

Tarefas

Cada "tory dever ser quebrada em tarefas

So a menor unidade de diviso

dealmente, tarefas correspondem a no mximo 1 dia de


trabalho

Cada tarefa vira um Post'it

As atribuies das tarefas s pessoas ocorre


diariamente

Sprint Backlog

Conjunto de tarefas de cada uma das stories da sprint


atual
65
Scrum Artefatos
Scrum Artefatos

Task Board
66
Scrum Artefatos
Scrum Artefatos

Task Board

To do- doing- done

Conceito de D?50

Pode ter outras colunas, exemplos:


Commited

Reviewed

Burn-down chart

Outros contedos:
Post-it chart
Limbo
mpediments
Notcias

Mesa retrtil
67
Scrum Artefatos
Scrum Artefatos

Burn-down Chart

So dois:
Por sprint
Produto completo / Release

Contagem de pontos
Pontos parciais das stories

Total de pontos da story

Video

Sw House paulista (BlueSoft):


http://bluesoft.wordpress.com/2008/09/17/como-montamos-o-
quadro-do-scrum/

Outro (Sovis):

http://www.youtube.com/v/APQwN9iS--o&hl=pt-br&fs=1
68
Scrum Artefatos
Scrum Artefatos

Burn-down Chart
da relea"e ou do produto:
Normalmente segue um padro
Tem que pontuar tudo no Prod. Backlog

Burn-up Chart
Linha de escopo e linha de realizado
Desacopla /O de stories da realizao
Funciona em projetos sem prazo fixo
Ex: manuteno, desenvolvimento interno
Mais stories novas
do que realizadas
Stories
removidas
69
Scrum Artefatos
Scrum Artefatos
Burn-up Chart da release o& do %rod&to:
Previso de trmino:
Projetar horizontalmente a linha do escopo
Projetar linha de realizao segundo histrico
Data de fim provvel no cruzamento
Projeo da linha de realizao:
Mdia geral, mdia das 3 ltimas sprints, mdias sem extremos, mdia exceto as 3
primeiras, etc... (vide Mike Cohn)
Projetos sem prazo fixo:
A distncia entre as linhas indica o horizonte do product backlog
70
Scrum Artefatos
Scrum Artefatos
- )5o foi isso o que eu quis di(er sobre 9burn$down correction:;
- O pro!eto est<
indo ladeira
abai&o;;;
71
Scrum Artefatos
Scrum Artefatos

Quebrando Stories:
Diferena entre stories
e tarefas:
Story: sempre agrega
algum valor

Tarefa: atividade sem


importncia ao PO
ndependente
Negocivel
Valorvel
Estimvel
Small (pequena)
Testvel
I
N
V
E
S
T
Propriedades das
stories:
72
Scrum - Meetings
Scrum - Meetings
73
Scrum - Meetings
Scrum - Meetings

So 6 diferentes meetings
Obs: !o permitidos observadores e"ternos #mas galinhas n!o tem vo$%.
&"ce'!o: (etrospective #e"iste e"ce'!o da e"ce'!o%
M00)!5GS
Sprint i Sprint i +1
;;; ;;;
Review
Retrospective
Daily meetings Daily meetings
Sprint Planning 2
Sprint Planning 1
Estimation
(planning poker)
Estimation
(planning poker)
74
Scrum - Meetings
Scrum - Meetings

Planning Poker ou
stimation meeting

Envolvidos: time (+ product owner)

Material: cartas do planning poker com os valores:


0 1 2 3 5 8 13 20 40 100 200

Freqncia:
poucas vezes ao longo da sprint
"inevitavelmente junto com a sprint planning 1
75
Scrum Meetings:
Scrum Meetings:

Planning Poker

Procedimento (exemplo):
1. dentificar no product backlog o item que o time julga ser o
de menor esforo e determinar como 2 pontos.
Para cada item (ou story):
2. Verificamos se a story est bem compreendida por todos.
3. Fazemos uma rodada de PP entre os membros do time.
4. Os membros que tiverem dado menor e maior valores fazem
uma breve defesa do porqu.
Repetimos itens 3 e 4 at convergir
Obs: Por que Fibonacci?
76
Pont&a"#o:
Complexidade E s foro Incerteza
Complexidade
E s foro
Incerteza
Complexidade
E s foro
Incerteza
Complexidade
E s foro
Incerteza
5
5
13
http://event.on24.com/event/15/97/99/rt/1/documents/slidepdf/releaseplanningwebinar_wnotes.pdf
Story 1
Story 2
Story 3
77
Scrum - Meetings
Scrum - Meetings

Sprint Planning !

Material:
Product backlog atualizado, priorizado e estimado
nformaes prticas sobre prxima sprint
pessoas, tempo de sprint, etc

Product owner + time + scrum master

Objetivo: definir selected backlog e s%rint goal

Quando: todo incio de sprint


78
Scrum - Meetings
Scrum - Meetings

Sprint Planning !

Procedimento:

Selected bac+log preenchido com os itens de


maior prioridade do product backlog at completar
o nmero de story points correspondente
velocidade do time.

O product owner poder ento propor alteraes


para incluir, excluir e alterar o escopo das stories.

Sprint goal: frase curta com o objetivo da sprint.


Serve para uniformizar a escolha das stories.
http://visaoagil.wordpress.com/2009/02/20/negociando-o-sprint-goal/
79
Scrum - Meetings
Scrum - Meetings

Sprint Planning "

Material:

Selected backlog priorizado

Time + scrum master (+ product owner)

Objetivo:

Definir tarefas de cada story da sprint


(criar post-it)

Quando: todo incio de sprint


80
Scrum - Meetings
Scrum - Meetings
Sprint Planning "
Procedimento:
Diviso das stories em tarefas de 1 dia, criando post-
its para a coluna "to do3 (painel de tarefas).
Lembrar que as tarefas devem incluir:
Redesign (arquitetura)
Aprendizado de tecnologia desconhecida
Codificao
Teste
Code review
Documentao
nfra
Done!
81
Scrum - Meetings
Scrum - Meetings

#aily meetings ou
Stand-up meetings ou
Scrum meetings

Participantes: time (+SM)

Material: Painel de tarefas; post-it; canetas

Freqncia: diria

Objetivo:
Comunicar progresso (status dirio)
dentificar obstculos
Manter foco
Noo de time
Comprometimento individual
82
Scrum - Meetings
Scrum - Meetings

Stand-up meetings

Procedimento:
De p, mximo de 15 minutos, no para discutir problemas
3 perguntas atualizando o Ta"+ )oard:
Sincronizao de conhecimento

$t&ali(a"#o do *&rn'down

SM deve observar as mensagens indiretas

Pode-se propor uma penalidade para os atrasados s reunies


No para discutir problemas tcnicos
http://martinfowler.com/articles/itsNotJustStandingUp.html
? 1&e e& fi( ontem@
1
? 1&e vo& fa(er 2oAe@
2
)en2o alg&m o*st,c&lo@
3
83
Scrum - Meetings
Scrum - Meetings

$e%iew

Material:

nformaes do painel de tarefas + SW

Participantes:

Product owner + scrum master + time

Objetivo:

Revisar ltimo sprint e andamento global do projeto

Freqncia:

A cada fim de sprint


.
e
v
i
e
w
.
e
v
i
e
w
B&rn
Down
84
Scrum - Meetings
Scrum - Meetings

$e%iew

Procedimento:

Revisar detalhes da ltima sprint:

objetivo, stories, burndown chart etc.

Demo do ltimo incremento do projeto.

Pode incluir a demonstrao de documentos e outros.


.
e
v
i
e
w
.
e
v
i
e
w
B&rn
Down
.
e
v
i
e
w
.
e
v
i
e
w
clap
clap
clap
85
Scrum - Meetings
Scrum - Meetings

$etrospecti%e

Material:
nformaes do painel de tarefas j organizados.
Post-its e flip-chart
$m*iente seg&ro

Participantes:
Time, scrum master

Objetivo:
Rediscutir o processo de desenvolvimento (visando a sua
melhora)
MELHORA CONTNUA

Freqncia: a cada fim de sprint


86
Scrum - Meetings
Scrum - Meetings

$etrospecti%e

Procedimento:

Repassar a sprint cronologicamente

5 min de WWWs em post-it


What Went Well? (o que aconteceu de bom?)
What Went Wrong? (e de ruim? "What can be improved?)

Discutir os itens organizando um impediment bac+log


Quem responsvel por cada item?
Quase sempre o SM
Lista de compromissos assumidos pela equipe
Hansei / Kaizen
Fechamento
http://visaoagil.wordpress.com/2009/01/06/melhoria-continua-e-efetiva-atraves-do-hansei-e-kaizen
87
Scrum - Meetings
Scrum - Meetings

$etrospecti%e
Minha experincia:

PPT para conduzir reunio

Comeando por:
"ndependente do que ser discutido, ns entendemos e acreditamos que
todos fizeram o seu melhor, dado o que sabiam naquele momento, suas
habilidades e competncias, os recursos disponveis e as circunstncias
da situao (*)

Ou seja, vamos evitar acusaes: "no names

Slide com resumo da sprint (goal, stories, pontos, burn-down)

WWWs

Levantamento das infos prticas para a prxima sprint (pessoas.)


(*)"Regardless of what we discover, we understand and truly believe that everyone did the best job they could,
given what they knew at the time, their skills and abilities, the resources available, and the situation at hand.
88
Scrum - Meetings
Scrum - Meetings
Nas 4 reunies maiores:

Planning 1

Planning 2

Retrospective

Review
no se esqueam que bom um lanchinho.
89
Scrum
Scrum
Flow
Flow
B:eview
Meetings
Sprint i Sprint i +1
Review
Retrospective
Daily meetings Daily meetings
Planning 2
Planning 1
$da%ta"Ces S!>!0P
D da4
Planning Poker
Pontos positivos:
Participao do Prod. Owner em 1
nico dia
Apenas 1 dia sem produo
Pode-se preparar a review com o time
Pode-se discutir impedimentos
Apresentar melhorias do processo
Ponto negativo:
Retrospective sem informaes da
review
Meetings
Sprint i Sprint i +1
... ...
Review
Retrospective
Daily meetings Daily meetings
Sprint Planning 2
Sprint Planning 1
Planning Poker Planning Poker
D da4 D da4
0ta%as S7:EM
91
Jogo das bolas
Jogo das bolas

Um nico time

As bolas devem passar por todos

Bolas devem ser passadas ficando um tempo no ar

No podem ser passadas ao vizinho lateral

Mesmo ponto de incio e fim

90 segundos por sprint

Mais prximo possvel de )ug-free

1 minuto para retrospectiva/review

4 iteraes
m)"ima*
nossa velocidade
+oc, tem certe$a -ue . isso -ue ele -uis di$er sobre a
/0
10
20
30
40
F=G<DH
50
60 70
80
92
Dinmica Quem faz o que.
Dinmica Quem faz o que.

Quais so os trs personagens do Scrum?

SM, PO, time

Quem .?
1. Responsvel por proteger o time:
2. Responsvel pelo design:
3. Atribuidor de tarefas:
4. Participa como galinha na sprint-planning 2:
5. No deve estar na retrospectiva:
6. Responsvel por manter Scrum funcionando:
7. Responsvel pelo Product Backlog:
8. Atribui pontos s stories (planning poker):
9. Aceita ou rejeita o que foi produzido:
10. Participam do stand-up meeting:
93
Scrum - Princpios
Scrum - Princpios
94
Scrum - Princpios
Scrum - Princpios
Processo iterativo e incremental (DIJ

Modelo Tradicional

Modelo gil
NA TEORA NA PRTCA
95
Scrum - Princpios
Scrum - Princpios
Processo iterativo e incremental (DIJ

Benefcios:

Confiabilidade do software

Aumento de confiana do cliente

Motivao do time

Melhoria contnua

Antecipao de valor agregado


Manifesto gil: devemos valorizar mais S?8)3$:0 8E57!?5$!S
do que documentaes extensas.
96
Scrum - Princpios
Scrum - Princpios
$&to'organi(a"#o (<IJ

Acreditar na competncia das pessoas

O time tem capacidade de se auto-


organizar

Tarefas no devem ser atribudas


autoritariamente, mas voluntariamente

pull ta"+"- not pu"h

atribuies ocorrem diariamente


Manifesto gil: devemos valorizar mais !5D!>KDE?S e !5)0:$LM0S
que processos e ferramentas
97
Scrum - Princpios
Scrum - Princpios
Exemplo de auto-atribuio de tarefas...
- 0u auto$seleciono o porco para ir=
- >oc2 n5o pode auto$selecionar outra pessoa, repare o 9auto: na
sua frase=
- Ok, ent5o eu me auto$seleciono o 9ser supremo: e seleciono
voc2s como escravos para irem=
98
Scrum - Princpios
Scrum - Princpios
7om&nica"#o (trans%arncia (GIJ
Atravs de reunies dirias a comunicao feita
pessoalmente
Controles visuais
Reunies regulares de retrospectiva
A cada mudana de sprint
Verificao de obstculos
Melhora contnua
Problemas vm rapidamente superfcie
4roup programming 5collecti'e code owner"hip2
Resultado das atribuies dirias e
Equipes cross-functional (especialista-generalista)
Evitar 65% de Funcionalidade no utilizadas
Motivao/Confiana do Product 6wner
99
Scrum - Princpios
Scrum - Princpios
)ime'*o+ (=IJ

O tempo da sprint mandatrio


(assim como qualidade)

Todos os meetings
tm tempo fixo:

Daily-meeting

Sprint Planning

Etc...
Qualidade
Tempo Escopo
Fixos
custo/esforo
nico que
pode alterar
100
Scrum - Princpios
Scrum - Princpios
Menos %laneAamento- mais a"#o (FIJ

Retardar decises

Por causa da complexidade

No h conflito com:

"No deixe para amanh o que pode ser feito hoje"

Um ao e outro planejamento

Retardar uma deciso e retom-la apenas no momento


apropriado:

Cenrio mais atualizado


Novas prioridades
Mais conhecimento sobre as condies
ltimo momento responsvel (,a"t re"pon"ible moment)
Manifesto gil: devemos valorizar mais :0$G!: $ MED$5L$S do
que seguir um plano.
101
Scrum - Princpios
Scrum - Princpios
Menos %laneAamento- mais a"#o (FIJ

Planejamento ceberg

Escala progressiva

Detalhes do planejamento devem ser inversamente


proporcionais distncia no tempo

Scrum tem 3 escalas: projeto/release, sprint, dia

No discutir muito o processo:

Tentar primeiro e melhorar para a prxima sprint


102
Scrum - Princpios
Scrum - Princpios
7liente &m %arceiro (JIJ

Participao ao longo do projeto

Acompanhamento mensal

Disponibilidade para dvidas

Mudanas de requisitos so bem-vindas a


qualquer momento
Manifesto gil: devemos valorizar mais 7?N$B?:$LO? 7?M ?
7N!05)0 do que negociao contratual.
103
Scrum - Princpios
Scrum - Princpios
Observao, os 6 princpios descritos aqui foram
minha interpretao pessoal
Existem 5 valores do Scrum (by Ken)
(no to divulgados como XP)
Foco
Abertura ((de esprito))
Comprometimento
Respeito
Coragem
104
Ainda sobre SCRUM
Ainda sobre SCRUM
Sprint, um resumo
Done, Velocidade
nfraestrutura
Escalabilidade
Aprendizado
Exemplo Prtico
105
Scrum - Sprint
Scrum - Sprint

Sprint, um resumo

terao de 2 a 4 semanas

Termina com uma deployable 'er"ion

No pode ter sua data postergada

O que fazer se o time atrasar ?


O que fazer se o time se adiantar ?
O que fazer com stories parcialmente feitas ?

A descrio da sprint deve conter:


Data de incio e fim
Pessoas comprometidas (time)
Objetivo

Total de pontos

Selected backlog

Boto Vermelho
106
Scrum - DONE
Scrum - DONE
!e"ign
Codificao
Teste unitrio
Reviso de cdigo
7efactoring
Comentado
Comitado
(integrao, testes .)
Documentado

Deve estar bem acordado com o time


107
Scrum - DONE
Scrum - DONE

Entrando em acordo sobre "done.

Jeff Sutherland

Done Done, done Done, done, done.


- 0ste pro!eto * meu = e n5o est< pronto ,done- enquanto
eu n5o estiver pronto
- Agora podemos di(er que a galinha est< pronta
108
Scrum Suporte Tecnolgico
Scrum Suporte Tecnolgico
ntegrao Contnua
Hudson (outras: CruiseControl, Bamboo, Continuum)
C++: Scons Cmake
Wiki (Visibilidade)
Confluence, MediaWiki, TWiki
Versionamento
TortoiseSVN, Subversion, ClearCase, GT
Teste Unitrio
J-Unit, Cpp-Unit, NUnit, DBunit, MStest, Google test
Reviso automtica de cdigo (padres, otimizao, etc...)
Together, Codelogic, Findbugs, Fortify, Checkstyle/PMD
Acompanhamento de issues
Jira, Mantis, Trac, Bugzila, Assembla
"Scrum Tools
TinyPM, ScrumFire, TargetProcess, Mingle, VersionOne,
SylverCatalist
http://www.implementingscrum.com/2007/03/05/crack-cocaine-first-scrum-is-free/
109
Sistema
Sistema
Siviep
Siviep
110
111
112
Scrum - Relatrios
Scrum - Relatrios

(Viso do projeto)

Product backlog a cada sprint

Anlise das diferenas

Anlise de desempenho

Burn-down charts, velocidade .

Aes de melhorias realizadas


113
Scrum - Aprendizado
Scrum - Aprendizado

Group programming

Especialistas compartilham sua experincia

Retrospective

Todos aprendem sobre o processo e como melhor-lo

Essa a explicao de porque os mtodos geis se


tornaram to bons

mpedimentos podem revelar


esta necessidade

Pode-se criar tarefa "estudo

Pode-se criar story "capacitao

Seminrio e/ou palestra regular por sprint


114
Escalabilidade
Escalabilidade

Times de 7 2 pessoas

Pode ser escalvel

Scrum of Scrum

Ken Schwaber

Diversas vezes implementou para centenas de


desenvolvedores

Mike Cohn
mplementou para mais de 1000
(segundo Mike, em 2007 havia pelo menos 3 no mundo)
Faz uso genrico do Scrum (alm de des. de sw)

Prximo desafio: + de 10.000 pessoas

Exemplos:

Google AdSense

Eclipse: 700 desenvolvedores


115
Scrum of Scrum
Scrum of Scrum
116
Scrum of Scrum
Scrum of Scrum
117
Scrum of Scrum
Scrum of Scrum

Requisitos (stories) descem via PO's

mpedimentos sobem via SM's

Reunies dirias dos PO's e SM's

Devem existir Scrum Master Master

Como?

Um dos PO's e um dos SM's; ou

Um SMM que resolva tudo

Originalmente, SofS foi o resultado de uma


deciso democrtica de se dividir um time grande

Primeiro se resolve infra (build, comunicao etc.)

Os membros do time inicial viram os PO's dos times


118
Exemplo Prtico - SiVEP
Exemplo Prtico - SiVEP

Sistema de >is&ali(a"#o ntegrado de 0PP

Alta complexidade de requisitos:

Multi-plataforma
Realidade Virtual
Renderizao distribuda
nterao com dispositivos 3D
Suporte a grafo de cena

Som 3D

Cluster
Colaborativo
Arquitetura de componentes
Sistema de Plug-in's

Acesso s funcionalidades via script

Open source
Plataforma de desenvolvimento para outras universidades
Browser 3D
119
Poos
Plataforma (PNA-) Plataforma (PNA-)
Reservatrio
Falhas da Superfcie
120
121
2008
2008
122
2009
2009
123
Exemplo Prtico v3o2
Exemplo Prtico v3o2

E&P

Projeto antigo com diversos usurios

15 sprints realizadas

Comeou com 2 times de 5 pessoas ( scrum of


scrum)

Em nov/08, 1 time de 9
124
possvel ser mais produtivo?
possvel ser mais produtivo?
Sistema Lean/Kanban
0ntrega A&st'in'time
No h iteraes
Fluxo contnuo de entrega
Backlog sem%re %ode ser alterado
Backlog Kanban dividido em duas reas
7 cartes de maior prioridade
Cartes a serem trabalhados nos prximos 30 dias
01&i%e de atendimento ao cliente
Recebe cartes que finalizaram no desenvolvimento
0stimativa:
T-shirt sizing: P, M, G
Qualquer um pode estimar
Pode-se trocar o tamanho ao longo do processo
8onte: Alisson Vale
www.phidelis.com.br/blogs/alissonvale/post/A-Historia-de-um-Sistema-Kanban.aspx
www.agilemanagement.net/Articles/Weblog/KanbaninAction.html
www.infoq.com/br/news/2009/01/brasil-representacao-conferencia
http://www.alissonvale.com/englishblog/post/System-Thinking-at-Agile-Brazil-2009-Conference.aspx
125
Lean e Scrum-Ban
Lean e Scrum-Ban
Lean = Lean Thinking = TPS = Toyota way
Construindo profissionais (building people)
Melhoria contnua
"Eliminar desperdcios [,ean Thin+ing 1996]
Scrum-ban
Trabalho em andamento limitado (limited #$P)
Mais colunas (pronto, reviso, teste, entrega etc...)
Combinao de ambos
Quebra das quebras de paradigmas
Time-box Fluxo contnuo (pontos por sprint tempo de entrega)
Escopo totalmente aberto (no fechado nem durante a sprint)
Desacopla frequncia de planejamento da frequncia de entrega
Permite times de especialistas
Ateno!!!!
Dificilmente um ponto de partida ( mais um ponto a se chegar)
Cuidado para no voltar ao modelo cascata
Referncias (veja tambm: David Anderson)
http://leansoftwareengineering.com/ksse/scrum-ban/
http://www.infoq.com/minibooks/kanban-scrum-minibook (making the most of both)
http://www.leanprimer.com/downloads/lean_primer.pdf
www.limitedwipsociety.org www.kanban101.com
126
Scrum Concluses
Scrum Concluses
O que scrum para vocs?

Comparado com outros mtodos?


?ora do rasil )o rasil )o universo #6
127
Tpicos para discusses finais
Tpicos para discusses finais
Diferenas entre Scrum e XP
Scrum e CMM
Pontos fortes e pontos frgeis
Contratos
Como introduzir na prtica
Concluso
128
Diferenas entre Scrum e XP
Diferenas entre Scrum e XP
XP mais tcnico (programao)
Scr&m mais gerencial (liderana)
XP tem iteraes de 1 ou 2 semanas
Scr&m tem iteraes de 2 a 4 semanas
XP fala de atribuies de diversos profissionais
Scr&m mais cross-functional
XP diz que cliente tem que estar presente
Scr&m diz que cliente tem que estar disponvel
Scr&m prega a flexibilidade mais claramente
Scr&m simplifica personagens (apenas 3)
Scr&m mais concreto (meetings e artefatos)
XP e Scr&m so muito alinhados! Porm:
129
Scrum & CMM
Scrum & CMM
Level 2:
Christ Vriens, "Certifying for CMM Level 2 and SO9001 with
XP@Scrum, May 2002
Ken Schwaber
Primeira experincia ruim:
Sistema web para um grande banco (CMM level 3, desde 94), 1997
Encontro com Mark Paulk, 2002
Descobriu que o SCRUM j era CMM level 2 quase 3
2003, fez pequenos ajustes para tornar SCRUM em CMM level 3
Jeff Sutherland
Se tornou especialista em CMM (em conjunto com o Scrum)
Certificou algumas empresas em CMM com Scrum
J Sutherland et al., "Scrum and CMM Level 5: The Magic Potion for
Code Warriors, 2008
Brasileiros:
"Mapping CMM Project Management Process Areas to SCRUM
Practices, Ana Sofia et al., 2007
David Anderson
Lean, Kaban etc. (veja link em videos)
130
Scrum e CMM nvel 5 segundo o
Scrum e CMM nvel 5 segundo o
artigo do Jeff Sutherland
artigo do Jeff Sutherland

12 dicas de como fazer

Falhas no CMM corrigidas pelo Scrum

Respeita processos mas ignora pessoas

No foca em problemas organizacionais internos

Associa erradamente qualidade de produto qualidade


do processo.
(O que um produto de sucesso?)

No business-oriented

gnora a infra-estrutura tcnica e organizacional

Foca em eficincia interna e ignora a competitividade


externa
131
Pontos fortes e pontos fracos
Pontos fortes e pontos fracos
dos mtodos geis
dos mtodos geis
132
Pontos Fortes dos Mtodos geis
Pontos Fortes dos Mtodos geis

Listar:

Quais so as caractersticas do Scrum que


motivam os desenvolvedores?

Argumentos para convencer um cliente a


adotar mtodos geis?
133
Pontos frgeis dos Mtodos geis
Pontos frgeis dos Mtodos geis

Para times tecnicamente experientes

Ken Schwaber diz que funciona com idiotas

Processo exigente, trabalha-se muito

Google compensa com o esquema 80-20

Pode tornar o ambiente mais srio (?)

Perda de flexibilidade no horrio

Stand-up meetings

Perde-se parcialmente a privacidade

Todos sabem o que voc est fazendo

Pair-programming
134
Pontos frgeis dos Mtodos geis
Pontos frgeis dos Mtodos geis

Pode-se encontrar resistncia com outros


setores no geis

H situaes que no cabem mudanas


de requisitos constantes

Ex: robo em Marte da Nasa

"No Silver Bullet, Frederick Brooks


Ateno! Cuidado com os falsos mitos
negativos:

S serve para grupos pequenos (FALSO)

No gera documentao (FALSO)

Menos qualidade ( exatamente o NVERSO)


135
Pontos frgeis dos Mtodos geis
Pontos frgeis dos Mtodos geis

Como tratar especialistas em equipes multidisciplinares?

Como fazer o contrato (preo e escopo)?

Como auditar e certificar? ((obs: falar sobre CSM))

Como lidar com pessoas em mais de um projeto?

Como avaliar indivduos se o trabalho em grupo?


Conciliar metas individuais e metas em grupo
Valorizar metas individuais relativas atuao de grupo
("indi'idual teamwor+)
O time pode avaliar cada membro

Os que planejavam e atribuam tarefas esto preparados


para deixar com que outros o faam? E vice-versa?

Esto todos preparados/maduros para que os problemas


fiquem em evidncia?

Como contratar novas pessoas?


136
Contratos
Contratos
Problema:
Convencional (no gil):
Fixed price / fixed date ou . "Latest date / maximum cost
Solues:
Contratos com perodos menores
Subdiviso de contratao
Subcontratos trimestrais
Contrato por hora de consultoria
(pessoa/ms e no hora)
Esquema Tecgraf
J existem diversos modelos de contrato prontos
Link em portugus:
http://www.infoq.com/br/news/2008/10/agile-contracts-working-group
http://www.erudio.com.br/downloads/doc_download-42.html
137
Contratos
Contratos

Segundo Kent Beck (XP):

Contrato com Escopo Negocivel


Fixa tempo, custo e qualidade
nteressante para modelo "servio
Pode ser uma seqncia de pequenos contratos

Pay-per-use
Melhor opo

Se levado ao extremo:
Cada story tem por objetivo aumentar o uso

Pay-per-release ruim pois ope interesses:


Cliente quer poucas releases ($)
Sw House quer muitas releases com o mnimo de incremento

Modelo de Subscrio:
Sw comprado (ou alugado) mensalmente
PF
138
Mtodos geis aplicados no mundo
Mtodos geis aplicados no mundo

Empresas

Google- Qa2oo- Microsoft, Electronic Arts, High


Moon Studios, Lockheed Martin, Philips, Siemens,
5okia, Capital One, BB7, ntuit, Nielsen Media, First
American Real Estate, BMC Software, pswitch, John
Deere, Lexis Nexis, Sabre, Salesforce.com, )ime
3arner, Turner Broadcasting, Oce..

Finlndia tem a maior incidncia de SM,


por que?

Em 2007, 120 mil times de Scrum no mundo


(estimado por Jeff Sutherland)
139
Mtodos geis aplicados no mundo
Mtodos geis aplicados no mundo
Standish Group, 2006
Mtodos geis so um dos responsveis para o aumento recente do
nmero de projetos com sucesso
http://www.infoq.com/articles/nterview-Johnson-Standish-CHAOS
Forrester nstitute, 2007
17% das empresas norte-americanas e europias esto utilizando o
desenvolvimento gil.
29% conhecem e acompanham o assunto.
PM.org, dezembro 2008
gile Software !e'elopment Pro8ect" Enable daptability and Succe""
"Agile pode ser a cura para projetos de desenvolvimento de software
atrasados e com alto custo
"Estamos convencidos que Agile pode atacar qualquer domnio de problema,
to logo a cultura do negcio esteja pronta para trabalhar com ela
http://www.pmi.org/passport/dec08
http://blog.adsystems.com.br/2008/12/30/oficializada-a-comunidade-pmi-agile/
PM Network, january 2009
The incredible "hrin+ing team
http9::www;pmnetwor+-digital;com:pmnetwor+:/00<0=open:
http://blogs.pmi.org/blog/a_chief_executives_perspective_on_project_management/2009/03
140
Mtodos geis aplicados no Brasil
Mtodos geis aplicados no Brasil

Globo.com
Ago 2008: 17 times geis
Dez 2009: http://gc.blog.br/2009/12/04/2-anos-de-scrum-e-agile-na-globo-com-e-
algumas-coisas-que-eu-aprendi/
Tecgraf
Desde incio de 2007

Ci&T ("The 2008 Global Outsourcing 100)


100 pessoas em projetos geis
11 sprints/ms (set 2008)
Petrobras
SNEP: 20 times
TC-Engenharia, CENPES, UN-RN, outras iniciativas
MEC, Aeronutica.
http://blog.seatecnologia.com.br/articles/2008/05/29/experiencias-%C3%81geis-na-sea-episodio-
i-%E2%80%93-a-ameaca-fantasma

O Globo capa Boa Chance 15 fev 2009


http://oglobo.globo.com/economia/seubolso/mat/2009/02/14/metodo-que-prega-metas-de-curto-
prazo-integracao-de-equipe-ganha-mercado-754418293.asp
141
ntroduzindo Mtodos geis
ntroduzindo Mtodos geis
Como introduzir:
Ken Schwaber (e Kent Beck):
Democraticamente (bottom-up)
Jeff Sutherland:
nstitucionalmente (top-down)
Mike Cohn:
Ambos os sentidos so interessantes
Mark Striebeck at Google:
"Ssh! We Are Adding a Process..., 2006
142
Por onde comear?
Por onde comear?

Segundo Mark Stribeck (Google)


("Ssh! We are adding a process)
1.Selected backlog
Burn-down chart
Estimativa em pontos
Ciclo semanal
2.Daily meetings
3.Foco em completar stories
Reduo do "doing

Conceito de "done
1.Retrospectiva
2.SCRUM
Product backlog
Meetings

etc
9urndown charts facilitaram
a visuali(a/5o do progresso e
nos deu um senso de satis$
fa/5o e reali(a/5o;:
&ngenheiro de software
9@evou um tempo at* eu ter
confian/a no urndown e
aceitar o questionamento sobre
o meu feeling de quando uma
funcionalidade estaria pronta;:
9:der t.cnico
143
Por onde comear?
Por onde comear?

Segundo Kent Beck (XP)

Pode-se comear por qualquer prtica primria


Escolha de acordo com o problema a ser enfrentado

Comece por voc mesmo (weekly)

Use XP ((ou outro mtodo gil)) para conduzir as


mudanas
Espcie de meta-processo

Verifique a melhoria

(Bottom-up)

Cuidado, certas prticas no tm efeito se no forem


combinadas com outras. Ex:
shared code (ou collective code ownership)
no sem Continuous ntegration e "pair programming

Cuidado ao tentar todas as prticas ao mesmo tempo.


144
Por onde comear?
Por onde comear?

Segundo Ken Schwaber (Scrum)

Project Quickstart: 2 dias


Ensinando Scrum
Preparando a primeira sprint
(Talvez s mesmo o Ken consiga isso)

O mnimo necessrio para comear o scrum:


Viso do projeto (descrevendo seus benefcios)
Product Backlog

O Scrum s compreendido depois de praticado

Primeiras sprints cuidam mais da infra-estrutura


Especialmente em projetos com muitos membros
Mas a sprint sempre tem feature" para o usurio
145
Por onde comear?
Por onde comear?

Problemas enfrentados pelo Jeff (top-down)


Resistncia
organizacional
Apatia gerencial
Treinamento
inadequado
Falta de suporte
dos parceiros
Falta de regras
formais
Problemas ao
implementar Agile
146
Por onde comear?
Por onde comear?

The Nokia test:


dentifica se um time est fazendo SCRUM
Dividido em dois grupos de perguntas
teratividade:
teraes com time-box fixo?
teraes menores que 4 (6) semanas?
terao s comea com a lista completa do "a fazer (Sel. Backlog)?
terao termina com um software funcionando?
terao contm testes?

Scruming:
P.O. bem definido (uma nica pessoa)?
Existe um Product Backlog (P.B.) priorizado?
O P.B. est estimado pelo time?
H um burn-down chart ao longo da sprint ?
A equipe auto-organizada (no h a presena de autoridade)?
147
ntroduzindo Mtodos geis
ntroduzindo Mtodos geis

Cenrio ideal para comear:

Grupo pequeno (<10)

Projeto complexo

Time interessado

Product owner disponvel

Perfil ideal das empresas:

Empresas que valorizam o bem-estar dos funcionrios

Com algum grau de informalidade

Respeitem as horas de trabalho dos funcionrios

Pequenas ou grandes empresas (de software)


148
Por onde comear?
Por onde comear?

O mnimo:

Processo iterativo com melhoria contnua

Sem perder tempo no incio:

Primeiros passos:
Product backlog aproximado
Alguns story points
(Quanto tempo para fazer isso?)

Selected backlog

To do; doing; done

Stand-up meeting

Sprint 0, menos comprometida (uma transio)

Sprints curtas no incio

Feedback inicial mais rpido

Reunies de transio tambm podem ser mais curtas


149
Por onde comear?
Por onde comear?

Exemplo de "torie" para a sprint 0

"nstalar sistema de versionamento"

"nstalar integrao contnua"


Configurar Hudson

"nstalar teste unitrio"

"Realizar mini-palestra (2h) sobre Scrum"

"Gerar o product backlog no excel

"Pontuar as stories do P.B."

"Gerar um modelo inicial de componentes/camadas

"Criar o task-board"

"Criar a aplicao (login ou algo mais.)


janela aparece com boto de fechar

"Entregar alguma funcionalidade


150
Outras Dicas
Outras Dicas

Desenvolvimento :
Software, Hardware e PEOPLEWARE

Busque a melhoria contnua e no a perfeio no processo


O timo inimigo do bom
Faa nesta sprint melhor que na sprint passada
Priorize as mudanas de maior ganho com o menor esforo

No perca tempo discutindo o processo (experimente!)

Continuar estudando/pesquisando para catalisar mudanas

No se esquea do suporte tcnico (e do XP)

Entender os princpios mais importante do que conhecer


bem algum dos mtodos geis
Lembre-se, voc deve adapt-los seguindo os princpios
Condies para adaptao:
O time j tem que ter testado segundo o Scrum original
O time tem que querer mudar (por unanimidade)
O SM tem que estar de acordo
151
Futuro dos mtodos geis
Futuro dos mtodos geis
Melhoria contnua Evoluo dos mtodos geis ?
Manifesto gil, 2001 9 anos depois ?
Rixas:
XP x Scrum
Scrum x Lean/Kanban
CMM ou no
Outras sentenas alm do manifesto:
Repeatable Results over Repeatable Processes
craftsmanship over execution
http://pmdoi.org/
Manife"to for Software *raft"man"hip
"Manifesto para o software artesanal (?)
http://manifesto.softwarecraftsmanship.org/main
>ot only wor+ing "oftware- but al"o well-crafted software
>ot only re"ponding to change- but al"o steadily adding %alue
>ot only indi'idual" and interaction"- but al"o a community of professionals
>ot only cu"tomer collaboration- but al"o producti%e partnerships
152
Futuro dos mtodos geis
Futuro dos mtodos geis

R %oss6vel &sar S7:EM %ara o&tros desenvolvimentos


1&e n#o seAam software@
SScr&m o&tside itT
Essa pergunta me ocorre desde o meu curso de CSM

TMCE 2008:
"Agile PDM-implementation, Jrg Feldhusen, Frederik Bungert,
Manuel Lwer
Caso de uso na engenharia mecnica

De fato as outras indstrias tm "inveja da flexibilidade em


desenvolvimento de software.
E a engenharia de software estava na contra-mo
Na rea de estratgia:
Aprender com os programadores
Should You Build Strategy Like You Build Software?
"Estratgia adaptativa da indstria de sw pode estender-se a todos os
setores
http://sloanreview.mit.edu/smr/issue/2008/spring/15/
http://www.hsm.com.br/hsmmanagement/edicoes/numero_70/A12N70N003.php?
153
Dinmica final
Dinmica final

Bloquinho de post-it individual

Reviso cronlogica sucinta

Em silncio

Escrever (psicografar) sem parar por 5 minutos

Palavras, ou frases curtssimas

WWW
What went well?
Discutir em conjunto (agrupando post-it)

What went wrong? (what can be imporved?)


Discutir em conjunto (agrupando post-it)

Ateno! No se censurem durante a psicografia


(se for o caso, censurar durante a discusso)

Sem acusaes pessoais (no blame)

Lista concreta de aes


154
Referncias
Referncias

Sobre o SCRUM (by Ken Schwaber)


Ken Schwaber e
Mike Beedle
Sobre a prtica do
Scrum
Ken Schwaber
mplementao do
Scrum em diversas
empresas
Quase um romance
Ken Schwaber
pretendo ler
155
Referncias
Referncias

De graa na nternet
"Scrum and XP from the trenches
Experincia de uso do Scrum em uma empresa na Sucia
Recomendvel para quem est comeando com o Scrum
Verso brasileira:
http://www.infoq.com/br/minibooks/scrum-xp-from-the-trenches
"Agile Project Management
Sobre liderana gil
"The new Methodology, Martin Fowler
Jeff-Sutherland-7-Ways-To-Fail-With-Scrum.pdf
http://www.crisp.se/henrik.kniberg/presentations/agile2008/10-
ways-to-screw-up-with-scrum-and-xp.pdf

Patterns of Agile Practice Adoption, Amr Elssamadisy, nfoQ

Scrum, patterns. "Organizational patterns and agility, James O.


Coplien, 2004
156
Referncias
Referncias

Outras:

Nonaka e Takeuchi:

"The New New Product Development Game, 1986


"The knowledge-creating company, 1995, 8000 referncias (+
4000 para verso japonesa)

Jeff Sutherland:
"Scrum and CMM Level 5: The Magic Potion for Code
Warriors, 2008
"Agile development: lessons learned from the first scrum, 2004
Sobre implementao do Scrum em 1993

Livros do Mike Cohn:


Agile Estimating and Planning

User Stories Applied


157
Links
Links
Mike Cohn's Blog:
http://blog.mountaingoatsoftware.com/
Tirinhas Scrum:
http://www.implementingscrum.com/
http://defunctscrum.blogspot.com/
Scrum Aliance
www;scrumalliance;org
Agile Manifesto
http://agilemanifesto.org/
Lean software development
http://www.poppendieck.com/
Ken Schwaber
www.controlchaos.com
Boris Gloger
http://www.sprint-it.com/
http://scrum4you.wordpress.com/
158
Links em portugus
Links em portugus

Viso gil

www;%isaoagil;com

Alexandre Magno
Primeiro Certified Scrum Trainer brasileiro
http://amagno.blogspot.com/

Alisson Vale
http://www.phidelis.com.br/blogs/alissonvale/

Vincius Teles

http://www.improveit.com.br/empresa/vinicius

mprove it
http://www.improveit.com.br

Teamware
http://www.teamware.com.br/
159
Videos online (1/2)
Videos online (1/2)
Jeff Sutherland
(2007)
http://www.infoq.com/interviews/jeff-sutherland-scrum-rules
(2006)
http://www.infoq.com/presentations/The-Roots-of-Scrum
(google tech talks)
http://www.youtube.com/watch?v=9y10Jvruc_Q
http://www.youtube.com/watch?v=Ht2xcJrAXo
Ken Schwaber
(Google tech talks)
http://www.youtube.com/watch?v=yNPeTn8fpo#
http://www.infoq.com/presentations/agile-quality-canary-coalmine
Mike Cohn
http://www.youtube.com/watch?v=FkWglejhJZM
http://www.youtube.com/watch?v=fb9Rzyi8b90
http://www.infoq.com/presentations/prioritizing-your-product-backlog-mike-cohn
David Anderson (Futuro dos MA, Lean/Kanban, CMM)
http://www.infoq.com/presentations/Agile-Directions-David-Anderson
160
Videos online (2/2)
Videos online (2/2)
Agile testing (Google tech talks)
http://www.youtube.com/watch?v=bqrOnECCSg&feature=related
Scott Ambler
http://www.infoq.com/news/2007/05/ambler-role-of-testing
http://www.infoq.com/presentations/Agile-in-Practice-Scott-Ambler
Mtodos geis em larga escala
http://www.infoq.com/presentations/5-Success-Factors-Michael-Mah
Modelagem gil na TDC 2008
so 5 vdeos em portugus
(em especial XP do Vinicius Teles)
http://visaoagil.wordpress.com/author/vmteles/
Tese de mestrado na USP
http://agileandart.blogspot.com/2009/05/master-thesis-defense-video.html
Dica de padres de como introduzir novos conceitos em empresas
161
Agradecimentos
Agradecimentos

Petrobras

Turma do curso de formao

smael e Luciano

PUC-Rio

CCE

Departamento de nformtica

Tecgraf (Gattass, Alberto)

Siviep (Brje e Thiago)

Outros SM

Pessoais.

Contribuiram indiretamente apresentao:

Boris Gloger, Mike Cohn, TeamWare, Sprintit,


Google Tech Talks, Clark & Vizdos, Paulo Caroli
162
Bye-bye velhos tempos
Bye-bye velhos tempos
- )5o precisamos mais de voc2 'A, achei um cookbook sobre 'crum.
- Aas isto * um livro de receitas de como co(inhar um porco;
- >oc2 nunca ouviu falar em ger2ncia autorit<ria e motiva/5o pelo medo7
Done;
Done;

Vous aimerez peut-être aussi