Definiciones: Proceso de negocio: • Flujo de trabajo de la organización. Existe por sí mismo.
Requisito: • Característica que el sistema software debe tener.
Caso de uso: • Técnica para la definición de requisitos funcionales.
www.themegallery.com
Diagrama de Casos de Uso Un caso de uso representa una interacción típica entre un usuario y un sistema informático •Utilizaremos los casos de uso para: • Capturar los requisitos funcionales del sistema
Un caso de uso es un grafo con dos tipos de nodos: Actor que representa cualquier elemento que intercambia información con el sistema, por lo que está fuera de él Caso de uso Es una secuencia de intercambios en diálogo con el sistema que se encuentran relacionadas por su comportamiento Los arcos entre los actores y los casos de uso se denominan arcos de comunicación
El actor es un agente externo. Un actor representa un cierto papel que un usuario puede jugar. Una máquina también puede ser un actor.
Cada caso de uso tiene una descripción informal en lenguaje natural o en un lenguaje estructurado
Diagrama de Casos de Uso Un caso de uso describe una funcionalidad más una interacción entre un actor y un sistema en forma de secuencia de acciones La descripción se centra en lo que debe hacerse, no en la manera de hacerlo Deben evitarse expresiones imprecisas. Se busca sencillez y claridad Puede utilizarse un lenguaje estructurado para representar secuencia, repeticiones y situaciones opcionales La descripción debe contener:
Inicio del caso de uso Fin del caso de uso Interacción entre el caso de uso y los actores Intercambios de datos Cronología y origen de los datos
Ventajas Ayudan a asegurar que se desarrolla el sistema correcto. Documentan las respuestas funcionales de caja negra. Excelente forma de comunicación con los clientes y los usuarios. Ayudan a gestionar la complejidad de los proyectos grandes. Proporcionan el fundamento de los mensajes. Ofrecen una buena base para la verificación y validación. Modo objetivo para el seguimiento del proyecto. Pueden servir como base para especificar respuestas a aplicaciones de tiempo real.
Construcción de Casos de uso Es un proceso iterativo. Se van descubriendo los escenarios desde el punto de vista del usuario, es decir los ACTORES. Para detectar los casos de uso es conveniente hacer las siguientes preguntas: ¿Cuáles son las principales tareas de cada actor? ¿Escribe/lee/modifica el actor alguna información del sistema? ¿Informa el actor al sistema de los cambios externos? ¿Desea el actor ser informado de cambios no esperados?
Construcción de Diagrama de Caos de Uso Los casos de uso no pueden ser demasiado pequeños, ya que deben aportar algún valor al actor. En el momento de identificar los actores es conveniente distinguir entre actores principales (que son los que emplean directamente el sistema llevando a cabo las tareas más importantes) actores secundarios (existen para que los principales puedan utilizar el sistema).
•La estructura del sistema debe decidirse teniendo en cuenta a los actores principales.
Construcción de Casos de Uso ¿Qué casos de uso identificamos? Iniciar una nueva partida. Descubrir una casilla. Marcar una casilla.
¿Quién realiza estos casos de uso? El jugador.
Actor: alguien o algo externo al sistema que interactúa con él desempeñando un rol. Un caso de uso siempre es iniciado por un actor externo.
uc Caso de Uso Buscaminas
Iniciar Partida
Caso de Uso: interacción entre actores y el sistema que produce un resultado observable de valor para un actor.
Descubrir Casilla Jugador
Marcar Casilla
Asociación: la participación de un actor es necesaria para realizar el caso de uso.
Limite del Sistema
Relaciones Ya hemos visto la única relación posible entre un actor y un caso de uso: asociación. También podemos establecer una única relación entre actores: generalización.
En UML podemos establecer tres relaciones entre casos de uso: generalización, inclusión y extensión.
Generalización Actor - Actor
uc Caso de Uso Biblioteca
Prestamo Interno
Empleado
Prestamo Fuera
Usuario
Estudiante
Relaciones en los Casos de Uso
Entre casos de uso pueden darse relaciones: extension (extend) inclusion (include) generalizacion-especializacion
Include uc Caso de Uso
Acepta Cita Gerente «include» Visualiza Agenda «include» Coordina Agenda
Asistente
De esta forma, evitamos tener que definir en múltiples lugares una misma funcionalidad. Sin embargo, el fragmento que se incluye ha de ser visto siempre como lo que es: un fragmento sin significado completo.
Extend uc Caso de Uso
Pagar Efectiv o «extend» Pagar Cuenta «extend»
Cliente
Pagar Tarj eta de Credito
Esta relación significa que un caso de uso puede estar basado en otro caso de uso más básico
uc Caso de Uso Alquiler de Video
Registrar Socio
Realizar Prestamo
Socio Realizar Dev olucion Empleado
Realizar Pago
Registrar Videos
Nombre: Descripción:
Registrar como socio Describe el proceso de realizar el Registro de Socios del Club
Actor:
Socio/Empleado
Precondiciones Flujo Principal:
Eventos ACTOR 1. Verifica los documentos necesarios para la realización del registro respectivo 2. Activa función de registro de Socio 3. Realiza registro de datos del socio 4. Almacenar los datos registrados. 5. Se emite el carnet al socio 1. Si socio existe finaliza proceso
Flujo Alternativo: Post condición:
El socio se encuentra registrado y obtiene su carnet de registro. Y está disponible para la solicitud de préstamo de videos.