Qual o nosso objetivo?
Criar um pipeline de build?
Criar uma infra de testes automatizados?
Aprender a ser mais ágeis?
Gostaria de compartilhar uma história.
Em 2008 eu estava vivendo na Índia, em Bangalore. Eu começava no trabalho as 8 Am. E fazia yoga diariamente das 6-7:30 em um lugar a 15 km do meu trabalho.
Em 2009 eu tinha uma moto, carteira de habilitação para moto, sabia dirigir no trânsito de Bangalore e conhecia o caminho entre o trabalho e o local de yoga.
Mas qual era o meu objetivo?
Aprender a dirigir moto? Tirar a carteira de habilitação? Dirigir em Bangalore?
Nenhum desses! Meu objetivo era fazer yoga diariamente antes do trabalho e chegar no trabalho relaxado.
Note o final da frase do objetivo: chegar no trabalho relaxado. O meu objetivo não era somente fazer yoga, mas sim fazer yoga e chegar no trabalho relaxado. Afinal de contas não faz sentido fazer yoga e chegar no trabalho estressado.
Fácil de dizer, difícil de implementar. Para estar no local da yoga as 5:30 eu tinha de acordar as 4:50 e pegar uma rickshaw as 5 am. Infelizmente não era certo quando uma rickshaw passaria e era bastante estressante a negociação do preço que teria que pagar pelo translado. Para quem já esteve na Índia sabe que os rickshaw gostam de negociar o preço pela corrida, principalmente de um gringo as 5am. E o mesmo problema acontecia na volta da yoga para o trabalho.
Eu estava conseguindo fazer yoga diariamente, mas chegava ao trabalho estressado após lidar com a incerteza de horário e preço dos rickshaw.
A solução: comprar uma moto, aprender a dirigir moto, tirar carteira de habilitação e aprender a dirigir em Bangalore.
Simples, não?
Ao final de 2009 a solução estava implementada e o objetivo alcançado.
Agora sim eu quero entrar no X da questão: como implementar melhorias no ciclo de desenvolvimento, e ao mesmo tempo realizar entregas com o conhecimento e aparato disponível no momento?
Relembrando, o meu objetivo era fazer yoga diariamente antes do trabalho e chegar no trabalho relaxado.
Segue o histórico do que aconteceu.
- Janeiro 08 – ir para yoga de rickshaw e aprender o caminho
- Fevereiro 08 – alugar uma scooter e ir para yoga de scooter
- Maio 08 – comprar uma moto e treinar a andar de moto na garagem (local sem trânsito)
- Junho 08 – ir e voltar da yoga de moto
- Agosto 08 – retirar a carteira de habilitação (por causa da burocracia isso levou bastante tempo)
- Julho 09 – experiente em dirigir em Bangalore
Note que levei bastante tempo para obter o aparato e a experiência necessária a alcançar o objetivo –fazer yoga diariamente e chegar ao trabalho sem estar estressado. Aprendi a andar de moto na Índia e retirei uma carteira de habilitação. De fato até hoje sigo andando de moto.
Atualmente estamos implementando uma transformação ágil e melhorando o ciclo de desenvolvimento. Sei que vamos melhorar o build pipeline, aprender a criar e manter testes automatizados e a ser mais ágeis na criação e entrega de produtos. Tudo isso serão ótimos resultados. Mas precisamos seguir entregando software de qualidade periodicamente sem estarmos estressados com o ciclo de desenvolvimento.
Nossa situação é parecida , metaforicamente, com o que vivi na Índia. Precisamos de uma carteira de habilitação, subir numa moto e trafegar efetivamente no trânsito deste departamento de TI. Mas isso vai levar algum tempo.
Assim como o meu exemplo, moto e carteira de habilitação são ótimos resultados, mas não o objetivo em si. Vamos focar nas entregas, assim como nas melhorias. Com o tempo vamos aprendendo o caminho, a dirigir nossas motos e até vamos nos certificar que podemos dirigir, mas nunca colocando em risco nossas entregas periódicas.






