Toda aplicación tiene una cantidad inherente e irreducible de complejidad.
La cuestión es quién deberá anfrentarse a ella: el desarrollador o el usuario.
El tiempo invertido por un desarrollador para reducir la complejidad percibida por el usuario de la aplicación, suele ser menor que el tiempo total ahorrado por el conjunto de usuarios de la aplicación. Sin embargo, llegado a un cierto límite, el tiempo que es necesario invertir por los desarrolladores puede no compensar la mejora en la productividad obtenida. Se debe encontrar el equilibrio.
Esta ley, también conocida como ley de conservación de la complejidad, fue formulada por el científico computacional Larry Tesler a mediados de la década de 1980, mientras trabajaba para la mítica Xerox PARC.
Si quieres conocer más detalles sobre esta ley, puedes partir de su artículo en la Wikipedia.