jueves 2 de agosto de 2007

¿Porque son tan populares los casos de uso?

Nivel: Básico

Durante los últimos 10 años los casos de uso han ganado terreno como una técnica efectiva y preferida para capturar los requerimientos funcionales de un sistema. Por si las dudas, un requerimiento funcional es, en pocas palabras, una tarea que necesitamos que lleve a cabo un sistema, por ejemplo, guardar un pedido, generar un reporte, producir una espada con el balance adecuado entre dureza y ductilidad, etc.

Antes de los casos de uso, la práctica estandarizada para capturar los requerimientos funcionales de un sistema eran las listas de requerimientos. Una lista de requerimientos se ve como una serie de enunciados enlistados que guardan el formato: "El [sistema] debe [tarea encomendada al sistema]". Uno de los problemas con esta aproximación radicaba en que, pasado algún tiempo, existía la posibilidad de que el equipo de desarrollo, o incluso los grupos de decisión, olvidar el contexto en el que se debía incluir la capacidad especificada para el sistema y se daba el fenómeno que describe la frase: "Entiendo el requerimiento, pero ¿en dónde va...?". Esto obliga al equipo de desarrollo a volver con los grupos de decisión para resolver el inconveniente. Imaginemos el siguiente escenario:

Juan: El requerimiento 3437 dice: "El forjador debe sumergir, rápidamente, la espada en el refrigerante para aumentar la dureza, resistencia a esfuerzos y tenacidad de la misma".

Abraham: ¿En qué momento debe sumergir la espada en el agua el forjador? ¿A poco si sumerjo una espada en agua esta se hace más dura?

Juan: Tú sumérgela, eso dice el requerimiento.

Ojalá nuestros amigos la sumerjan después de haberla calentado a aproximadamente 915 grados Celsius, de lo contrario la espada no se va a templar y el resultado de la forja realizada por el forjador en desarrollo no va a ser lo que el cliente espera.

El valor agregado de los casos de uso es que cuentan cuentos o historias que describen una secuencia de tareas que tiene que llevar a cabo un sistema a fin de alcanzar un objetivo deseado y valorado por quien usa esa parte del sistema, es decir, representan los procesos que se le encomiendan al sistema.

En la primera aproximación, es mejor que Juan y Abraham esclarezcan sus dudas respecto al proceso de forjado de la espada, de lo contrario decepcionarán a su cliente. La segunda aproximación reduce de manera sustantiva la probabilidad de que este escenario se presente.

0 comentarios: