Descargar

Modelado de Casos de Usos (página 2)

Enviado por Pablo Turmero


Partes: 1, 2, 3
edu.red

: Cajero :Sistema * introducirItem(upc,cantidad) finalizarVenta() hacerPago(cantidad) Cajero Realizar Venta Cliente crearNuevaVenta() Interacciones

edu.red

Ejemplo de diagrama de casos de uso

edu.red

Ejemplo diagrama de casos de uso Actores Secundarios Actor Principal

edu.red

Ejemplo diagrama de casos de uso Reservar Libro Préstamo Libro Devolver libro Socio Extender Préstamo Préstamo revista Profesor Devolver revista Bibliotecario Actualizar catalogo Socio Consultar

edu.red

Casos de uso y Colaboraciones Con un caso de uso se describe un comportamiento esperado del sistema, pero no se especifica cómo se implementa. Una caso de uso se implementa a través de una colaboración: “Sociedad de clases y otros elementos que colaborarán para realizar el comportamiento expresado en un caso de uso” Una colaboración tiene una parte estática (diagramas de clases) y una parte dinámica (diagramas de secuencia).

edu.red

Casos de uso y Colaboraciones Hacer Pedido Gestión Pedidos caso de uso colaboración realización

edu.red

Casos de uso y Colaboraciones

“El objetivo de la arquitectura del sistema es encontrar el conjunto mínimo de colaboraciones bien estructuradas, que satisfacen el comportamiento especificado en todos los casos de uso del sistema”

edu.red

Organización de casos de uso Tres tipos de relaciones: Generalización Un cdu hereda el comportamiento y significado de otro Inclusión Un cdu base incorpora explícitamente el comportamiento de otro en algún lugar de su secuencia. Extensión Un cdu base incorpora implícitamente el comportamiento de otro cdu en el lugar especificado indirectamente por este otro cdu

edu.red

Generalización Los casos de uso “hijo” son una especialización del caso de uso “padre”. Produce confusión y se debería evitar su uso

edu.red

Ejemplo Generalización Comprobar clave Examinar retina Validar Usuario (Gp:) Realizar Pedido

Consultar Pedido (establecer prioridad) Realizar Pedido Urgente «extend» Extensión «include» «include» Inclusión

edu.red

Relación de inclusión Permite factorizar un comportamiento en un caso de uso aparte y evita repetir un mismo flujo en diferentes casos de uso. Ejemplo: Hacer Pedido: Obtener y verificar el número de pedido; Incluir (Validar usuario); para cada línea en el pedido: Consultar el estado; Preparar un informe para el usuario

edu.red

Relación de extensión El caso de uso base incluye una serie de puntos de extensión. El caso de uso base no conoce los casos de uso de extensión, está completo sin las extensiones. Los puntos de extensión no son parte del flujo principal. Sirve para modelar la parte opcional del sistema un subflujo que sólo se ejecuta bajo ciertas condiciones varios flujos que se pueden insertar en un punto

edu.red

Relación de extensión Ejemplo:

Hacer Pedido: Incluir “Validar usuario”; Recoger los ítem del pedido del usuario; establecer prioridad: punto de extensión Enviar pedido para ser procesado.

edu.red

Relación de extensión Devolver Libro (Gp:) Poner multa

«extend» Puntos de extensión libro retrasado (Gp:) Bibliotecario

Nombre: Poner multa Precondición: Libro devuelto fuera de plazo Flujo: 1. El bibliotecario introduce detalles multa 2. El sistema registra e imprime la multa Nombre: Devolver libro Actor principal: Bibliotecario Precondición: Bibliotecario está autenticado Flujo: 1. El bibliotecario introduce id del prestatario 2. El sistema muestra datos del prestatario y los libros que tiene prestados 3. El bibliotecario selecciona libro a devolver punto de extensión: libro retrasado 4. El sistema registra devolución 5. …

edu.red

Relación de extensión Produce confusión y no debería utilizarse. Conviene su uso sólo para insertar un nuevo comportamiento no previsto en un caso de uso existente.

edu.red

Obtención de casos de uso 1) Identificar los usuarios del sistema. 2) Encontrar todos los roles que juegan los usuarios y que son relevantes al sistema. 3) Para cada rol identificar todas las formas (objetivos) de interactuar con el sistema. 4) Crea un caso de uso por cada objetivo. 5) Estructurar los casos de uso. (¡Cuidado!) 6) Revisar y validar con el usuario.

edu.red

Plantilla usecases.org (Larman) Nombre del caso de uso Actor Principal Personas involucradas e Intereses (Actores secundarios) Precondiciones (estado del sistema antes de empezar) Postcondiciones (estado del sistema al finalizar) Escenario Principal (Flujo Básico) Extensiones (Flujos Alternativos) Requisitos especiales Tecnología y Lista Variaciones de datos Frecuencia Cuestiones abiertas

edu.red

Caso de uso “Realizar Venta” Resumen: Un cliente llega al TPV con un conjunto de artículos. El Cajero registra los artículos y se genera un ticket. El cliente paga en efectivo y recoge los artículos. Actor Principal: Cajero Personal Involucrado e Intereses: Cajero: quiere entradas precisas, rápida y sin errores de pago Compañía: quiere registrar transacciones y satisfacer clientes. … Precondición: El cajero está autenticado Postcondiciones: Se registra la venta. Se calcula el impuesto. Se actualiza contabilidad e inventario

edu.red

Caso de uso “Realizar Venta” Flujo Básico: 1. A: El cliente llega al TPV con los artículos. 2. A: El cajero inicia una nueva venta 3. A: El cajero introduce el identificador de cada artículo. 4. S: El sistema registra la línea de venta y presenta descripción del artículo, precio y suma parcial. El Cajero repite los pasos 3 y 4 hasta que se indique. 5. S: El Sistema presenta el total 6. A: El Cajero le dice al Cliente el total a pagar 7. S: El Cliente paga y el sistema gestiona el pago. 8. S: El Sistema registra la venta completa y actualiza Inventario. 9. S: El Sistema presenta recibo

edu.red

Caso de uso “Realizar Venta” Extensiones (Flujos Alternativos): 3a. Identificador no válido 1. El Sistema señala el error y rechaza la entrada 3-6a. El Cliente pide eliminar un artículo de la compra 1. El Cajero introduce identificador a eliminar 2. El sistema actualiza la suma … 7a. Pago en efectivo 1. El Cajero introduce cantidad entregada por el cliente 2. El Sistema muestra cantidad a devolver … ….

edu.red

Caso de uso “Realizar Venta” Requisitos especiales: – Interfaz de usuario con pantalla táctil en un monitor de pantalla plana. El texto debe ser visible a un metro de distancia. – Tiempo de respuesta para autorización de crédito de 30 sg. El 90% de las veces … Lista de Tecnología y Variaciones de Datos: – El identificador podría ser cualquier esquema de código UPC, EAN,.. – La entrada de información de la tarjeta se realiza mediante un lector de tarjetas. … Cuestiones Pendientes: – Explorar cuestiones de recuperación de accesos a servicios remotos – ¿Qué adaptaciones son necesarias para diferentes negocios?

edu.red

Utilidad de los casos de uso “Ofrecen un medio sistemático e intuitivo para capturar los requisitos funcionales, centrándose en el valor añadido para el usuario”

Dirigen todo el proceso de desarrollo puesto que la mayoría de actividades (planificación, análisis, diseño, validación, test,..) se realizan a partir de los casos de uso.

Mecanismo importante para soportar “trazabilidad” entre modelos.

edu.red

Utilidad de los casos de uso Hay consenso en considerar casos de uso como esenciales para capturar requisitos y guiar el modelado. Pero ha existido mucha confusión sobre cómo usarlos. ¿Número de casos de uso apropiado en un proyecto? ¿Qué casos de uso hay en el sistema?

Partes: 1, 2, 3
 Página anterior Volver al principio del trabajoPágina siguiente