modelo de casos de uso

52
Tema: Modelo de Casos de uso

Upload: misterioinka

Post on 03-Jul-2015

421 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Modelo de Casos de Uso

Tema: Modelo de Casos de uso

Tema: Modelo de Casos de uso

Page 2: Modelo de Casos de Uso

¿Por qué fracasan los proyectos informáticos?

21.8%

Usuario no involucrado

12.4%

Falta de recursos

10.6%

Expectativas no realistas

9.9%

Falta de soporte

9.3%Tecnologicos/ Tecnicos

7.5%No se necesitó al final del desarrollo

Requisitosincompletos

o cambiantes

Causas de fracaso en proyectos informáticos

Page 3: Modelo de Casos de Uso

Exploración

¿Proceso de desarrollo? ¿Requerimientos? ¿Métodos, Técnicas y Herramientas? ¿Modelos de alto nivel o conceptuales vs.

Modelo de Implementación o físicos?

Page 4: Modelo de Casos de Uso

Al final de esta presentación serás capaz de:

Identificar y definir los elementos del modelo de casos de uso

Elaborar modelos de casos de uso

Page 5: Modelo de Casos de Uso

Modelo de Casos de uso

El Modelo de Casos de usoModelo de Casos de uso es un modelo que describe los requerimientos requerimientos

funcionalesfuncionales del sistema en forma de Casos de usoCasos de uso

El Modelo de Casos de usoModelo de Casos de uso es un modelo que describe los requerimientos requerimientos

funcionalesfuncionales del sistema en forma de Casos de usoCasos de uso

¿Qué es?

Page 6: Modelo de Casos de Uso

Requerimientos funcionales

Un requerimiento es: una condición o capacidad a la que debe ajustarse el sistema que se construye.

Requerimiento funcional: es un requerimiento que describe que debe hacer el sistema respecto a su entorno

Entorno: los usuarios u otros sistemas

Page 7: Modelo de Casos de Uso

Un ejemplo: Sistema Académico

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 Cerrar un curso

Requerimientos funcionales

Page 8: Modelo de Casos de Uso

Un ejemplo: Sistema Académico

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

Requerimientos funcionales

Page 9: Modelo de Casos de Uso

Descripción de un Requerimiento

Registrar y modificar las notas de los estudiantes a su cargo: El profesor, que previamente se ha

identificado en el sistema, podrá ingresar las notas de los estudiantes. Solo podrá acceder a sus grupos de clases. Una vez cerrado un curso no podrá hacer cambios.

Page 10: Modelo de Casos de Uso

Actor

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 algo (otro sistema o equipo) o alguien (persona) que interactúa con el sistema.

Page 11: Modelo de Casos de Uso

Los actores ayudan a definir la frontera del sistema

Sistema deaerolínea

pasajero agente de viajes

Situación 1:

Sistema deaerolínea

pasajero (www.enPista.com)

Situación 2:

Page 12: Modelo de Casos de Uso

Caso de uso

Un Caso de uso define un conjunto de instancias deCasos de uso. Un Caso de uso define un conjunto de instancias deCasos 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.

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.

En otras palabras: “es una descripción de la secuencias de acciones que un sistema ejecuta para proporcionar un resultado observable de un valor a un actor en particular”

En otras palabras: “es una descripción de la secuencias de acciones que un sistema ejecuta para proporcionar un resultado observable de un valor a un actor en particular”

Page 13: Modelo de Casos de Uso

Descripción de un Caso de usoRegistrar y modificar las notas de los estudiantes a su cargo:

Actor: Profesor

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 selecciona el curso.El sistema muestra un listado de los estudiantes con sus notas. El profesor selecciona el estudiante e ingresa la nota de práctica, del parcial, del examen final y la nota final. Se repite para cada estudiante.El profesor indica “guardar”.El sistema valida toda la información y muestra un mensaje de confirmación y el Caso de uso finaliza.

Page 14: Modelo de Casos de Uso

Descripción de casos de usos Nombre.

Debe indicar el título del caso de uso. Ejemplo: matricular un estudiante.

Breve descripción. Descripción pequeña de las actividades o pasos

principales que realiza el caso de uso. Debe incluir el propósito del caso de uso.

Caso de uso: Comprar ProductoActor : CajeroDescripción: Un cliente llega a la caja registradora con los artículos que comprará. El cajero registra los artículos y cobra el importe. Al terminar la operación el cliente se marcha con los productos.

Caso de uso: Comprar ProductoActor : CajeroDescripción: Un cliente llega a la caja registradora con los artículos que comprará. El cajero registra los artículos y cobra el importe. Al terminar la operación el cliente se marcha con los productos.

Page 15: Modelo de Casos de Uso

Descripción de casos de usos

Precondiciones. Restricción que tiene que ser verdadera para que el caso de uso

comience. Se definen relativas al sistema, no a su entorno. Deben ser estados observables por el actor.

Poscondiciones Condición que debe cumplirse para indicar que el caso de uso ha

terminado con éxito. Establecen que debe cumplirse cuando el caso de uso termine

Precondición: El usuario ha sido aceptado en el sistema con el rol de profesor

Precondición: El usuario ha sido aceptado en el sistema con el rol de profesor

Postcondición: Se ha registrado en el sistema las notas de los alumnos

Postcondición: Se ha registrado en el sistema las notas de los alumnos

Page 16: Modelo de Casos de Uso

Descripción de casos de usos

Flujo de eventos. Secuencia de eventos a desarrollar por los actores y el

sistema dentro del caso de uso. Se describe QUE hacen el actor y el sistema en el proceso y

no COMO se implementa. Está formado por dos partes:

Flujo básico y Flujo alternativo.

Page 17: Modelo de Casos de Uso

Descripción de casos de usos

Flujo Básico. Descripción narrativa de lo que debe ocurrir cuando los

actores interactúan con el sistema para satisfacer la meta u objetivo propuesto.

Se consideran los pasos básicos, normales e invariables para lograr el objetivo del caso de uso.

No incluye las alternativas o variaciones. Flujos Alternativos.

Se reflejan las diferentes situaciones que provocan una desviación del flujo básico de eventos.

Se observan condiciones anormales, extremas, ocasionales o eventuales, condiciones de error o violación de las reglas que impone las exigencias del negocio para el caso de uso.

Page 18: Modelo de Casos de Uso

Descripción de casos de usos

Actor: Profesor

Flujo Básico1. El Caso de uso comienza cuando el profesor indica “registrar notas.”2. El sistema muestra un formulario de validación de ingreso al sistema.3. El usuario ingresa su código y su contraseña.4. El sistema muestra los cursos asignados al profesor.5. El profesor selecciona el curso.6. El sistema muestra un listado de los estudiantes con sus notas. 7. El profesor selecciona el estudiante e ingresa la nota de práctica, del parcial, del

examen final y la nota final. Se repite para cada estudiante.8. El profesor indica “guardar”.9. El sistema valida toda la información y muestra un mensaje de confirmación y el

Caso de uso finaliza.

Flujo Alternativo

En el paso 3, si codigo o contraseña son erradas el sistema muestra mensaje y vuelve a solicitar código y contraseña

Nombre: Registrar y modificar las notas de los estudiantes a su cargo

Page 19: Modelo de Casos de Uso

Descripción de casos de usos

Formato Detallado (plantillas www.usecases.org)

Caso de uso :Actores : Precondición : Poscondición :

Flujo Básico

1.El caso de uso comienza cuando el actor … 2.3

Flujos Alternativos1.2.

Page 20: Modelo de Casos de Uso

Descripción de casos de usos

Formato Detallado (plantillas www.usecases.org)

Caso de uso :Actores : Precondición : Poscondición :

Flujo Básico

Actor1.El caso de uso comienza cuando el actor … 2.3

Sistema1. 2.3.

Flujos Alternativos1.2.

Page 21: Modelo de Casos de Uso

Diagrama de Casos de uso

Un Diagrama de Casos de uso muestra los Actores, los Casos de uso y las Relaciones entre ellos:

<Actor Name>

(f rom Actors)

<Use Case Name>

(from <Use Case Name>)

<<communicate>>

Page 22: Modelo de Casos de Uso

El actor Profesor y sus Casos de uso

Consultar horarios de cursos

(from Use Cases)

Consultar horarios de examenes

(from Use Cases)

Mantener información del profesor

(from Use Cases)

Registrar notas de un curso

(from Use Cases)

Validar acceso

(from Use Cases)

Profesor

(f rom Actors)

Page 23: Modelo de Casos de Uso

¿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.

Page 24: 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.

Page 25: Modelo de Casos de Uso

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

Page 26: Modelo de Casos de Uso

Relaciones entre actores

Estudiante Profesor

Usuario

Page 27: Modelo de Casos de Uso

Casos de uso del Usuario

Consultar horarios de cursos

Consultar horario de exámenes

Validar accesoUsuario

(f rom Actors)

Page 28: Modelo de Casos de Uso

Casos de uso del Estudiante

Mantener información del estudiante

Estudiante

(f rom Actors)

Consultar notas de un curso

Page 29: Modelo de Casos de Uso

Casos de uso del Profesor

Mantener información del profesor

Registrar notas de un curso

Cerrar un curso

Profesor

(f rom Actors)

Page 30: Modelo de Casos de Uso

Modelo de Casos de uso del Sistema Académico

Consultar notas de un curso

Estudiante

(f rom Actors)

Mantener información del estudiante

Cerrar un curso

Mantener información del profesor

Profesor

(f rom Actors)Registrar notas de un curso

Consultar horario de exámenes

Validar acceso

Usuario

(f rom Actors)

Consultar horarios de cursos

Page 31: Modelo de Casos 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?

Page 32: Modelo de Casos de Uso

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?

Page 33: Modelo de Casos de Uso

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

Page 34: Modelo de Casos de Uso

Construcción de Casos de uso

Elaborar el diagrama de casos de uso:

Registrar Devolución

Registrar Préstamo

Reservar Libros

Bibliotecario

Socio

BIBLIOTECA

Page 35: Modelo de Casos de Uso

Construcción de Casos de uso

Ejemplo: Sistema de Matricula

La universidad quiere automatizar su sistema de matrícula de cursos de verano.Un Empleado inicializa la oferta de cursos ofrecidos para el verano. Un mismo curso tiene varias ofertas (secciones). Durante un cierto período de tiempo, después de que se haya definido la oferta de cursos, los estudiantes pueden utilizar el sistema para añadir o eliminar cursos a matricular. Los alumnos seleccionan 4 cursos obligatorios y 2 cursos electivos.Los profesores pueden utilizar el sistema para obtener las listas de alumnos matriculados en su curso.Los usuarios del sistema de matrícula acceden a él mediante un login y una password que le es asignada.

Page 36: Modelo de Casos de Uso

Construcción de Casos de uso

Ejemplo: Sistema de Matricula

•Actores :•Empleado•Estudiante•Profesor

•Casos de uso•Ingresar Oferta de cursos•Añadir o Eliminar Curso•Obtener Listado de Alumnos

Page 37: Modelo de Casos de Uso

Construcción de Casos de usoCaso Sistema de Matricula

Caso de uso : Ingresar oferta de cursosActor : Empleado Precondición : Empleado ha sido admitido como usuarioPoscondición : Se ha registrado la oferta de cursos

Flujo Básico

Actor1.El C.U. comienza cuando Empleado Indica “Ingresar oferta”2.Ingresa Código de Curso3. Ingresa Sección, Horario y Aula4. Repite 2 a 3 por cada curso5. Indica “Guardar”

Sistema1. El sistema muestra formulario “Ingresar oferta”2.Muestra nombre del curso3.Verifica aula disponible y horario sin cruce 4. Repite 2 a 3 por cada curso5. Muestra mensaje de confirmación y el C.U. termina.

Flujos Alternativos1.2.

Page 38: Modelo de Casos de Uso

Construcción de Casos de uso

EmpleadoRegistrar Curriculum

Registrar CursoAlumno

Profesor

Obtener Listado

Caso Sistema de Matricula

Diagrama de casos de uso

Page 39: Modelo de Casos de Uso

Caso de EstudioSISTEMA DE BIBLIOTECA: Se trata de gestionar los préstamos de libros de una

biblioteca en la que se va a estudiar exclusivamente el funcionamiento de las peticiones y devoluciones de libros.

Petición de libros

Un usuario puede realizar una petición de uno o más libros a la biblioteca. Para ello, es necesario presentar, el carnet de usuario de la biblioteca y una ficha en la que se detallan los libros pedidos. Puede haber varios tipos de préstamo (de sala, colaborador, proyecto fin carrera, doctorado) en función de los cuales el usuario puede disponer de los ejemplares durante un período de tiempo específico, (SALA :El día de la petición, COLABORADOR: Una semana, PROYECTO FIN CARRERA; Quince días y DOCTORADO: Un mes).

Una vez entregados el carnet y la ficha, el sistema comprobará y aceptará la petición de los libros solicitados siempre que pueda satisfacer la petición, es decir, cuando haya ejemplares disponibles. Si se acepta la petición, se actualiza el número de unidades de los libros de la biblioteca y se guarda la ficha de préstamo.

Page 40: Modelo de Casos de Uso

...Caso de Estudio

Devoluciones de libros

Un usuario no puede realizar más peticiones hasta que no haya efectuado todas las devoluciones de la petición anterior. El usuario, para hacer la petición, necesita el carnet, que no se le entrega hasta que no haya devuelto todos los libros. Sí puede hacer una devolución parcial de los libros.

Cuando un usuario realice una devolución, el sistema actualizará el stock de libros y comprobará la fecha de devolución de cada ejemplar para estudiar, en el caso de que la devolución se haga fuera de tiempo, la imposición de una sanción que tiene un coste de X ud. monetarias por cada ejemplar y días de retraso en la devolución. En este caso, la sanción se emite cuando el usuario entrega el último ejemplar.

Page 41: Modelo de Casos de Uso

Relaciones entre casos de uso

Relaciones de inclusión / uso (<<include>>)

Relación de extensión (<<extend>>) Relación de generalización

Page 42: Modelo de Casos de Uso

… 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

<<include>> reemplazó al denominado <<uses>>

Caso de Uso Origen Caso de Uso Destino

<<include>>

Page 43: Modelo de Casos de Uso

… Casos de Uso: Relaciones

Caso de uso origen

Caso de uso destino

De Inclusión: El caso de uso origen incorpora explícitamente el comportamiento de otro caso de uso como fragmentos de su propio comportamiento.

El caso de uso destino no es un caso especial del caso de uso original y no se puede sustituir por él.

<<includes>>

Page 44: Modelo de Casos de Uso

… Casos de Uso: Relaciones

Extensión : el Caso de Uso origen extiende el comportamiento del Caso de Uso destino

Caso de Uso Origen Caso de Uso Destino

<<extend>>

Caso de uso destino Caso de uso origen

Page 45: Modelo de Casos de Uso

… Casos de Uso: Relaciones

De Extensión: Se amplia el comportamiento del caso de uso

origen con otro comportamiento adicional

Caso de uso origen

Caso de uso destino

<<extends>>

Modela parte del caso de uso que representa comportamiento opcional del sistema

Page 46: Modelo de Casos de Uso

… 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

Page 47: Modelo de Casos de Uso

… Casos de Uso: Relaciones

Ejemplo:

Identificación

Transferencia en Internet

ClienteTransferencia

<<include>>

<<extend>>

Page 48: Modelo de Casos de Uso

Ejemplo de <<Include>>

Validar operación

Reintegro cuenta corriente

Cliente

Reintegro cuenta crédito

<<include>>

<<include>>

Page 49: Modelo de Casos de Uso

Ejemplo de <<extends>>

Solicitar nueva tarjeta

SocioRealizar préstamo

tarjeta caducada

<<extends>>

Encargado

Page 50: Modelo de Casos de Uso

Casos de Uso – ejemplo1

Identificación

Giro por Internet

Cliente

Giro

<<extends>>

<<includes>>

Page 51: Modelo de Casos de Uso

Casos de Uso - ejemplo2

Cliente

pedir saldo

retirar

cargar

Supervisor

Cajero Electrónico

validarusuario

<include>

<include>

Retiro consobregiro

<extend>Comprobar

huella

Page 52: Modelo de Casos de Uso

Realizar Pago

Acordar Crédito

Vendedor

Suministro de datos clientes

Pedir Producto

Pagar al Contado

Solictar CatalogoHacer Pedido

<<include>>

<<include>>

<<include>>

<<extend>>

Casos de Uso - ejemplo3