Anda di halaman 1dari 82

Curso de UML

Actividad 2
Diagramas de Casos de Uso del
Negocio y del Sistema
Dra. Anaisa Hernndez Gonzlez

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 lmites 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 implementacin.

Casos de uso
Los Casos de Uso cubren la carencia
existente en mtodos previos (OMT,
Booch) en cuanto a la determinacin de
requisitos.
Los Casos de Uso particionan el conjunto
de necesidades atendiendo a la categora
de usuarios que participan en el mismo.
Estn basado en el lenguaje natural, es

Casos de uso vs. DFD


Un CU es una funcin (servicio o transaccin)
atmica ofrecida por el sistema al entorno
(actores).
Un proceso de un DFD puede ser detallado en un
DFD hijo. As, el concepto de explosin de
proceso slo se aplica a los DFDs.

Casos de uso vs. DFD


Un CU y un proceso modelan una pieza de
funcionalidad del sistema, pero su especificacin es
diferente. En un CU interesa expresar la funcionalidad
mediante la interaccin actores sistema. En un
proceso la funcionalidad se expresa mediante la
transformacin 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 visin
externa del sistema. Un DFD, segn sea el nivel de
detalle, puede mostrar descomposicin 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
accin, y cmo se benefician e
interactan los socios y clientes en
estos procesos.
Estereotipos
Actor del
Negocio

Caso de Uso
del Negocio

Actor del negocio?


Rol que alguien o algo juega cuando
interacta con el negocio para
beneficiarse de sus resultados.
Candidatos:
Clientes o potenciales clientes

Rol = Actor

Socios
Proveedores
Autoridades
Propietarios
Sistemas de informacin externos al
negocio

Proceso de negocio
Grupo de tareas lgicamente
relacionadas que se llevan a cabo en
una determinada secuencia y manera y
que emplean los recursos de la
organizacin 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.

Enva y/o recibe mensajes


asociacin
Cliente

Vender Pasaje

Identificacin de los procesos del negocio


(Clasificacin)
Servicio
de
comida
Cliente
Comprar suministros Proveedor

Cliente potencial

Marketing

(Ejemplo: Restaurante)

Experto en
relaciones pblicas

Identificacin de los procesos del negocio


(Agrupamiento de actividades)
Un grupo funcional que
responde a un objetivo de la
organizacin y que puede
involucrar a varias reas.
Funcin
Proceso de negocio
Distribucin Recepcin
Embarque

Compras

Eleccin de proveedores
Pago a proveedores

Personal

Cubrimiento de plantilla
Capacitacin

(Ejemplo: Empresa productora)

Identificacin de los procesos del negocio


(Objetivos)
SubObjetivo 1
...
...
SubObjetivo n
Atender pedido
Satisfacer
de los clientes.
pedidos de
Solicitra
los
insumo a los
clientes
proveedores.

Cliente

Atender pedido

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 especfica.
Cada actor modela algo fuera del
negocio.
Cada actor se involucra con al menos
un caso de uso.
Cada actor tiene una descripcin y
un nombre que explica su rol en

Consideraciones acerca de los CUN


Su nombre y descripcin breve son
claras y fciles 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 interacte con ningn actor.

Diagrama de CUN
Diagrama que representa grficamente a
los procesos del negocio y su interaccin
con los actores del negocio.
Cliente
potencial

Cliente

Marketing

Servicio de comida

(Ejemplo:Restaurant)

Gerente de Relaciones
Pblicas

Proveedor

Comprar
suministros

Convenios en la representacin del


Diagrama de CUN
Un caso de uso puede asociarse con
uno o ms 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 relacin de
generalizacin/especializacin si en el padre se
describe toda la comunicacin.

Convenios en la representacin del


Diagrama de CUN
Navegabilidad en las relaciones de
comunicacin entre actores y CUN
Indica quin inicia la comunicacin en la
interaccin 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 relacin en los dos sentidos se muestra sin
saetas.
Por cada flecha de comunicacin se asume un
mensaje de retorno.

Convenios en la representacin del


Diagrama de CUN
Navegabilidad en las relaciones de
comunicacin entre actores y CUN
NO confundir navegabilidad con flujos de datos, la
navegabilidad solo indica relacin de iniciacin.
Los convenios que usaremos sern:
La flecha de iniciacin del actor al CUN siempre se
muestran, an si ms tarde el CU inicia comunicacin
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.

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

Estructuracin de los CUN


Relacin de inclusin
Relacin de extensin
Relacin de Generalizacin-especializacin

Relacin de inclusin <include>


Una
relacin
que
especifica
un
comportamiento definido para el CU de
inclusin que se inserta explcitamente 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).

Relacin de inclusin <include>


Se justifica cuando:
Se puede reusar en otros CUN el
comportamiento incluido en el caso de
uso base, o
Simplifica la comprensin del caso de
uso base.

Relacin de inclusin <include>.


REUTILIZAR

Pasajero

Check-In
Individual

<<include>>

Manipular
<<include>> Equipaje
Gua de
turismo

Check-In
de Grupo

(Ejemplo: Aduana)

Relacin de inclusin <include>.


PARTICIONAR
<<include>>

Cliente

Venta de
producto
Es un CU de apoyo que
no se relaciona con
actores

(Ejemplo: Empresa de servicios)

Verificar
poltica de
descuento

Relacin de extensin <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 seleccin del actor.

Relacin de extensin <extend>.

Pasajero
<<extend>>
Check-In Individual
Manejo Especial de Equipaje
SOLO PARA ALGUNOS PASAJEROS HAY QUE
IR AL COUNTER DE EQUIPAJE ESPECIAL
(Ejemplo: Aduana)

Generalizacin - especializacin
Se usa para mostrar worksflows
que
comparten
estructuras,
propsito y comportamiento.
Un caso de uso padre se puede
especificar en uno o ms casos
de uso hijos que representan
formularios ms especificos del
padre.

Generalizacin - especializacin

Se utiliza para:
Para no tener que describir el mismo
flujo varias veces, se puede colocar el
comportamiento comn 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.

Generalizacin especializacin.
Realizar
visitas
Jefe zonal

Realizar Visitas a
clientes potenciales

Realizar visitas a
clientes registrados

(Ejemplo: Vendedores ambulantes)

Generalizacin 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 interactan como
actor con otro CUN).

Generalizacin entre Actores. Ejemplo

Cliente

Asignar citas Administrador


Consulta Externa
(Ejemplo:Hospital)

Despachar medicamentos
en farmacia

Administrador
Hospitalizacin

Asignar camas

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
Descripcin textual
Diagramas de clases
Diagramas de

Descripcin textual de los


Casos de Uso

nombre del caso del uso del negocio


actores
propsito
resumen
flujo de trabajo
- Bsico (normal)
- Curso Alterno
otras secciones
Prioridad
Mejoras

Nombre

Cliente

Atender pedido

Atender pedido

Actores

CLIENTE

Propsito

Analizar viabilidad del Pedido del Cliente y ordenar su produccin.

Resumen: El caso de uso se inicia cuando el Cliente enva 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 anlisis de su pedido.
CURSO NORMAL DE EVENTOS
Accin del actor
1. El Cliente enva una orden de
pedido que incluye fecha de
solicitud, datos del cliente y
productos solicitados.

9. El Cliente recibe la
comunicacin del resultado final
del anlisis del pedido.

Respuesta del proceso de negocio


2.El Comercial recibe el pedido del cliente por telfono o correo ordinario de la
empresa.
3.El Comercial revisa el pedido, comienza su procesamiento, y lo enva al Jefe
Tcnico.
4.El Jefe Tcnico analiza la viabilidad de cada producto pedido por separado:
Si el producto pedido est en Catlogo, se acepta su fabricacin.
5. El Jefe Tcnico informa al Comercial la aceptacin 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 Tcnico crea una orden de trabajo para cada producto del pedido, a
partir de la plantilla de fabricacin y las envan al Jefe de Produccin, quedando
pendiente su lanzamiento.
7. El Jefe de Produccin planifica la produccin de las rdenes de trabajo
recibidas.
8. El Comercial informa al cliente.

Cliente

Atender pedido

CURSOS ALTERNOS
En la lnea 4

Si el producto no est en catlogo se considera Producto Especial y el Jefe


Tcnico estudia su posible produccin:
Si es viable, se acepta la fabricacin del Producto Especial. Ver Seccin
Aceptar Producto Especial
Si no es viable, no se fabrica el Producto Especial. Ver Seccin Rechazar
Producto Especial

Prioridad

Alta

Mejoras

Establecer, adems, la comunicacin con el usuario a travs de correo


electrnico y va Internet.
El Jefe de produccin colocar las rdenes de produccin en una cola y
automticamente se planificar la produccin de la semana segn las
capacidades de las lneas y los pedidos pendientes.

Otras secciones
Seccin

Aceptar Producto Especial


1.El Jefe Tcnico incluye el Producto Especial en Catlogo
2.El Jefe Tcnico disea la Carta Tecnolgica del Producto Especial.

Seccin

Rechazar Producto Especial


1.El Jefe Tcnico 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 implementacin.

Casos de uso del sistema


Descripciones de la funcionalidad del sistema
independientes de la implementacin.

Definicin de Requisitos
Es el proceso de averiguar, por lo general en
circunstancias difciles, lo que se debe construir.
Los usuarios deben saber lo que quieren

Cada uno sabe lo que hace, pero


ninguno tiene una visin global
No saben cmo puede hacerse ms eficiente
la operacin en su conjunto.
No saben qu parte de su trabajo puede
transformarse en software..

Requisito funcional
Una capacidad o condicin que el
sistema cumplir

Co
m
pr

en
s ib
l es
Desarrolladores

m
o
C

Requisitos

e
r
p

ib
s
n

s
e
l

Clientes y Usuarios

Clasificacin de los requisitos


funcionales
(Funcional)

Objetivos y metas para un sistema.


Si estn presentes Cliente satisfecho

Implcitos al sistema.
(No Funcional) Puede que el cliente no los declare,
pero si no estn se siente
insatisfecho.
Caractersticas que van ms all de la
(Funcional y no
expectativas del cliente.
funcionales)

Identificacin 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
sern

Diagrama de casos de uso


del negocio
(Ejemplo: Empresa constructora)

Proyectista

Atender proyecto nuevo

Diagrama de Actividad.

Requisito funcional
Registrar caractersticas de un
proyecto
Analizar viabilidad econmica
1.1 Evaluar factibilidad econmica
1.2 Registrar resultados de la
evaluacin.

3. Analizar viabilidad tcnica

1.1 Evaluar factibilidad tcnica


1.2 Registrar resultados de la
evaluacin.

4. Registrar aprobacin/rechazo
de un proyecto

Actores
No son parte del sistema
Puede intercambiar informacin con el sistema.
Puede ser un recipiente pasivo de informacin.

Actores

Identificacin de los CU del sistema a


partir del modelo del negocio

CASO DE USO = PROCESO QUE


OBTIENE UN
RESULTADO DE VALOR

Cmo 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 informacin.
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

Casos de uso
Ejemplo

Jefe de obra

Econmico

Aprobar/rechazar proyecto
Evaluar un proyecto
econmicamente
Evaluar un proyecto
tcnicamente

Casos de uso
Casos especiales: Manejo del tiempo
En algunos sistemas se tienen actividades
que se ejecutan peridicamente, como por
ejemplo, el clculo de intereses de los
clientes de un banco se realizan todas la
noches. Para modelar esto se puede
realizar lo siguiente:

Reloj

Calcular intereses

Perfeccionar la definicin de
casos de uso

CASOS
GENERALIZACIN/
MLTIPLES
ESPECIALIZACIN
DE USO
DE ACTORES
GENERALIZACIN/E
SPECIALIZACIN
DE CASOS DE USO

Cundo escribir un caso de


uso independiente?
Se duplica comportamiento en otros CU.
Un CU es complejo y largo, y su separacin
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.

Relacin de inclusin
Ejemplo
Casos de uso que tienen una parte comn en sus
funcionalidades.
<<include>>

Pagar un servicio
por Internet
Usuario

<<include>>

Chequear pagos
realizados

Verificar
permiso

Relacin de inclusin
Ejemplo
Se observa una relativa independencia en una parte del
flujo de trabajo que se describe, an cuando no se
reutilice. De ese subproceso solo interesa el resultado.
<<include>>

Pagar un servicio
por Internet
Usuario

Redefinir deuda
pendiente

Relacin de extensin
Ejemplo
Comportamiento opcional.
<<extend>>

Enviar e-mail a
superior

Especialista
del banco

Analizar
discrepancias

<<extend>>

Resolver
discrepancia

Relacin de extensin
Ejemplo
Comportamiento que es ejecutado solamente bajo
ciertas condiciones.

<<extend>>

Pagar un servicio
por Internet
Especialista
del banco

Buscar cuentas
alternativas

Relacin de extensin
Ejemplo
Flujos distintos y diferentes que pueden ejecutarse
sobre la base de la seleccin del actor.

<<extend>>

Chequear pagos
realizados
Usuario

Reportar
discrepancias

Casos de uso mltiples


Ejemplo
Usuario
<<include>>

Pagar un servicio por


internet
<<extend>>
<<include>>

Verificar permiso

Redefinir deuda

Reportar
incongruencias

Generalizacin/Especializacin
entre casos de uso
Ejemplo

Usuario

Pagar con
tarjeta de crdito

Pagar

Pagar en
efectivo

Generalizacin/Especializacin
entre casos de uso

Colocar
Llamada

Colocar Llamada
Local

Colocar Llamada
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 dgito
4.El sistema quita el tono de discar
5.La persona introduce el resto del nmero
6.El sistema analiza el nmero
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 dgito
4.El sistema quita el tono de discar
5.La persona introduce el resto del nmero
6.El sistema analiza el nmero
7.El sistema enva el nmero a otro
sistema
8.El sistema conecta las lneas
9.Las partes se desconectan

Descripcin 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 dgito.
4. El sistema quita el tono de discar.
5. La persona que llama introduce el resto del nmero.
6. El sistema analiza el nmero.
Segmento No.2. Proceso especializado de conexin.
Segmento No.3. Desconexin.
1. Las partes se desconectan.

Descripcin de caso de uso COLOCAR LLAMADA


LOCAL
Segmento No.2. Proceso especializado de conexin.
1. El sistema encuentra la parte correspondiente.
2. El sistema conecta las partes.

Descripcin de caso de uso COLOCAR LLAMADA


DE LARGA DISTANCIA
Segmento No.2. Proceso especializado de conexin.
1. El sistema enva el nmero a otro sistema.
2. El sistema conecta las lneas.

Generalizacin/Especializacin
entre actores
Ejemplo

Especialista
del banco

Analizar
discrepancias

Consultor
de cuentas

Chequear
estado de una
cuenta bancaria

Usuario

Chequear pagos
realizados

Descripcin de los casos de uso en


formato de alto nivel
Caso de uso: <Nombre>
Actores:
<Nombre de los actores>
Descripcin: <Frases que describan las
acciones indicando los actores
involucrados, debe quedar claro
cmo 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 asociacin
(include o extend)>

Descripcin 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 ejecucin 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>

Descripcin de casos de uso


Ejemplo
Caso de uso:

Aprobar/rechazar un proyecto

Actores:

Jefe de obra

Descripcin:
El caso de uso se inicia cuando se han realizado las evaluaciones
tcnica y econmica de una propuesta de un proyecto y el Jefe de obra
debe valorar si se aprueba o no su ejecucin. 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
consideracin que justifique su decisin, culminando la ejecucin del
caso de uso.

Descripcin de casos de uso


Ejemplo
Referencias

R4

Precondiciones

Existan proyectos ya evaluados tcnica y


econmicamente y estn pendientes de aprobacin o
rechazo
Se cambia el estado del proyecto a rechazado o
aprobado y se asocian las causas que motivaron la
decisin

Poscondiciones

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
aade valor a un actor en concreto.

A usuarios
individuales
Al actor
reales
iniciador
Evita CU muy grande
Evita CU muy pequeos

Resumiendo...

Resumiendo...
Tipos de relaciones en los DCU
Comunicacin
Caso de Uso

Actor
<<include>>

Inclusin

Caso de Uso Origen

Caso de Uso Destino


<<extend>>

Extensin

Herencia

Caso de Uso Origen

Caso de Uso Destino

Caso de Uso Hijo

Caso de Uso Padre

Resumiendo...
Error comn en los CU
Representar pasos
como CU

Imprimir Recibo

Es un paso del
proceso ms amplio
Comprar Productos

Los casos de uso describen los


procesos de principio a fin.
Se nombran: Utilizando verbos fuertes en
infinitivo.

Resumiendo...
Error comn en los CU
Describir los cursos
alternos dentro de
los cursos
normales
Se debe definir una
subseccin dentro de
la seccin de cursos
alternos para cada
curso alterno.

Resumiendo...
Caso de uso: Actualizar Factura
Accin del actor
1 El usuario suministra su
identificacin

Respuesta del sistema

2 Localiza la identificacin
del usuario. Si no existe el
usuario, ejecutar caso de
uso Registrar Usuario.

3 Actualiza los datos de la


nueva factura
5 El usuario concluye la
Presencia de curso alterno
operacin.
dentro del curso normal
4 Registra los datos de la
factura.

Resumiendo...
Error comn en los CU
Describir de manera insuficiente el caso
de uso en aras de ganar tiempo