Está en la página 1de 82

Curso de UML

Diagramas de Casos de Uso del Negocio y del Sistema

Ing. Rafael Edwin Gordillo Flores

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 decir, es accesible por los usuarios.

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 Otras parte de la organizacin, si sta es grande.

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 Distribucin
Compras Personal

Proceso de negocio
Recepcin Embarque Eleccin de proveedores Pago a proveedores Cubrimiento de plantilla Capacitacin

(Ejemplo: Empresa productora)

Identificacin de los procesos del negocio (Objetivos)


SubObjetivo 1 ... ... SubObjetivo n
Satisfacer de los clientes. pedidos de Solicitra insumo los clientes a los proveedores.
(Ejemplo: Empresa de servicio) Atender pedido

Cliente

Atender pedido

Proveedor Comprar suministros

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 relacin al negocio.

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

Marketing

Gerente de Relaciones Pblicas

Cliente

Servicio de comida

Proveedor

Comprar suministros

(Ejemplo:Restaurant)

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

Verificar poltica de descuento

(Ejemplo: Empresa de servicios)

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


Despachar medicamentos en farmacia

Cliente

Asignar citas Administrador Consulta Externa


(Ejemplo:Hospital)

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 secuencia

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

Cliente
Nombre
Actores Propsito

Atender pedido

Atender pedido
CLIENTE 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.

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.

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

Cliente
CURSOS ALTERNOS En la lnea 4

Atender pedido
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 Alta 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.

Prioridad Mejoras

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

Desarrolladores

Requisitos

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 automatizadas

Diagrama de casos de uso del negocio


(Ejemplo: Empresa constructora)

Proyectista

Atender proyecto nuevo

Diagrama de Actividad.

Requisito funcional

3. Analizar viabilidad tcnica

1.1 Evaluar factibilidad econmica 1.2 Registrar resultados de la evaluacin. 1.1 Evaluar factibilidad tcnica 1.2 Registrar resultados de la evaluacin.

Registrar caractersticas de un proyecto Analizar viabilidad econmica

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 trabajadores del negocio.

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:

Calcular intereses Reloj

Perfeccionar la definicin de casos de uso

CASOS MLTIPLES DE USO

GENERALIZACIN/ ESPECIALIZACIN DE ACTORES GENERALIZACIN/ ESPECIALIZACIN 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>>

Verificar permiso

Chequear pagos realizados

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 Analizar discrepancias


<<extend>>

Especialista del banco

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>> <<include>> Reportar incongruencias Pagar un servicio por internet <<extend>>

Verificar permiso

Redefinir deuda

Generalizacin/Especializacin entre casos de uso


Ejemplo

Usuario

Pagar

Pagar con tarjeta de crdito

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

Consultor de cuentas

Usuario

Analizar discrepancias

Chequear estado de una cuenta bancaria

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 Precondiciones R4 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 reales

Al actor iniciador

Evita CU muy pequeos

Evita CU muy grandes

Resumiendo...
Relacin entre Modelos del Negocio y Modelos del Sistema Modelos del Sistema Actores Candidatos obtenidos de los modelos del negocio Los actores candidatos encuentran entre trabajadores del negocio. Modelos del Negocio se Trabajadores los del Negocio

Otros actores candidatos se encuentran entre diferentes actores del negocio (clientes, socios, etc.) que directamente usarn el sistema de informacin

Actor del Negocio

Casos de uso

Casos de uso candidatos se Actividades 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 informacin.

Resumiendo...
Tipos de relaciones en los DCU
Comunicacin
Actor Caso de Uso
<<include>>

Inclusin
Caso de Uso Origen

Caso de Uso Destino


<<extend>>

Extensin
Caso de Uso Origen Caso de Uso Destino

Herencia
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 4 Registra los datos de la 5 El usuario concluye la Presencia de curso alterno factura. operacin. dentro del curso normal

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