Como se ha mencionado anteriormente, el modo en que los paréntesis funcionan en una expresión matemática es una analogía cercana a cómo funcionan los "bloques" en un flujo de trabajo. Recuerde, hay varios tipos de bloques: selección, paralelo y bucle. En el flujo de trabajo de Cúram:
En el caso de divisiones y uniones, todas las rutas de salida de una división deben confluir en la unión correspondiente.
Si no se exigiese que fueran emparejadas, sería posible (fácil) modelar procesos que con seguridad se bloquearían, o procesos en los que podría alcanzarse el final del proceso antes de que algunas actividades hubieran terminado de ejecutar.
Esto ayuda a evitar situaciones difíciles de procesar para el motor, y resulta muy intuitivo para los desarrolladores de flujo de trabajo.
Considere un bucle que contenga una unión con dos transiciones entrantes: una procedente de una actividad dentro del bucle y la otra procedente de una actividad fuera del bucle.
En esta situación es muy difícil decidir cómo debería funcionar la sincronización de la unión. Puede que una transición de entrada solo se active una vez, mientras que la otra podría activarse varias veces. Cualquier regla que maneje tal situación sería arbitraria y, por tanto, poco intuitiva.
Los flujos de trabajo definidos mediante bloques de selección, paralelos y de bucle tienen una estructura clara y sencilla cuyo significado puede entenderse a primera vista.