En un sistema software, los requisitos… siempre van a cambiar

¿Alguien ha hablado y estudiado el problema de intentar especificar en requisitos, papel, un sistema software antes de empezar? ¿Qué si se ha tratado el tema? ¡Desde hace años!

El caso es que el otro día, en el vídeo, del canal de YouTube, de «el cliente me pide REQUISITOS ?… ¿Puedo usar metodologías ÁGILES?» (que te dejo abajo), se me ocurrió tocar este tema, y citar algunos de los estudios (muy viejunos) de referencia sobre el tema de la variabilidad de los requisitos (como se les llamaba antiguamente, que aplicaría igual para otros formatos)

Ver este vídeo en YouTube.

Y citaba en el vídeo los principios de Humphrey, Ziv y Wegner al respecto… ¡y mucha gente me ha pedido las referencias a los anteriores! ¡bien! Que feliz me hace que queráis seguir con rigor profundizando en este tema, así ahi vamos…

Por cierto, antes de seguir, que se me olvida, aun te puedes apuntar al «Agile Transformation Program», hasta el 3 de mayo aún, con un 20% de descuento, podrás acceder a TODO el CONTENIDO ya publicado y al que aún queda por publicar hasta el 15 de junio, podrás acceder a los directos grabados y asistir a los que aún quedan (toda la info aquí).

Vamos, vamos…

Principio de la incertidumbre en los requisitos de Humphrey

«For a new software system, the requirements will not be completely known until after the users have used it» (para un nuevo sistema de software, los requisitos no se conocerán por completo hasta que los usuarios lo hayan utilizado). Este ese el que se conoce como «principio de la incertidumbre en los requisitos».

La anterior frase viene del libro, el clásico, «A Discipline for Software Engineering» (el libro es del año 95, como referencia, Scrum aparece en el mundo del software en el 95 y eXtreme Programing en el 96) de Watts Humphrey. Para los que buscáis referencias, también podéis encontrar un artículo que comenta esa afirmación, y alguna más de Humphrey aquí.

Principio de incertidumbre de Ziv 

También por aquellas fechas, año 96 en este caso, Hadar Ziv y Debra J. Richardson publican un artículo (que puedes a día de hoy descargar gratuitamente en Research Gate) en el que presentan el «principio de incertidumbre en ingeniería del software», que cuenta, entre otros, que la incertidumbre es innata al software. 

Lema de Wegner

Continuamos en los 90, año 97, Wegner publica en ACM «Why interaction is more powerful than algorithms» (aquí el enlace), donde aparece el Lema de Wegner: no es posible especificar completamente un sistema interactivo. 

Terminando

El tema es antiguo como el solo, lleva estudiándose por lo menos desde hace más de 30 años, hay multiples referencias, no sólo las anteriores, ha sido base de los ciclos de vida Ágiles, de los iterativos, etc. Así que, no seáis antiguos, no os empeñéis en cerrar en un papel que se espera que haga el software  pretender que lo que ahi hay puesto no vaya a cambiar.

Javier Garzás

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Ir arriba