O processo iterativo é uma dessas palavras que, assim como Agile, nos faz pensar automaticamente nas equipes de engenharia. No entanto, a maior parte das equipes faz iterações de um jeito ou de outro. O uso do método iterativo pode ajudar a reduzir os riscos, administrar a eficiência e abordar os problemas de uma maneira mais flexível e dinâmica.
Se você quer experimentar o processo iterativo, este artigo foi escrito para você. Vamos explorar a definição do processo iterativo, assim como a implementação do processo na sua equipe.
É a prática da elaboração, refinamento e melhoria de um projeto, produto ou iniciativa. As equipes que usam o processo de desenvolvimento iterativo criam, testam e fazem revisões até que estejam satisfeitas com o resultado final. É possível pensar no processo iterativo como uma metodologia de tentativa e erro que aproxima o seu projeto da meta final.
Os processos iterativos são uma parte fundamental das metodologias lean, ou otimizadas, e da gestão de projetos Agile, podendo ser implementados por qualquer equipe, ágil ou não. Durante o processo iterativo, você deve aprimorar continuamente o design, produto ou projeto até que você e a equipe estejam satisfeitos com o entregável final do projeto.
No processo não iterativo, você e a sua equipe devem trabalhar em conjunto para desenvolver o produto final sem necessariamente experimentar novas ideias ao longo do caminho. Em geral, os processos não iterativos requerem mais tempo para a fase de conceitualização e criação, de modo que tudo funcione como pretendido durante a fase de testes.
O processo não iterativo mais comum é o de cascata. No modelo de cascata, você e a equipe definirão as fases do projeto antes do seu início e cada fase só começa após a conclusão total da fase anterior. A definição dos requisitos e a alocação dos recursos é geralmente realizada antes do início do dos trabalhos, e a equipe evita ao máximo alterar o planejamento do projeto.
Por exemplo, imagine que você esteja trabalhando com uma agência de design na criação de um e-book. Em primeiro lugar, é necessário fornecer todo o texto do e-book. Em seguida, a agência de design usará o texto para a criação dos designs. Finalmente, a sua equipe irá editar o e-book criado para se certificar de que tudo está no lugar correto. Esse é um exemplo do modelo de cascata porque cada fase depende da anterior, isto é, não é possível editar o e-book antes da conclusão do seu design.
Dependendo da equipe e do tipo de projetos que executa, os processos não iterativos podem ser desafiadores porque a equipe não dispõe de tempo para realizar iterações e melhorias de forma contínua. Devido à existência de tantos fatores desconhecidos e elementos de surpresa na engenharia, as equipes deste setor em particular tendem a usar processos iterativos em vez dos não iterativos, mas todas as equipes podem tirar proveito deles.
A maior parte das equipes usa os termos design incremental e processo iterativo como se fossem equivalentes e, na prática, esses processos costumam andar lado a lado. No entanto, há uma diferença entre eles.
Em um processo iterativo, a equipe trabalha no refinamento e nas melhorias do projeto com base no feedback ou em novas informações. O principal aspecto do processo iterativo é a tentativa e erro: o projeto se torna melhor ao longo do tempo como resultado destas alterações.
No design incremental, às vezes chamado de desenvolvimento incremental, os novos recursos são adicionados e produtos ou serviços melhores são construídos sobre a base da primeira versão ou entregável. A execução de um processo de design incremental requer que as equipes produzam, de maneira proposital, uma versão básica do entregável final do projeto para lançá-lo o mais rápido possível (assim como o antigo mantra do Facebook: mova-se rápido e quebre as coisas). Então, a equipe realizará iterações e melhorias na versão inicial ao adicionar mais recursos do que os que havia na versão inicial. O processo continuará até que o entregável tenha todas as funcionalidades necessárias.
A maioria das equipes que usam processos iterativos também usa o processo incremental e vice-versa. Processos iterativos eficazes também são incrementais, portanto é possível melhorar continuamente o entregável original. Um bom design incremental também é iterativo, pois requer a capacidade de responder rapidamente aos comentários dos clientes e mudar radicalmente de direção, se necessário.
Experimente a Asana para a gestão de projetosMuitas equipes de engenharia usam processos iterativos no desenvolvimento de novos recursos, na implementação de correções de bugs ou em testes A/B de novas estratégias. Frequentemente, uma equipe de engenharia irá criar algumas iterações que considera ter o mesmo potencial, e então irá testá-las com os usuários. Os pontos críticos e os sucessos serão registrados para que, em seguida, a equipe continue o desenvolvimento da iteração que apresentar o melhor resultado.
Você pode se surpreender ao descobrir que grande parte do desenvolvimento de produtos é muito iterativo. Em qualquer tecnologia pessoal que você tiver adquirido para si ou para outra pessoa, provavelmente houve uma versão anterior àquela que você comprou, e talvez uma versão posterior. Se pensarmos sobre o desenvolvimento dos telefones celulares ao longo dos anos, a redução de tamanho das caixas de som para maior portabilidade, ou mesmo o modo como as geladeiras de uma mesma marca mudaram para se adaptar às novas necessidades das famílias, todos esses requerem processos iterativos.
Algumas equipes de marketing adotam processos iterativos com maior frequência que outras. Mas, até certo ponto, boa parte do marketing é iterativa. Por exemplo, algumas equipes de marketing testam diferentes textos publicitários para avaliar qual resultará em melhor envolvimento ou enviam duas versões de uma newsletter por e-mail com o objetivo de comparar as taxas de cliques. Ou uma equipe de marketing de marca pode usar processos de design iterativos para identificar as imagens mais adequadas para o seu público-alvo.
Embora a maior parte do trabalho de atendimento direto ao cliente de uma equipe de vendas não seja iterativo, algumas de suas tarefas podem se beneficiar dos processos iterativos. Por exemplo, uma equipe de vendas pode adotar uma abordagem iterativa para o envio de e-mails frios ou de prospecção. Ela pode pedir para que os representantes enviem alguns e-mails com versões diferentes de linhas de assunto e depois analisar o retorno de cada um. Em seguida, a equipe pode utilizar aqueles com o melhor resultado.
O processo iterativo pode ser útil durante o ciclo de vida de um projeto. Durante as fases de um processo iterativo, as metas e requisitos servirão como ponto de partida do projeto. Em seguida, a equipe irá realizar testes, prototipagem e iterações para alcançar o melhor resultado possível. Em seguida, veremos como.
Durante esta etapa do processo iterativo, o planejamento do projeto será definido e alinhado aos objetivos gerais do projeto. Este é o estágio onde os principais requisitos devem ser delineados, isto é, o que precisa acontecer para que o projeto tenha êxito. Sem esta etapa, você corre o risco de realizar iterações mas não atingir as metas.
Durante esta etapa, você e a equipe irão se concentrar nas necessidades do negócio e nos requisitos técnicos do projeto. Se a etapa 1 foi o processo de delineamento das metas, a etapa 2 é aquela onde um design é criado por meio de um debate criativo, com o objetivo de ajudá-los a atingir essas metas.
Durante a terceira etapa, a equipe irá criar a primeira iteração do entregável do projeto. Esta iteração será retroalimentada pela sua análise e design, com objetivo de alcançar o objetivo principal do projeto. O nível de detalhe e o tempo gasto nesta iteração dependem de cada projeto.
Após realizar a iteração, ela será testada do modo que fizer mais sentido para o projeto. Se você está trabalhando na melhoria de uma página da Web, por exemplo, pode ser útil realizar um teste A/B para compará-la à página atual. Se você está criando um novo produto ou recurso, considere a realização de testes de funcionalidade com um grupo de clientes em potencial.
Além dos testes, você também deve manter contato com os outros participantes do projeto e pedir-lhes que avaliem a iteração e enviem comentários.
Leia: o que é o ciclo Planejar, Realizar, Verificar e Agir (PDCA, em inglês)Após os testes, a equipe deverá avaliar o sucesso da iteração e alinhá-la a qualquer aspecto que precisa ser alterado. A iteração irá atingir os objetivos do projeto? Porquê, ou por que não? Caso algo deva ser alterado, é possível reiniciar o processo iterativo voltando à etapa 2 para criar a próxima iteração. Tenha em mente que o seu planejamento e as metas iniciais devem permanecer os mesmos em todas as iterações. Continue o desenvolvimento com base na iteração anterior até obter um entregável satisfatório.
Caso você reinicie o processo iterativo, certifique-se de que todos continuem alinhados às metas do projeto. O processo iterativo pode levar semanas ou meses, dependendo do número de iterações realizadas. Concentrar a iteração nos objetivos do projeto sempre que o processo iterativo for reiniciado pode ajudar a assegurar que você não perca o rumo traçado.
O modelo iterativo não é adequado para todas as equipes ou projetos. A seguir, descrevemos as principais vantagens e desvantagens do processo iterativo para a sua equipe.
Vantagens:
Aumento da eficiência. Ao empregar a tentativa e erro, o processo iterativo frequentemente ajuda a atingir o resultado desejado com maior rapidez do que num processo não iterativo.
Aumento da colaboração. Em vez de trabalhar com planos e especificações predefinidos que também exigem muito tempo para serem criados, a equipe estará trabalhando em conjunto de forma ativa.
Aumento da capacidade de adaptação. Ao aprender coisas novas durante as fases de implementação e testes, é possível melhorar a iteração para atingir as metas, mesmo que isso signifique fazer algo que era inesperado no início do processo iterativo.
Melhor relação de custo vs. eficácia. Se for necessário alterar o escopo do projeto, serão perdidos somente um mínimo de tempo e esforço despendidos no processo.
Capacidade de trabalho em paralelo. Ao contrário das metodologias não iterativas, como o método de cascata, as iterações não dependem necessariamente do trabalho que vem antes delas. Os membros da equipe podem trabalhar paralelamente em diversos elementos do projeto, o que pode encurtar o cronograma total.
Menor risco de projeto. No processo iterativo, os riscos são identificados e trabalhados durante cada iteração. Em vez de solucionar grandes riscos no início e no final do projeto, você estará trabalhando de forma contínua para a solução de riscos de baixo nível.
Feedback de usuários mais confiável. Com uma iteração com a qual os usuários possam interagir ou ver, eles poderão fornecer comentários incrementais sobre o que funciona bem ou não.
Desvantagens:
Aumento do risco de desvio do escopo. A natureza de tentativa e erro do processo iterativo pode desviar o desenvolvimento do projeto de maneira inesperada e que extrapola o escopo original do projeto.
Planejamento e requisitos rígidos. O primeiro passo do processo iterativo é a definição dos requisitos do projeto. A alteração destes requisitos durante o processo iterativo pode atrapalhar o fluxo do trabalho e resultar em iterações que não se adequam ao propósito do projeto.
Cronogramas vagos. A criação, teste e revisão das iterações pelos membros da equipe, até que se atinja uma solução satisfatória, não permite uma definição clara do cronograma iterativo. Além disso, os testes para os diversos incrementos podem variar em duração, o que também impacta o cronograma geral do processo iterativo.
Em última análise, todas as equipes podem aprender alguma coisa com o processo iterativo. Quando possível, use uma mentalidade de tentativa e erro ao abordar o trabalho. Em caso de dúvidas, aposte na flexibilidade e na colaboração, e sempre procure melhorar continuamente no seu trabalho, quer opte por implementar ou não o método iterativo.
Para mais dicas, leia o nosso artigo sobre 25 habilidades essenciais à gestão de projetos.
Experimente a Asana gratuitamente