I. 1 Introducción



Descargar 0,73 Mb.
Página6/9
Fecha de conversión12.01.2017
Tamaño0,73 Mb.
1   2   3   4   5   6   7   8   9

III.1 Modelado Dinámico

III.1.1 Diagramas De Actividades 
Vamos a recordar los diferentes modelos que sirven para representar el aspecto dinámico de un sistema: 
• Diagramas de secuencia
• Diagramas de colaboración
Diagramas de estados
• Diagramas de casos de uso
Diagramas de actividades
En este capítulo nos centraremos en los diagramas de actividades que sirven fundamentalmente para modelar el flujo de control entre actividades. La idea es generar una especie de diagrama Pert, en el que se puede ver el flujo de actividades que tienen lugar a lo largo del tiempo, así como las tareas concurrentes que pueden realizarse a la vez. El diagrama de actividades sirve para representar el sistema desde otra perspectiva, y de este modo complementa a los anteriores diagramas vistos. Gráficamente un diagrama de actividades será un conjunto de arcos y nodos. Desde un punto de vista conceptual, el diagrama de actividades muestra cómo fluye el control de unas clases a otras con la finalidad de culminar con un flujo de control total que se corresponde con la consecución de un proceso más complejo. Por este motivo, en un diagrama de actividades aparecerán acciones y actividades correspondientes a distintas clases. Colaborando todas ellas para conseguir un mismo fin. Ejemplo: Hacer un pedido. 

III.1.2 Contenido del diagrama de actividades 
Básicamente un diagrama de actividades contiene: 
• Estados de actividad
• Estados de acción
Transiciones
• Objetos 

III.1.2.1 Estados de actividad y estados de acción 
La representación de ambos es un rectángulo con las puntas redondeadas, en cuyo interior se representa bien una actividad o bien una acción. La forma de expresar tanto una actividad como una acción, no queda impuesta por UML, se podría utilizar lenguaje natural, una especificación formal de expresiones, un metalenguaje, etc. La idea central es la siguiente: “Un estado que represente una acción es atómico, lo que significa que su ejecución se puede considerar instantánea y no puede ser interrumpida” En la Figura 21, podemos ver ejemplos de estados de acción. 
 
Figura 21 Estados de Acción 
En cambio un estado de actividad, sí puede descomponerse en más sub-actividades representadas a través de otros diagramas de actividades. Además estos estados sí pueden ser interrumpidos y tardan un cierto tiempo en completarse. En los estados de actividad podemos encontrar otros elementos adicionales como son: acciones de entrada (entry) y de salida (exit) del estado en cuestión, así como definición de submáquinas, como podemos ver en la Figura 22. 
 
Figura 22 Estado de Actividad 

III.1.2.2 Transiciones 
Las transiciones reflejan el paso de un estado a otro, bien sea de actividad o de acción. Esta transición se produce como resultado de la finalización del estado del que parte el arco dirigido que marca la transición. Como todo flujo de control debe empezar y terminar en algún momento, podemos indicar esto utilizando dos disparadores de inicio y fin tal y como queda reflejado en el ejemplo de la Figura 23. 
 
Figura 23 Transiciones sin disparadores 

III.1.2.3 Bifurcaciones 
Un flujo de control no tiene porqué ser siempre secuencial, puede presentar caminos alternativos. Para poder representar dichos caminos alternativos o bifurcación se utilizará como símbolo el rombo. Dicha bifurcación tendrá una transición de entrada y dos o más de salida. En cada transición de salida se colocará una expresión booleana que será evaluada una vez al llegar a la bifurcación, las guardas de la bifurcación han de ser excluyentes y contemplar todos los casos ya que de otro modo la ejecución del flujo de control quedaría interrumpida. Para poder cubrir todas las posibilidades se puede utilizar la palabra ELSE, para indicar una transición obligada a un determinado estado cuando el resto de guardas han fallado. En la Figura 24 podemos ver un ejemplo de bifurcación. 
 
Figura 24 Bifurcación 

III.1.2.4 División y unión 
No sólo existe el flujo secuencial y la bifurcación, también hay algunos casos en los que se requieren tareas concurrentes. UML representa gráficamente el proceso de división, que representa la concurrencia, y el momento de la unión de nuevo al flujo de control secuencial, por una línea horizontal ancha. En la Figura 25 podemos ver cómo se representa gráficamente. 
 
Figura 25 División y unión 
1   2   3   4   5   6   7   8   9


La base de datos está protegida por derechos de autor ©absta.info 2016
enviar mensaje

    Página principal