Los diagramas de actividad permiten describir como un sistema implementa su funcionalidad.
Los diagramas de actividad modelan el comportamiento dinámico de un procedimiento, transacción o caso de uso haciendo énfasis en el proceso que se lleva a cabo.
Los diagramas de actividad es uno de los elementos de modelado que son mejor comprendidos por todos, ya que son herederos directos de los diagramas de flujo.
Los diagramas de actividad son mas expresivo que los diagramas de flujo. También heredan características de:
- Los diagramas de estado.
- Los diagramas de flujo de datos.
- Las redes de Petri.
Actividades y acciones
Una acción es un paso de un proceso que tiene la semática “run to completion” (Se
inicia para ser terminado)
Una actividad es un conjunto de acciones que modelan un proceso. No tiene la
semántica “run to completion”. Una actividad se modela mediante un diagrama de
actividad.
Enjabonar, enjuagar o secar un coche son acciones de la actividad “Lavar un coche”
Branching and merges
Las decisiones representan las alternativas de flujo de control en un diagrama que
se llevan a cabo en función de una condición.
La condiciones de guarda asociadas a cada rama de salida determinan la opción de
flujo de control que se sigue.
Las ramas de flujo de control abiertas en una o varias condiciones se cierran en un
punto de convergencia (merge).
Decisiones consistentes
La opciones de una decisión deben ser:
- Completas.
- No ambiguas.
Fork y Joint
Los fork y los joint se utilizan en los diagramas de actividad para describir
concurrencia entre acciones o actividades.
Las líneas de flujo de salida de un fork representa líneas de ejecución que se
ejecutan concurrentemente.
Las líneas de flujo de entrada de un joint se sincronizan para continuar en una
única línea de flujo.
Todas la acciones de las líneas de flujo previas a un joint
deben completarse antes de que se ejecute la primera acción de la línea posterior a
él.
Time events
Los eventos de tiempo
modelan:
- Activaciones temporizadas.
- Timeouts
- Retrasos.
Un evento temporizado con
flujo de entrada representa una
única activación tras llegarle el
flujo.
Un evento de tiempo sin flujo
de entrada representa una
activación que puede ser
repetida en el tiempo.
Calling other activities
Objects
En un diagrama de actividad se pueden representar los objetos de datos que se generan, se
consumen o se intercambian en un proceso y que son relevantes para su descripción.
Cuando un objeto de datos se representan como una caja, significa que esos datos existen en el
punto de flujo de control en que se insertan.
Cuando un objeto de datos se representa mediante unos pines asociados a las acciones o
actividades, representan objetos de datos de entrada o de salida.
Sending and receiving signals
En un diagrama de actividad las señales representan interacciones del proceso que se
Describe con operadores sistemas u otros procesos externos a él.
• Cuando un receptor de señales tiene flujo de entrada representa que cuando el flujo
le llega se habilita para aceptar una única señal.
• Cuando no tiene flujo de entrada, representa que puede aceptar uno o muchas señales.
Starting an activity
Una actividad se puede iniciar por:
- Cuando se invoca de forma regular: se representa mediante un circulo.
- Cuando se recibe un objeto de dato de entrada
- Cuando se produce un evento temporizado
- Cuando se recibe una señal externa.
Interrupting an activity
Una actividad de duración no atómica puede concluirse por la ocurrencia de un evento
o una señal externa. Para ello se define una región de interrupción mediante una línea
que engloba las actividades o acciones que pueden ser interrumpidas por el evento o señal
que también se incluye en la región.
Partitions or swinglanes
Los swinglanes representan
los procesos, participantes
o elementos responsables de
ejecutar un conjunto de
acciones.