Tracking Subjetivo

O tracker é conhecido como a consciência do time. É ele quem mostra números, gráficos, tabelas. Os dados que o tracker coleta podem ser objetivos (ex: número total de testes, total de horas estimadas por release, estimativas versus realizações) ou subjetivos (ex: nível de satisfação da equipe, qualidade do código. Coloco aqui algumas fotos de tracking subjetivo, tiradas de cartazes feitos durante o segundo semestre de 2007 no Projeto Borboleta

A primeira delas (clique na imagem para vê-la em tamanho grande) é do “humorômetro” da equipe. Continue reading

A poesia de programar

Em dezembro de 2002, Richard Gabriel, um grande nome da Computação e ex-engenheiro da Sun, falou sobre a semelhança entre programar computadores e escrever poesias. Como é possível que essas duas atividades, aparentemente pertencentes a áreas tão distintas, tenham coisas em comum?

O atividade de escrever software deve ser vista como uma atividade criativa. Afinal, software interessante de se fazer é software que nunca foi feito. Essa atividade não pode ser comparada à de criar pontes, por exemplo. Nós construímos pontes há mais de 2000 anos. O software mais antigo não deve ter mais de 50 anos! Mesmo utilizando boas ferramentas, um programador está quase sempre Continue reading

Tracker no Pabx Virtual

Durante 9 meses de trabalho no projeto do Pabx Virtual da LocaWeb, coletamos informações estatísticas do código do projeto. Baseado nessas informações tirei algumas conclusões.
No gráfico à direita vemos
claramente que o projeto tinha inicialmente muito código duplicado. Depois de várias Refatorações, foram removidas duplicações e o código ficou muito mais limpo e fácil de alterar.

No gráfico seguinte Continue reading

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). Continue reading

Testabilidade e Injeção de Dependência

Estudando a nossa aplicação do PabxVirtual, percebemos que a forma como a aplicação está desenvolvida impede que criemos testes unitários automatizados em alguns pontos importantes do sistema. Para contornar o problema, adotamos testes de aceitação, como forma de garantir que nosso sistema não falhará. O grande problema destes testes é que quanto apontam algum erro, existe uma grande dificuldade de diagnosticar onde está o erro.
 
Analisando o problema a fundo e depois de uma grande ajuda do Dediana, percebi uma boa sáida para o nosso problema. A solução é usar  Injeção de Dependência. Continue reading

Postagem Inicial

Há algum tempo penso em criar um blog. O principal objetivo é compartilhar neste blog os conhecimentos adquiridos no trabalho, estudos e o que eu chamaria de momentos de arte. Domenico Di Masi chama de ócio criativo o espaço em que esses três elementos se unem: trabalho, estudos e jogos. Eu preferi trocar a palavra jogos pela palavra arte, que está ligada ao lado intuitivo, inconsciente, natural, verdadeiro do ser humano.