La función principal del diagrama de casos de uso es representar los requerimientos de software bajo un lenguaje común entre desarrolladores de software y clientes. Para ello, utilizan los elementos del diagrama de casos de uso que son el actor, los casos de uso y las relaciones.
Otro elemento importante de los casos de uso son las relaciones que pueden darse entre actores y casos de uso. Cuando la relación es actor con caso de uso, esta define si el actor es pasivo o activo, mientras que las relaciones entre casos de uso pueden ser de generalización, inclusión o extensión.
Este artículo es la segunda parte de nuestra serie dedicada al diagrama de casos de uso, en esta nos enfocaremos en los elementos mencionados.
¡Eleva tus habilidades de programación con el curso JavaScript Moderno Guía Definitiva Construye +20 Proyectos 🌟 Aprende JavaScript, el lenguaje esencial del web, y crea más de 20 proyectos reales. ¡Incluye un proyecto MongoDB, Express, React y Node.js (MERN) Full Stack para que te conviertas en un experto! 💻
¿Qué es el diagrama de casos de uso?
En la primera parte de nuestra serie sobre el diagrama de casos de uso, describimos que es el modelo de casos de uso y una definición del diagrama de casos de uso. Antes de proseguir con este artículo te invitamos a leerlo en el siguiente enlace:
Elementos del diagrama de casos de uso
Como se ha mencionado anteriormente, los tres elementos básicos de los casos de uso son: Actor, Caso de uso y la relación (o asociación).
Actor
- Representa a una persona o grupo de personas que desempeñan un papel en la interacción con el software.
- También puede ser “cualquier elemento” externo que interactúe con el software para lograr determinados objetivos, como por ejemplo otros sistemas, productos de software y equipamiento.
Se representan con el siguiente símbolo:
Caso de uso
Representa una funcionalidad (Conocida en inglés como Feature) que cumple uno o varios requisitos. Al colocarles nombre es recomendable usar verbos infinitivos con un complemento. Por ejemplo “Registrar nuevo cliente” en lugar de “Registro de nuevo cliente”.
El símbolo del caso de uso en el diagrama es una elipse con su nombre dentro, tal como se muestra a continuación:
Opcionalmente, los casos de uso pueden rodearse de un rectángulo que representa los límites del sistema.
Relación
La interacción entre dos casos de uso o de un actor con un caso de uso se representa por medio de una relación, utilizando una línea o una flecha como se muestra en la figura:
Relaciones entre actor y caso de uso
La asociación entre un actor y un caso de uso se denomina relación de comunicación. Bajo esta relación, un actor puede ser:
- Activo: Cuando el actor inicia o desencadena la ejecución del caso de uso. Si se está usando flecha, esta debe apuntar al caso de uso. Si la relación no tiene flecha, se considera que el actor es activo como predeterminado.
- Pasivo: Cuando el caso de uso es iniciado por el software y no por el actor. La flecha debe apuntar al actor. Las notificaciones y alarmas que emiten a menudo sistemas de información son un buen ejemplo de este tipo de relación.
Relaciones entre casos de uso
Existen 3 tipos especiales de relaciones entre los elementos de un caso de uso, a saber:
Generalización o especialización
- Se usa cuando existe un comportamiento común a varios casos de uso, pero que presentan una diferencia clave, por ejemplo en el tipo de transacción.
- De esta forma, los casos de uso específicos “heredan” el comportamiento del caso de uso generalizado.
- La relación se representa con una línea continua con una flecha. El caso de uso general recibe la punta de la flecha:
- Esta relación se puede utilizar entre dos casos de uso o entre dos actores. No se puede utilizar entre un actor con un caso de uso.
- Por ejemplo:
- Un sistema de pedidos de venta que maneja varios tipos, por ejemplo: Realizar pedido en tienda, realizar pedido por teléfono y realizar pedido por internet.
- La secuencia de pasos puede ser diferente para los tres casos de uso, por ejemplo al realizar pedido por teléfono o por internet se necesita pedir una dirección de envío, mientras que en el pedido en tienda sólo se necesita la de facturación.
- Se puede definir un caso de uso denominado “Realizar pedido”, este caso de uso tiene relaciones de especialización con los casos de uso de pedido en tienda, por teléfono y por internet.
El Include en un diagrama de casos de uso
- Utilizada cuando existen una serie de pasos comunes y de observación obligatoria entre varios casos de uso.
- Por ejemplo:
- Un sistema de ventas con tres casos de uso: Ingresar pedido, facturar y registrar pago.
- Para los 3 casos de uso, necesitamos primero buscar y seleccionar el cliente al cual asociaremos el pedido, factura o pago. La secuencia de pasos es la misma.
- Así tendríamos un caso de uso “Seleccionar cliente” con una relación de inclusión con los casos de uso de pedido, factura y pago.
- Nota que a diferencia de la generalización o especialización, el comportamiento de buscar al cliente no forma parte de los casos de uso de pedido, factura y pago, sino que está en un caso de uso completamente separado.
- En el diagrama de casos de uso, se representa con una flecha de línea punteada, que se origina en el caso de uso base hacia el caso de uso incluido. El sentido de la flecha es al contrario de la relación de extensión.
- Esta relación sólo se puede establecer entre dos casos de uso.
Diagrama de casos de uso: El Extend
- Se utiliza para describir comportamientos opcionales, que añaden actividades a uno o varios casos de uso.
- El comportamiento es adicional al ya descrito por el caso de uso original.
- Un caso de uso puede ser extensión de varios.
- Por ejemplo:
- Un sistema de banca en línea en el cual tenemos un procedimiento de autenticación en el sistema.
- En cierta circunstancia, por ejemplo si el cliente se encuentra fuera de su zona geográfica habitual (En otro país o región), el sistema podría enviar una clave single-sign-on al teléfono o correo electrónico del cliente.
- El caso de uso “Autenticar cliente” tiene una relación de extensión con el caso de uso “Verificar Single-Sign-On”.
- Esa verificación Single-Sign-On también podría usarse por ejemplo cuando, después de haberse autenticado, el cliente va a realizar una transferencia a otro banco por encima de un monto determinado. En este caso, el caso de uso “Verificar Single-Sign-On” también tiene una relación de extensión con el caso “Transferir a cuenta de otro banco”.
- En el diagrama, se representa con una línea puntada con una flecha al final. La flecha desde el caso de uso de extensión al caso de uso base. Es decir en sentido contrario.
- Esta relación sólo se puede establecer entre dos casos de uso.
Video Casos de uso: Diagrama y especificación
Te compartimos a continuación un video acerca de que son los casos de uso y como se utilizan para especificar los requerimientos de software.
Con este curso aprenderás las técnicas de levantamiento y análisis de requisitos de software, para asegurar la satisfacción de las necesidades de los interesados y por lo tanto el éxito en tus proyectos. Visita la página del curso para mayor información.
Especifica tus requisitos de software con un diagrama de casos de uso
En este artículo hemos descrito cuales son los elementos de un diagrama de casos de uso. Definimos que es el actor, caso de uso y relación. También describimos los tipos de relaciones de actor activo, actor pasivo, generalización, inclusión y extensión.
Estos elementos, junto con la definición de diagramas de casos de uso que te presentamos en la entrega anterior de esta serie, te brindan lo necesario para realizar representaciones de los requerimientos de forma fácil y estructurada.
¿Qué opinas de la técnica de casos de uso para documentar la especificación funcional de un software? ¿Con cuales problemas te has encontrado aplicándola en la práctica? Déjanos un comentario al final.
¿Buscas más información de gerencia informática?
¿Quieres obtener completamente gratis y directamente plantillas, artículos y otros recursos de gerencia informática?, entonces siguenos en nuestras redes sociales:
excelente trabajo
ResponderEliminar