Usamos Diagramas de Actividad para ilustrar el flujo de control en un sistema y referirnos a los pasos involucrados en la ejecución de un caso de uso. Modelamos actividades secuenciales y concurrentes usando diagramas de actividad. Entonces, básicamente representamos los flujos de trabajo visualmente usando un diagrama de actividad. Un diagrama de actividad se enfoca en la condición del flujo y la secuencia en la que sucede. Describimos o representamos qué causa un evento en particular usando un diagrama de actividad. UML modela básicamente tres tipos de diagramas, a saber, diagramas de estructura, diagramas de interacción y diagramas de comportamiento. Un diagrama de actividad es un diagrama de comportamiento.es decir, representa el comportamiento de un sistema. Un diagrama de actividad representa el flujo de control desde un punto de inicio hasta un punto final que muestra las diversas rutas de decisión que existen mientras se ejecuta la actividad. Podemos representar tanto el procesamiento secuencial como el procesamiento concurrente de actividades utilizando un diagrama de actividad. Se utilizan en el modelado de procesos y negocios donde su uso principal es representar los aspectos dinámicos de un sistema. Un diagrama de actividad es muy similar a un diagrama de flujo . Entonces, comprendamos si los diagramas de actividad o los diagramas de flujo son diferentes:
Diferencia entre un diagrama de actividad y un diagrama de flujo:
Los diagramas de flujo se inventaron típicamente antes que los diagramas de actividad. Los no programadores usan diagramas de flujo para modelar flujos de trabajo. Por ejemplo: un fabricante usa un diagrama de flujo para explicar e ilustrar cómo se fabrica un producto en particular. Podemos llamar a un diagrama de flujo una versión primitiva de un diagrama de actividades. Los procesos de negocio en los que interviene la toma de decisiones se expresan mediante un diagrama de flujo. Entonces, los programadores usan diagramas de actividad (versión avanzada de un diagrama de flujo) para representar los flujos de trabajo. Los desarrolladores utilizan un diagrama de actividades.para entender el flujo de programas en un alto nivel. También les permite descubrir las restricciones y condiciones que causan eventos particulares. Un diagrama de flujo converge en un diagrama de actividad si se toman decisiones complejas. La brevedad es el alma del ingenio. Necesitamos transmitir mucha información con claridad y asegurarnos de que sea breve. Entonces, un diagrama de actividad ayuda a las personas de ambos lados, es decir, empresarios y desarrolladores, a interactuar y comprender los sistemas. Surge una pregunta: ¿ Necesitamos usar tanto el diagrama como la documentación textual?Diferentes individuos tienen diferentes preferencias en las que entienden algo. Por ejemplo: para comprender un concepto, algunas personas pueden preferir un tutorial escrito con imágenes, mientras que otras prefieren una conferencia en video. Por lo tanto, generalmente usamos tanto el diagrama como la documentación textual para que la descripción de nuestro sistema sea lo más clara posible. También debemos ser sensibles a las necesidades de la audiencia a la que atendemos en ocasiones. Diferencia entre un diagrama de casos de uso y un diagrama de actividadesSe utiliza un diagrama de actividad para modelar el flujo de trabajo que representa condiciones, restricciones, actividades secuenciales y simultáneas. Por otro lado, el propósito de un caso de uso es simplemente representar la funcionalidad, es decir, lo que hace el sistema y no cómo se hace. Entonces, en términos simples, un diagrama de actividad muestra ‘Cómo’, mientras que un caso de uso muestra ‘Qué’ para un sistema en particular. Los niveles de abstracción también varían para ambos. Se puede usar un diagrama de actividad para ilustrar un proceso comercial (implementación de alto nivel) en un algoritmo independiente (implementación de nivel básico). Sin embargo, los casos de uso tienen un bajo nivel de abstracción. Se utilizan únicamente para mostrar un alto nivel de implementación. Figura –un diagrama de actividad para un reproductor de música basado en emociones La figura anterior muestra un diagrama de actividad para un reproductor de música basado en emociones que también se puede usar para cambiar el fondo de pantalla. Los diversos componentes utilizados en el diagrama y las notaciones estándar se explican a continuación.
Notaciones del Diagrama de Actividad –
- Estado inicial: el estado inicial antes de que se lleve a cabo una actividad se representa utilizando el estado inicial. Figura: notación para estado inicial o estado de inicio Un proceso puede tener solo un estado inicial a menos que estemos representando actividades anidadas. Usamos un círculo relleno de negro para representar el estado inicial de un sistema. Para los objetos, este es el estado cuando se instancian. El estado inicial del diagrama de actividad de UML marca el punto de entrada y el estado de actividad inicial. Por ejemplo, aquí el estado inicial es el estado del sistema antes de que se abra la aplicación. Figura: se utiliza el símbolo de estado inicial
- Estado de acción o actividad: una actividad representa la ejecución de una acción en objetos o por objetos. Representamos una actividad usando un rectángulo con esquinas redondeadas. Básicamente, cualquier acción o evento que tiene lugar se representa mediante una actividad. Figura: notación para un estado de actividad Por ejemplo: considere el ejemplo anterior de abrir una aplicación abrir la aplicación es un estado de actividad en el diagrama de actividad. Figura: símbolo de estado de actividad que se utiliza
- Flujo de acción o flujos de control: los flujos de acción o los flujos de control también se denominan rutas y bordes. Se utilizan para mostrar la transición de un estado de actividad a otro. Figura: notación para el flujo de control Un estado de actividad puede tener múltiples flujos de acción entrantes y salientes. Usamos una línea con una punta de flecha para representar un flujo de control. Si hay una restricción que debe cumplirse al realizar la transición, se menciona en la flecha. Considere el ejemplo: aquí ambos estados transitan a un estado final utilizando símbolos de flujo de acción, es decir, flechas. Figura: uso de flujos de acción para transiciones
- Node de decisión y ramificación: cuando necesitamos tomar una decisión antes de decidir el flujo de control, usamos el Node de decisión. Figura: notación para el Node de decisión Las flechas salientes del Node de decisión se pueden etiquetar con condiciones o expresiones de protección. Siempre incluye dos o más flechas de salida. Figura: un diagrama de actividad usando un Node de decisión
- Guardias: un guardia se refiere a una declaración escrita junto a un Node de decisión en una flecha, a veces entre corchetes. Figura: guardias que se usan junto a un Node de decisión La declaración debe ser verdadera para que el control se desplace en una dirección particular. Las guardas nos ayudan a conocer las restricciones y condiciones que determinan el flujo de un proceso.
- Bifurcación: los Nodes de bifurcación se utilizan para admitir actividades simultáneas. Figura: notación de bifurcación Cuando usamos un Node de bifurcación cuando ambas actividades se ejecutan al mismo tiempo, es decir, no se toma ninguna decisión antes de dividir la actividad en dos partes. Ambas partes deben ejecutarse en caso de una declaración de bifurcación. Usamos una barra rectangular sólida redondeada para representar una notación de bifurcación con una flecha entrante desde el estado de la actividad principal y flechas salientes hacia las actividades recién creadas. Por ejemplo: en el siguiente ejemplo, la actividad de hacer café se puede dividir en dos actividades simultáneas y, por lo tanto, usamos la notación de horquilla. Figura: un diagrama usando un tenedor
- Unirse: los Nodes de unión se utilizan para admitir actividades simultáneas que convergen en una sola. Para las notaciones de unión, tenemos dos o más aristas entrantes y una arista saliente. Figura: notación de unión Por ejemplo: cuando ambas actividades, es decir, hervir la leche y agregar café, se completan, las convergemos en una actividad final. Figura: un diagrama que usa la notación de unión
- Fusión o evento de fusión: los escenarios surgen cuando las actividades que no se ejecutan simultáneamente tienen que fusionarse. Usamos la notación de combinación para tales escenarios. Podemos fusionar dos o más actividades en una si el control continúa con la siguiente actividad, independientemente de la ruta elegida. Figura: notación de fusión Por ejemplo, en el siguiente diagrama: no podemos tener ambos lados ejecutándose al mismo tiempo, pero finalmente se fusionan en uno. Un número no puede ser par e impar al mismo tiempo. Figura: un diagrama de actividad que usa notación de combinación
- Carriles: utilizamos carriles para agrupar actividades relacionadas en una columna. Los carriles agrupan actividades relacionadas en una columna o una fila. Los carriles pueden ser verticales y horizontales. Los carriles se utilizan para agregar modularidad al diagrama de actividades. No es obligatorio el uso de carriles. Suelen dar más claridad al diagrama de actividades. Es similar a crear una función en un programa. No es obligatorio hacerlo, pero es una práctica recomendada. Figura: notación de carriles Usamos una columna rectangular para representar un carril como se muestra en la figura anterior. Por ejemplo, aquí se ejecutan diferentes conjuntos de actividades en función de si el número es par o impar. Estas actividades se agrupan en un carril. Figura: un diagrama de actividad que utiliza carriles
- Evento de tiempo – Figura – notación de evento de tiempo Podemos tener un escenario en el que un evento tarde algún tiempo en completarse. Usamos un reloj de arena para representar un evento de tiempo. Por ejemplo, supongamos que el procesamiento de una imagen lleva mucho tiempo. Entonces se puede representar como se muestra a continuación. Figura: un diagrama de actividad que usa un evento de tiempo
- Estado final o estado final: el estado que alcanza el sistema cuando finaliza un proceso o actividad en particular se conoce como estado final o estado final. Usamos un círculo lleno dentro de una notación circular para representar el estado final en un diagrama de máquina de estado. Un sistema o un proceso puede tener múltiples estados finales. Figura – notación para el estado final
Cómo dibujar un diagrama de actividades –
- Identificar el estado inicial y los estados finales.
- Identificar las actividades intermedias necesarias para alcanzar el estado final desde el estado inicial.
- Identificar las condiciones o restricciones que hacen que el sistema cambie el flujo de control.
- Dibuja el diagrama con las notaciones apropiadas.
Figure – an activity diagram The above diagram prints the number if it is odd otherwise it subtracts one from the number and displays it.
Usos de un Diagrama de Actividad –
- Modelado dinámico del sistema o de un proceso.
- Ilustrar los diversos pasos involucrados en un caso de uso de UML.
- Modelar elementos de software como métodos, operaciones y funciones.
- Podemos usar diagramas de actividad para representar actividades concurrentes fácilmente.
- Muestre las restricciones, las condiciones y la lógica detrás de los algoritmos.
Referencias – Diagramas de actividad – Diagrama de actividad de IBM – sparxsystems Este artículo es una contribución de Ankit Jain . Si te gusta GeeksforGeeks y te gustaría contribuir, también puedes escribir un artículo usando write.geeksforgeeks.org o enviar tu artículo por correo a review-team@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks. Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA