Imagem retirada de http://vidadeprogramador.com.br/

Olá Pessoal,

Acompanho o blog Vida de Programador e recentemente vi a "tirinha" que exponho nesse post. Resolvi discutir sobre ela pois é uma situação que já vivenciei algumas vezes em projetos e, acredito ser uma situação infelizmente normal na maioria dos projetos. Quem nunca se deparou com essa situação, onde em um momento algo é de extrema urgência e, na semana seguinte, isso perde prioridade, seja por motivos ligados ao negócio ou por arrependimento do cliente, que é o caso da história citada?

Nesse post irei discutir sobre como o Scrum pode evitar que situações desse gênero ocorram nos projetos.

Nessa história, temos 2 problemas distintos: 

  1. Não há um planejamento do que deve ser feito, as funcionalidades não são implementadas de forma incremental.
  2. O programador trabalha mais tempo que o ideal para conseguir terminar algo.

Sobre o primeiro problema, como já vimos em outros posts do blog, o Scrum prega que as funcionalidades de um projeto sejam implementadas das mais prioritárias para as menos prioritárias. Dessa forma, deve-se sempre desenvolver a princinpal funcionalidade antes, de preferência da maneira mais simples possível, de forma a entregar o quanto antes a funcionalidade para o cliente. Assim, além de agregar valor rapidamente, o cliente pode validar, em um ambiente real, qual a real necessidade da funcionalidade, e se ele realmente precisa da mesma e de suas variações.

Se esse projeto da "tirinha" fosse conduzido com o Scrum, essa situação não deveria ser comum, pois sempre iremos implementar o básico, e, se necessário, agregar as complexidades necessárias. 

Sobre o segundo problema, o Scrum (não apenas o Scrum, mas qualquer metodologia ágil) também prega que "Processos ágeis promovem o desenvolvimento sustentável. Os patrocinadores, desenvolvedores e usuários devem ser capazes de manter um ritmo constante indefinidamente". Dessa forma, segundo Xéxeo em seu post "Mantenha o Ritmo – de 9 às 5", a prática de se trabalhar mais do que o combinado é desgastante, o que pode gerar trabalho mal feito.

Como com o Scrum o trabalho é dividido em sprints curtas, a equipe pode aprender qual o seu ritmo de trabalho, pois a cada 2 semanas há um feedback se a equipe estimou bem ou mal as histórias, deixando transparente para todos os envolvidos no projeto qual o ritmo ideal de trabalho da equipe. Dessa forma, se todos estiverem seguindo corretamente o Scrum, saberão que não podem exigir da equipe mais do que ela consegue fazer.

Finalizando, percebemos que a cena descrita na "tirinha", apesar de parecer comum a todos nós, devem ser evitada, e um dos meios de se evitá-la é com a adoção de Métodos Ágeis, como o Scrum.

E você, já passou por situação semelhante? Compartilhe conosco sua história para melhorarmos nossa discussão.