TM03 Modelo Casos de Uso

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

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

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