INTRODUCCION
Un caso de uso es una herramienta que sirve para representar la forma como un cliente (Actor) opera con el sistema en desarrollo, además de la forma, tipo y orden en la cual, los elementos interactuan, a estas acciones se les llama operaciones o Casos de uso.
Los casos de uso se utilizan básicamente en el proceso de modelado de sistemas, partiendo de una percepción o perspectiva que nos plantea el paradigma de la orientación a objetos, y en este caso el analisis y diseño orientados a objetos.
Los casos de uso forman parte del Lenguaje Unificado de Modelado UML por sus siglas en ingles (Unified Modeling Languaje) el cual a su vez se compone de muchas otras herramientas, básicamente diagramas como: Diagramas de Clase, Diagramas de Secuencia, Colaboracíón, Transición de Estados, Diagramas de Actividad, Componentes, Deployment, entre otros. Todas ellas usadas a lo largo de las etapas o ciclo de vida del proceso de desarrollo.
La aplicación principal de los casos de uso es en el proceso de análisis y diseño pero de manera particular en la definición de requerimientos del usuario. Es una excelente herramienta de comunicación debido a la sencillez de su elaboración asi como su comprensión. En teoría los usuarios deberían conocer como hacer sus propios casos de uso, pero eso solo es en "teoría".
Un diagrama de casos de uso consta de los siguientes elementos: Actor, Casos de Uso y Relaciones.
Elementos
l Actor:
Una definición previa, es que un Actor es un rol que un usuario juega con respecto al sistema. Es importante destacar el uso de la palabra rol, pues con esto se especifica que un Actor no necesariamente representa a una persona en particular, sino más bien la labor que realiza frente al sistema.Como ejemplo para ilustrar la definición anterior, tenemos el caso de un sistema de ventas en que el rol de Vendedor con respecto al sistema puede ser realizado por un Vendedor o bien por el Jefe de Local.
l Caso de Uso:
Es una operación/tarea específica que se realiza tras una orden de algún agente externo, sea desde una petición de un actor o bien desde la invocación desde otro caso de uso.
l Relaciones:
¡ Asociación. Es el tipo de relación más básica que indica la invocación desde un actor o caso de uso a otra operación (caso de uso). Dicha relación se denota con una flecha simple.
¡ Dependencia o Instanciación. Es una forma muy particular de relación entre clases, en la cual una clase depende de otra, es decir, se instancia (se crea). Dicha relación se denota con una flecha punteada.
¡ Generalización. Este tipo de relación es uno de los más utilizados, cumple una doble función dependiendo de su estereotipo, que puede ser de:
Uso (<
extends. Se recomienda utilizar cuando un caso de uso es similar a otro (características).
uses. Se recomienda utilizar cuando se tiene un conjunto de características que son similares en más de un caso de uso y no se desea mantener copiada la descripción de la característica. De lo anterior cabe mencionar que tiene el mismo paradigma en diseño y modelamiento de clases, en donde esta la duda clásica de usar o heredar.
PASOS PARA MODELAR SISTEMAS A TRAVES DE LOS CASOS DE USO
Si quisieramos aprender a modelar sistemas orientados a objetos por medio de Casos de Uso, ¿cuales serían los pasos a seguir? es decir, ¿existe una forma generalmente aceptada que nos diga el 'como', para realizarlos?
Bien, efectivamente existe, pero tampoco no es un dogma, son solo guias generales. Dichos pasos son:
- Identificar actores. Los actores son mejor dicho, los roles que un usuario o usuarios del sistema llevan a cabo en algun momento del tiempo. Tambien pueden ser otros sistemas con los que el 'sistema' en proceso de modelado tiene interacción. Ejemplo: Para un sistema de ventas (directas y por catalogo), nuestros actores pueden ser: Vendedor, Cliente, Supervisor de Ventas.
- Identificar Metas (Metas, objetivos generales o responsabilidades). Todos los actores en el entorno a modelar tienen metas u objetivos, o en su defecto responsabilidades, o en su defecto, acciones que desean realizar u obtener del sistema. Por ejemplo: Para el sistema de Ventas, el Vendedor tiene como meta, objetivo o responsabilidad (Ofrecer productos, Cerrar Venta, Ganar mucho dinero via Cobrar comisiones).
- Obtener o identificar los Casos de Uso a partir de las Metas. Las metas son importantes porque a partir de su identificación pasamos a realizarlas y estas se convierten en los Casos de Uso, de esta forma tan sencilla obtenemos la información de funcionalidad que requiere nuestro sistema.
- Especificar cada Caso de Uso. Una vez identificados seguimos a especificarlos uno a uno, es probable que en el inter, de esos sencillos pasos algunos casos de uso desaparezcan o se fusionen con otros, por ambiguedades detectadas o por detalles que se hayan escapado durante el proceso. Es importante recordar que de eso se trata el modelado, no es indispensable que quede al cien por ciento el modelo desde la primera vez, por eso hay que hacerlo en iteraciones o ciclos. La especificación de los casos de uso contiene varias partes, las fundamentales son Nombre, Descripcion, Actores, Flujo Principal y Flujos Alternos. Este grupo de elementos constituyen lo que se conoce como plantilla (Template), y nos podemos encontrar un sinnumero de plantillas en la red. Por ejemplo ésta:
No hay comentarios:
Publicar un comentario