Esta frase, de "Beautiful Boy", mostra que John Lennon sabia muito bem que é inútil tentar planejar nossas vidas em cada mínimo detalhe. No máximo poderíamos ter um plano básico, do tipo que diria que faculdade cursar ou quando seria a melhor hora para financiar uma casa bacana. A vida é muitíssimo mais poderosa que os nossos planos, várias vezes modificando o rumo que pensávamos ser o mais correto a tomar.
Uma oportunidade de emprego inesperada, um filho não planejado, um romance casual que se transforma em casamento, um hobby que vira profissão, tudo pode acontecer num instante e nos desviar de nossa "infalível" rota, tão meticulosamente traçada...
Uma oportunidade de emprego inesperada, um filho não planejado, um romance casual que se transforma em casamento, um hobby que vira profissão, tudo pode acontecer num instante e nos desviar de nossa "infalível" rota, tão meticulosamente traçada...
Sim, o controle é uma ilusão!
Mas o que Lennon não sabia é que essa ideia poderosa também é válida para o mundo do software. Há um processo de desenvolvimento que foca exageradamente na ideia do "plano perfeito", no detalhamento precoce da solução antes de qualquer codificação, de modo a termos maior "controle" sobre o que será desenvolvido, após extenso período de reflexão e análise.
Esse processo ficou conhecido como waterfall (cascata) e é representado graficamente assim:
Parece fazer sentido, não? Planejar tudo antes e implentar com segurança depois... Entretanto, o tempo mostrou que a adoção desse processo foi toda baseada em boatos e suposições, em vez de evidências claras da eficácia do método. As pessoas adotaram essa visão achando que era a "coisa certa a fazer" e não mediram os resultados que estavam obtendo. Conclusão: vários projetos engordando as estatísticas já obesas de fracassos empresariais em TI.
Contrapondo essa visão surgiram os métodos iterativos e evolutivos. RUP, OpenUP, Scrum, eXtreme Programming, são alguns exemplos de métodos que adotam o modulo iterativo de desenvolvimento. Em vez de fases passamos a trabalhar com pequenas iterações curtas (2-4 semanas, em média), agindo de forma adaptativa e sempre produzindo software com qualidade de release final. A cada dia, inspecionamos o trabalho para termos a certeza de que o objetivo da iteração será alcançado.
Contrapondo essa visão surgiram os métodos iterativos e evolutivos. RUP, OpenUP, Scrum, eXtreme Programming, são alguns exemplos de métodos que adotam o modulo iterativo de desenvolvimento. Em vez de fases passamos a trabalhar com pequenas iterações curtas (2-4 semanas, em média), agindo de forma adaptativa e sempre produzindo software com qualidade de release final. A cada dia, inspecionamos o trabalho para termos a certeza de que o objetivo da iteração será alcançado.
Esse modelo, graficamente, pode ser representado (resumidamente) da seguinte forma:
Cada release da iteração é software potencialmente entregável. Passou pelas etapas de análise, planejamento, construção e testes e está pronto para ser integrado às outras partes já produzidas do sistema. Os insights adquiridos são debatidos nas retrospectivas e servem de baseline para as próximas iterações, um processo que se retro-alimenta todo o tempo.
O Cliente, presente em todas as etapas do projeto - em pessoa ou como um papel específico, ajuda a refinar o entendimento do negócio, apoiando para que o desenvolvimento agregue o máximo valor à empresa e acelere o ROI. O feedback é obtido cedo e ajuda a corrigir a rota para que esteja de acordo com as necessidades dos stakeholders.
O Cliente, presente em todas as etapas do projeto - em pessoa ou como um papel específico, ajuda a refinar o entendimento do negócio, apoiando para que o desenvolvimento agregue o máximo valor à empresa e acelere o ROI. O feedback é obtido cedo e ajuda a corrigir a rota para que esteja de acordo com as necessidades dos stakeholders.
Esse fluxo se repete por várias vezes, fazendo a equipe evoluir e aprender com erros e acertos...
É provável que você hoje trabalhe em uma empresa que utilize o modelo waterfall de desenvolvimento. Caso os projetos estejam sendo entregues no prazo, satisfazendo os clientes e gerando grande valor ao negócio não há nenhuma razão para mudar. Caso contrário, considere a adoção do modelo iterativo de desenvolvimento na empresa em que você trabalha.
Seja uma empresa privada ou empresa pública certamente haverá desafios para mudar a cultura como um todo. Não desanime, pois o processo é lento. É necessário tempo para que as pessoas - clientes e fornecedores - aprendam a trabalhar de uma maneira totalmente diferente do que estão acostumadas.
Seja uma empresa privada ou empresa pública certamente haverá desafios para mudar a cultura como um todo. Não desanime, pois o processo é lento. É necessário tempo para que as pessoas - clientes e fornecedores - aprendam a trabalhar de uma maneira totalmente diferente do que estão acostumadas.
Be patient!
"All you need is love."
Nenhum comentário:
Postar um comentário