Está en la página 1de 50

DIAGRAMAS

COMPORTAMIENTO
A diferencia de los diagramas estructurales, muestran como se comporta un sistema de
información de forma dinámica. Es decir, describe los cambios que sufre un sistema a través
del tiempo cuando está en ejecución. Hay un total de siete diagramas de comportamiento,
clasificados de la siguiente forma:

Diagrama de casos de uso


Diagrama de secuencia
Diagrama de actividades
Diagrama de estados
Diagrama de comunicación
Diagrama global
Diagrama de tiempos
Diagrama de casos de uso

Es utilizado para representar los actores externos que interactúan con el sistema de
información y a través de que funcionalidades (casos de uso o requisitos funcionales) se
relacionan. Dicho de otra manera, muestra de manera visual las distintas funciones que puede
realizar un usuario (más bien un tipo de usuario) de un Sistema de Información.

El diagrama de casos de uso, dependiendo de la profundidad que le demos, puede ser utilizado
para muchos fines, entre ellos podemos encontrar los siguientes:

• Representar los requisitos funcionales.

• Representar los actores que se comunican con el sistema. Normalmente los actores del
sistema son los usuarios y otros sistemas externos que se relacionan con el sistema. En el
caso de los usuarios hay que entender el actor como un “perfil”, pudiendo existir varios
usuarios que actúan como el mismo actor.

• Representar las relaciones entre requisitos funcionales y actores.

• Guiar el desarrollo del sistema. Crear un punto de partida sobre el que empezar a


desarrollar el sistema.
Elementos de un diagrama de casos de uso

Un diagrama de casos de uso está compuesto, principalmente, de 3 elementos: Actores,


Casos de uso y Relaciones.

1. Actores
Un actor es algo o alguien externo al sistema que interactúa de forma directa con el
sistema. Cuando decimos que interactúa nos referimos a que aporta información, recibe
información, inicia una acción…

Se representan con una imagen de un “muñeco de palo” con el nombre del actor debajo.
Elementos de un diagrama de casos de uso

Existen dos tipos de actores: Los usuarios y los sistemas.

No hay que entender los usuarios como personas singulares, sino como “perfiles o roles” que
identifican a un tipo de usuario, pero no al usuario en sí.

Por ejemplo, en una aplicación de gestión de nóminas, un actor de este tipo podría ser
“gestor de nóminas” que se encarga de emitir y firmar nóminas. Este rol podría ser tomado,
por ejemplo, por cualquier individuo del personal de recursos humanos y, además, por el
jefe de la empresa.
Elementos de un diagrama de casos de uso

2. Casos de uso
Un caso de uso se utiliza para representar una de las funcionalidades que realiza el sistema.
Es una secuencia de acciones que hace el sistema y que producen un resultado que puede
percibir un usuario.
Caso de uso es una clasificación de comportamiento que especifica una unidad de
funcionalidad completa y que está realizada por uno o más sujetos que se relacionan con el
caso de uso colaborando para ello con uno o más actores y que produce un resultado que
tiene alguna utilidad para cualquier de esos actores.

Se representan con una elipse que incluye en su interior el nombre del caso de uso.

Existen muchos ejemplos de casos de uso. Algunos podrían ser: Crear pedido, Listar
productos, Enviar correo. Cualquier acción que realice la aplicación.
Elementos de un diagrama de casos de uso

3. Relaciones
Las relaciones conectan los casos de uso con los actores o los casos de uso entre sí.
Cuando conectan un actor con un caso de uso representa que ese actor interactúa de alguna
manera con ese caso de uso y se representa con una linea continua con la
identificación <<communicates>>.

Cuando conectan casos de uso entre sí se pueden diferenciar dos tipos de relaciones:
<<include>> y <<extends>>. En español a veces se usa la nomenclatura <<usa>> y
<<extiende>>.
Elementos de un diagrama de casos de uso

3. Relaciones

<<include>>: Se utiliza para representar que un caso de uso utiliza siempre a otro caso de
uso. Es decir, un caso de uso se ejecutará obligatoriamente (lo incluye, lo usa). Se
representa con una flecha discontinua que va desde el caso de uso de origen al caso de uso
que se incluye.

Un uso típico de este tipo de relaciones se produce cuando dos casos de uso comparten una
funcionalidad. Esa funcionalidad es extraida de los dos y se crea un caso de uso nuevo que
se relaciona con los anteriores con un include.

En este ejemplo, los casos de uso emitir factura y enviar producto ejecutarán ambos el caso
de uso autenticación.
Elementos de un diagrama de casos de uso

3. Relaciones

<<extend>>: Este tipo de relaciones se utilizan cuando un caso de uso tiene un


comportamiento opcional, reflejado en otro caso de uso. Es decir, un caso de uso puede
ejecutar, normalmente dependiendo de alguna condición o flujo del programa, otro caso de
uso. Se representa con una flecha discontinua que va desde el caso de uso opcional al
original.

Un ejemplo de esta relación podría ser la siguiente:

En este supuesto el caso de uso Hacer pedido puede dar lugar (o no) a otros dos casos de
uso: Enviar notificación SMS y Enviar notificación email. Se supone que, cuando un usuario
hace un pedido, el sistema le permite elegir si quiere que se envíe una notificación de ese
pedido por SMS o por email.
Elementos de un diagrama de casos de uso

3. Relaciones

Existe, además, otra relación denominada generalización que consiste en hacer que un


elemento herede el comportamiento de otro. Aunque se puede utilizar entre casos de uso,
es más común utilizarlo entre actores, haciendo que uno de los actores tenga acceso a las
funcionalidades de otro. Se representa con una flecha con la punta hueca que va desde el
elemento que hereda al elemento heredado:
Descripción de requisitos funcionales y no funcionales

Es común en este tipo de diagramas describir cada caso de uso junto con la secuencia de
pasos necesaria para completarlo y las posibles excepciones hasta definir todas las
situaciones posibles.

Esta descripción servirá de guía para el desarrollo, la profundidad de las situaciones que se
traten dependerá de cada fase del proyecto o de cada situación en particular.

Existen dos tipos de requisitos:

Requisitos funcionales
Requisitos no funcionales
Descripción de requisitos funcionales y no funcionales

Los requisitos suelen ser plasmados junto a la siguiente información:

Identificador y nombre descriptivo: Se utiliza una identificación única para diferenciarlo de


los demás y un nombre descriptivo que suele coincidir con el objetivo que los actores
esperan alcanzar al realizar el caso de uso.
Versión
Autores
Objetivos asociados
Requisitos asociados
Descripción
Precondición: se expresan en lenguaje natural las condiciones necesarias para que se pueda
realizar el caso de uso.
Secuencia normal: secuencia normal de interacciones del caso de uso. En cada paso, un
actor o el sistema realiza una o más acciones, o se realiza otro caso de uso.
Postcondición: se expresan en lenguaje natural las condiciones que se deben cumplir
después de la terminación normal del caso de uso.
Excepciones: especifica el comportamiento del sistema en el caso de que se produzca
alguna situación excepcional durante la realización de un paso determinado, lo que modifica
el flujo “normal” del caso de uso.
Importancia
Urgencia
Comentarios
Descripción de requisitos funcionales
Descripción de requisitos no funcionales
Cómo dibujar un diagrama de casos de uso

A la hora de dibujar un diagrama de casos de uso te recomendamos que


compruebes que has realizado previamente todos estas tareas, respondiendo a las
preguntas que te escribimos a continuación:

• Recopilar fuentes de información: ¿cómo se supone que debo saber eso?


• Identificar actores potenciales: ¿qué usuarios utilizan los bienes y servicios del
sistema empresarial?.
• Identificar posibles casos de uso: ¿a qué bienes y servicios pueden recurrir los
actores?
• Conectar los casos de uso: ¿quién puede hacer uso de los bienes y servicios del
sistema empresarial?
• Describir actores: ¿a quién o qué representan los actores?
• Buscar más casos de uso: ¿Qué más debe hacer el sistema?
• Documentar casos de uso: ¿qué sucede exactamente en cada caso de uso?
• Relacionar modelos entre casos de uso empresarial: ¿qué actividades se
realizan repetidamente?
• Verificar la vista, ¿todo es correcto?
Cómo dibujar un diagrama de casos de uso

Identificar actores
Encontrar actores es uno de los primeros pasos para definir los casos de uso del
sistema. Cada tipo de fenómeno externo con el que el sistema debe interactuar
está representado por un actor.

Las siguientes preguntas nos ayudarán a encontrar los actores que interactuarán
con el sistema:

• ¿Qué grupos de usuarios requieren ayuda del sistema para realizar sus tareas?
• ¿Qué grupos de usuarios se necesitan para ejecutar las funciones principales
más obvias del sistema?
• ¿Qué grupos de usuarios están obligados a realizar funciones secundarias, como
el mantenimiento y la administración del sistema?
• ¿El sistema interactuará con cualquier hardware externo o sistema de software?

Cualquier individuo, grupo o fenómeno que se ajuste a una o más de estas


categorías es un candidato para un actor.
Cómo dibujar un diagrama de casos de uso

Identificar casos de uso


Cuando se completa el primer esquema de los actores, el siguiente paso es buscar
los casos de uso del sistema. 

Los primeros casos de uso son muy preliminares, y sin duda tendrá que cambiarlos
varias veces hasta que sean estables. 

Si la visión o los requisitos del sistema son deficientes, o si el análisis del sistema
es impreciso, la funcionalidad del sistema no será clara. Por lo tanto, debe
preguntarse constantemente si ha encontrado los casos de uso correctos. 

Además, debe estar preparado para agregar, eliminar, combinar y dividir los casos
de uso antes de llegar a una versión final. Obtendrá una mejor comprensión de los
casos de uso una vez que los haya descrito en detalle.
Cómo dibujar un diagrama de casos de uso

La mejor forma de encontrar casos de uso es considerar lo que cada actor


requiere del sistema. Recuerde que el sistema existe solo para sus usuarios y, por
lo tanto, debe basarse en las necesidades de los usuarios. 

Reconocerá muchas de las necesidades de los actores a través de los requisitos


funcionales establecidos en el sistema. 

Cada actor, sea humano o no, hay que hacer las siguientes preguntas:

• ¿Cuáles son las tareas principales que el actor quiere que realice el sistema?
• ¿El actor creará, almacenará, cambiará, eliminará o leerá datos en el sistema?
• ¿El actor necesitará informar al sistema sobre cambios repentinos y externos?
• ¿El actor necesita ser informado sobre ciertas ocurrencias en el sistema?
• ¿El actor realizará un arranque o apagado del sistema?

Las respuestas a estas preguntas representan los flujos de eventos que identifican
casos de uso candidatos.
Cómo dibujar un diagrama de casos de uso

Cuando haya delineado su primer modelo de caso de uso, debe verificar que el
modelo de caso de uso aborde todos los requisitos funcionales. Examine
cuidadosamente los requisitos para asegurarse de que todos los casos de uso
cumplan con todos los requisitos.

Debido a que es importante mostrar cómo se relacionan los actores con el caso de
uso, al encontrar un caso de uso, debe establecer qué actores interactuarán con
él. 

Las transmisiones de señal generalmente van en ambas direcciones. Cuando este


es el caso, debe permitir que las asociaciones de comunicaciones sean navegables
en ambas direcciones. Defina, a lo sumo, una asociación de comunicación para
cada par de actor y caso de uso.
Ejemplo:

La clínica veterinaria almacena datos de contacto de todos sus clientes como


pueden ser: Nombre, Apellidos, DNI, Fecha de nacimiento, Teléfono o Email. Estos
datos son introducidos y gestionados por los auxiliares, que ejercen las funciones
administrativas.

Además se almacena información de cada uno de las mascotas de las que es dueño
cada cliente. Obviamente, cada cliente puede tener más de una mascota, pero
cada mascota solo puede pertenecer a un único cliente. Se permite, además,
cambiar el dueño de una mascota por otro.

Al dar de alta un nuevo animal, se comprobará en el registro del REIAC (Red


Española de Identificación de Animales de Compañía) si el animal está
correctamente dado de alta. Este proceso unicamente se hará en animales que
tengan la obligación de estar identificados.
Ejemplo:

Cada vez que un veterinario realiza una consulta sobre un animal, esta queda
almacenada incluyendo datos básicos como: Tiempo de consulta, Identificación de
la persona que lo ha tratado, Animal tratado, Importe total, Resolución, Recetas…
Para calcular el tiempo de la consulta el veterinario tendrá un botón en la
aplicación donde pueda pulsar cuando comienza la consulta para calcular el
tiempo a modo de cronómetro y otro botón para finalizar.
 
En caso de que el animal se quede ingresado en la clínica, el cliente debe ser
capaz de acceder al estado en tiempo real del animal. Además podrá comunicarse
con una cámara que tendrá el animal colocada, donde podrá ver su situación
actual. La gestión de estas cámaras no corresponde al sistema, sino que se
utilizará una aplicación ya presente en el veterinario.
 
Las recetas y otros documentos relacionados con el servicio se incluirán en un
gestor de contenidos que ya está en funcionamiento en la clínica veterinaria.
Ejemplo:

Una vez terminado el servicio, el cliente no tiene porque realizar inmediatamente


el pago, sino que puede identificarse posteriormente en la aplicación vía web y
realizar el pago. Si el cliente tarda más de una semana se efectuará un recargo
sobre el precio inicial.
 
Además, el cliente debe ser capaz de obtener un histórico de todas las consultas
que ha recibido cualquiera de sus mascotas.
Diagrama de secuencia

El diagrama de secuencia es un tipo de diagrama de interacción.

Su objetivo es representar el intercambio de mensajes entre los distintos objetos del sistema
para cumplir con una funcionalidad. Define, por tanto, el comportamiento dinámico del
sistema de información.
Normalmente es utilizado para definir como se realiza un caso de uso por lo que es
comúnmente utilizado junto al diagrama de casos de uso.

También se suele construir para comprender mejor el diagrama de clases, ya que el diagrama
de secuencia muestra como objetos de esas clases interactúan haciendo intercambio de
mensajes.
Construcción del diagrama de secuencia

El diagrama de secuencia está construido a partir de dos dimensiones:

Horizontal: Representa los objetos que participan en la secuencia.


Vertical: Representa la línea de tiempo sobre la que los elementos actúan. Va de arriba
(menor tiempo) hacia abajo (menor tiempo).

El diagrama de secuencia está compuesto por dos elementos: Objetos y mensajes.


Construcción del diagrama de secuencia

Objeto
Un objeto representa a un participante en la interacción.

Un objeto puede ser una instancia de una clase, un módulo,


un grupo de clases,… en definitiva, un objeto es un
componente software que tiene una funcionalidad específica.

Es importante destacar que, en el diagrama de secuencia y a


diferencia de otros diagramas, cada uno de los objetos
añadidos al diagrama representa solamente una instancia de
ese objeto y no varias.

Un objeto se representa mediante un rectángulo que incluye


un identificar en su interior y del que sale una linea de forma
vertical hacia abajo. Esta linea se llama linea de vida y
representa el tiempo en el que un objeto está presente.

Los objetos contienen el denominado foco de control que no


es más que el tiempo en el que tal objeto está llevando a
cabo algún trabajo. Se representa mediante un rectángulo
superpuesto a la linea de vida.
Construcción del diagrama de secuencia

Mensaje
Se utiliza un mensaje en el diagrama de secuencia para representar el paso de un
mensaje entre dos objetos o entre un objeto y sí mismo.

Se representa utilizando una flecha que incluye el nombre del mensaje y los argumentos
que incluye y que va desde el objeto que envía el mensaje hasta el objeto que lo recibe.
Construcción del diagrama de secuencia

Mensaje
A veces el objeto que recibe el mensaje envía una respuesta. Esta respuesta se
representa con una flecha discontinua.
Construcción del diagrama de secuencia

Mensaje
Un objeto puede ser creado a mitad de la interacción. Esta creación se hace a través de
otro objeto mediante una llamada create. También existe la posibilidad de que objeto
destruya otro. Ambas acciones se representan de la siguiente manera:
Construcción del diagrama de secuencia

Ejemplo 
A continuación se muestra un ejemplo de un diagrama de secuencia de la funcionalidad
contratar servicio:
Diagrama de actividades

El diagrama de actividades un diagrama UML de comportamiento que muestra el flujo de


control o el flujo de objetos, con especial énfasis en la secuencia y las condiciones de este
flujo.

Estos diagramas son utilizados para describir cualquier tipo de procesos, es especialmente
común para modelar de forma gráfica los diferentes casos de uso, transacciones o
procedimientos que haya en un sistema de información. En resumen, son utilizados para
representar la forma en la que un sistema hace una implementación.

Los diagramas de actividades muestran una secuencia de acciones, un flujo de trabajo que va
desde un punto inicial hasta un punto final.
Construcción Diagrama de actividades

El diagrama de actividades de UML está compuesto por los siguientes elementos: Actividades,


flujos de control, nodo inicial y nodo final.

Actividad
La actividad es una conducta parametrizada representada como flujo coordinado de acciones.

El flujo de ejecución que representa la funcionalidad deseada se modela utilizando nodos de


actividad conectados por flujos de control. Un nodo puede ser la ejecución de un
comportamiento subordinado, como un cálculo aritmético, una llamada a una operación o la
manipulación del contenido del objeto. 

Las actividades son representadas mediante un rectángulo con los bordes redondeados, que
incluye en su interior el nombre de la actividad:
Construcción Diagrama de actividades

El diagrama de actividades de UML está compuesto por los siguientes elementos: Actividades,


flujos de control, nodo inicial y nodo final.

Actividad
También se puede representar una actividad que incluye un subdiagrama de actividades,
disminuyendo de esta la granularidad de la representación, tal y como se muestra en la
siguiente imagen:
Construcción Diagrama de actividades

El diagrama de actividades de UML está compuesto por los siguientes elementos: Actividades,


flujos de control, nodo inicial y nodo final.

Actividad
También se puede representar una actividad que incluye un subdiagrama de actividades,
disminuyendo de esta la granularidad de la representación, tal y como se muestra en la
siguiente imagen:

Las actividades son nombradas utilizando los verbos del modelo de negocio, algunos ejemplos
de estas actividades podrían ser: Buscar Objeto, Actualizar lista, Hacer pago…
Construcción Diagrama de actividades

El diagrama de actividades de UML está compuesto por los siguientes elementos: Actividades,


flujos de control, nodo inicial y nodo final.

Flujo entre actividades


El flujo entre actividades es una clase abstracta para las conexiones dirigidas a lo largo de las
cuales los tokens u objetos de datos fluyen entre los nodos de actividad.

Los flujos entre actividades se representan mediante una flecha con la punta abierta que
simboliza el orden de ejecución de las actividades, a veces se incorpora un nombre en esta
flecha que ayuda a que se entienda mejor:
Construcción Diagrama de actividades

El diagrama de actividades de UML está compuesto por los siguientes elementos: Actividades,


flujos de control, nodo inicial y nodo final.

Flujo entre actividades


Estos flujos de actividades pueden usar condiciones para su actuación, estas condiciones se
representan mediante un rombo, con la condición escrita entre corchetes:

Este elemento también recibe el nombre de nodo de decisión.


Construcción Diagrama de actividades

El diagrama de actividades de UML está compuesto por los siguientes elementos: Actividades,


flujos de control, nodo inicial y nodo final.

Flujo entre actividades


El caso contrario es el llamada nodo de fusión, que recibe 2 o más flujo y emite 1:
Construcción Diagrama de actividades

El diagrama de actividades de UML está compuesto por los siguientes elementos: Actividades,


flujos de control, nodo inicial y nodo final.

Nodo inicial y nodo final


El nodo inicial es un nodo de control en el que se inicia el
flujo cuando se invoca la actividad. Solo existirá uno por
diagrama.

Hay que tener en cuenta que los flujos también pueden


comenzar en otros nodos, por lo que los nodos iniciales no
son necesarios para que una actividad comience la
ejecución.

Los nodos iniciales se muestran como un pequeño círculo


relleno.

Los nodos finales de actividad se muestran como un círculo


sólido con un círculo hueco dentro.
Ejemplo Diagrama de actividades

A continuación se muestra el ejemplo de un diagrama de actividades para la funcionalidad de


logear/registrar un usuario en una aplicación:
Diagrama de estados

Es un diagrama de comportamiento usado para especificar el comportamiento de una parte del


sistema diseñado a través de transiciones de estados finitos.

Es utilizado para mostrar los estados por los que pasa un componente de un sistema de
información.

El comportamiento se modela utilizando una serie de nodos que representan estados y que
están conectados a través de las llamadas transiciones.
Elementos Diagrama de estados

El diagrama de estados está formado por tres elementos: estados, pseudoestados y


transiciones.

Estados
El estado  modela una situación durante la cual se cumple alguna condición
invariante (generalmente implícita). Esta situación invariante puede representar una situación
estática tal como un objeto que espera que ocurra algún evento externo o cualquier otra
situación. 

También puede modelar condiciones dinámicas tales como efectuar algún tipo de
comportamiento.

Se representa utilizando un rectángulo con esquinas redondeadas con el nombre del estado en
el interior:
Elementos Diagrama de estados

El diagrama de estados está formado por tres elementos: estados, pseudoestados y


transiciones.

Estados
El estado compuesto es aquel que tiene subestados, se representa con un subdiagrama de
estados en su interior:
Elementos Diagrama de estados

El diagrama de estados está formado por tres elementos: estados, pseudoestados y


transiciones.

Pseudoestados
Un pseudoestado es un vértice abstracto que abarca diferentes tipos de vértices transitorios
en el gráfico de máquina de estado, siendo los más comunes los pseudoestados inicial y final.
Los pseudoestados se usan generalmente para conectar múltiples transiciones en rutas de
transición de estado más complejas.

El pseudoestado inicial representa el comienzo de un


diagrama, solo puede existir uno por diagrama. Se representa
a través de un pequeño circulo relleno:

El pseudoestado final representa el final del diagrama. Indica


que se ha finalizado la máquina de estados. Se representa con
un círculo que rodea un circulo negro relleno:
Elementos Diagrama de estados

El diagrama de estados está formado por tres elementos: estados, pseudoestados y


transiciones.

Transición
Una transición es una relación dirigida entre un estado de origen y un estado de destino.
Puede ser parte de una estado compuesto.

Se representa con una flecha que va desde el estado origen al estado destino.

En ocasiones, si es relevante, se incluye una notación que indica la condición desencadenante


para cambiar de estado.
Ejemplo Diagrama de estados
Diagrama de comunicaciones

Es un tipo de diagrama de interacción que muestra las interacciones entre objetos y / o partes
(representadas como líneas de vida) utilizando mensajes secuenciados en una disposición de
forma libre.

El diagrama de comunicación corresponde a un diagrama de secuencia simple sin mecanismos


de estructuración.

Las principales finalidades del diagrama de comunicación son las siguientes:

• Modelar el paso de mensajes entre objetos o roles que entregan las funcionalidades de


casos de uso y operaciones.

• Mostrar los mensajes que se transmiten ​entre objetos y roles dentro del escenario de
colaboración.

• Modelar escenarios alternativos dentro de casos de uso u operaciones que involucren la


colaboración de diferentes objetos e interacciones.
Elementos Diagrama de comunicaciones

Los diagramas de comunicación utilizan los siguientes elementos: Marco o frame, línea de vida
y mensaje.

Marco o frame
Los diagramas de comunicación se pueden mostrar dentro de un marco rectangular con el
nombre en un compartimiento en la esquina superior izquierda

Línea de vida
Una línea de vida se muestra como un rectángulo (correspondiente a la “cabeza” en los
diagramas de secuencia). La línea de vida en los diagramas de secuencia tiene una “cola” que
representa la línea de vida, mientras que la “línea de vida” en el diagrama de comunicación
no tiene línea, solo la “cabeza”.

Mensaje
El mensaje en el diagrama de comunicación se muestra como una línea con una expresión de
secuencia y una flecha sobre la línea. La flecha indica la dirección de la comunicación.
Elementos Diagrama de comunicaciones

También podría gustarte