1 Web: www.sevinge.es e-mail: info@sevinge.es Telf.: 954 091 086 –FAX: 954 460 306 Pabellón de Italia. C/ Isaac Newton s/n. Planta 4ª Isla de la Cartuja. 41092 Sevilla D. Javier D. Javier Jesús Jesús Gutiérrez Gutiérrez Rodríguez Rodríguez javierj@us.es www.lsi.us.es/~javierj Universidad de Sevilla ETS IngenieríaInformática Av. Reina Mercedes S/N 41015 Sevilla Tlf. 954553867 Fax. 954553917 Diagramas UML de casos de uso y de requisitos Diagramas UML de casos de uso y de requisitos
Introducción a los casos de uso.
Diagramas de casos de uso de UML.
Relaciones actor-actory casos de uso-caso de uso.
Ejemplos de diagramas de casos de uso.
2 Web: www.sevinge.es e-mail: info@sevinge.es Telf.: 954 091 086 –FAX: 954 460 306 Pabellón de Italia. C/ Isaac Newton s/n. Planta 4ª Isla de la Cartuja. 41092 Sevilla
Índice
3 Web: www.sevinge.es e-mail: info@sevinge.es Telf.: 954 091 086 –FAX: 954 460 306 Pabellón de Italia. C/ Isaac Newton s/n. Planta 4ª Isla de la Cartuja. 41092 Sevilla Diagramas UML de casos de uso y de requisitos Diagramas UML de casos de uso y de requisitos Introducción a los casos de uso
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.
4
Introducción
Definiciones:
» Caso de uso:
1.Conjunto de acciones realizadas por el sistema.
2.Producen un resultado observable.
3.Participan actores.
5
Introducción
6 Web: www.sevinge.es e-mail: info@sevinge.es Telf.: 954 091 086 –FAX: 954 460 306 Pabellón de Italia. C/ Isaac Newton s/n. Planta 4ª Isla de la Cartuja. 41092 Sevilla Diagramas UML de casos de uso y de requisitos Diagramas UML de casos de uso y de requisitos Diagramas de casos de uso de UML
Diagramas 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.
7
Jugador
Diagramas de casos de uso
Buscaminas
8
ud Casos de uso
01. Iniciar partida
02. Descubrir una casilla.
03. Marcar una casilla.
ud Casos de uso
Buscaminas
Diagramas de casos de uso
Jugador
01. Iniciar partida
Caso de Uso: interacción entre actores y el sistema que produce un resultado observable de valor para un actor.
02. Descubrir una casilla.
Límite del sistema: agrupa casos de uso dentro de un mismo sistema. Útil cuando tenemos varios sistemas / subsistemas.
03. Marcar una casilla.
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.
Asociación: la participación de un actor es necesaria para realizar el caso de uso.
9
Ejercicio: Descripción del problema
Sokobanes un juego de varios niveles.
Cada nivel está compuesto por un jugador, cajas, repisas y muros. El objetivo del jugador es empujar todas las cajas sobre las repisas.
Cuando esto sucede el jugador pasa al siguiente nivel.
Para mover una caja, el jugador debe colocarse al lado y empujarla. Si la casilla hacia la que está empujan do la caja está libre la caja se moverá.
Si el jugador se queda bloqueado, es decir, no puede terminar el nivel, puede reiniciar el nivel perdiendo una vida.
Cuando el jugador pierde todas sus vidas la partida termina.
10
ud Casos de uso
Ejercicio: diagramas de casos de uso
Iniciar partida
Mover jugador
extension points: En la dirección del jugdor hay una caja Todas las cajas en repisas
Cargar un nivel
Jugador
Mover caja
Reiniciar partida
Terminar partida
11
«extend» «extend»
«include» «include»
12 Web: www.sevinge.es e-mail: info@sevinge.es Telf.: 954 091 086 –FAX: 954 460 306 Pabellón de Italia. C/ Isaac Newton s/n. Planta 4ª Isla de la Cartuja. 41092 Sevilla Diagramas UML de casos de uso y de requisitos Diagramas UML de casos de uso y de requisitos Relaciones actor-actory casos de uso-casos de uso
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.
13
Relaciones
ud Casos de uso Pintor
Generalización actor –actor.
Deseamos un tercer actor catalogador cuya misión sea catalogar retablos y excavaciones de la misma manera que un pintor o arqueólogo..
Alternativas:
1. Repetir los casos de uso para el actor catalogador.
2. Añadir al actor catalogador
Etc…
Arqueologo
14
01. Buscar restauraciones de retablos.
02. Buscar excavaciones arqueológicas.
ud Casos de uso Pintor
Generalización actor –actor.
Añadir al actor catalogador
Catalogador
Arqueologo
ud Casos de uso
Pintor
Definir al actor catalogador como una extensión de los actores pintor y arqueólogo.
Catalogador
Arqueologo
15
01. Buscar restauraciones de retablos.
02. Buscar excavaciones arqueológicas.
01. Buscar restauraciones de retablos.
02. Buscar excavaciones arqueológicas.
Un actor administrador puede entrar en el sistema, dar de alta a un pintor y marcharse.
Inclusiones y extensiones
Extensión
ud Ejemplos de casos de uso
Un actor administrador puede entrar en el sistema, asignar a un pintor una restauración y marcharse.
Un administrador puede entrar en el sistema, empezar a asignar a un pintor una restauración, durante el proceso darse cuenta de que el pintor no está en el sistema, darlo de alta sobre la marcha, terminar la asignación y marcharse.
Administrador
Asignación de pintor a restauración
«extend»
Alta de pintor
16
Cómo poner un punto de extensión en EA.
Inclusiones y extensiones
17
Inclusiones y extensiones
18
Un actor administrador puede entrar en el sistema, asignar a un pintor una restauración y marcharse.
Inclusiones y extensiones
Inclusión
ud Ejemplos de casos de uso
Para elegir una restauración a la que asignar un pinto, el administrador debe realizar una búsqueda entre todas las restauraciones existentes y seleccionar una.
Administrador
Asignación de pintor a restauración
Búqeuda de restauraciones «extend»
«include»
Alta de pintor
19
20 Web: www.sevinge.es e-mail: info@sevinge.es Telf.: 954 091 086 –FAX: 954 460 306 Pabellón de Italia. C/ Isaac Newton s/n. Planta 4ª Isla de la Cartuja. 41092 Sevilla Diagramas UML de casos de uso y de requisitos Diagramas UML de casos de uso y de requisitos Ejemplos de diagramas de casos de uso
21
Ejemplos
Ejercicio: sistema de normativas
» Actor funcionario
• Suscribirse a avisos de normativas.
• Buscar normativas
• Ver detalles de una normativa.
» Actor registrador
• Acceder al sistema con su nombre y clave.
• Registrar normativa.
• Borrar normativa.
• Reemplazar normativa,
Inclusiones y extensiones
22
Subsistema de funcionarios
Inclusiones y extensiones
Suscribirse a avisos de normativa
Funcionario Consultar normativas
Subsistema de registradores
<<include>>
Registrar normativa
Ver una normativa <<extend>>
Registrador
Acceso al sistema
<<include>>
Borrar normativa
<<include>>
Reemplazar normativa
23
Diagramas UML de casos de uso y de requisitos
Diagramas UML de casos de uso y de requisitos
24
Pabellón de Italia. C/ Isaac Newton s/n. Planta 4ª Isla de la Cartuja. 41092 Sevilla
Ejercicios
Un sistema automático de cambio de grupos para asignaturas funciona de la siguiente manera:
El profesor da de alta una asignatura y proporciona al sistema un listado con los alumnos matriculados en dicha asignatura.
Un alumno que quiera cambiar de grupo en una asignatura puede consultar las peticiones de cambio.
Si encuentra alguna que le interese, el alumno solicita el cambio y el sistema lo almacena.
Si no, el alumno puede dejar el cambio que desea por si a otro alumno le interesara.
Los alumnos sólo pueden consul tar y publicitar cambios de las asignaturas en las que están matriculados.
25
Ejercicios
¿Dónde están los fallos?
26
Ejercicios
Ejercicios
Se desea desarrollar un sistema de encuentros virtuales (parecido a un chat).
Cuando se conecta al servidor, un usuario puede entrar o salir de un encuentro.
Cada encuentro tiene un manager.
El manager es el usuario que ha planificado el encuentro (el nombre del encuentro, la agenda del encuentro y el moderador del encuentro).
Cada encuentro puede tener también un moderador designado por el manager.
La misión del moderador es asignar los turnos de palabra para que los usuarios hablen.
El moderador también podrá dar por concluido el encuentro en cualquier momento.
En cualquier momento un usuario puede consultar el estado del sistema, por ejemplo los encuentros planeados y su información.
27
Moderador
Ejercicios
Consutar estado
Hablar en encuentro
Usuario
Entrar en encuentro Salir de encuentro
Planificar encuentro
Manager
Designar moderador
Asignar turno
Concluir encuentro
28
Un sistema personal de bolsa se conecta periódicamente a servidores que ofrecen información de las cotizaciones.
El sistema personal permite marc ar una serie de valores para realizar un seguimiento y consultar los datos de dichos valores.
Si a la hora de actualizar las cotizaciones uno de los valores marcados presenta una gran subida o bajada, informará a usuario de ello.
Hay más de un actor Hay más de un actor
29
Ejercicios
System
Ejercicios
Obtener cotizaciones
Evento temporal
<<extend>>
Informar de gran variación
Proveedor de información
Usuario
Marcar valores
Consultar valores
¿Qué más cosas deberíamos contar?
¿Qué más cosas deberíamos contar?
30
Un juego de teléfono móvil dónde participan dos jugadores cada uno con su propia terminal.
Cuando dos jugadores desean j ugar, uno de ellos crea una nueva partida y el otro se conecta.
El objetivo del juego es manejar una nave y disparar al contrario.
Si uno de los dos jugadores acierta, la partida termina.
Si uno de los dos jugadores deja la partida (o se pierde la conexión) la partida termina.
31
Ejercicios
Iniciar partida
Conectar a partida
System
Jugador B
Jugador A
Mover nave
Disparar
<<extend>>
Finalizar partida
32
Ejercicios
Definición del comportamiento de los casos de uso
33