Modelo de Casos de Uso Msc. César Luza Montero Universidad Nacional Mayor de San Marcos Facultad de Ingeniería de Sistem
Views 137 Downloads 2 File size 2MB
Modelo de Casos de Uso Msc. César Luza Montero Universidad Nacional Mayor de San Marcos Facultad de Ingeniería de Sistemas e Informática
Copyright © 2014, Cesar Luza, Lima-Perú
Objetivos de aprendizaje Al final de la sesión, el estudiante:
Define requisitos funcionales Identifica y explica los elementos del modelo de casos de uso Elabora modelos de casos de uso
Técnicas de Modelamiento: Modelo de casos de uso
2
Contenido Los requisitos funcionales
El modelo de casos de uso
Construcción de modelo de casos de uso 3
Los requisitos funcionales Especificación
Implementación
Requisitos
Construcción
Validación
Pruebas funcionales
Evolución
Gestión del cambio
Análisis
Diseño
Pruebas unitarias
Pruebas de integración
Pruebas del sistema
Pruebas de usuario
4
Los requisitos funcionales REQUISITOS
5
Los requisitos funcionales
6
Los requisitos funcionales Necesidad
vs.
Requisito
7
Los requisitos funcionales Necesidad
Expresión básica de lo que el cliente quiere: deseos, reglas de negocio, expectativas y restricciones.
Se expresan en términos del cliente. No, necesariamente, es objetiva y clara.
Cualquier comunicación recibida del cliente debe ser identificada como necesidad y no como requisito
Usuarios
vs.
Requisito
Necesidad traducida y completada por el analista para que cumpla con ciertos criterios de aceptación que le den claridad y objetividad.
Permite desarrollar un diseño funcional del producto.
Analistas 8
Los requisitos funcionales Necesidad
vs.
Requisito
Ejemplo: Sistema académico Stakeholder Estudiante
Profesor
Necesidad
Requisito
Ver mis notas sin tener El sistema debe permitir al que viajar hasta la estudiante consultar las notas Facultad remotamente por Internet
Publicar las notas de los alumnos matriculados en mis asignaturas sin tener que viajar a la facultad
El sistema debe permitir al profesor ingresar las notas de los alumnos matriculados en su asignatura mediante Internet
9
Los requisitos funcionales Un requisito es una condición o capacidad a la que
debe ajustarse el sistema que se construye. Requisito funcional describe lo que debe hacer el sistema respecto a su entorno Entorno: los usuarios u otros sistemas Requerimiento No funcional especifica propiedades del sistema.
Los requisitos funcionales El sistema permitirá: A los profesores:
Consultar los horarios de sus cursos Consultar la programación de los exámenes Actualizar y ver su información personal Registrar y modificar las notas de los estudiantes a su cargo Ejemplos Sistema Cerrar un curso Académico
Requisitos funcionales A los estudiantes:
Consultar los horarios de sus cursos Consultar la programación de los exámenes Actualizar y ver su información personal Consultar notas de un curso
Ejemplos Sistema Academico
Contenido Los requisitos funcionales
El modelo de casos de uso
Construcción de modelo de casos de uso Técnicas de Modelamiento: Modelo en el desarrollo de software
13
Modelo de casos de uso ¿Qué es? El Modelo de Casos de uso es un modelo que describe los requisitos funcionales del sistema en forma de Casos de uso. Su objetivo es comunicar la funcionalidad y el comportamiento al cliente y usuario.
Modelo de casos de uso Elementos
ACTOR
CASOS DE USO
El Caso de uso comienza cuando el profesor indica “registrar notas.” El sistema muestra un formulario de validación de ingreso al sistema. El usuario ingresa su clave de acceso y su contraseña. El sistema valida el ingreso. El sistema muestra los cursos asignados al profesor. El profesor indica “guardar”. El sistema valida toda la información y muestra un mensaje de confirmación y el Caso de uso finaliza.
DESCRIPCIÓN DE CASOS DE USO DIAGRAMA DE CASOS DE USO
Modelo de casos de uso Un actor es : un rol que un grupo de usuarios de un sistema cumplen cuando interactúan con este
Define un conjunto de instancias de actores, donde cada uno juega el mismo rol en relación al sistema.
Una instancia de un actor es alguien (persona) o algo (otro sistema o equipo) que interactúa con el sistema.
Modelo de Casos de uso Situación 1: Sistema de aerolínea pasajero
agente de viajes
Situación 2: Sistema de aerolínea
pasajero
(www.enPista.com)
Modelo de casos de uso Definición de Caso de Uso
Un caso de uso es un conjunto de escenarios de caso de uso.
Modelo de casos de uso Escenario de casos de uso
Un escenario o instancia de un caso de uso es una secuencia especifica de acciones e interacciones entre los actores y el sistema objeto de estudio que proporciona valor a un actor en particular.
Modelo de casos de uso Escenario de casos de uso Ejemplo: Retiro de ATM Escenario Normal 1. El caso de uso se inicia cuando el cliente inserta su tarjeta en la ranura del cajero automático 2. El cajero automático solicita ingreso de clave secreta 3. El cliente ingresa su clave secreta 4. El cajero automático muestra menú de opciones 5. El cliente selecciona opción “Retiro” 6. El cajero automático muestra relación de cuentas del cliente 7. El cliente elige cuenta 8. El cajero automático solicita cantidad 9. El cliente ingresa cantidad a retirar 10. El cajero automático dispensa el dinero 11. El caso de uso finaliza
Modelo de casos de uso Escenario de casos de uso Ejemplo: Retiro de ATM Escenario clave incorrecta 1. El caso de uso se inicia cuando el cliente inserta su tarjeta en la ranura del cajero automático 2. El cajero automático solicita ingreso de clave secreta 3. El cliente ingresa su clave secreta 4. El cajero automático muestra mensaje de error “Clave incorrecta 5. El caso de uso finaliza
Modelo de casos de uso Escenario de casos de uso Ejemplo: Retiro de ATM Escenario Saldo insuficiente 1. El caso de uso se inicia cuando el cliente inserta su tarjeta en la ranura del cajero automático 2. El cajero automático solicita ingreso de clave secreta 3. El cliente ingresa su clave secreta 4. El cajero automático muestra menú de opciones 5. El cliente selecciona opción “Retiro” 6. El cajero automático muestra relación de cuentas del cliente 7. El cliente elige cuenta 8. El cajero automático solicita cantidad 9. El cliente ingresa cantidad a retirar 10. El cajero automático muestra mensaje de error “Saldo Insuficiente”. 11. El caso de uso finaliza
Modelo de casos de uso Un caso de uso es un conjunto de escenarios de caso de uso.
Escenario 1
Escenario 2
Escenario 3
Modelo de casos de uso Descripción de un Caso de uso Caso de uso Actor Precondiciones Poscondiciones
Flujo básico Flujos alternativos
Modelo de casos de uso
Caso de uso
Actor
• Nombre del casos de uso, Debe ser claro e indicar la función requerida
• Nombre del actor
Modelo de casos de uso
Precondiciones
Poscondiciones
• Restricciones que deben cumplirse para que el caso de uso se inicie, • Se definen relativas al sistema, no a su entorno, • Deben redactarse en tiempo verbal pasado
• Condiciones que deben cumplirse para indicar que el caso de uso ha terminado con éxito; • Establecen lo que debe cumplirse cuando el caso de uso termina, • Deben redactarse en tiempo verbal pasado
Modelo de casos de uso Flujo básico de Eventos
• Descripción narrativa de lo que debe ocurrir cuando el actor interactúan con el sistema, • Se consideran pasos normales, • No incluye alternativas o variantes.
Flujos de Eventos Alternativos
• Reflejan las diferentes situaciones que provocan una desviación del flujo básico de eventos, • Se consideran, condiciones anormales, extremas, ocasionales, error o violaciones de reglas
Descripción de un Caso de uso Caso de uso Actores Precondición Poscondición
: : : :
Flujo Básico 1.El caso de uso comienza cuando el actor … 2. 3 Flujos Alternativos
1. 2.
Descripción de un Caso de uso Caso de uso Actores Precondición Poscondición
: : : : Flujo Básico
Actor Sistema 1.El caso de uso comienza 1. cuando el actor … 2. 2. 3. 3 Flujos Alternativos 1. 2.
Modelo de casos de uso Nombre C.U.S. Actor Precondición Poscondición
Consultar Vuelos por Piloto Gerente El usuario ha sido admitido en el sistema con el rol de Gerente El sistema ha mostrado los vuelos realizados por piloto Flujo Básico 1. El caso de uso se inicia cuando el Gerente indica “Vuelos Realizados”. 2. El Sistema muestra relación de pilotos. 3. El Gerente escoge el nombre de piloto de la relación mostrada. 4. El Sistema muestra calendario para escoger el periodo (fecha inicio y fecha de fin) 5. El Gerente escoge el periodo (fecha inicio y fecha de fin). 6. El Gerente indica “Aceptar”. 7. El Sistema muestra los vuelos realizados por el piloto en el periodo escogido. 8. El caso de uso finaliza. Flujos Alternativos Imprimir En el paso 7, si el gerente indica “Imprimir”, el sistema imprime la información consultada y el caso de uso finaliza. No hay vuelos en periodo En el paso 7, si no existen vuelos del piloto en el periodo seleccionado, el sistema muestra mensaje “Piloto no tiene registrado vuelos en el periodo” y regresa a seleccionar otro piloto.
Modelo de casos de uso Un Diagrama de Casos de uso muestra los
Actores, los Casos de uso y las Relaciones entre ellos:
(f rom Actors)
(from )
Modelo de casos de uso Consultar horarios de cursos (from Use Cases)
Profesor (f rom Actors)
Mantener información del profesor (from Use Cases)
Registrar notas de un curso Consultar horarios de examenes (from Use Cases)
Validar acceso (from Use Cases)
(from Use Cases)
¿Diferencias? Requerimiento vs. Casos de uso
Hay una correspondencia directa de requerimiento
funcional hacia Caso de uso Mas bien la diferencia está en la forma de la descripción. Los requerimientos funcionales se registran en un documento denominado “Software Requeriments Specifications”, conocido por sus siglas SRS. Los Casos de uso se documentan en un modelo de Casos de uso.
Beneficios
El modelo de Casos de usos Es usado para comunicarse con el usuario final y el experto del dominio Proporciona credibilidad en una etapa inicial del desarrollo del sistema Asegura una comprensión mutua de los requisitos
Es usado para identificar Quién interactuará con el sistema y qué deberá hacer el sistema Qué interfaz deberá tener el sistema
Es usado para verificar que: Se capturan todos los requisitos Que los desarrolladores hayan entendido los requisitos
Es usado como base para la pruebas. Es usado como base para la planificación del proyecto.
Relaciones entre actores Si dos o más actores utilizan el sistema de la
misma forma entonces es posible establecer una relación de Generalización entre ellos, con el objetivo de simplificar el modelo de Casos de uso
Relaciones entre actores
Usuario
Estudiante
Profesor
Casos de uso del Usuario Consultar horarios de cursos
Usuario
Validar acceso
(f rom Actors)
Consultar horario de exámenes
Casos de uso del Estudiante
Estudiante (f rom Actors)
Mantener información del estudiante
Consultar notas de un curso
Casos de uso del Profesor
Mantener información del profesor Profesor (f rom Actors)
Registrar notas de un curso
Cerrar un curso
Modelo de Casos de uso del Sistema Académico Consultar notas de un curso Estudiante Consultar horarios de cursos
(f rom Actors)
Mantener información del estudiante Cerrar un curso
Validar acceso Usuario
Mantener información del profesor
(f rom Actors)
Consultar horario de exámenes Profesor (f rom Actors)
Registrar notas de un curso
Contenido Los requisitos funcionales
El modelo de casos de uso
Construcción de modelo de casos de uso Técnicas de Modelamiento: Modelo en el desarrollo de software
41
Construcción de Casos de uso Identificar Actores
Identificar casos de uso
Describir los casos de uso
Elaborar diagrama de caos de uso
Construcción de Casos de uso Identificar actores Qué grupos de usuarios necesitan apoyo del sistema para realizar sus tareas? Qué grupos de usuarios son responsables de ejecutar las funciones relevantes del sistema Qué usuarios realizan labores secundarias de mantenimiento y administración? Interactuará el sistema con algún dispositivo o sistema externo?
Construcción de Casos de uso Encontrar casos de uso ¿cuáles son las tareas del actor? ¿qué información crea, guarda, modifica, destruye o lee el actor? ¿debe el actor notificar al sistema los cambios externos? ¿debe el sistema informar al actor de los cambios internos?
Necesita el actor realizar operaciones de mantenimiento, auditoria y/o soporte?
Construcción de Casos de uso Describir los casos de uso:
Formato Breve
Descripción resumida de la funcionalidad que representa el caso de uso (qué)
Formato Detallado
Contiene mayores detalles. Describe el curso flujo de eventos o diálogo que se sucede entre el actor y el sistema
Construcción de Casos de uso Elaborar el diagrama de casos de uso: BIBLIOTECA Reservar Libros
Registrar Préstamo Bibliotecario Registrar Devolución
Socio
Construcción de Casos de uso La Empresa AIRTRANS, dedicada al servicio de transportes aéreos, necesita un sistema de información para gestionar y mantener los datos de unidades, vuelos, pilotos, pasajeros y reservas. Después de haber dialogado con el Encargado de Vuelos se concluyo que es responsable de Mantener la información de las distintas unidades: el número, el tipo de avión, la fecha de compra, el modelo, la capacidad de carga y la capacidad de pasajeros. Determina los vuelos que llevan carga, para los mismos necesita guardar la fecha, el piloto, el lugar de origen, el destino, el peso de la carga y el monto del vuelo. Define los vuelos de pasajeros: fija la fecha, el piloto y su tripulación, origen, destino y capacidad de pasajeros.
El gerente nos informó que: Mantiene la información de los pilotos que trabajan en la empresa, para el mismo guarda el número de piloto, el nombre, dirección, habilitación, fecha del último control médico. Necesita que el sistema le devuelva dado un piloto, los vuelos que ha realizado en un periodo dado. El empleado de ventas nos explicó que: Mantiene información de los pasajeros de los diferentes vuelos, para cada uno se le incorpora un número de identificación, el nombre, profesión, el teléfono y la dirección. Los pasajeros realizan reservas para los distintos vuelos, si no hay espacio disponible, se rechaza el pedido de reserva para ese vuelo. Confirma los pasajeros que toman los vuelos. Sólo se admiten pasajeros que hayan realizado reservas previas. Necesita un reporte con los pasajeros que tomaron un vuelo.
Construcción de Casos de uso
Encargado de vuelos
Gerente
Empleado de ventas
Construcción de Casos de uso Mantener informacion de unidades
Mantener informacino de pilotos
Registrar reservas de vuelo
Registrar vuelo de carga
Registrar vuelo de pasajeros
Consultar vuelos por pilotos Mantener informacion de pasajeros
Registrar confirmación de vuelo
Consultar pasajeros que tommaron vuelo
Construcción de Casos de uso
Nombre C.U.S. Actor Precondición Poscondición
Consultar Vuelos por Piloto Gerente El usuario ha sido admitido en el sistema con el rol de Gerente El sistema ha mostrado los vuelos realizados por piloto Flujo Básico 1. El caso de uso se inicia cuando el Gerente indica “Vuelos Realizados”. 2. El Sistema muestra relación de pilotos. 3. El Gerente escoge el nombre de piloto de la relación mostrada. 4. El Sistema muestra calendario para escoger el periodo (fecha inicio y fecha de fin) 5. El Gerente escoge el periodo (fecha inicio y fecha de fin). 6. El Gerente indica “Aceptar”. 7. El Sistema muestra los vuelos realizados por el piloto en el periodo escogido. 8. El caso de uso finaliza. Flujos Alternativos Imprimir En el paso 7, si el gerente indica “Imprimir”, el sistema imprime la información consultada y el caso de uso finaliza. No hay vuelos en periodo En el paso 7, si no existen vuelos del piloto en el periodo seleccionado, el sistema muestra mensaje “Piloto no tiene registrado vuelos en el periodo” y regresa a seleccionar otro piloto.
Construcción de Casos de uso Registrar vuelo de carga Encargado de vuelos
Mantener información de unidades
Registrar vuelo de pasajeros
Consultar vuelos por pilotos Gerente Mantener información de pilotos
Mantener informacion de pasajeros Registrar reservas de vuelo Empleado de ventas
Registrar confirmación de vuelo
Consultar pasajeros que tommaron vuelo
Relaciones entre casos de uso Relaciones de inclusión / uso () Relación de extensión () Relación de generalización
… Casos de Uso: Relaciones Inclusión : una instancia del Caso de Uso
origen incluye también el comportamiento descrito por el Caso de Uso destino
Caso de Uso Origen
Caso de Uso Destino
reemplazó al denominado
… Casos de Uso: Relaciones De Inclusión: El caso de uso origen incorpora explícitamente el comportamiento de otro caso de uso como fragmentos de su propio comportamiento.
Caso de uso destino
Caso de uso origen
El caso de uso destino no es un caso especial del caso de uso original y no se puede sustituir por él.
… Casos de Uso: Relaciones
Extensión : el Caso de Uso origen extiende el comportamiento del Caso de Uso destino
Caso de uso destino
Caso de Uso Origen
Caso de uso origen
Caso de Uso Destino
… Casos de Uso: Relaciones De Extensión:
Se amplia el comportamiento del caso de uso origen con otro comportamiento adicional
Caso de uso destino Caso de uso origen
Modela parte del caso de uso que representa comportamiento opcional del sistema
… Casos de Uso: Relaciones
Generalización : el Caso de Uso origen hereda la especificación del Caso de Uso destino y posiblemente la modifica y/o amplía
Caso de Uso Hijo
Caso de Uso Padre
… Casos de Uso: Relaciones Ejemplo:
Cliente
Identificación
Transferencia
Transferencia en Internet
Ejemplo de
Reintegro cuenta corriente
Validar operación
Cliente
Reintegro cuenta crédito
Ejemplo de
Encargado
Realizar préstamo Socio tarjeta caducada
Solicitar nueva tarjeta
Casos de Uso – ejemplo1
Giro por Internet Cliente
Identificación
Giro
Casos de Uso - ejemplo2 Cajero Electrónico pedir saldo
Cliente
retirar
validar usuario
Comprobar huella
Retiro con sobregiro
cargar
Supervisor
Casos de Uso - ejemplo3
Hacer Pedido Vendedor
Solictar Catalogo
Suministro de datos clientes
Pedir Producto
Realizar Pago
Pagar al Contado
Acordar Crédito
Preguntas ?
Técnicas de Modelamiento: Modelo de casos de uso
64
Recursos Los materiales y comunicación de
la asignatura en grupo yahoo: http://es.groups.yahoo.com/group/t
ecnicasmodelamiento/.
Técnicas de Modelamiento: Presentación
65
Preguntas ?
Técnicas de Modelamiento: Presentación
66