Desarrollo de software. Casos de uso III

En muchos casos resultará suficiente con dibujar el diagrama de casos de uso y realizar la descripción de los mismos a través de sus caminos principales y alternativos. Dado que, por regla general, este entregable no es común en los proyectos de desarrollo de software (pese a lo que aporta una vez que se llega a entender su utilidad), podemos estar más que satisfechos con tener este producto con dicho alcance.

Una especificación adicional a los mismos, es la especificación para cada caso de uso de una precondición y una postcondición. Es importante señalar que las mismas están a nivel de caso de uso y no a nivel de sus escenarios (camino principal y caminos alternativos).

Tanto la precondición como postcondición se especifican en lenguaje natural.

¿Qué es una precondición? Es el estado en el que se tiene que encontrar el sistema para que se pueda ejecutar el caso de uso. En muchos casos una precondición coincidirá con parte o con toda la postcondición de otro caso de uso.

¿Qué es un postcondición? Mientras queda claro que todo caso de uso tiene un único estado inicial, un caso de uso puede tener diferentes estados finales, potencialmente, tantos como caminos se definan en el mismo. Por tanto la postcondición de un caso de uso es un listado de todos los posibles estados finales en los que se encuentra el sistema tras la ejecución del caso de uso. Como la definición es en lenguaje natural, en muchos casos se opta por utilizar sentencias condicionales para especificar las condiciones que hacen que el estado final sea uno u otro.

¿Considero imprescindible la definición de precondiciones y postcondiciones? Desde mi punto de vista no lo es, aunque puede ser interesante su uso como elemento de depuración de los casos de uso (te hace pensar qué condiciones son necesarias para que el caso de uso se pueda llevar a cabo y cómo queda el sistema una vez que se haya realizado) y también para facilitar su comprensión.

Deja un comentario