Showing posts with label Gestão de projecto. Show all posts
Showing posts with label Gestão de projecto. Show all posts

Thursday, 19 November 2009

Como aumentar a produtividade de uma equipa de programadores?

Esta pergunta foi-me feita à uns dias e depois de pensar um pouco aqui está um conjunto de medidas que podemos tomar para aumentarmos a produtividade de uma equipa de desenvolvimento.

Antes dos passos, devem ler o seguinte post: Quem deve ganhar mais? e passar a dar boas condições às pessoas produtivas.
  1. Implementar a política de Stand up mettings - Este tipo de reuniões podem ser feitas a meio da manhã e serve para aferir sobre o que cada um está a fazer e ainda partilhar entre todos os problemas que estão a ter, as vitórias e ainda promove a interacção entre os membros da equipa.

  2. Criar mecanismos de compilações automáticas (automated build) - quando temos uma equipa extensa onde pessoas diferentes trabalham em áreas diferentes da aplicação é importante termos a certeza que uma alteração não vá estragar outras áreas do código. Agendar compilações de todo o projecto duas ou três vezes por dia não é muito e pode garantir que alguns problemas são resolvidos ainda no processo de desenvolvimento.

  3. Em problemas com alguma dimensão, criar equipas de duas pessoas e implementar o Extreme Programming - Esta medida leva a que o código criticado à medida que é feito e um par de olhos extra é sempre bom para encontrar os bugs da solução.

  4. Criar momentos de Code Review - No mundo da consultoria a rotatividade das pessoas é cada vez maior, pelo que temos que ter a certeza que o código produzido por uma pessoa está de acordo com as regras impostas para o projecto. Existem diversas ferramentas de Code Review, que a cada compilação analisa o código para encontrar erros pontos onde não foram seguidas essas regras. Com regras é mais fácil de ler e entender por qualquer membro da equipa.

  5. Mostrar os progressos no desenvolvimento - Reunir com frequência com a equipa e mostrar que o seu trabalho está a ir a algum lado. Muitas das ferramentas de compilação diárias já elabora relatórios que indicam a produtividade (em linhas de código) de cada pessoa e melhorias nas alterações em termos de execução desse mesmo código.

  6. Tentas mostras demonstrações do produto todos os meses - Uma vez por mês o gestor técnico do projecto deve mostrar a todos como é que o projecto está a correr e fazer uma demonstração das novas funcionalidades implementadas bem como as melhorias e correcções que foram efectuadas. Assim é obrigatório ter o projecto sempre pronto a ser instalado num cliente, e todos os membros da equipa sabem o que está feito e o que ainda ser feito.

  7. Aprendam da fazer Unit Tests - Esta tem sido uma frase muito batida nos últimos dois a três anos, mas, ainda não se fazem testes unitários ao código. É importante e poupa tempo de desenvolvimento.

  8. Exigir da chefia ou da direcção técnica do projecto que esteja vários passos à frente do desenvolvimento - O que acontece é que a chefia técnica fica-se pelo início do projecto e depois quer saber se tudo ficou feito. Esta forma de trabalhar é errada. O acompanhamento deve ser diário.
Um projecto gerido desta forma não tem tempos mortos, em qualquer momento todos sabem o que tem que fazer e o chefe de projecto irá passar despercebido no meio disto. Digo ainda que pode ir de férias que uma equipa gerida desta forma irá conseguir efectuar o seu trabalho na mesma.

Abraços
Paulo Aboim Pinto