Não conviva com janelas quebradas

August 29, 2010

Um dos conselhos mais interessantes que li no The Pragmatic Programmers é esse: Não conviva com janelas quebradas.

O que isso quer dizer? Bom, os autores se apoiaram em um artigo (WK82) que cita a seguinte experiência: Em 1969, Philip Zimbardo, um psicólogo de Stanford, deixou um automovel não emplacado no Bronx, e outro equivalente em Palo Alto – California. O primeiro começou a ser atacado por vandalos em 10 minutos, e em 24 horas havia sido completamente depenado. Já o carro de Palo Alto permaneceu intocado por uma semana, quando então Zimbardo quebrou uma parte do carro com uma marreta e após isso, em poucas horas o veículo havia sido totalmente destruído por vandalos.

Enquanto algo está sendo bem cuidado, as pessoas tendem a mante-lo assim por que sabem que existe alguem preocupado com a integridade daquilo. Mas à partir do momento em que veem algum problema que foi deixado de lado (uma janela quebrada), as pessoas começam a se preocupar menos por que tem a impressão de que ninguem está se importando.

Em desenvolvimento de software, isso tambem vale. Uma janela quebrada seria as famosas gambiarras, uma falha na arquitetura, na documentação, um ponto do projeto que não se adequa aos padrões estabelecidos pela equipe, um bug, uma decisão tomada equivocadamente no passado, um problema de usabilidade, etc. Se a equipe enxerga um problema e não o resolve imediatamente, outros passarão a ter menos cuidado com o projeto e consequentemente outros problemas aparecerão.

One Response to “Não conviva com janelas quebradas”

  1. Muito interessante a experiência e o paralelo com software. Realmente, quando assumimos o trabalho em um software ruim, nossa preocupação em em fazer um trabalho de qualidade é muito menor do que quando o software é bem feito. Curioso é que a despreocupação com a qualidade do software se torna pior ao longo do tempo – e não de forma linear, mas exponencial. Os prazos, muitas vezes, tornam um desafio manter a qualidade do software, mas mesmo que uma implementação ou manutenção não possa ser feita “direito”, uma hora é preciso parar para “arrumar a casa”. Softwares ruins são vingativos, se os deixarmos assim, um dia eles vão cobrar o preço da baixa qualidade.

Leave a Reply

Spam protection by WP Captcha-Free