Continuación foro semana 3
Los Casos de Uso y UML
A partir de la
publicación del libro de Jacobson, gran parte de los más reconocidos
especialistas en métodos Orientados a Objetos coincidieron en considerar a los
casos de uso como una excelente forma de especificar el comportamiento externo
de un sistema. De esta forma, la notación de los casos de uso fue incorporada
al lenguaje estándar de modelado UML –Unified Modelling Language– propuesto por
Ivar Jacobson, James Rumbaugh y Grady Booch, tres de los precursores de las
metodologías de Análisis y Diseño Orientado a Objetos, y avalado por las
principales empresas que desarrollan software en el mundo. UML va en camino de
convertirse en un estándar para modelado de sistemas de software de amplia
difusión.
A pesar de ser
considerada una técnica de Análisis Orientado a Objetos, es importante destacar
que los casos de uso poco tienen que ver con entender a un sistema como un
conjunto de objetos que interactúan, que es la premisa básica del análisis
orientado a objetos “clásico”. En este sentido, el éxito de los casos de
uso no hace más que dar la razón al análisis estructurado, que propone que la
mejor forma de empezar a entender un sistema es a partir de los servicios o
funciones que ofrece a su entorno, independientemente de los objetos que
interactúan dentro del sistema para proveerlos.
Como era de esperar,
es probable que en el futuro los métodos de análisis y diseño que prevalezcan
hayan adoptado las principales ventajas de todos los métodos disponibles en la
actualidad –estructurados, métodos formales, métodos orientados a objetos,
etc.–
De lo dicho
anteriormente podemos concluir que los casos de uso son independientes del
método de diseño que se utilice, y por lo tanto del método de programación.
Luego de documentar los requerimientos de un sistema con casos de uso, se puede
diseñar un sistema “estructurado” (manteniendo una separación entre datos y
funciones), o un sistema Orientado a Objetos, sin que la técnica sea de mayor o
menor utilidad en alguno de los dos casos. Esto da más flexibilidad al método,
y probablemente contribuya a su éxito.
Casos de Uso
Un Caso de Uso
especifica una manera de usar un sistema sin revelar la estructura interna del
mismo. Los Casos de Uso han sido adoptados casi universalmente para capturar
los requerimientos de los sistemas de software; sin embargo, los Casos de Uso
son más que una herramienta de especificación ya que tienen una gran influencia
sobre todas las fases del proceso de desarrollo tales como el diseño, la
implementación y las pruebas del sistema. En general, los procesos de
desarrollo de software son iterativos e incrementales, repitiendo una serie de
iteraciones sobre el ciclo de vida de un sistema. Cada iteración consiste de un
paso a través de las etapas de requerimientos, análisis, diseño, implementación
y prueba. El resultado de cada iteración representa un incremento sobre cada
uno de los modelos construidos en las etapas anteriores. Los distintos Casos de
Uso que se definen a lo largo del proceso de desarrollo no son independientes
sino que es posible establecer relaciones de dependencia entre ellos. Las principales
relaciones consideradas por UML son:
·
Generalización
·
Inclusión
·
Extensión
El conjunto completo
de Casos de Uso especifica todas las posibles maneras en las que el sistema puede
ser usado, sin revelar cómo esto es implementado por el sistema. Esto hace a
los Casos de Uso apropiados para definir requerimientos funcionales en etapas
tempranas del desarrollo del sistema, donde la estructura interna de éste aún
no fue definida. Debido a que los Casos de Uso no se manejan con elementos
dentro del sistema sino que se centran en cómo el sistema es percibido desde el
exterior, son útiles en discusiones con usuarios finales para asegurar que hay
concordancia con los requerimientos realizados sobre el sistema, sobre sus
limitaciones, etc. Más precisamente, un Caso de Uso especifica un conjunto de
secuencias completas de acciones que el sistema puede realizar. Cada secuencia
es iniciada por un usuario del sistema. Esto incluye la interacción entre el
sistema y su entorno como también la respuesta del sistema a estas
interacciones.
Referencias:
Relaciones entre
Casos de Uso en el Unified Modeling Language
Roxana S. Giandin
Claudia F. Pons
REVISTA COLOMBIANA
DE COMPUTACIÓN
Volumen 1, número 1 Págs. 73-90
No hay comentarios.:
Publicar un comentario