Introducción

Las transiciones vinculan actividades en una definición de proceso. En la configuración más básica de actividades y transiciones, cada actividad sólo tiene una transición entrante y una saliente. Sin embargo, con frecuencia es útil seguir más de una ruta al salir de una actividad, lo que da lugar a una división (es decir, varias transiciones que parten de una actividad). Para soportar una estructura de bloques válida en una definición de proceso (consulte Estructura del flujo de trabajo), a cada división debe corresponderle una unión (es decir, varias transiciones que convergen en una actividad). En general, una división permite que se ejecuten varias hebras de trabajo a la vez, mientras que una unión es el punto de sincronización recíproca de dichas hebras.

Hay dos motivos por los que una actividad puede tener una división (y, por extensión, que alguna otra actividad más abajo en la línea pueda tener una unión). El primero es permitir que un trabajo que no tenga dependencias pueda realizarse en paralelo, mientras que el segundo es permitir elegir entre diversas rutas del flujo de trabajo.

A nivel de metadatos, cada actividad tiene un tipo de división y otro de unión. Cuando una actividad solo tiene una transición saliente o entrante, se asignará un tipo none (ninguna) a la división o a la unión respectivamente. Los otros dos tipos de división y unión, selección (también conocida como XOR) y paralela (también conocida como AND), se explican por sí mismos y son el tema principal de este capítulo.