XP no Projeto Borboleta

Neste último semestre, participei como coach do Projeto Borboleta, no laboratório de Programação eXtrema do IME-USP. A equipe tinha dez programadores, todos alunos de graduação do curso de Ciência da Computação.

O Borboleta é um projeto que começou a ser desenvolvido em 2004, como trabalho de formatura de alguns alunos do IME. O projeto consiste em uma desenvolver uma aplicação para dispositivos móveis (Palmtops, celulares) que auxilie agentes de saúde no atendimento do programa APD (Apoio a Populações Desfavorecidas). Com o uso desse sistema, os agentes poderão preencher prontuários médicos eletrônicos, consultar estoques de remédios, consultar o histórico médico dos pacientes, tudo isso de forma prática e rápida. Além disso, os dados coletados no atendimento podem ser integrados a um banco de dados que fornecerá estatísticas importantes aos órgãos do sistema de saúde.

Em 2006, também no laboratório de Programação eXtrema do IME, o sistema foi melhorado por uma equipe de seis programadores (eu era um deles). Nesse momento ele estava praticamente pronto para começar a ser usado pelo Centro de Saúde, mas ficamos a um passo de colocá-lo em produção.

Agora, em junho de 2007, acabamos de dar esse passo que faltava. Os dez membros da equipe trabalharam quatro meses, criaram novas funcionalidades para o sistema, corrigiram bugs. Dentro da metodologia XP, a equipe:

  • Aumentou a quantidade de testes automatizados do sistema
  • Refatorou código antigo
  • Criou um ambiente descontraído e comunicativo
  • Fez três iterações, planejando e priorizando conforme as necessidades do cliente

Levando em consideração que a equipe se reunia apenas 5 horas por semana, acredito que avançamos bastante. Porém, não acredito que podemos continuar neste ritmo. O mundo da tecnologia avança numa velocidade muito grande e, comparado com esse avanço, o projeto está lento demais. As nossas maiores dificuldades enfrentadas foram:

  • Problemas constantes com a infra-estrutura do laboratório (rede fora do ar, máquinas sem funcionamento, espaço apertado)
  • O repositório de dados da incubadora fapesp estava constantemente fora do ar, o que impedia a equipe de integrar o código.
  • Muitas faltas (15%). Talvez por não ser um ambiente profissional, talvez pelo fato de a equipe ser muito grande.
  • Entender o código legado, muito confuso e mal documentado (acredito que essa dificuldade permanecerá para a próxima equipe)
  • Aprender a usar a tecnologia em si (J2ME, Java, swing, XML): a maior parte dos alunos nunca tenha tido contato com essas tecnologias e tiveram que usar um bom tempo para aprender a usá-las.


Para que a “Borboleta” voasse de verdade (e ela pode voar), seria necessário que tivéssemos uma equipe com dedicação muito maior. O ideal seria termos pelo menos quatro pessoas com uma dedicação mínima de 20 ou 30 horas por semana. O maior problema de hoje é a descontinuidade do projeto. Durante quatro meses uma equipe trabalha. Depois de algum tempo, outra equipe melhora um pouco o sistema, durante somente mais quatro meses. Só o tempo para que os programadores se familiarizem com o código é de quase dois meses (com a dedicação de 5 horas semanais). Isso sem contar que todos os desenvolvedores são ainda alunos de graduação.

Uma das possíveis soluções para que o projeto Borboleta andasse numa velocidade aceitável seria possuir uma equipe híbrida dedicada, com alguns bons alunos e mais alguns profissionais experientes. Isso seria viável de tivéssemos o apoio de alguma empresa privada.

Tive muitos aprendizados como coach deste projeto. O maior dele foi na difícil tarefa de tentar manter a equipe motivada e produtiva. Existe uma forma intuitiva de saber melhor:

  • Como chamar a atenção sem ofender
  • Como estabelecer prazos e limites sem estressar
  • Como resolver dúvidas técnicas de todos os pares, sem um envolvimento grande com o código
  • Como manter o ambiente agradável, bem humorado e ao mesmo tempo focado no trabalho

Acredito que grande parte desta “forma intuitiva” venha do conhecimento humano que cada um possui. No meu caso, atribuo o aprendizado do lado humano a duas coisas: às minhas vivências com a arte, principalmente no teatro e na música; e à meditação, temas que abordarei em posts futuros.

1 Comment XP no Projeto Borboleta

  1. Fabio

    Daniel,

    Estamos procurando financiamento para ter programadores com maior dedicação ao Borboleta. Mantenha os dedos cruzados para dar sorte! 🙂

Leave a Reply

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