Gloria Arcos Medina Introducción a la Ingeniería de Software DIAGRAMAS UML – CASOS DE USO Gloria Arcos Medina 1 Gloria Arcos Medina Introducción a la Ingeniería de Software DIAGRAMAS DE CASOS DE USO 2 Gloria Arcos Medina Introducción a la Ingeniería de Software 3 Casos de Uso • Permiten modelar el comportamiento de un sistema • Capturan los requisitos funcionales del sistema a desarrollar Gloria Arcos Medina Introducción a la Ingeniería de Software 4 Elementos de un caso de uso Caso de uso Actores Relaciones (comunicación) • Funcionalidad que el sistema proporciona a los actores externos • Quienes interactúan con el sistema • Personas /otros sistemas • Comunicación entre actorescasos de uso • Comunicación entre casos de uso Entorno del sistema • Límites del sistemas Gloria Arcos Medina Introducción a la Ingeniería de Software 5 Actores • Se le llama actor a toda entidad externa al sistema que guarda una relación con éste y que le demanda una funcionalidad. • Incluye a los operadores humanos pero también incluye a todos los sistemas externos Relaciones Relaciones entre Casos de Uso: 1. Generalización. 2. Extensión (Extend). 3. Inclusión (include). Relaciones entre actores 1. Generalización. Gloria Arcos Medina Introducción a la Ingeniería de Software 7 Relaciones entre Casos de Uso - Generalización 1. Generalización: • Relación que define la especialización de un caso de uso. • Los casos de uso abstractos describirán las partes similares y no podrán ser instanciados independientemente. • Los casos de uso concretos describirán el comportamiento específico. Caso Abstracto Caso Concreto Pagar Reservación Pagar con Tarjeta Pagar con Transferencia Gloria Arcos Medina Introducción a la Ingeniería de Software Relaciones entre Casos de Uso Generalización 9 Relaciones entre Casos de Uso - Inclusión 3. Inclusión: (<<include>>) Caso Base • La inclusión define como un caso de uso es parte obligatoria de un caso de uso base. <<include>> Caso Obligatorio • Un Caso Base incluye un Caso Obligatorio: Una instancia de un caso base siempre incluye el comportamiento especificado por un caso de uso obligatorio. Consultar Información <<include>> Validar Usuario Gloria Arcos Medina Introducción a la Ingeniería de Software 11 Relaciones entre Casos de Uso - Inclusión Relaciones entre Casos de Uso - Extensión 2. Extensión: (<<extend>>) Caso Base • Especifica como un caso de uso puede insertarse en otro para extender la funcionalidad de un caso de uso base. <<extend>> Caso Opcional • El Caso Opcional es una extensión del Caso Base: Una instancia del caso de uso Base puede incluir el comportamiento especificado por el Caso Opcional. Hacer Reservación <<extend>> Pagar Reservación Gloria Arcos Medina Introducción a la Ingeniería de Software 13 Relaciones entre Casos de Uso - Extensión Gloria Arcos Medina Introducción a la Ingeniería de Software 14 Relaciones entre actores - Generalización Diagramas de Casos de Uso • Notación Nombre del Sistema Nombre del Caso de Uso Número del CU Nombre del Actor Nombre del Caso de Uso Número del CU generalización <<include>> <<extend>> • Sistema de Tienda Online • Se tiene usuarios no registrados, los cuales podrán registrarse en el sistema, que enviará un mensaje de verificación para completar el registro. • Los usuarios registrados podrán añadir objetos al carrito, quitar objetos al carrito y pagar compra. • Se tendrá un administrador de la tienda online que podrá gestionar los productos (añadir, eliminar, modificar, listar). System <<include>> Registrar usuario Verificar registro Usuario No Registrado Añadir producto <<extend>> Añadir obj carrito Quitar Producto <<extend>> <<extend>> Gestionar Productos Quitar obj carrito Modificar Producto <<extend>> Usuario Registrado Pagar compra Listar Productos Administrador • • • • • • • • Se desea desarrollar un sistema de encuentros virtuales (parecido a un chat). Cuando se conecta al servidor, un usuario puede entrar o salir de un encuentro. Cada encuentro tiene un manager. El manager es el usuario que ha planificado el encuentro (el nombre del encuentro, la agenda del encuentro y el moderador del encuentro). Cada encuentro puede tener también un moderador designado por el manager. La misión del moderador es asignar los turnos de palabra para que los usuarios hablen. El moderador también podrá dar por concluido el encuentro en cualquier momento. En cualquier momento un usuario puede consultar el estado del sistema, por ejemplo los encuentros planeados y su información. Modelo de Casos de Uso Nombre Suposiciones Pre-condiciones Diálogo Post-condiciones Excepciones Mejoras futuras Narrativa de los Casos de Uso Diagrama de Casos de Uso Escenario de los Casos de Uso. Diagrama de Actividades Gloria Arcos Medina Introducción a la Ingeniería de Software 21 Narrativa de un Caso de Uso en formato extendido Identificador caso de uso CU-01 Nombre del caso de uso Realizar reintegro Actores Cliente Propósito Realizar una operación de reintegro de una cuenta del banco Visión General Un cliente va al cajero, introduce la tarjeta, se identifica y solicita realizar una operación de reintegro por una cantidad específica, el cajero da el dinero solicitado tras comprobar que se puede realizar, el cliente coge el dinero la tarjeta y se retira Tipo Primario Referencias Funciones: R1.3, R1.7 Curso típico de eventos Acciones del Actor (Cliente) Respuesta del Sistema 1. Cliente introduce la tarjeta en el cajero 2. Pide clave de identificación 3. Introduce clave 4. Presenta opciones disponibles 5. Selecciona la operación de reintegro 6. Pide la cantidad a retirar 7. Introduce la cantidad requerida 8. Procesa la petición y da el dinero solicitado. Devuelve la tarjeta y genera un recibo 10. En espera 9. Recoge la tarjeta, dinero y se va Cursos Alternativos 4. La clave es incorrecta. Se indica el error y se cancela la operación 8. La cantidad solicitada supera el saldo. Se indica el error y se cancela la operación