Entropia e Desenvolvimento de Software

Entropia é um conceito oriundo da física que trata da quantidade de “desordem” em um sistema. As leis da termodinâmica garantem que o nível entropia do universo tende ao máximo. (Perceba que não sou especialista em física. Logo, as chances de eu haver certa imprecisão aqui são absurdamente altas. Se tiver alguma correção que perceber necessária, me ajudará muito compartilhando com todos nos comentários).

O curioso é que as leis da física parecem se aplicar perfeitamente ao desenvolvimento de software. Ou seja, a tendência, em toda aplicação é que, com o tempo, o nível de desordem aumente. Em outras palavras, apenas manter a qualidade de um software já exige esforço significativo. [tweet]Se não houver “esforço consciente” para manter a qualidade do software (perceba que não falo em melhorias), com o tempo, ela irá piorar. [/tweet]

Em minha experiência, o primeiro movimento para combater a entropia no desenvolvimento do software é a definição do que consideramos ser mais importante. Em seguida, devemos estabelecer de métricas que nos permitam monitorar essa característica. Se valorizamos performance, precisamos ter métricas claras de performance. Consumo de memória? Legibilidade do código? Estabilidade? Segurança? Enfim…

Com métricas bem definidas, precisamos estabelecer uma “rotina de acompanhamento”. Ou seja, precisamos nos certificar de que estamos coletando e observando essas métricas de forma cuidadosa e criteriosa. Aqui, boas ferramentas podem fazer toda a diferença. Embora não me oponha a operações manuais (afinal, manual é melhor que nada), recomendo fortemente que a coleta aconteça de forma automática.

Com o tempo, as métricas vão nos apontar deterioramento. Nesse momento, é hora de fazer alguma revisão para colocar “o projeto nos trilhos” novamente.

Lembra-se: Só melhoramos o que gerenciamos. Só gerenciamos o que medimos.

Posso te ajudar a definir métricas e a selecionar ferramentas. Me contate se precisar.

Compartilhe este insight:

Uma resposta

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Elemar Júnior

Sou fundador e CEO da EximiaCo e atuo como tech trusted advisor ajudando diversas empresas a gerar mais resultados através da tecnologia.

Elemar Júnior

Sou fundador e CEO da EximiaCo e atuo como tech trusted advisor ajudando diversas empresas a gerar mais resultados através da tecnologia.

Mais insights para o seu negócio

Veja mais alguns estudos e reflexões que podem gerar alguns insights para o seu negócio:

This is the first of a series of blog posts sharing some knowledge about how to develop a real-world software...
Há tempos sou questionado e “assediado” quanto a possibilidade de ministrar cursos. Entre os temas mais frequentes estão “Arquitetura de...
In this post, I would like to share my current reading list. If you are reading some of these books,...
Eventualmente, é bom revisitar alguns temas clássicos de ciências da computação. Nesse post, vamos ver como detectar o nodo de...
Write code is not a simple task. It is easy to make mistakes that result in bad performance. The last...
No post anterior, apresentamos o Apache NiFi e entendemos como é possível integrar aplicações através de fluxos de dados nessa...