Práticas que vão bem com o plano de iterações

Joca Torres defendeu nesse post algumas vantagens de usar métodos ágeis, do ponto de vista do gerente de produtos. O design incremental e o uso de iterações permite que o cliente veja mais rapidamente aquilo que já está pronto. A partir do momento que o cliente está usando nosso software, ele começa a PAGAR e a ter benefícios (e nós também!).

Porém, do ponto de vista do time de desenvolvimento, existem alguns cuidados que precisam ser tomados para que o software se torne “modificável” para atender as necessidades do cliente. Para entregar funcionalidade de forma incremental, você precisa ter um ambiente de desenvolvimento e uma base de código que facilite e permita essas entregas iterativas.

As práticas de XP são um guia para isso. O gerente de produtos tem muito contato com as práticas de planejamento (histórias, iterações, velocidade etc) mas em software não basta planejar. O código tem que ter alta qualidade e testes (de preferência automatizados). Para se testar, é necessário programar orientado a testes, ou seja, se você começou a fazer um software numa linguagem ou num ambiente que não facilite a criação e manutenção de testes, você está indo no caminho contrário da qualidade e da agilidade. Se você quer acompanhar as mudanças da tecnologia, da vontade do seu cliente e do dia-a-dia dos membros de sua equipe, tenha uma boa base de testes para seu software.

Para escrever bons testes, você precisa ter um design bom e simples. Para transformar seu código legado, obsoleto, em algo testável, você precisa ter bons conhecimentos em Programação Orientada a Objetos e Refatorações.

Quando o time de desenvolvimento é maior do que um time de uma única pessoa, o código será compartilhado. Para diminuir a entropia da comunicação entre pessoas que modificam o mesmo código, você utiliza programação pareada, padronização de código e integração contínua. Além disso, times ágeis não podem ter muito mais do que oito ou dez pessoas.

Resumindo, plano de iterações é parte essencial da agilidade, mas ela só é possível com práticas sustentáveis como testes automatizados, refatorações, integração contínua, propriedade coletiva de código, programação pareada etc.

1 Comment Práticas que vão bem com o plano de iterações

Leave a Reply

Your email address will not be published. Required fields are marked *