Title: Curso de UML
1Curso de UML
- Actividad 2
- Diagramas de Casos de Uso del Negocio y del
Sistema - Dra. Anaisa Hernández González
2Sumario
- Casos de uso
- Casos de uso del Negocio
- Casos de uso del Sistema
3Casos de uso
4Casos de uso
- Los Casos de Uso (Ivar Jacobson) describen, bajo
la forma de acciones y reacciones, el
comportamiento de un sistema desde el punto de
vista del usuario. - Permiten definir los límites del sistema y las
relaciones entre el sistema y el entorno. - Los Casos de Uso son descripciones de la
funcionalidad del negocio/sistema independientes
de la implementación.
5Casos de uso
- Los Casos de Uso cubren la carencia existente en
métodos previos (OMT, Booch) en cuanto a la
determinación de requisitos. - Los Casos de Uso particionan el conjunto de
necesidades atendiendo a la categoría de usuarios
que participan en el mismo. - Están basado en el lenguaje natural, es decir, es
accesible por los usuarios.
6Casos de uso vs. DFD
- Un CU es una función (servicio o transacción)
atómica ofrecida por el sistema al entorno
(actores). - Un proceso de un DFD puede ser detallado en un
DFD hijo. Así, el concepto de explosión de
proceso sólo se aplica a los DFDs.
7Casos de uso vs. DFD
- Un CU y un proceso modelan una pieza de
funcionalidad del sistema, pero su especificación
es diferente. En un CU interesa expresar la
funcionalidad mediante la interacción actores
sistema. En un proceso la funcionalidad se
expresa mediante la transformación que se hace de
los flujos de entrada para producir flujos de
salida. - Un CU en general no modela un particionamiento (o
detalle) funcional interno del sistema pues se
concibe desde la perspectiva de los actores, es
decir una visión externa del sistema. Un DFD,
según sea el nivel de detalle, puede mostrar
descomposición funcional interna del sistema.
8En qué momento se usa los CU?
Modelamiento del negocio
Captura de requisitos
9Casos de uso del Negocio
10Modelo de Casos de Uso del Negocio
- Describe los procesos de un negocio, vinculados
al campo de acción, y cómo se benefician e
interactúan los socios y clientes en estos
procesos.
Caso de Uso del Negocio
11Actor del negocio?
Rol que alguien o algo juega cuando interactúa
con el negocio para beneficiarse de sus
resultados.
Rol Actor
- Candidatos
- Clientes o potenciales clientes
- Socios
- Proveedores
- Autoridades
- Propietarios
- Sistemas de información externos al negocio
- Otras parte de la organización, si ésta es
grande.
12Proceso de negocio
Grupo de tareas lógicamente relacionadas que se
llevan a cabo en una determinada secuencia y
manera y que emplean los recursos de la
organización para dar resultados en apoyo a sus
objetivos.
Un CUN representa a un proceso de negocio
13Casos de Uso del Negocio (CUN)
Secuencia de acciones, realizadas en el negocio,
que producen un resultado de valor observable
para ciertos actores del negocio.
14Identificación de los procesos del
negocio(Clasificación)
(Ejemplo Restaurante)
15Identificación de los procesos del
negocio(Agrupamiento de actividades)
Un grupo funcional que responde a un objetivo de
la organización y que puede involucrar a varias
áreas.
Función
Función Proceso de negocio
Distribución Recepción Embarque
Compras Elección de proveedores Pago a proveedores
Personal Cubrimiento de plantilla Capacitación
(Ejemplo Empresa productora)
16Identificación de los procesos del
negocio(Objetivos)
17Consideraciones acerca de actores del negocio
- Todo lo que interacciona con el ambiente del
negocio se modela con actores. - Cada actor humano expresa un rol, no una persona
específica. - Cada actor modela algo fuera del negocio.
- Cada actor se involucra con al menos un caso de
uso. - Cada actor tiene una descripción y un nombre que
explica su rol en relación al negocio.
18Consideraciones acerca de los CUN
- Su nombre y descripción breve son claras y
fáciles de comprender. - Cada caso de uso del negocio es completo desde la
perspectiva de un actor externo. - Cada caso de uso del negocio normalmente se
involucra con, al menos, un actor. - Es posible que un caso de uso de apoyo no
interactúe con ningún actor.
19Diagrama de CUN
Diagrama que representa gráficamente a los
procesos del negocio y su interacción con los
actores del negocio.
(EjemploRestaurant)
20Convenios en la representación del Diagrama de
CUN
- Un caso de uso puede asociarse con uno o más
actores. - Un caso de uso se comunica con al menos un actor,
sino hay error en el modelo, excepto cuando
- CU abstracto (puede tenerlas).
- CU hijo en una relación de generalización/especial
ización si en el padre se describe toda la
comunicación.
21Convenios en la representación del Diagrama de
CUN
Navegabilidad en las relaciones de comunicación
entre actores y CUN
- Indica quién inicia la comunicación en la
interacción y se muestra con una flecha. - Si la fecha apunta al CUN, inicia el actor.
- Si la flecha apunta al actor, entonces inicia el
CUN. - La relación en los dos sentidos se muestra sin
saetas. - Por cada flecha de comunicación se asume un
mensaje de retorno.
22Convenios en la representación del Diagrama de
CUN
Navegabilidad en las relaciones de comunicación
entre actores y CUN
- NO confundir navegabilidad con flujos de datos,
la navegabilidad solo indica relación de
iniciación. - Los convenios que usaremos serán
- La flecha de iniciación del actor al CUN siempre
se muestran, aún si más tarde el CU inicia
comunicación con el actor que lo mostró. En este
último caso solo se pone una flecha del actor al
CUN. - El resto de las flechas puede ser omitida e
incluirla solo para esclarecer el diagrama.
23Estructuración de los CUN
- Identificar los comportamiento en CUN que
necesitan considerarse como casos de uso
abstractos (casos de uso que no se instancian por
si solos y que describen comportamiento
reutilizable y compartido). - Encontrar actores del negocio que definan roles
compartidos por varios actores del negocio.
24Estructuración de los CUN
- Relación de inclusión
- Relación de extensión
- Relación de Generalización-especialización
25Relación de inclusión ltincludegt
- Una relación que especifica un comportamiento
definido para el CU de inclusión que se inserta
explícitamente dentro del comportamieto definido
para el CU base.
El workflow del proceso entero está en el caso de
uso base y el (los) caso(s) de uso incluido(s).
26Se justifica cuando
Relación de inclusión ltincludegt
- Se puede reusar en otros CUN el comportamiento
incluido en el caso de uso base, o - Simplifica la comprensión del caso de uso base.
27Relación de inclusión ltincludegt.
REUTILIZAR
(Ejemplo Aduana)
28Relación de inclusión ltincludegt.
PARTICIONAR
Es un CU de apoyo que no se relaciona con actores
(Ejemplo Empresa de servicios)
29Relación de extensión ltextendgt
- Una vez definido el workflow de un caso de uso
del negocio, se puede encontrar alguna conducta
opcional u optativa.
Tiene sentido definir un nuevo CU cuando
- Modelar un workflow complejo o un subflujo
separado, que raramente ocurre u ocurre bajo
ciertas condiciones. - Flujos distintos que pueden ejecutarse en base a
la selección del actor.
30Relación de extensión ltextendgt.
SOLO PARA ALGUNOS PASAJEROS HAY QUE IR AL COUNTER
DE EQUIPAJE ESPECIAL
(Ejemplo Aduana)
31Generalización - especialización
- Se usa para mostrar worksflows que comparten
estructuras, propósito y comportamiento. - Un caso de uso padre se puede especificar en uno
o más casos de uso hijos que representan
formularios más especificos del padre.
32Se utiliza para
Generalización - especialización
- Para no tener que describir el mismo flujo varias
veces, se puede colocar el comportamiento común
en un CUN.
Se recomienda usar cuando
Se puede afirmar que constituyen tipos de
procesos. Generalmente tienen un comportamiento
similar pero con diferencias sustanciales que
provocan que sean considerados CUN diferentes.
33Generalización especialización.
(Ejemplo Vendedores ambulantes)
34Generalización entre Actores
Varios actores del negocio pueden jugar el mismo
rol en un caso de uso particular del negocio.
El rol compartido se modela como el actor del
cual heredan los actores con roles compartidos
(solo se representan si interactúan como actor
con otro CUN).
35Generalización entre Actores. Ejemplo
(EjemploHospital)
36Realizaciones de CUN
Muestran la manera en que colaboran los
trabajadores y entidades de negocio para ejecutar
el proceso. Se documentan con
- Diagramas de actividad
- Descripción textual
- Diagramas de clases
- Diagramas de secuencia
37Descripción textual de los Casos de Uso
- nombre del caso del uso del negocio
- actores
- propósito
- resumen
- flujo de trabajo
- - Básico (normal)
- - Curso Alterno
- otras secciones
- Prioridad
- Mejoras
38Cliente Atender pedido
Nombre Atender pedido Atender pedido
Actores CLIENTE CLIENTE
Propósito Analizar viabilidad del Pedido del Cliente y ordenar su producción. Analizar viabilidad del Pedido del Cliente y ordenar su producción.
Resumen El caso de uso se inicia cuando el Cliente envía una orden de pedido de productos. El proceso da curso al pedido, analizando la posibilidad de satisfacerlo. El caso de uso finaliza cuando se le comunica al cliente el resultado final del análisis de su pedido. Resumen El caso de uso se inicia cuando el Cliente envía una orden de pedido de productos. El proceso da curso al pedido, analizando la posibilidad de satisfacerlo. El caso de uso finaliza cuando se le comunica al cliente el resultado final del análisis de su pedido. Resumen El caso de uso se inicia cuando el Cliente envía una orden de pedido de productos. El proceso da curso al pedido, analizando la posibilidad de satisfacerlo. El caso de uso finaliza cuando se le comunica al cliente el resultado final del análisis de su pedido.
CURSO NORMAL DE EVENTOS CURSO NORMAL DE EVENTOS CURSO NORMAL DE EVENTOS
Acción del actor Acción del actor Respuesta del proceso de negocio
1. El Cliente envía una orden de pedido que incluye fecha de solicitud, datos del cliente y productos solicitados. 9. El Cliente recibe la comunicación del resultado final del análisis del pedido. 1. El Cliente envía una orden de pedido que incluye fecha de solicitud, datos del cliente y productos solicitados. 9. El Cliente recibe la comunicación del resultado final del análisis del pedido. 2.El Comercial recibe el pedido del cliente por teléfono o correo ordinario de la empresa. 3.El Comercial revisa el pedido, comienza su procesamiento, y lo envía al Jefe Técnico. 4.El Jefe Técnico analiza la viabilidad de cada producto pedido por separado Si el producto pedido está en Catálogo, se acepta su fabricación. 5. El Jefe Técnico informa al Comercial la aceptación o rechazo de cada producto. Si el pedido o parte de éste es aceptado pasar a 6 Si el pedido es rechazado pasar a 8 6.El Jefe Técnico crea una orden de trabajo para cada producto del pedido, a partir de la plantilla de fabricación y las envían al Jefe de Producción, quedando pendiente su lanzamiento. 7. El Jefe de Producción planifica la producción de las órdenes de trabajo recibidas. 8. El Comercial informa al cliente.
39Cliente Atender pedido
CURSOS ALTERNOS CURSOS ALTERNOS
En la línea 4 Si el producto no está en catálogo se considera Producto Especial y el Jefe Técnico estudia su posible producción Si es viable, se acepta la fabricación del Producto Especial. Ver Sección Aceptar Producto Especial Si no es viable, no se fabrica el Producto Especial. Ver Sección Rechazar Producto Especial
Prioridad Alta
Mejoras Establecer, además, la comunicación con el usuario a través de correo electrónico y vía Internet. El Jefe de producción colocará las órdenes de producción en una cola y automáticamente se planificará la producción de la semana según las capacidades de las líneas y los pedidos pendientes.
Otras secciones Otras secciones
Sección Aceptar Producto Especial
El Jefe Técnico incluye el Producto Especial en Catálogo El Jefe Técnico diseña la Carta Tecnológica del Producto Especial.
Sección Rechazar Producto Especial
El Jefe Técnico incluye el Producto Especial en Registro de Productos Especiales Rechazados, indicando las causas del rechazo.
40Casos de uso del Sistema
41Casos de uso del sistema
Establece un acuerdo entre clientes y
desarrolladores sobre las condiciones y
posibilidades (requisitos) que debe cumplir el
sistema.
Artefacto narrativo que describe, bajo la forma
de acciones y reacciones, el comportamiento del
sistema desde el punto de vista del usuario
(Jacobson).
Descripciones de la funcionalidad del sistema
independientes de la implementación.
42Casos de uso del sistema
Descripciones de la funcionalidad del sistema
independientes de la implementación.
Definición de requisitos
43Definición de Requisitos
Es el proceso de averiguar, por lo general en
circunstancias difíciles, lo que se debe
construir.
Los usuarios deben saber lo que quieren
- Cada uno sabe lo que hace, pero ninguno tiene una
visión global
- No saben cómo puede hacerse más eficiente la
operación en su conjunto.
- No saben qué parte de su trabajo puede
transformarse en software..
44Requisito funcional
Una capacidad o condición que el sistema
cumplirá
Comprensibles
Comprensibles
Desarrolladores
Requisitos
Clientes y Usuarios
45Clasificación de los requisitos funcionales
46Identificación de requisitos funcionales a
partir del modelo del negocio
- Descripciones textuales.
- Diagrama de clases del modelo de objetos del
negocio. - Diagrama de actividades.
Realización de CUN
Actividades que serán automatizadas
47Diagrama de casos de uso del negocio
(Ejemplo Empresa constructora)
48Diagrama de Actividad.
49Requisito funcional
- Registrar características de un proyecto
- Analizar viabilidad económica
- 1.1 Evaluar factibilidad económica
- 1.2 Registrar resultados de la
- evaluación.
- 3. Analizar viabilidad técnica
- 1.1 Evaluar factibilidad técnica
- 1.2 Registrar resultados de la
- evaluación.
- 4. Registrar aprobación/rechazo de un proyecto
50Actores
- No son parte del sistema
- Puede intercambiar información con el sistema.
- Puede ser un recipiente pasivo de información.
TRABAJADORES Y ACTORES DEL NEGOCIO
51Actores
52Identificación de los CU del sistema a partir del
modelo del negocio
CASO DE USO PROCESO QUE OBTIENE UN RESULTADO DE
VALOR
53Cómo identificar los casos de uso del sistema?
Comenzar con los trabajadores del negocio. Para
cada uno
- Decidir si el trabajador del negocio va a
utilizar el sistema de información. - De ser así, identificar un actor en el modelo de
casos de uso del sistema. - Para cada caso de uso del negocio en el que
participe el trabajador del negocio, crear un
caso de uso del sistema. - Repetir estos pasos para todos los trabajadores
del negocio.
54Casos de uso
Ejemplo
55Casos de uso
Casos especiales Manejo del tiempo En algunos
sistemas se tienen actividades que se ejecutan
periódicamente, como por ejemplo, el cálculo de
intereses de los clientes de un banco se realizan
todas la noches. Para modelar esto se puede
realizar lo siguiente
56Perfeccionar la definición de casos de uso
CASOS MÚLTIPLES DE USO
GENERALIZACIÓN/ESPECIALIZACIÓN DE ACTORES
GENERALIZACIÓN/ESPECIALIZACIÓN DE CASOS DE USO
57Cuándo escribir un caso de uso independiente?
- Se duplica comportamiento en otros CU.
- Un CU es complejo y largo, y su separación
facilita que sean manejables y comprensibles.
58Relación de inclusión
Ejemplo
- Casos de uso que tienen una parte común en sus
funcionalidades.
59Relación de inclusión
Ejemplo
- Se observa una relativa independencia en una
parte del flujo de trabajo que se describe, aún
cuando no se reutilice. De ese subproceso solo
interesa el resultado.
ltltincludegtgt
Pagar un servicio por Internet
Usuario
Redefinir deuda pendiente
60Relación de extensión
Ejemplo
Resolver discrepancia
61Relación de extensión
Ejemplo
- Comportamiento que es ejecutado solamente bajo
ciertas condiciones.
ltltextendgtgt
Pagar un servicio por Internet
Especialista del banco
Buscar cuentas alternativas
62Relación de extensión
Ejemplo
- Flujos distintos y diferentes que pueden
ejecutarse sobre la base de la selección del
actor.
ltltextendgtgt
Chequear pagos realizados
Usuario
Reportar discrepancias
63Casos de uso múltiples
Ejemplo
64Generalización/Especialización entre casos de uso
Ejemplo
65Generalización/Especialización entre casos de uso
Colocar Llamada
Colocar Llamada Local
Colocar Llamada Larga Distancia
66Colocar Llamada Local 1.La persona (caller)
levanta el auricular 2.El sistema presenta el
tono de discar 3.La persona disca un dígito 4.El
sistema quita el tono de discar 5.La persona
introduce el resto del número 6.El sistema
analiza el número 7.El sistema encuentra la parte
correspondiente 8.El sistema conecta las
partes 9.Las partes se desconectan
67Colocar Llamada de Larga Distancia 1.La persona
(caller) levanta el auricular 2.El sistema
presenta el tono de discar 3.La persona disca un
dígito 4.El sistema quita el tono de discar 5.La
persona introduce el resto del número 6.El
sistema analiza el número 7.El sistema envía el
número a otro sistema 8.El sistema conecta las
líneas 9.Las partes se desconectan
68(No Transcript)
69(No Transcript)
70Generalización/Especialización entre actores
Ejemplo
Especialista del banco
Consultor de cuentas
Usuario
Chequear pagos realizados
Analizar discrepancias
Chequear estado de una cuenta bancaria
71Descripción de los casos de uso en formato de
alto nivel
Caso de uso ltNombregt Actores ltNombre de
los actoresgt Descripción ltFrases que describan
las acciones indicando los actores involucrados,
debe quedar claro cómo se inicia y termina el
proceso y de que forma intervienen los actoresgt
Referencias ltListado de requerimientos y casos
de uso asociados, indicando tipo de asociación
(include o extend)gt
72Descripción de los casos de uso en formato de
alto nivel
Precondiciones ltCosas que tienen que cumplirse
en el sistema para que se ejecute el CUgt
Poscondiciones ltCondiciones en las que queda el
sistema cuando termina la ejecución del CUgt
Requerimientos especiales ltPrecisar de qué
manera restricciones de tiempo de respuesta,
seguridad, velocidad, disponibilidad, exactitud o
uso de memoria afectan al caso de usogt
73Descripción de casos de uso
Ejemplo
74Descripción de casos de uso
Ejemplo
75Resumiendo...
- Cada forma en que los actores usan el
negocio/sistema se representa con un caso de uso. - Los CU son fragmentos de funcionalidad que el
negocio/sistema ofrece para aportar un resultado
de valor para los actores. - Un CU especifica una secuencia de acciones que el
negocio/sistema puede llevar a cabo interactuando
con sus actores, incluyendo alternativas dentro
de la secuencia.
76Resumiendo...
- Un caso de uso entrega un resultado que añade
valor a un actor en concreto.
A usuarios individuales reales
Al actor iniciador
Evita CU muy grandes
Evita CU muy pequeños
77Resumiendo...
78Resumiendo...
Tipos de relaciones en los DCU
- Inclusión
- Extensión
- Herencia
79Resumiendo...
Error común en los CU
Representar pasos como CU
Imprimir Recibo
Es un paso del proceso más amplio Comprar
Productos
Los casos de uso describen los procesos de
principio a fin.
Se nombran Utilizando verbos fuertes en
infinitivo.
80Resumiendo...
Error común en los CU
Describir los cursos alternos dentro de los
cursos normales
Se debe definir una subsección dentro de la
sección de cursos alternos para cada curso
alterno.
81Resumiendo...
Caso de uso Actualizar Factura
Acción del actor 1 El usuario suministra su
identificación 3 Actualiza los datos de la
nueva factura 5 El usuario concluye la operación.
Respuesta del sistema
2 Localiza la identificación
del usuario. Si no existe el usuario, ejecutar
caso de uso Registrar Usuario. 4 Registra los
datos de la factura.
Presencia de curso alterno dentro del curso normal
82Resumiendo...
Error común en los CU
Describir de manera insuficiente el caso de uso
en aras de ganar tiempo