2.3 Intermediate / Boundary Event Timer
INTERMEDIATE/BOUNDARY EVENT TIMER
Rappresenta un elemento molto utilizzato per la gestione delle tempistiche di svolgimento di task e processi.
Può essere selezionato in rapidamente dal menù a sinistra sempre durante la modalità di modifica del diagramma.
Esistono due gruppi di timer che si differenziano a seconda delle azioni da svolgere e dalle task/elementi coinvolti:
1) Intermediate Event Timer
2) Boundary Event Timer
1) INTERMEDIATE EVENT TIMER
Il primo gruppo è composto da diversi tipi di “Intermediate Event”e vengono utilizzati tra due task/elementi. Possono essere selezionati durante la modalità di modifica del diagramma premendo inizialmente sulla task o elemento da cui poi si deve passare al timer, poi sull’icona raffigurante due cerchi chiamata “Intermediate/Boundary Event Timer”.
A questo punto si deve selezionare il timer appena citato, cliccare sulla chiave inglese e poi selezionare una delle opzioni disponibili.
Timer Intermediate Catch Event
E’ un tipologia di timer utilizzata per attende un determinato periodo di tempo prima di passare alla task/elemento successivo.
Le altre tipologie di Intermediate Event selezionabili non sono al momento implementate.
2) BOUNDARY EVENT TIMER
Il secondo gruppo è composto da diversi tipi di “Boundary Event” che vengono utilizzati sulle task di controllo e si attivano nel momento in cui si rimane fermi su una task per un determinato periodo di tempo.
Possono essere selezionati durante la modalità di modifica del diagramma premendo inizialmente sulla task o elemento da cui poi si deve passare al timer, poi sull’icona raffigurante due cerchi chiamata “Intermediate/Boundary Event”.
A questo punto si deve selezionare il timer appena citato e trascinarlo su uno dei bordi della task di controllo interessata.
(N.B: Se si clicca semplicemente sull’icona verrà creato un “Intermediate Event” collegato alla task da una freccia. Se si vorrà utilizzare quel timer come Boundary Event sarà sufficiente eliminare la freccia e posizionare il timer sulla task interessata).
Una volta fatto questo si deve selezionare il timer, premere sulla chiave inglese e successivamente selezionare una tra le opzioni disponibili.
Timer Boundary Event
Permette di procedere con l’esecuzione delle task/elementi collegate al timer in base a quanto tempo il processo rimane fermo sulla task di controllo su cui si trova il timer stesso.
L’intervallo di tempo viene prestabilito durante la configurazione del timer.
Possono essere utilizzati solamente sulle task di controllo.
Timer Boundary Event (non interrupting)
Svolge la stessa funzione del Timer Boundary Event, con l’unica differenza che permette di proseguire con il flusso del processo ignorando tutte le task successive al timer nel momento in cui si verifichino le condizioni necessarie per proseguire con il flusso principale.
Qui di seguito un esempio:
Consideriamo la situazione in cui il processo sia rimasto fermo sulla task “Control” principale (quella avente il timer sul bordo) per l’ intervallo di tempo prestabilito nel timer e che quindi abbia intrapreso il ramo ad esso direttamente collegato.
Nel momento in cui la condizione della task “Control” principale (quella avente il timer sul bordo) verrà verificata, il processo continuerà il flusso principale ignorando la parte rossa, ossia quella successiva al timer. Se ci fosse stato un normale Timer Boundary Event l’assegnatario della task “Process Helper”(all’interno della quale è configurato un process helper) avrebbe dovuto obbligatoriamente compilare quest’ultimo con dei valori tali da rendere le condizioni presenti nella task “control” vere e poter poi ritornare alla task “Control”(quella avente il timer sul bordo) e proseguire con le task del flusso principale (in questo esempio la Task “Update”).
Le altre tipologie di Boundary Event selezionabili non sono al momento implementate.