21 Leyes de Programación


Como cualquier informático con experiencia sabe, hay leyes no escritas que rigen el desarrollo del software. Sin embargo, no hay sanciones por violar estas leyes; más bien, a menudo hay una recompensa. A continuación se presentan 21 leyes de Programación de Ordenadores:

  • Cualquier programa, una vez desplegado, ya es obsoleto.
  • Es más fácil cambiar la especificación para ajustarse al programa que a la inversa.
  • Si un programa es útil, tendrá que ser cambiado.
  • Si un programa no sirve para nada, tendrá que ser documentado.
  • El 10% de código de un programa desarrollado jamás será ejecutado.
  • El Software se expande hasta consumir todos los recursos disponibles.
  • Cualquier programa importante contiene como mínimo un error.
  • La probabilidad de una demostración impecable es inversamente proporcional al número de personas que ven, elevado a la potencia de la cantidad de dinero en juego.
  • Hasta que un programa haya estado en producción durante al menos seis meses se descubrirá su error más perjudicial.
  • Errores indetectables son infinitos, en contraste con los errores detectables, que por definición son limitados.
  • El esfuerzo requerido para corregir un error aumenta exponencialmente con el tiempo.
  • La complejidad del programa crece hasta que excede las capacidades del programador que debe mantenerlo.
  • Cualquier código de su propia autoría que no haya mirado en meses podría haber sido escrito por cualquier otra persona.
  • Dentro de cada pequeño programa hay un gran programa luchando por salir.
  • Cuanto antes empieces a programar una aplicación, más tiempo tomará.
  • Un proyecto descuidadamente previsto tiene tres veces más tiempo que lo esperado; un proyecto cuidadosamente planeado sólo toma el doble de tiempo.
  • La adición de los programadores a un proyecto con desvíos hace que se desvíe más aún.
  • Un programa nunca está por debajo del 90% de avance, y nunca por encima del 95% de avance.
  • Si automatiza un desastre, se obtiene un desastre automatizado.
  • Construya un programa que hasta un tonto pueda utilizar, y sólo un tonto querrá usarlo.
  • Los usuarios realmente no saben lo que quieren en un programa hasta que lo utilizan.

Deja un comentario