A combinação entre iterativo e incremental é a melhor maneira de economizar esforço e dinheiro com funcionalidades que não são necessárias, além daquelas que não se rentabilizam, ou, seriam supérfluas. Por isso eu sou um verdadeiro entusiasta dos Métodos Ágeis.

Revisitar um tópico do trabalho que precisa ser melhorado, voltar as atenções para aperfeiçoar uma funcionalidade ou agregar uma solução… nada disso é retrabalho — é parte do jogo!

Acredito no desenvolvimento de software em uma abordagem Iterativo Incremental. A melhor definição para isso vem de uma citação de Patton, J., colocada em um artigo de sua autoria, em 2008, onde o mesmo diz:

“Não sei o que eu quero, mas eu sei como consegui-lo.”

Iterativo Incremental: Economizando tempo e dinheiro com o que não é realmente importante

As reais necessidades com relação à funcionalidade, rentabilidade, prioridades e verba para o desenvolvimento de um sistema se validam à medida em que ele é utilizado. A decisão de executar a próxima etapa, aperfeiçoar um ponto já existente, abortar ou parar temporariamente também mudam conforme os problemas vão surgindo e o cenário macro se mostrando.

Ao iniciar um projeto podemos ter a visão geral de onde desejamos chegar. Uma visão do todo, ainda como um esboço, que será dividido em pequenas partes a serem trabalhadas. É como uma grande tela que, antes mesmo de ter qualquer pincelada de tinta, possui uma ideia do desenho completo, das suas proporções, assim como do material que precisará dispor.

Quando trabalhamos de forma Iterativo Incremental, sabemos como chegar ao resultado do quadro finalizado, emoldurado e pronto para ser pendurado em uma galeria de arte. Mas, não fazemos tudo de uma só vez. Primeiro, visualizamos o todo e, em seguida, seguimos por partes.

Como o modo Iterativo Incremental pode apoiar seus projetos

Durante o Planejamento Ágil, a equipe divide os requisitos em prioridades para definir o que será feito e quando. E por que isso é feito? Listo abaixo alguns dos principais motivos:

1 – A ideia pode parecer muito boa, mas, somente saberemos se realmente é assim quando esta for colocada em prática. A iteração permite passar da ideia vaga para a realização, ainda que em uma versão mais básica. Assim, visamos um mínimo produto viável e o colocamos para rodar. Com a prioridade máxima funcional, validamos.
Assim, conseguimos verificar se o restante é realmente necessário. Caso o retorno previsto não justifique o investimento, é possível parar, tendo gasto somente o necessário para chegar até ali. Logo, torna-se possível economizar o que seria suficiente para desenvolver o projeto em sua totalidade.

2 – Possibilidade de receber dos clientes os feedbacks sobre problemas realmente importantes para o usuário. Assim, não trabalhamos com suposições, e evitamos colocar esforços em pontos que não sejam realmente prioritários.

3 – Flexibilidade para alocar os esforços de desenvolvimento onde for mais estratégico para a empresa no presente momento. Desta forma, permite que, depois que todos os itens de maior importância e valor forem concluídos, a equipe possa abrir uma nova frente de trabalho, sem prejuízos ao projeto anterior.
No momento em que for interessante, é possível voltar e adicionar recursos completamente novos do ponto em que o projeto parou.

Conclusões

Iterativo Incremental é o perfeito equilíbrio entre andamento sustentável e aperfeiçoamento constante. Iterativo fala de inovação e da abertura constante para novas funcionalidades a qualquer momento. O sistema está funcional, porém, nunca está concluído. Isto porque melhorar sempre é uma possibilidade!

Porém, se trabalharmos apenas de modo iterativo, corremos o risco de cair no preciosismo, o que nos levará a seguir inovando em um único ponto enquanto outro necessita de atenção básica mais urgente. É aí que o método incremental traz a sustentabilidade — passando bloco a bloco pelas fases do projeto, prezando que essas estejam funcionais. É o ponto de equilíbrio entre estar funcional, olhar para o que importa e se manter inovador.