Pages Menu
Categories Menu

Posted by on Abr 7, 2011 in buenas prácticas, calidad, mantenimiento | 3 comments

Entropía software: controla la calidad o el software se hará con el tiempo menos mantenible

Entropía – Medida del desorden de un sistema. (RAE)

“La entropía de un sistema [software] (su desestructuración) incrementa con el tiempo, salvo que se desarrollen trabajos específicos orientados a reducirla”. (1976, Belady and Lehman)

El software es ajeno a la mayoría de las leyes físicas. Por ello, es difícil construir software de la manera en que se construyen productos físicos. Ajeno a la mayoría de las leyes de la física, salvo a una… la entropía, o cantidad de desorden de un sistema.

La entropía software nos dice que con el tiempo el software pierde su estructura, se hace más complejo, menos mantenible. Normalmente decimos que un software que se usa será modificado, y que, salvo tratamiento específico, software que se modifica se hace más complejo. Hay también quien asocia la entropía software con la dejadez a la hora de resolver pequeños problemas de calidad, los cuales, poco a poco, van incrementando y quedan fuera de control. Incluso hay quien compara este efecto con la teoría criminológica de las “Ventanas Rotas”, que habla de que todo comienza con una simple ventana rota (mala práctica software, ejemplo, ejemplo), que se deja pasar, mostrando una imagen de abandono. Pronto otra ventana se rompe. Y esa imagen de dejadez incita a otros a pintar algún grafiti. Algún grafiti más. Otras ventanas. Algunos okupas. Y finalmente un edificio en ruinas fuera de control.

Aunque, quien sabe, quizás, como escribía Asimov, la entropía del software sólo pueda retrasarse, y sea inevitable…

– Puede haber alguna forma de revertir la entropía. Tenemos que preguntárselo a la Galáctica AC.

– ¿Es posible revertir la entropía?

– Los dos sabemos que la entropía no puede revertirse. No puedes volver a convertir el humo y las cenizas en un árbol.

Javier Garzás

Javier Garzás

Ph.D. en informática, Postdoctorado en la Carnegie Mellon (EE.UU) e Ingeniero en Informática.

Primera vez que me tocó hacer una gestión Ágil en una empresa... año 2001. Desde entonces he trabajado en, o para, más de 90. Y he formado a más de 2000 alumnos.

También soy profe de la Universidad Rey Juan Carlos.
Javier Garzás

3 Comments

  1. Lo mismo la respuesta está en “La última pregunta” de Asimov 😉 y sea tan sencillo como:

    – ¡Hagase la calidad!

    – Y la calidad se hizo…

    Interesante post.

    Un saludo

  2. Hay ahora una nueva tecnología que está promoviendo Microsoft (aunque ya existía pero de una manera más light) llamada MVC 3 (ha salido hace unos meses), y es una nueva manera de desarrollar aplicaciones Web de una manera que son fáciles de mantener y escalar. Por debajo lleva código ASP.Net y C#, y la verdad que es increíble verla funcionando. Se automatiza la generación de código (diferente de MDA) y se separa en Modelos, Vistas y Controladores (de ahí el nombre MVC). Ahora estamos en la oficina recibiendo un curso del tema, cuando tenga una aplicación hecha le hago unas pruebas de calidad y os cuento =)

  3. La entropía se aleja invirtiendo energía en el sistema, que restablezca el orden. En nueva york practicaron la “tolerancia cero” para combatir el efecto de “ventana rota” y consiguieron un importante descenso de la criminalidad, creo que a partir del 2006.
    En software, debemos aplicar refactorizaciones constantes, para mantener a raya la entropía.

Post a Reply

Tu dirección de correo electrónico no será publicada.

Share This