A última publicação do Fabricio Vargas falando sobre o "Juramento de Não-Lealdade" levantou certos comentários em algumas listas que divulgamos, que me fizeram pensar por que em uma área puramente de exatas como a nossa existem tantos "religiosos" e "fanáticos".
Em se tratando de religião, eu já não consigo entender muito bem por que muitas pessoas não respeitam uma fé diferente da sua. Com isso, cria-se uma briga entre os dois lados que nunca vai chegar a lugar nenhum, enquanto Deus, Alá, Buda ou Shiva não aparecerem diante de todos esclarecendo os fatos. Briga essa que às vezes gera mais discussão do que a própria religião.
Ainda em termos de religião, posso até dizer que é esse tipo de discussão é compreensível (ainda que eu não consiga entender). Mas como explicar esse tipo de comportamento no setor de informática? Por que muitas pessoas não aceitam que as diferentes tecnologias e metodologias podem coexistir e, com isso, obter-se o melhor de cada uma? Isso só traz prejuízo aos "fiéis" dessas muitas "religiões", das quais podemos citar os Javaistas, Linuxistas, Agilistas, MSistas, Anti-MSistas - dentre centenas de outras. Porém, vamos focar nos religiosos Agilistas, ou que prefiro chamar, Pseudo-Agilistas, aqueles aos quais o juramento de Alistair Cockburn tenta dar um fim.
Não nego que as Metodologias Ágeis são boas em muitos cenários, talvez até mesmo na maioria deles, mas daí a dizer que Waterfall, CMMI, RUP ou qualquer outra técnica seja inaceitável e sempre ruim, existe uma barreira muito grande. Existem projetos de todos os tipos e nem sempre é possível seguir uma metodologia X ou Y. Por exemplo, o Governo Brasileiro não aceita bem a ideia de um processo Ágil. Em um caso desses, você provavelmente terá que se adequar à realidade do cliente e adaptar alguns dos seus processos.
Basicamente, o importante é fazer o melhor para o seu projeto e não ter que se preocupar em ser um "pecador" porque usou um Gráfico de Gantt, por exemplo. Afinal qual é o objetivo maior, ser fiel a determinada metodologia ou o sucesso do projeto?
Algumas pessoas podem responder que não são religiosas, mas que Waterfall é ruim sempre e correr dele é o melhor para o projeto. Primeiro gostaria de destacar que nem eu, nem ninguém defende que Waterfall é bom sempre. Há muitos anos essa metodologia praticamente não é mais utilizada pela maioria. Mas daí fechar os olhos e dizer que é ruim sempre é um comportamento que só entendi um pouco melhor após ler na Wikipedia sobre Fanatismo.
Além disso, vale lembrar que não estamos fazendo um paralelismo apenas entre Waterfall e Ágil, existem inúmeras formas de organizar um processo incremental além dessas duas, como as já citadas CMMI e RUP, por exemplo. A questão não é nenhuma delas em específico, mas sim olhar pra uma técnica qualquer e extrair dela o que mais agregar valor ao seu projeto.
A exemplo dos Fariseus, que se dedicaram exclusivamente ao estudo da Torá, criticando veemente todo o resto, sobretudo o cristianismo, vejo muitas pessoas se dedicando apenas a estudar Agilidade, sem colocá-la realmente em prática. Se começarmos a reparar, vamos ver que muitos dos "Religiosos Agilistas" não possuem cases sobre suas teorias para mostrar, ou são cases específicos para uma determinada realidade. Dedicam-se a especular sobre o sucesso do que acreditam, criticar os insucessos do que existe e ficar especulando como resolver problemas que nem sequer existem em sua realidade, chegando às vezes a soluções praticamente impossíveis de serem aplicadas no mundo real. Não citarei exemplos aqui, já que o objetivo não é atacar ninguém, mas sim mostrar que metodologias e tecnologias servem como referência, cabe a você decidir quando e como usá-las.
Gostaria de deixar claro que sei que as Metodologias Ágeis, sem dúvida, trouxeram inúmeros benefícios para os projetos atuais, porém não podemos esquecer que o PMBOK ou o CMMI, por exemplo, fizeram o mesmo quando surgiram. E da mesma forma que o Ágil (e qualquer outra metodologia ou técnica que existe ou vier a existir), necessitaram de adaptações em cada projeto que foram aplicados.
Ágil resolve muitos problemas que Waterfall não resolve bem? Sem dúvida que sim, mas obviamente não todos. Por exemplo, em um dos nossos projetos tivemos grande liberdade para usar Agilidade, porém após um tempo notamos certa dificuldade em gerar visibilidade do andamento do projeto para a diretoria do cliente, por não estar ligada diretamente ao projeto e não ter a sensação de progresso gerada, por exemplo, com os Sprints. Nesse caso, tivemos que adaptar, e a solução foi gerar alguns artefatos do PMBOK. Para mais detalhes, não deixe de ler este artigo do Marcelo Costa, que cita exatamente esse case.
Portanto a sugestão que deixo é: use Ágil, CMMI, PMBOK, Java, .NET ou o que for, mas esteja antenado o máximo que puder e decida você com sua equipe qual a mais adequada, ou as mais adequadas, a serem usadas, e faça o melhor para o seu projeto, sem se preocupar se algum teórico vai lhe chamar de "pecador". Ninguém sabe mais sobre seu projeto que você e sua equipe. Estude, conheça, teste e utilize da forma que achar melhor.











7 Comentários
Qual a sua opinião?