Diagramas de Casos de Uso¶
Conceptos básicos¶
Los diagramas de casos de uso son un tipo de diagrama UML que describe cómo interactúan los usuarios (actores) con el sistema.
Su objetivo es representar el sistema desde fuera, centrándose en:
- Qué funcionalidades ofrece el sistema.
- Qué objetivos persigue cada actor cuando usa esas funcionalidades.
Son especialmente útiles porque facilitan la comunicación entre perfiles técnicos y no técnicos (cliente, usuario final, dirección), al hablar en términos de acciones y resultados esperados.
Elementos de un diagrama de casos de uso¶
Actores¶
Son las entidades externas que interactúan con el sistema:
- Personas con un rol (Cliente, Administrador, Profesor, Alumno…)
- Sistemas externos (Pasarela de pago, Servicio de correo, API externa…)
En UML se dibujan como una “figura de palo”. En Mermaid los representaremos como nodos.
Casos de uso¶
Son las funcionalidades que el sistema ofrece a los actores. Se nombran con verbo + complemento, por ejemplo:
- Crear cuenta
- Buscar producto
- Realizar pedido
En UML se dibujan como óvalos. En Mermaid los representaremos como nodos dentro del límite del sistema.
Relaciones¶
- Asociación: conecta actor con caso de uso (quién lo usa).
- Include (
<<include>>): un caso de uso reutiliza obligatoriamente a otro. - Extend (
<<extend>>): comportamiento opcional que se activa en ciertas condiciones. - Generalización: un actor o caso de uso hereda de otro (roles o comportamientos más específicos).
Ejemplo práctico: app de comercio electrónico¶
Actores - Cliente: busca productos y compra. - Administrador: gestiona el catálogo y los pedidos.
Casos de uso del Cliente - Buscar producto - Realizar pedido - Escribir reseña
Casos de uso del Administrador - Añadir producto - Gestionar pedido
Relaciones
- El cliente se asocia con Buscar producto, Realizar pedido y Escribir reseña.
- El administrador se asocia con Añadir producto y Gestionar pedido.
- Realizar pedido suele requerir Buscar producto (include).
- Al finalizar compra se puede Ofrecer productos relacionados como opción (extend).
Diagrama de casos de uso en Mermaid (compatible con Material for MkDocs)¶
Nota: Mermaid no tiene un diagrama UML de “casos de uso” nativo. Este esquema utiliza flowchart para simularlo:
- Actores fuera del sistema
- Casos de uso dentro del “Sistema”
- Include y Extend como relaciones etiquetadas
flowchart LR
Cliente[Actor Cliente]
Admin[Actor Administrador]
subgraph S[Sistema E-commerce]
UC1([Buscar producto])
UC2([Realizar pedido])
UC3([Escribir reseña])
UC4([Añadir producto])
UC5([Gestionar pedido])
UC6([Ofrecer productos relacionados])
end
Cliente --- UC1
Cliente --- UC2
Cliente --- UC3
Admin --- UC4
Admin --- UC5
UC2 -. "< < include > >" .-> UC1
UC6 -. "< < extend > >" .-> UC2
Actividades¶
-
AC 501. Define los actores y casos de uso de una aplicación de gestión de biblioteca (préstamos, devoluciones y reservas). Representa el diagrama indicando al menos una relación <
>. -
AC 502. Plantea un diagrama de casos de uso para una plataforma de e-learning. Incluye al menos dos actores y una relación de extensión <
>. -
AC 503. Diseña los casos de uso de una aplicación de citas médicas, diferenciando entre paciente y personal sanitario. Justifica brevemente cada caso de uso.