Sei sulla pagina 1di 82

Curso de UML

Actividad 2
Diagramas de Casos de Uso del
Negocio y del Sistema

Dra. Anaisa Hernández González


Sumario

 Casos de uso
 Casos de uso del Negocio
 Casos de uso del Sistema
Casos de uso
Casos 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.
Casos 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


Casos 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.
Casos 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.
¿En qué momento se usa los CU?
Casos de uso del Negocio
Modelo 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.

Estereotipos
Actor del Caso de Uso
Negocio del Negocio
¿Actor del negocio?
Rol que alguien o algo juega cuando
interactúa con el negocio para
beneficiarse de sus resultados.
Candidatos: Rol = Actor
• 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.
Proceso 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.
Casos de Uso del Negocio (CUN)
Secuencia de acciones, realizadas en el
negocio, que producen un resultado de valor
observable para ciertos actores del negocio.

Desde la perspectiva de un actor individual,


define un flujo de trabajo completo que
produce resultados deseados.
Envía y/o recibe mensajes

asociación
Cliente Vender Pasaje
Identificación de los procesos del negocio
(Clasificación)

Cliente Servicio de comida

Comprar suministros Proveedor

Marketing
Cliente potencial Experto en
(Ejemplo: Restaurante) relaciones públicas
Identificació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 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)
Identificación de los procesos del negocio
(Objetivos)

SubObjetivo 1
...
...
SubObjetivo n
• Atender pedido
“Satisfacer
de los clientes.
pedidos de Cliente Atender pedido
• Solicitra insumo
los clientes”
a los
proveedores. Proveedor Comprar suministros

(Ejemplo: Empresa de servicio)


Consideraciones 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
Consideraciones 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.
Diagrama de CUN
Diagrama que representa gráficamente a los
procesos del negocio y su interacción con
los actores del negocio.

Client e Mark et ing


pot encial Ger ent e de Relaciones
Públicas

Pr oveedor Com prar


Client e Servicio de com ida sum inist ros
(Ejemplo:Restaurant)
Convenios 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/especialización si en el padre se
describe toda la comunicación.
Convenios 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.
Convenios 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.
Estructuració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.
Estructuración de los CUN

• Relación de inclusión
• Relación de extensión
• Relación de Generalización-especialización
Relación de inclusión <include>
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).
Relación de inclusión <include>

Se justifica cuando:
• 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.
Relación de inclusión <include>.
REUTILIZAR

<<include>>
Check-In
Pasajero Individual
Manipular
<<include>> Equipaje

Guía de Check-In
turismo de Grupo
(Ejemplo: Aduana)
Relación de inclusión <include>.
PARTICIONAR

<<include>>
Venta de
Cliente producto
Verificar
Es un CU de apoyo que política de
no se relaciona con descuento
actores

(Ejemplo: Empresa de servicios)


Relación de extensión <extend>
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.
Relación de extensión <extend>.

Pasajero

<<extend>>
Check-In Individual Manejo Especial de Equipaje

SOLO PARA ALGUNOS PASAJEROS HAY QUE


IR AL COUNTER DE EQUIPAJE ESPECIAL
(Ejemplo: Aduana)
Generalizació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.
Generalización - especialización
Se utiliza para:
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.
Generalización – especialización.

Realizar
visitas
Jefe zonal

Realizar Visitas a Realizar visitas a


clientes potenciales clientes registrados
(Ejemplo: Vendedores ambulantes)
Generalizació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).
Generalización entre Actores. Ejemplo

Despachar medicamentos
en farmacia
Cliente

Asignar citas Administrador Administrador Asignar camas


Consulta Externa Hospitalización
(Ejemplo:Hospital)
Realizaciones 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
Descripció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
Cliente Atender pedido
Nombre Atender pedido
Actores CLIENTE
Propósito 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.
CURSO NORMAL DE EVENTOS
Acción del actor Respuesta del proceso de negocio
1. El Cliente envía una orden de 2.El Comercial recibe el pedido del cliente por teléfono o correo ordinario de la
pedido que incluye fecha de empresa.
solicitud, datos del cliente y 3.El Comercial revisa el pedido, comienza su procesamiento, y lo envía al Jefe
productos solicitados. 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.
9. El Cliente recibe la 8. El Comercial informa al cliente.
comunicación del resultado final
del análisis del pedido.
Cliente Atender pedido
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
Sección Aceptar Producto Especial
1.El Jefe Técnico incluye el Producto Especial en Catálogo
2.El Jefe Técnico diseña la Carta Tecnológica del Producto Especial.

Sección Rechazar Producto Especial


1.El Jefe Técnico incluye el Producto Especial en
Registro de Productos Especiales Rechazados,
indicando las causas del rechazo.
Casos de uso del Sistema
Casos 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.
Casos de uso del sistema

Descripciones de la funcionalidad del sistema


independientes de la implementación.
Definició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..
Requisito funcional
“Una capacidad o condición que el
sistema cumplirá”

Co l e s
mp s ib
re e n
ns p r
ibl m
es Co
Desarrolladores

Requisitos Clientes y Usuarios


Clasificación de los requisitos
funcionales

• Objetivos y metas para un sistema.


(Funcional) • Si están presentes ⇒ Cliente satisfecho

• Implícitos al sistema.
(No Funcional) • Puede que el cliente no los declare,
pero si no están se siente
insatisfecho.

• Características que van más allá de la


(Funcional y no
expectativas del cliente.
funcionales)
Identificación de requisitos
funcionales a partir del modelo
del negocio
• Descripciones textuales.
• Diagrama de clases del
modelo de objetos del
negocio.
• Diagrama de actividades.

Actividades que serán


automatizadas
Diagrama de casos de uso
del negocio

(Ejemplo: Empresa constructora)

Proyectista Atender proyecto nuevo


Diagrama de Actividad.
Requisito 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
Actores
• No son parte del sistema
• Puede intercambiar información con el sistema.
• Puede ser un recipiente pasivo de información.
Actores
Identificación de los CU del sistema a
partir del modelo del negocio

CASO DE USO = PROCESO QUE


OBTIENE UN
RESULTADO DE
¿Có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.
Casos de uso
Ejemplo

Jefe de obra Económico

Aprobar/rechazar proyecto
Evaluar un proyecto
económicamente
Evaluar un proyecto
técnicamente
Casos 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:

Calcular intereses
Reloj
Perfeccionar la definición de
casos de uso

CASOS GENERALIZACIÓN/
MÚLTIPLES ESPECIALIZACIÓN
DE USO DE ACTORES
GENERALIZACIÓN/E
SPECIALIZACIÓN
DE CASOS DE USO
¿Cuá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.

• Crear casos de uso independientes


(Representar relaciones <<include>> o
<<extend>> entre los casos de uso).
• Reescribir los casos de uso de las actividades
ramificadas.
Relación de inclusión
Ejemplo
• Casos de uso que tienen una parte común en sus
funcionalidades.
<<include>>

Pagar un servicio
por Internet
Usuario
<<include>> Verificar
permiso
Chequear pagos
realizados
Relació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.

<<include>>

Pagar un servicio
por Internet
Usuario
Redefinir deuda
pendiente
Relación de extensión
Ejemplo
• Comportamiento opcional.
<<extend>>
Enviar e-mail a
superior
<<extend>>
Analizar
Especialista discrepancias
del banco
Resolver
discrepancia
Relación de extensión
Ejemplo
• Comportamiento que es ejecutado solamente bajo
ciertas condiciones.

<<extend>>

Pagar un servicio
por Internet
Especialista
del banco Buscar cuentas
alternativas
Relación de extensión
Ejemplo
• Flujos distintos y diferentes que pueden ejecutarse
sobre la base de la selección del actor.

<<extend>>

Chequear pagos
realizados
Usuario
Reportar
discrepancias
Casos de uso múltiples
Ejemplo

Usuario Pagar un servicio por


internet
<<include>> <<extend>>
<<include>>

Reportar
Verificar permiso Redefinir deuda
incongruencias
Generalización/Especialización
entre casos de uso
Ejemplo

Usuario Pagar

Pagar con Pagar en


tarjeta de crédito efectivo
Generalización/Especialización
entre casos de uso

Colocar
Llamada

Colocar Llamada Colocar Llamada


Local Larga Distancia
Colocar 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
Colocar 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
Descripción del caso de uso Colocar Llamada

Segmento No.1. Proceso inicial.

1. La persona que llama (caller) levanta el auricular.


2. El sistema presenta el tono de discar.
3. La persona que llama disca un dígito.
4. El sistema quita el tono de discar.
5. La persona que llama introduce el resto del número.
6. El sistema analiza el número.

Segmento No.2. Proceso especializado de conexión.

Segmento No.3. Desconexión.


1. Las partes se desconectan.
Descripción de caso de uso COLOCAR LLAMADA
LOCAL
Segmento No.2. Proceso especializado de conexión.
1. El sistema encuentra la parte correspondiente.
2. El sistema conecta las partes.

Descripción de caso de uso COLOCAR LLAMADA


DE LARGA DISTANCIA
Segmento No.2. Proceso especializado de conexión.
1. El sistema envía el número a otro sistema.
2. El sistema conecta las líneas.
Generalización/Especialización
entre actores
Ejemplo

Especialista Consultor Usuario


del banco de cuentas

Analizar Chequear pagos


discrepancias Chequear realizados
estado de una
cuenta bancaria
Descripción de los casos de uso en
formato de alto nivel
Caso de uso: <Nombre>
Actores: <Nombre de los actores>
Descripción: <Frases 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 actores>
Referencias: <Listado de requerimientos y
casos de uso asociados,
indicando tipo de asociación
(include o extend)>
Descripción de los casos de uso en
formato de alto nivel
Precondiciones: <Cosas que tienen que
cumplirse en el sistema para
que se ejecute el CU>
Poscondiciones: <Condiciones en las que
queda el sistema cuando
termina la ejecución del CU>
Requerimientos especiales: <Precisar de qué
manera restricciones de tiempo
de respuesta, seguridad,
velocidad, disponibilidad,
exactitud o uso de memoria
afectan al caso de uso>
Descripción de casos de uso
Ejemplo
Caso de uso: Aprobar/rechazar un proyecto

Actores: Jefe de obra

Descripción:
El caso de uso se inicia cuando se han realizado las evaluaciones
técnica y económica de una propuesta de un proyecto y el Jefe de obra
debe valorar si se aprueba o no su ejecución. El sistema debe permitir
ver los resultados de estas evaluaciones y permitir que se registre las
conclusiones del Jefe de obra (aprobar/rechazar y alguna otra
consideración que justifique su decisión, culminando la ejecución del
caso de uso.
Descripción de casos de uso
Ejemplo

Referencias R4

Precondiciones Existan proyectos ya evaluados técnica y


económicamente y estén pendientes de aprobación o
rechazo
Poscondiciones Se cambia el estado del proyecto a rechazado o
aprobado y se asocian las causas que motivaron la
decisión

Requerimientos -
especiales
Resumiendo...
• 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.
Resumiendo...

•Un caso de uso entrega un resultado que añade


valor a un actor en concreto .

A usuarios
Al actor iniciador individuales reales

Evita CU muy grandes


Evita CU muy pequeños
Resumiendo...
Relación entre Modelos del Negocio y Modelos del Sistema

Modelos Candidatos obtenidos de los Modelos del


del modelos del negocio Negocio
Sistema
Actores  Los actores candidatos se Trabajadores
encuentran entre los del Negocio
trabajadores del negocio.

 Otros actores candidatos se


encuentran entre diferentes Actor del
actores del negocio (clientes, Negocio
socios, etc.) que directamente
usarán el sistema de información

Casos de Casos de uso candidatos se Actividades


uso encuentran entre las actividades de de
los trabajadores del negocio. Trabajadores
Buscar las operaciones y áreas de del Negocio
responsabilidad que involucren
interacciones con el sistema de
información.
Resumiendo...
Tipos de relaciones en los DCU
– Comunicación
Caso de Uso
Actor
<<include>>

– Inclusión
Caso de Uso Origen Caso de Uso Destino

<<extend>>

– Extensión Caso de Uso Origen Caso de Uso Destino

– Herencia Caso de Uso Hijo Caso de Uso Padre


Resumiendo...
Error común en los CU
Representar pasos Imprimir Recibo
como CU
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.
Resumiendo...

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.
Resumiendo...
Caso de uso: Actualizar Factura
Acción del actor Respuesta del sistema
1 El usuario suministra su
identificación

2 Localiza la identificación
del usuario. Si no existe el
3 Actualiza los datos de la
nueva factura usuario, ejecutar caso de
uso “Registrar Usuario”.
5 El usuario concluye la
Presencia de curso alterno
operación.
dentro del curso normal
4 Registra los datos de la
factura.
Resumiendo...
Error común en los CU

Describir de manera insuficiente el caso


de uso en aras de “ganar tiempo”

Potrebbero piacerti anche