Deben ser hechos desde el punto de vista del usuario. No es necesario discutir con el usuario ningún tipo de detalle técnico. No omitir texto en los cursos de acción alternativos y extensiones. Hay que describir cada uno de los cursos alternos de un caso de uso, no solamente el curso de acción básico (y posiblemente el que más será observado). Si se hace esto, después a la hora de codificar, la persona indicada seguirá el curso de acción más sencillo (curso de acción básico). Las pre y postcondiciones son importantes, pero merecen hasta cierto punto de atención.

Diagrama de Actividad

Son uno de los 5 tipos de diagramas UML que se usan para el modelado de los aspectos dinámicos de los sistemas. Es un diagrama de flujo que muestra el flujo de control entre actividades, muestra tanto la concurrencia como las bifurcaciones del control.

Conceptos:

– Un Diagrama de Actividad muestra el flujo de actividades. – Una actividad es una ejecución no atómica en curso, dentro de una máquina de estados. – Las actividades producen finalmente la ejecución de acciones individuales, cada una de las cuales puede producir un cambio en el estado del sistema o la comunicación de mensajes. – Las acciones incluyen llamadas a otras operaciones, envío de señales, creación o destrucción de objetos, cálculos simples, así como también la evaluación de una expresión. – Un Diagrama de Actividad es una colección de nodos y arcos. – Un Diagrama de Actividad contiene: * Acciones * Nodos de Actividad * Flujos * Objetos de Valor.

Nodos de Actividad y Acciones:

– Un nodo de actividad es una unidad organizada dentro de un Diagrama de Actividad. – Una acción puede entenderse como un caso especial de un nodo de actividad y acciones. – A veces un nodo de actividad puede contener otro diagrama de actividad. – A nivel de notación, no existe diferencia entre una acción y un nodo de actividad.

Flujos de Control:

– Una vez que se ha completado una acción o nodo de actividad cualquiera, el flujo de control pasa inmediatamente a la siguiente acción o nodo de actividad. – Este flujo se especifica con flechas que muestran el camino de control de un nodo de actividad (o acción) al siguiente. – En UML un flujo se presenta como una flecha desde la acción predecesora hacia la sucesora, sin una etiqueta de evento.

Bifurcación:

– Los flujos secuenciales son frecuentes, pero no son el único tipo de camino que se necesita para modelar un flujo de control. – Como en los Diagramas de Flujo, se puede incluir una bifurcación, que especifica caminos alternativos, elegidos en función del valor de expresión booleana. – Una bifurcación se representa gráficamente mediante un rombo. – Una bifurcación puede tener un flujo de entrada y 2 o más flujos de salida. – Cuando 2 caminos de control vuelven a encontrarse, también se puede utilizar un rombo con 2 entradas y una salida.

División y Unión:

– Los flujos secuenciales y las bifurcaciones son los caminos más utilizados en Diagramas de Actividad. Sin embargo también es posible encontrar flujos concurrentes. – Esto se observa especialmente cuando se modelan flujos de trabajo de procesos de negocio. – En UML se utiliza una barra de sincronización para especificar la división y unión de estos flujos de control paralelos. – Una barra de sincronización se presenta como una línea horizontal o vertical ancha.

Calles:

– Un elemento especialmente útil cuando se modelan flujos de trabajo de procesos del negocio es particionar los nodos de actividad de un diagrama de actividad en grupos. – Cada uno de estos grupos representa una parte de la organización responsable de esas actividades. – En UML cada grupo se denomina calle, pues cada grupo se separa de sus vecinos por una línea vertical continua. – Una calle tiene un nombre único dentro del diagrama. – Una calle puede representar alguna entidad del mundo real, por ejemplo, un departamento de una Empresa.

Flujos de Objetos:

– En el flujo de control asociado a un Diagrama de Actividad también pueden verse involucrados objetos. – Si el flujo involucra objetos importantes, hay que representarlos también en el Diagrama de Actividad. – En un Diagrama de Actividad, se puede especificar los objetos implicados colocándolos en el Diagrama y conectándolos con una flecha a las acciones que los crean o consumen. – Esto se denomina flujo de objetos, pues representan el flujo de un valor objeto de una acción hasta otra. – Esto lleva un flujo de control de forma implícita (no podemos ejecutar una acción que requiere un valor, sin tener el valor requerido).

Usos Comunes:

– Los Diagramas de Actividad se utilizan para modelar los aspectos dinámicos de un sistema. – Estos aspectos dinámicos pueden involucrar la actividad de cualquier tipo de abstracción en cualquier vista de arquitectura de un sistema (incluyendo clases, interfaces, etc). – Cuando se utiliza un Diagrama de Actividad para modelar algún aspecto dinámico de un sistema, se puede hacer en el contexto de casi cualquier elemento de modelado. – Sin embargo, normalmente se emplean en el contexto del sistema global, un subsistema, una operación o clase. – También se pueden asociar Diagramas de Actividad a casos de uso (para modelar escenarios) y a las colaboraciones (para modelar aspectos dinámicos de una sociedad de objetos). – Cuando se modelan los aspectos dinámicos de un sistema, normalmente se utilizan los Diagramas de Actividad de 2 formas: * Para modelar un flujo de trabajo * Para modelar una operación (método).

Modelado de un Flujo de Trabajo:

Para ello se hace hincapié en las actividades, tal como son vistas por los actores que colaboran con el sistema. A menudo en el entorno de los sistemas con gran cantidad de software, existen flujos de trabajo y se utilizan para visualizar, especificar, construir y documentar procesos de negocio que implican al sistema en desarrollo.

Modelado de una Operación:

Cuando se emplea de esta forma, un Diagrama de Actividad no es más que un Diagrama de flujo de las acciones de una operación. La utilización de los Diagramas de Actividad para hacer los Diagramas de flujo de una operación es casi hacer un UML un lenguaje de programación visual. Se pueden hacer Diagramas de Actividad de todas las operaciones, pero en la práctica no es así. Normalmente, es más directo escribir el cuerpo de una operación en un lenguaje de programación. Los Diagramas de Actividad se utilizan para modelar una operación cuando el comportamiento sea complejo, y por lo tanto difícil de comprender mediante la simple observación del código.

Cuando se Dibuje:

Es importante recordar que un único Diagrama de Actividad no puede capturar todos los aspectos dinámicos de un sistema. Hay que darle un nombre que comunique su propósito. Hay que comenzar por modelar el flujo principal. Las bifurcaciones, la concurrencia y los flujos de objetos se deben considerar como consecuencias posiblemente en diagramas separados. Hay que distribuir sus elementos para minimizar los cruces de líneas. Hay que usar notas y colores como señales visuales para llamar la atención sobre las características importantes del diagrama.