Upload
javier-vivanco
View
217
Download
0
Embed Size (px)
Citation preview
7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
1/38
Patterns & Practices
How to
Q-flow
Patrones bsicos de
Workflow
Versin: 2.0
Fecha de publicacin 28-03-2011
Apl ica a: Q-f lo w 3.0 y Q- fl ow 3. 1
7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
2/38
Patterns & Practices
ndiceIntroduccin .................................................................................................................................................. 3
Patrones de control....................................................................................................................................... 4
Patrn: Secuencia ..................................................................................................................................... 4
Patrn: Separacin en paralelo (tambin llamado AND/split) ................................................................. 4
Patrn: Sincronizacin .............................................................................................................................. 5
Patrn: Opcin exclusiva (XOR-Split) ........................................................................................................ 6
Patrn: Fusin simple ............................................................................................................................... 7
Patrones avanzados de paralelismo y sincronizacin ................................................................................... 9
Patrn: Mltiple Opcin (Or-Split) ............................................................................................................ 9Patrn: Fusin Sincronizada .................................................................................................................... 10
Patrn: Fusin Mltiple .......................................................................................................................... 12
Patrn: Discriminador ............................................................................................................................. 13
Patrn: Unin, N-de-los-M ...................................................................................................................... 16
Patrones Estructurales ................................................................................................................................ 19
Patrn: Ciclos Arbitrarios ........................................................................................................................ 19
Patrn: Terminacin Implcita ................................................................................................................ 20
Patrones de tareas con mltiples instancias .............................................................................................. 22
Patrn: Mltiples instancias sin sincronizacin. ..................................................................................... 22
Patrn: Mltiples instancias con conocimiento a priori en tiempo de diseo ....................................... 24
Patrn: Mltiples instancias con conocimiento a priori en tiempo de ejecucin. ................................. 26
Patrn: Mltiples instancias sin conocimiento a priori en tiempo de ejecucin. ................................... 28
Patrones basados en estado ....................................................................................................................... 30
Patrn: Seleccin Diferida ....................................................................................................................... 30
Patrn: Enrutamiento en paralelo entrelazado. ..................................................................................... 31Patrn: Hito ............................................................................................................................................. 33
Patrones de Cancelacin ............................................................................................................................. 36
Patrn: Cancelar Actividad ...................................................................................................................... 36
Patrn: Cancelar Caso. ............................................................................................................................ 37
7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
3/38
Patterns & Practices
IntroduccinEl departamento de Technology Management de la Technische Universiteit Eindhoven ha
identificado y publicado un conjunto de patrones bsicos que se encuentran en forma recurrente dentro
de la implementacin de sistemas de Workflow (http://is.tm.tue.nl/research/patterns/patterns.htm).
Este tipo de patrones capturan los aspectos elementales para el control de procesos y son equivalentesa la definicin de conceptos inicialmente definida por la Workflow Management Coalition (WfMC)
[Wor99].
Estos patrones se han convertido en un estndar, no solo como formas normalizadas de encarar la
solucin de las situaciones que estos patrones atacan, sino tambin como una forma de evaluar la
capacidad de las herramientas de Workflow, de acuerdo a su capacidad para implementar en forma
natural dichos patrones.
El presente documento describe el cumplimiento de los patrones bsicos de Workflow por parte de Q-
flow. Se presentar la descripcin de cada patrn junto con la forma en que el mismo puede ser
realizado utilizando Q-flow.
http://is.tm.tue.nl/research/patterns/patterns.htmhttp://is.tm.tue.nl/research/patterns/patterns.htmhttp://is.tm.tue.nl/research/patterns/patterns.htmhttp://www.workflowpatterns.com/patterns/control/bibliography.php#Wor99http://www.workflowpatterns.com/patterns/control/bibliography.php#Wor99http://www.workflowpatterns.com/patterns/control/bibliography.php#Wor99http://www.workflowpatterns.com/patterns/control/bibliography.php#Wor99http://is.tm.tue.nl/research/patterns/patterns.htm7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
4/38
Patterns & Practices
Patrones de control
Patrn: SecuenciaUna actividad en un proceso de Workflow es habilitada despus de ser completada otra actividad en el
mismo proceso.
http://is.tm.tue.nl/research/patterns/download/swf/pat_1.swf
Implementacin con Q-flow
Los diagramas de proceso de Q-flow implementan este patrn por defecto en cada actividad. O sea, por
defecto, los conectores entre tareas implican precedencia, salvo que se explicite lo contrario.
Patrn: Separacin en paralelo (tambin llamado AND/split)Dos o ms actividades de un proceso se ejecutan en paralelo. En un punto del proceso de Workflow, el
hilo de control se divide en mltiples hilos de control, habilitando la ejecucin de las tareas en paralelo y
sin restricciones de orden entre ellas.
http://is.tm.tue.nl/research/patterns/download/swf/pat_2.swf
Implementacin con Q-flow
http://is.tm.tue.nl/research/patterns/download/swf/pat_1.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_1.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_2.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_2.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_2.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_1.swf7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
5/38
Patterns & Practices
Este patrn se implementa en Q-flow utilizando el paso de separacin, el cual separa el hilo de ejecucin
en mltiples caminos de ejecucin paralelos. Q-flow permite la ejecucin de mltiples caminos enparalelo (sin lmite en cuanto al nivel de anidaciones o contenido de los hilos internos).
Patrn: SincronizacinUna actividad es iniciada cuando dos o ms hilos completan la ejecucin de sus actividades. En un punto
del proceso, dos o ms hilos de control convergen en un solo hilo.
http://is.tm.tue.nl/research/patterns/download/swf/pat_3.swf
Implementacin con Q-flow
http://is.tm.tue.nl/research/patterns/download/swf/pat_3.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_3.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_3.swf7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
6/38
Patterns & Practices
El paso de unin de Q-flow implementa entre otros este patrn. Al ser ste el patrn ms comn de
sincronizacin, el paso de unin se comporta por defecto de acuerdo al mismo, sincronizando todos loshilos de entrada antes de activar la siguiente actividad.
Patrn: Opcin exclusiva (XOR-Split)En un punto del proceso, una o ms de sus ramas son seleccionadas en base a los datos de control del
proceso.
http://is.tm.tue.nl/research/patterns/download/swf/pat_4.swf
Implementacin con Q-flow
http://is.tm.tue.nl/research/patterns/download/swf/pat_4.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_4.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_4.swf7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
7/38
Patterns & Practices
El patrn de seleccin exclusiva de camino es implementado en Q-flow por medio del paso de
evaluacin, donde es evaluada una condicin (basada en respuestas dadas a preguntas o tareas,votaciones, evaluacin de datos relevantes del workflow o valores de propiedades de los usuarios
participantes del workflow) y de acuerdo al valor de la evaluacin se selecciona uno u otro camino de
ejecucin.
Patrn: Fusin simpleSe mezclan varios hilos de control en uno solo, en determinado punto del proceso.
http://is.tm.tue.nl/research/patterns/download/swf/pat_5.swf
Implementacin con Q-flow
http://is.tm.tue.nl/research/patterns/download/swf/pat_5.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_5.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_5.swf7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
8/38
Patterns & Practices
La fusin simple en Q-flow no utiliza ningn constructor especfico, sino que la simple unin de los
caminos o hilos de ejecucin sobre una tarea determina que cualquiera de ellos que llegue a la tarea la
active.
7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
9/38
Patterns & Practices
Patrones avanzados de paralelismo y sincronizacin
Patrn: Mltiple Opcin (Or-Split)En un punto del proceso, basado en los datos de control del proceso, uno o ms caminos o ramas son
seleccionados.
http://is.tm.tue.nl/research/patterns/download/swf/pat_6.swf
Implementacin con Q-flow
El paso de Separacin de Q-flow implementa este patrn incluyendo una evaluacin opcional en cada
camino de ejecucin en que abre el proceso, permitiendo que cada camino sea activado opcionalmente,
de acuerdo con el resultado de la evaluacin correspondiente (verdadero o falso).
http://is.tm.tue.nl/research/patterns/download/swf/pat_6.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_6.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_6.swf7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
10/38
Patterns & Practices
Patrn: Fusin SincronizadaSe trata de un punto en el proceso de Workflow donde mltiples caminos convergen en un nico hilo de
control. Si ms de un camino haba sido tomado, entonces debe producirse una sincronizacin entre los
hilos de control. Si haba sido tomado slo uno, los dems hilos deben converger.
http://is.tm.tue.nl/research/patterns/download/swf/pat_7.swf
Implementacin con Q-flow
http://is.tm.tue.nl/research/patterns/download/swf/pat_7.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_7.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_7.swf7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
11/38
Patterns & Practices
El paso de unin de Q-flow implementa este patrn. El mismo, en su configuracin, permite que se
seleccione la espera por todos los hilos iniciados en el fork/split correspondiente, de forma de queespere la finalizacin de todos los hilos antes de activar la siguiente tarea.
7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
12/38
Patterns & Practices
Patrn: Fusin MltipleEn un una actividad convergen distintas ramas o caminos en los que se abri el hilo de control en una
bifurcacin anterior. La actividad donde convergen los hilos ser activada una vez por cada hilo de la
rama que se activ en la separacin.
http://is.tm.tue.nl/research/patterns/download/swf/pat_8.swf
http://is.tm.tue.nl/research/patterns/download/swf/pat_8.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_8.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_8.swf7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
13/38
Patterns & Practices
Implementacin con Q-flow
Este patrn est implementado en Q-flow por medio de una separacin con condicin en la cual los
hilos se separan condicionalmente y continuando la ejecucin de cada hilo en un paso en comn. Se
mantienen uno o dos hilos dependiendo de la separacin y cada uno de los hilos puede estar en el
mismo paso del proceso.
Patrn: DiscriminadorEs un punto del proceso que espera por una rama o hilo de control antes de activar la siguiente
actividad. Los siguientes hilos de control que lleguen a ella luego de activada la tarea siguiente son
ignorados, hasta que al llegar el ltimo la tarea finaliza.
http://is.tm.tue.nl/research/patterns/download/swf/pat_9.swf
http://is.tm.tue.nl/research/patterns/download/swf/pat_9.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_9.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_9.swf7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
14/38
Patterns & Practices
Implementacin con Q-flow
Este patrn es implementado en Q-flow por medio del paso de Unin, en el cual varios hilos de
ejecucin se fusionan, permitiendo que se active la siguiente actividad en base a la cantidad de hilos o
caminos de ejecucin que alcanzan el paso de unin. Para implementar este patrn, en las propiedades
del paso de unin se selecciona la opcin continuar cuando ha llegado el primer hilo.
7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
15/38
Patterns & Practices
7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
16/38
Patterns & Practices
Patrn: Unin, N-de-los-MUnin N-de-los-M , es un punto en el proceso de workflow donde M caminos de ejecucin paralelos
convergen en uno. La siguiente actividad es activada slo cuando N caminos se han completado. La
complecin de los siguientes M-N caminos es ignorada.
7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
17/38
Patterns & Practices
Implementacin con Q-flow
Este patrn es implementado en Q-flow por medio del paso de Unin, en el cual varios hilos de
ejecucin se fusionan, permitiendo que se active la siguiente actividad en base a la cantidad de hilos o
caminos de ejecucin que alcanzan el paso de unin. Para implementar este patrn, en las propiedades
del paso de unin se selecciona la opcin continuar cuando han llegado N hilos.
7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
18/38
Patterns & Practices
7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
19/38
Patterns & Practices
Patrones Estructurales
Patrn: Ciclos ArbitrariosSe trata de un punto en el proceso donde una o ms actividades pueden ser realizadas en forma
repetitiva. Este patrn existe para diferenciar los Workflows que necesitan de un constructor explcito
de repeticin (como lo sugiere el WPDL).
http://is.tm.tue.nl/research/patterns/download/swf/pat_10.swf
http://is.tm.tue.nl/research/patterns/download/swf/pat_10.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_10.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_10.swf7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
20/38
Patterns & Practices
Implementacin con Q-flow
Al igual que lo que sucede con el patrn de Fusin Simple, el modelo de grafo que implementa Q-flow
no necesita de un constructor especfico para implementar la repeticin o el patrn de Ciclos
Arbitrarios. La simple unin de una bifurcacin con el punto de entrada de una tarea o actividad de Q-
flow es una implementacin de este patrn.
Patrn: Terminacin ImplcitaUn proceso debe terminar cuando no quedan actividades pendientes y cuando no est en deadlock. Se
evita un terminador explcito que cancela las actividades pendientes.
http://is.tm.tue.nl/research/patterns/download/swf/pat_11.swf
http://is.tm.tue.nl/research/patterns/download/swf/pat_11.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_11.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_11.swf7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
21/38
Patterns & Practices
Implementacin con Q-flow
Las propiedades de los pasos de unin y de terminacin muestran la capacidad del sistema para
mantener activas las tareas en los hilos o caminos activos luego de haberse procesado los pasos de
unin y/o de cancelacin o de lo contrario finalizarlas implcitamente.
7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
22/38
Patterns & Practices
Patrones de tareas con mltiples instanciasExisten mltiples formas de abordar estos patrones. Durante el presente anlisis, se abordar la forma
ms comn de implementarlos, que es con pasos de tarea, o sea, con actividades asignadas a usuarios.
Patrn: Mltiples instancias sin sincronizacin.Una actividad es instanciada mltiples veces, desconocindose en tiempo de diseo el nmero de
instancias a ser habilitadas. Cuando todas las instancias creadas finalizan, se ejecuta la siguiente
actividad.
http://is.tm.tue.nl/research/patterns/download/swf/pat_12.swf
Implementacin con Q-flow
Dicho patrn puede ser implementado con Q-flow utilizando una tarea con un destinatario
multivaluado. El destinatario multivaluado puede ser cargado, generndose automticamente las
correspondientes instancias de la tarea en el momento de instanciarse la misma.
http://is.tm.tue.nl/research/patterns/download/swf/pat_12.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_12.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_12.swf7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
23/38
Patterns & Practices
Asignacin del rol en tiempo de ejecucin:
Configuracin del paso de tarea para que espere a que se completen todas las instancias entes de
ejecutar la siguiente actividad:
7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
24/38
Patterns & Practices
Patrn: Mltiples instancias con conocimiento a priori en tiempo de diseoSe soporta que una actividad sea habilitada o invocada muchas veces, con la cantidad de veces conocida
en tiempo de diseo.
http://is.tm.tue.nl/research/patterns/download/swf/pat_13.swf
Implementacin con Q-flow
Este patrn tambin es de simple implementacin en Q-flow, ya que la configuracin natural de los
pasos permite que se determinen en tiempo de diseo la cantidad de instancias de la actividad a ser
instanciada en tiempo de ejecucin.
El paso de pregunta es configurado con la lista de destinatarios (tomadas de diversas fuentes) a quienes
se dirigir la pregunta o tarea.
http://is.tm.tue.nl/research/patterns/download/swf/pat_13.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_13.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_13.swf7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
25/38
Patterns & Practices
En la configuracin del paso, se especifica que debe esperar a que se completen las actividades antes de
continuar con la siguiente actividad.
7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
26/38
Patterns & Practices
Patrn: Mltiples instancias con conocimiento a priori en tiempo de ejecucin.Una actividad es instanciada ms de una vez, dependiendo de informacin disponible en tiempo de
diseo, antes de invocar la actividad. Esta informacin puede provenir de los datos de control del
proceso o de los recursos del sistema, etc.
http://is.tm.tue.nl/research/patterns/download/swf/pat_14.swf
Implementacin con Q-flow
Dicho patrn puede ser implementado con Q-flow utilizando una tarea con un destinatario
multivaluado, donde la tarea es asignada en tiempo de ejecucin de acuerdo a la informacin disponible
en ese momento.
http://is.tm.tue.nl/research/patterns/download/swf/pat_14.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_14.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_14.swf7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
27/38
Patterns & Practices
En este patrn, antes de instanciarse la actividad, se analiza el valor de un dato de aplicacin del proceso
y mediante el script especificado en la siguiente imagen se generan tantas instancias del destinatario de
la tarea como sean necesarias, asignndose cada instancia a la cola de trabajo.
7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
28/38
Patterns & Practices
Patrn: Mltiples instancias sin conocimiento a priori en tiempo de ejecucin.Una actividad es instanciada muchas veces en tiempo de ejecucin, sin conocimiento de cuntas
instancias se crearn ni en tiempo de diseo ni en tiempo de ejecucin, hasta que se ha terminado de
crear las instancias. Es el caso de un bucle en tiempo de ejecucin que instancia una actividad.
http://is.tm.tue.nl/research/patterns/download/swf/pat_15.swf
Implementacin con Q-flow
Este patrn se implementa abriendo en dos el hilo de ejecucin en un paso de separacin (Separar) para
que la tarea se active y continuando la ejecucin luego del paso de unin , configurando el mismo para
que contine al llegar el primer hilo de ejecucin (patrn discriminador), de forma que la tarea contina
activa y cuando termina simplemente se detiene su hilo de ejecucin al llegar al paso de union. El
evaluador implementa el patrn X-OR, permitiendo que se activen tantas instancias de la misma tarea
como sean necesarias, hasta que la condicin de evaluacin del X-OR determine que se debe activar la
tarea B.
http://is.tm.tue.nl/research/patterns/download/swf/pat_15.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_15.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_15.swf7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
29/38
Patterns & Practices
Nota: Si se debe esperar por todas las instancias de A para activar B, entonces se debe utilizar un
contador en el hilo de A, incrementndolo antes de entrar a A y disminuyndolo al salir,
condicionndose el pasaje a B slo cuando ese contador llegue a cero. La evaluacin del mismo puede
dispararse con un paso de espera, para sincronizarse con las novedades de parte del workflow.
7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
30/38
Patterns & Practices
Patrones basados en estado
Patrn: Seleccin DiferidaSe trata de un punto en el proceso donde uno o mltiples caminos son seleccionados.
En contraste con el XOR-Split, la seleccin no es explcita (basada en datos o decisiones) peromltiples alternativas son ofrecidas por el entorno.
En contraste con el AND-Split, slo una de las opciones es seleccionada.Supongamos que en un punto del proceso se debe completar una actividad u otra basada en la
disponibilidad de los recursos, pero ninguno de los recursos utilizables est disponible, por lo que se
debe esperar a que uno de los recursos est disponible para decidir cul alternativa seleccionar.
http://is.tm.tue.nl/research/patterns/download/swf/pat_16.swf
Implementacin con Q-flow
El paso de pregunta con evaluacin permite seleccionar la opcin a ser tomada en tiempo de ejecucin.
En base a la respuesta dada, selecciona el camino a tomar o la tarea a activar.
http://is.tm.tue.nl/research/patterns/download/swf/pat_16.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_16.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_16.swf7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
31/38
Patterns & Practices
Patrn: Enrutamiento en paralelo entrelazado.Un conjunto de actividades es ejecutado en un orden arbitrario, decidido en tiempo de ejecucin.
Es el caso de actividades que pueden ejecutarse en cualquier orden pero no en paralelo.
http://is.tm.tue.nl/research/patterns/download/swf/pat_17.swf
Implementacin con Q-flow
El paso de separacin de Q-flow, si bien no permite directamente implementar un modelo en el cual se
seleccione por s solo un camino de ejecucin, s permite que cada hilo disponga de un evaluador
implcito, por lo cual a cada uno de los tres hilos que se muestran en el siguiente diagrama se le puede
dar una condicin de inicio. Una vez establecido un criterio de seleccin que permita que slo uno de los
hilos acte en cada iteracin, alcanza con implementar un bucle por medio del patrn x-or de forma
que cierre el ciclo de ejecucin repitindolo hasta que todas las tareas se hayan completado.
http://is.tm.tue.nl/research/patterns/download/swf/pat_17.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_17.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_17.swf7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
32/38
Patterns & Practices
La siguiente figura muestra las propiedades a colocar en el paso de evaluacin para que contine
ejecutando otra tarea mientras no se han completado o instanciado las tres tareas especificadas.
7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
33/38
Patterns & Practices
Patrn: HitoPermite testear si un proceso de Workflow ha alcanzado determinada fase o etapa.
http://is.tm.tue.nl/research/patterns/download/swf/pat_18.swf
Implementacin con Q-flow
Este patrn es implementado en forma nativa por Q-flow. En el siguiente diagrama, se abren dos hilos
de ejecucin paralela y en el primero de los hilos se espera por la ejecucin del hito (paso
Sincronizacin) para activar la tarea A. Se contina inmediatamente con la tarea C (con dos hitos y
esperas se puede hacer una sincronizacin cruzada). Al llegar al paso de unin, la ejecucin contina.
http://is.tm.tue.nl/research/patterns/download/swf/pat_18.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_18.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_18.swf7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
34/38
Patterns & Practices
En la configuracin del paso de sincronizacin se muestra que se esperar por el hito contenido en el
otro hilo.
7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
35/38
Patterns & Practices
El paso de unin puede ser configurado para que la ejecucin contine cuando se ha completado el
segundo hilo de ejecucin, independizndose la continuacin del workflow de la terminacin o de la
ejecucin de la tarea A, la cual, segn diversos caminos que podra tomar el segundo hilo, podra no
ejecutarse nunca.
7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
36/38
Patterns & Practices
Patrones de Cancelacin
Patrn: Cancelar ActividadEl sistema permite que al completarse una actividad otra actividad sea cancelada o deshabilitada (una
actividad que una vez completada hace innecesaria otra que se encuentra activada).
http://is.tm.tue.nl/research/patterns/download/swf/pat_19.swf
Implementacin con Q-flow
Se inicia el proceso, hasta que en un punto nos encontramos con un paso de fork que divide el mismo en
dos hilos: uno que representa el hilo de ejecucin normal del proceso y el otro que representa el hilo de
cancelacin.
http://is.tm.tue.nl/research/patterns/download/swf/pat_19.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_19.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_19.swf7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
37/38
Patterns & Practices
La unin del los hilos cancela las tareas definidas. Se muestra como se debe configurar el paso de unin.
Patrn: Cancelar Caso.Una instancia completa del proceso es cancelada. Por ejemplo, en un proceso de evaluacin y seleccin,
uno de los participantes se retira, teniendo que cancelarse todas las actividades relacionadas con la
evaluacin de este participante.
http://is.tm.tue.nl/research/patterns/download/swf/pat_20.swf
Implementacin con Q-flow
Se inicia el proceso con un paso de fork que divide el mismo en dos hilos: uno que representa el hilo de
ejecucin normal del proceso y el otro que representa el hilo de cancelacin.
http://is.tm.tue.nl/research/patterns/download/swf/pat_20.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_20.swfhttp://is.tm.tue.nl/research/patterns/download/swf/pat_20.swf7/29/2019 PPQf-Patrones de Workflow WfMC-V2.0
38/38
Patterns & Practices
El paso de finalizacin cancela el proceso en su conjunto. Se muestra la configuracin del paso de fin.