5.4
Melhoria Contínua com Retrospectivas . . . . . . . . . . . . . . . . . . 101
5.5
Eliminando Desperdícios com Lean . . . . . . . . . . . . . . . . . . . . 111
5.6
E agora, o que eu faço amanhã? . . . . . . . . . . . . . . . . . . . . . . 114
6
Otimizando o Sistema
117
6.1
A Gestão pode ser Ágil? . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
6.2
Feedback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
6.3
Escalando Ágil com Programas e Portfólios . . . . . . . . . . . . . . . 129
6.4
Formação das Equipes
. . . . . . . . . . . . . . . . . . . . . . . . . . . 130
6.5
Práticas de Aprendizagem . . . . . . . . . . . . . . . . . . . . . . . . . 133
viii
Casa do Código
Sumário
6.6
Hackathons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
6.7
Comunidades de Prática . . . . . . . . . . . . . . . . . . . . . . . . . . 139
6.8
E agora, o que eu faço amanhã? . . . . . . . . . . . . . . . . . . . . . . 141
7
E Agora?
143
8
Apêndice A: Ferramentas de Apoio
145
Bibliografia
151
ix
Capítulo 1
Introdução à Métodos Ágeis
Na semana passada, entrevistei Joana, uma moça que havia passado 8 meses tra-
balhando em um projeto para um grande banco. Ela e sua equipe passaram todo
esse tempo apenas fazendo levantamento de requisitos e documentando suas des-
cobertas, até que descobriram que o problema que o software a ser desenvolvido se
propunha a resolver já havia sido solucionado por uma ferramenta trazida de uma
fusão com outro banco (há dois anos atrás) e já não era mais um problema. O projeto foi cancelado.
O resultado de 8 meses de trabalho de uma equipe, mais o investimento do tempo
de diversos interessados que colaboraram com informações para o projeto se resu-
miu a um bolo de documentação que agora, provavelmente, nunca mais será se-
quer lida por ninguém. Joana estava frustrada com sua última experiência, e prova-
velmente quem quer que estivesse pagando por esse projeto também.
A experiência de Joana não é um caso isolado. Na verdade, muitos e muitos
projetos tiveram e, infelizmente, ainda terão destinos semelhantes a esse. Mas por
quê? Será que há uma forma melhor de gerenciar e desenvolver software que evite
1.1. O Manifesto Ágil
Casa do Código
tanto desperdício? A boa notícia é que há! Métodos ágeis são uma vacina contra o
desperdício.
Por isso, nos últimos anos, os métodos
ágeis vêm ganhando mais e mais popula-
ridade, e grandes empresas como Google, Yahoo!, Microsoft, IBM, Cisco, Symantec
e Siemens os têm utilizado [66]. Mas afinal o que os métodos ágeis trazem de dife-
rente? O que tem despertado tanto interesse nesses grandes players do mercado de
tecnologia? Para compreender melhor, vejamos como tudo começou.
No início da década de 90, no intuito de desburocratizar os processos de de-
senvolvimento de software, novas abordagens chamadas de processos leves, como
Scrum, Extreme Programming (XP), e Feature Driven Development (FDD), para
citar algumas, começaram a emergir, mostrando-se mais bem sucedidas do que ten-
tativas anteriores.
1.1
O Manifesto Ágil
Devido ao grande número de referências a esses processos leves, que emergiam como
resposta aos constantes fracassos de projetos utilizando abordagens tradicionais, em fevereiro de 2001 um grupo de profissionais extraordinários do desenvolvimento de
software reuniu-se em um Resort de Ski em Wasatch Range para discutir melhores
maneiras de desenvolver software. Esse encontro deu origem ao manifesto ágil, uma
declaração com os princípios que regem o desenvolvimento ágil [64]:
2
Casa do Código
Capítulo 1. Introdução à Métodos Ágeis
O Manifesto Ágil
Estamos descobrindo maneiras melhores de desenvolver software,
fazendo-o nós mesmos e ajudando outros a fazê-lo. Através desse tra-
balho, passamos a valorizar:
Indivíduos e a interação entre eles mais que processos e ferra-
mentas;
Software em funcionamento mais que documentação abrangente;
Colaboração com o cliente mais que negociação contratual;
Responder a mudanças mais que seguir um plano.
Mesmo havendo valor nos itens à direita, valorizamos mais os itens à
esquerda.
Além desses 4 valores, o manifesto ágil também é composto por 12 princípios:
Nossa maior prioridade é satisfazer o cliente através da entrega contínua e adi-
antada de software com valor agregado.
Mudanças nos requisitos são bem-vindas, mesmo tardiamente no desenvol-
vimento. Processos ágeis tiram vantagem das mudanças visando vantagem
competitiva para o cliente.
Entregar frequentemente software funcionando, de poucas semanas a poucos
meses, com preferência à menor escala de tempo.
Pessoas de negócio e desenvolvedores devem trabalhar diariamente em con-
junto por todo o projeto.
Construa projetos em torno de indivíduos motivados. Dê a eles o ambiente e
o suporte necessário e confie neles para fazer o trabalho.
O método mais eficiente e eficaz de transmitir informações para e entre uma
equipe de desenvolvimento é através de conversa face a face.