1
resposta

Feedback e retrabalho

Boa noite a todos!

O exemplo da sandália de garrafa pet utilizado na aula é muito interessante para projetar um problema recorrente que ocorre em projetos ágeis em software. O feedback dado pelo cliente provoca mudanças de prioridade e de fluxo que buscam atender momentaneamente aquela "nova demanda". Entretanto, por estamos "mergulhados" em uma sprint, muitas vezes não observamos o cenário completo (muito menos o cliente consegue ver isso), e terminamos por criar uma solução que logo adiante precisa ser desfeita. Na prática, observo muito retrabalho em projetos que vão absorvendo os feedbacks indiscriminadamente. Nesse sentido, lanço 2 questionamentos:

1) O feedback não deveria ser controlado? Não teríamos que, de alguma forma, "educar" o cliente mostrando para ele que esse feedback traz consequencias? E como fazer isso?

2) Desse modo, não seria muito importante um ajuste adequado do documento de visão inicial (e do backlog inicial), observando o produto como um todo em um nível de detalhamento suficiente, que nos dê condições de analisar impactos de feedbacks futuros?

Esses questionamentos surgem pois, na prática, observando os projetos ágeis, é nítido o volume de retrabalho causado pelos feedbacks absorvidos nas sprints. Muitas vezes, há a necessidade de verdadeiras reengenharias para tratar o impacto de uma mudança futura. Um exemplo aproveitando o caso da construção da casa utilizado na aula: imagina que quando fomos fazer a garagem, descobrimos que o cliente pediu a janela do quarto que fica voltada para a garagem, obrigando ele a perder a vista e a boa ventilação. Desse modo, temos que fechar a janela ao fazer a garagem. Mas aí o quarto ficou sem janela. E eu descubro que ele não tem parede livre para ter uma janela. Isso me obriga a quebrar a cozinha para reduzir o tamanho de modo a liberar um vão para por uma janela (ao menos um basculante).

Obrigado!

1 resposta

Oi, Junier! Tudo bem?

No ciclo ágil é comum a prática de troca de feedbacks entre os membros e com o cliente. Essa dinâmica faz com que tenhamos atualizações mais precisas sobre qual é a dor principal do cliente naquele momento. Antes de uma sprint iniciar, é feito um alinhamento na cerimônia de planejamento na qual o/a Product Owner explana sobre quais as dores do cliente e a partir disso discute-se a prototipação das soluções a serem atacadas inicialmente. Após esse ‘start’, os feedbacks que virão do cliente serão feitos de modo a resolver seu principal problema naquele momento e agregar mais valor ao projeto/produto. Na situação do curso, percebe-se que não houve um retrabalho, o que houve foi uma repriorização das necessidades do cliente, que já não eram mais as mesmas desde que o problema inicial começou. Muito provavelmente, caso o cliente continuasse progredindo com a sua chinela, chegaria a um protótipo bem mais elaborado, provavelmente ela não seria mais feita de garrafa pet. Essa “primeira versão” do que é entregue é o que chamamos de Mínimo Produto Viável (MVP) e a partir dela fazemos os incrementos, os quais serão trabalhados nas sprints posteriores.

Sobre o seu segundo questionamento, fazer um ajuste com esse nível de detalhamento se assemelha a gestão de projetos mais relacionada com o Modelo Cascata. Nesse sentido, é muito complicado para o cliente ter certeza de todas as necessidades existentes no projeto, por isso, os modelos ágeis fomentam a entrega de valor gradual, na medida em que o projeto vai se desenvolvendo.

Para evitar o retrabalho, uma boa maneira é ajustar a definição de pronto, assim é possível ser mais assertivo no processo e sugestões de melhorias entram num backlog de priorização.

Espero ter ajudado e bons estudos!