1 WORKSHOP Chronos Jpdl Designer versione 1.0 Progetto ELISA Introduzione allutilizzo dello...

23
1 WORKSHOP WORKSHOP Chronos Jpdl Designer versione 1.0 Chronos Jpdl Designer versione 1.0 Progetto ELISA Progetto ELISA Introduzione all’utilizzo dello strumento di disegno Chronos Introduzione all’utilizzo dello strumento di disegno Chronos Bologna, 17 settembre 2009

Transcript of 1 WORKSHOP Chronos Jpdl Designer versione 1.0 Progetto ELISA Introduzione allutilizzo dello...

Page 1: 1 WORKSHOP Chronos Jpdl Designer versione 1.0 Progetto ELISA Introduzione allutilizzo dello strumento di disegno Chronos Bologna, 17 settembre 2009.

1

WORKSHOP WORKSHOP Chronos Jpdl Designer versione 1.0Chronos Jpdl Designer versione 1.0

Progetto ELISAProgetto ELISAIntroduzione all’utilizzo dello strumento di disegno Chronos Introduzione all’utilizzo dello strumento di disegno Chronos

Bologna, 17 settembre 2009

Page 2: 1 WORKSHOP Chronos Jpdl Designer versione 1.0 Progetto ELISA Introduzione allutilizzo dello strumento di disegno Chronos Bologna, 17 settembre 2009.

2

AgendaAgenda

Introduzione

Lo strumento di disegno

Creazione di un nuovo progetto

Struttura del progetto

Creazione di una catena Chronos

Menù delle catene Manuali

Menù delle catene Automatiche

Configurazione dei nodi

Costruzione dell’archivio .par

Esercizi

Domande

Page 3: 1 WORKSHOP Chronos Jpdl Designer versione 1.0 Progetto ELISA Introduzione allutilizzo dello strumento di disegno Chronos Bologna, 17 settembre 2009.

3

Introduzione 1/2Introduzione 1/2

Una catena Chronos è un insieme di attività correlate finalizzate al raggiungimento di un obiettivo.

La catena viene eseguita dall’ Engine Chronos.

L’Engine Chronos è un componente software che mantiene lo stato delle catene in esecuzione assegnando incarichi a persone ed applicazioni.

Obiettivo: mostrare l’utilizzo dello strumento di disegno di una catena Chronos.

Page 4: 1 WORKSHOP Chronos Jpdl Designer versione 1.0 Progetto ELISA Introduzione allutilizzo dello strumento di disegno Chronos Bologna, 17 settembre 2009.

4

Introduzione 2/2Introduzione 2/2

Al termine del progetto viene prodotto un file xml che rappresenta il flusso del processo

Il Designer converte la rappresentazione grafica della catena in un formato testuale

Lo strumento di disegno consente di fornire una descrizione formale di una catena.

Page 5: 1 WORKSHOP Chronos Jpdl Designer versione 1.0 Progetto ELISA Introduzione allutilizzo dello strumento di disegno Chronos Bologna, 17 settembre 2009.

5

Lo strumento di disegnoLo strumento di disegno

è un plug-in di Eclipse

fornisce un ambiente per la definizione formale di una catena

permette di progettare sia catene manuali che automatiche

Il plug-in offre:

• una nuova perspective • nuovi pannelli grafici• una lista di componenti di

disegno da utilizzare per la definizione dei proprie catene

Page 6: 1 WORKSHOP Chronos Jpdl Designer versione 1.0 Progetto ELISA Introduzione allutilizzo dello strumento di disegno Chronos Bologna, 17 settembre 2009.

6

La finestra richiede di indicare la locazione di un engine jBPM da cui prelevarne la configurazione.

Terminata la configurazione premere su “Finish”

Inserire il nome del progettoe scegliere il percorso (di default corrisponde al workspace corrente).Cliccando su next si accede alla finestra successiva.

Dal menù File scegliere New, Project, quindi “CHRONOS JPDL” e selezionare “New Chronos Project”

Premere “Next”

Creazione di un nuovo progettoCreazione di un nuovo progetto

Page 7: 1 WORKSHOP Chronos Jpdl Designer versione 1.0 Progetto ELISA Introduzione allutilizzo dello strumento di disegno Chronos Bologna, 17 settembre 2009.

7

Struttura del progettoStruttura del progetto

Nel pannello “Package Explorer” sarà visibile il nuovo progetto costituito dalle seguenti cartelle:

src/main/jpdl: contiene le definizioni delle catene

src/test/java: contiene una classe di test

src/main/config: contiene un file hibernate di default

src/main/java: si possono inserire eventuali handler personalizzati (versioni future – nodo java)

Page 8: 1 WORKSHOP Chronos Jpdl Designer versione 1.0 Progetto ELISA Introduzione allutilizzo dello strumento di disegno Chronos Bologna, 17 settembre 2009.

8

Creazione di una catena ChronosCreazione di una catena Chronos

La strumento di disegno consente di definire sia Catene Manuali che Catene Automatiche

Una Catena Automatica contiene nodi che non richiedono l’intervento umano per l’avanzamento del processo.

Una Catena Manuale contiene almeno un nodo che richiede un’interazione con un operatore per consentire al processo di avanzare al nodo successivo.

La procedura per creare catene manuali o catene automatiche è la medesima.

Page 9: 1 WORKSHOP Chronos Jpdl Designer versione 1.0 Progetto ELISA Introduzione allutilizzo dello strumento di disegno Chronos Bologna, 17 settembre 2009.

9

permette l’esecuzione di comandi del sistema operativo, come creazioni/eliminazioni/copie/spostamenti di cartelle e files, nonché esecuzioni di qualsiasi tipologia di processo.

permette di selezionare nell’area di disegno i componenti inseriti per visualizzarne la configurazione o poterli spostare, eliminare o rinominare permette di selezionare più componenti nell’area di disegno, questa operazione consente lo spostamento di un blocco del disegno o la sua cancellazione tramite il pulsante ‘canc’ della tastiera. consente di posizionare uno step ‘Start State’ che individua il puntodi avvio della catena. Lo strumento di disegno permette di inserire uno e un solo ‘Start State’.consente di posizionare uno step ‘End State’ che individua il punto di terminazione della catena.E’ possibile inserire più nodi End.consente di posizionare uno step ‘Fork’ che consente l’esecuzione di due o più flussi in parallelo.raccoglie i vari percorsi paralleli attendendo la loro completa esecuzione per poter procedere con lo step successivo.

consiste nell’inserire logiche di cicli o di opzionalità nelle catene. Uno step ‘Decision’ permette di valutare una espressione booleanae in base alla sua veridicità o meno scegliere tra due o più percorsi alternativi.

permette la definizione di una procedura o funzione Pl-Sql.

che permette la definizione di comandi sql. Possibili comandi sono:CREATE, INSERT, DELETE, UPDATE, DROP. Non è possibile eseguire la SELECT.

permette la definizione di uno step umano ovvero un’operazione destinata ad un operatore con uno specifico ruolo che avrà il compito di prendersi in carico l’esecuzione dello step e dichiararne l’esito finale.

invia una mail all’indirizzo configurato.consente di collegare due steps definendo così il flusso di esecuzione. Ad una ‘Transition’ può essere assegnato un nome in modo da poter essere utilizzato nel nodo Decision come indicatore di quale percorso intraprendere dopo la valutazione dell’espressione.

Menù delle catene ManualiMenù delle catene Manuali

Page 10: 1 WORKSHOP Chronos Jpdl Designer versione 1.0 Progetto ELISA Introduzione allutilizzo dello strumento di disegno Chronos Bologna, 17 settembre 2009.

10

Menù delle catene AutomaticheMenù delle catene Automatiche

Il menù della catena automatica ha molti componenti in comune con quello manuale.

Nel menù automatico è assente il nodo HumanTask mentre è presente il nodo Process State.

Il nodo Process State individua la chiamata di una sottocatena specificata nella configurazione dello step.

Page 11: 1 WORKSHOP Chronos Jpdl Designer versione 1.0 Progetto ELISA Introduzione allutilizzo dello strumento di disegno Chronos Bologna, 17 settembre 2009.

11

Sezione PropertiesSezione Properties

La sezione ‘Properties’ consente di configurare:

• la catana Chronos• le variabili globali• i singoli nodi

I parametri configurabili variano in base al componente selezionato nell’area di disegno.

Due sottosezioni sono sempre visibili:

General che consente di nominare il componente selezionato e di associarne una descrizione

Global Variables che permette di configurare le variabili globali della catena

Page 12: 1 WORKSHOP Chronos Jpdl Designer versione 1.0 Progetto ELISA Introduzione allutilizzo dello strumento di disegno Chronos Bologna, 17 settembre 2009.

12

Configurazione delle Global VariablesConfigurazione delle Global Variables

La form consente di definire le variabili globali ed è costituita dai seguenti campi:

Move: consente cambiare la posizione della variabile all’interno della tabella.

Name: nome della variabile.

Label: etichetta della variabile

Type: i possibili tipi sono String, Number, Date e Alias

AliasSubType: per definire il tipo di Alias nel caso in cui il Type sia ‘Alias’

Default Value: valore di default della variabile

Required: check-box che indica se la variabile è obbligatoria

Editable: check-box che indica se la variabile è modificabile

Hidden: check-box che indica se la variabile è nascosta rispetto all’interfaccia

utente

Allowed Values: contiene una lista di valori accettati separati dal carattere

virgola

Page 13: 1 WORKSHOP Chronos Jpdl Designer versione 1.0 Progetto ELISA Introduzione allutilizzo dello strumento di disegno Chronos Bologna, 17 settembre 2009.

13

Viabili globali obbligatorieViabili globali obbligatorie

Per ogni catena occorre definire alcune variabili globali.

In presenza di nodi SHELL, SQL e PL-SQL occorre definire almeno due variabili globali: una di tipo ‘Alias’ ed una di tipo ‘String’. La prima definisce la configurazione della connessione del DB, la seconda è utilizzata come variabile di output.

In presenza di nodi Human Task occorre definire altre due variabili di tipo stringa: la prima per contenere l’esito dell’operazione e la seconda per tener traccia di un eventuale commento dell’operatore.

Page 14: 1 WORKSHOP Chronos Jpdl Designer versione 1.0 Progetto ELISA Introduzione allutilizzo dello strumento di disegno Chronos Bologna, 17 settembre 2009.

14

Nodo DecisionNodo Decision

Determina il successivo nodo da eseguire valutando un'espressione JSF EL.

Per configurare il nodo decison occorre selezionarlo e accedere alla sottosezione ‘Handler’ nella sezione ‘Properties’.

Il campo Expression consente di inserire la condizione da valutare per scegliere la prossima transition da eseguire.

Esempio di sintassi:

#{(A>B  && (B==C || C-1==7 || Z=="ELISA")) ? 'ramo1' : 'ramo2'}

dove A, B, C e Z sono variabili globali e ramo1 e ramo2 sono i nomi delle due transition uscenti.

Page 15: 1 WORKSHOP Chronos Jpdl Designer versione 1.0 Progetto ELISA Introduzione allutilizzo dello strumento di disegno Chronos Bologna, 17 settembre 2009.

15

Nodo PL-SQLNodo PL-SQL

Per configurare il nodo PL-SQL occorre selezionarlo e accedere alla sottosezione ‘Local Parameters’ nella sezione ‘Properties’.Il form consente di specificare i parametri necessari a configurare il nodo:

Type: specifica se si vuole chiamare una funzione o una proceduraAlias: indica la variabile che contiene parametri di connessione ad DBReturn: variabile in cui memorizzare il valore restituito (solo function)Return Type: tipo del valore restituito (solo function)Call: nome della funzione/procedura da invocareIs ‘Pause’ Accepted: menù a tendina che permette di dichiarare se la procedura/funzione gestisce o meno l’invocazione di un comando di pausa sull’engine.Parameters’ List: parametri di ingresso/uscita alla funzione/procedura

Page 16: 1 WORKSHOP Chronos Jpdl Designer versione 1.0 Progetto ELISA Introduzione allutilizzo dello strumento di disegno Chronos Bologna, 17 settembre 2009.

16

Nodo SQLNodo SQL

Per configurare il nodo SQL occorre selezionarlo e accedere alla sottosezione ‘Local Parameters’ nella sezione ‘Properties’.Il form consente di specificare i parametri necessari a configurare il nodo:

Alias: specifica la variabile che contiene parametri di connessione ad DBOutput: variabile globale in cui memorizzare l’esito dell’esecuzioneQueries: lista di query SQL separate dal carattere ‘;’Parameters’ List: lista parametri SQL utilizzabili secondo la notazione $<posizione>

Page 17: 1 WORKSHOP Chronos Jpdl Designer versione 1.0 Progetto ELISA Introduzione allutilizzo dello strumento di disegno Chronos Bologna, 17 settembre 2009.

17

Nodo ShellNodo Shell

Per configurare il nodo SHELL occorre selezionarlo e accedere alla sottosezione ‘Local Parameters’ nella sezione ‘Properties’.Il form consente di specificare i parametri necessari a configurare il nodo:

Output: variabile globale in cui memorizzare l’outputScript: lista dei comandi shell separati da “invio”Is ‘Pause’ Accepted: menù a tendina che permette di dichiarare se la sequenza di comandi gestisce o meno l’invocazione di un comando di pausa sull’engine.Parameters’ List: Lista parametri utilizzabili nello script secondo la notazione $<posizione>

Page 18: 1 WORKSHOP Chronos Jpdl Designer versione 1.0 Progetto ELISA Introduzione allutilizzo dello strumento di disegno Chronos Bologna, 17 settembre 2009.

18

Nodo MailNodo Mail

Per configurare il nodo mail occorre selezionarlo e accedere alla sottosezione ‘Mail Info’ nella sezione ‘Properties’.Il form consente di specificare i parametri necessari a configurare il nodo.

Page 19: 1 WORKSHOP Chronos Jpdl Designer versione 1.0 Progetto ELISA Introduzione allutilizzo dello strumento di disegno Chronos Bologna, 17 settembre 2009.

19

Nodo Process-StateNodo Process-State

Per configurare il nodo Process-State occorre selezionarlo e accedere alla sottosezione ‘Subprocess’ nella sezione ‘Properties’.Il form consente di specificare i parametri necessari a configurare il nodo:

Subpro. Name: nome “esatto” della sottocatene da invocareVerison: se si intende specificare una particolare versione della sottocatenaDefine used var.: mapping tra le variabili globali della catena padre e della sottocatena

Page 20: 1 WORKSHOP Chronos Jpdl Designer versione 1.0 Progetto ELISA Introduzione allutilizzo dello strumento di disegno Chronos Bologna, 17 settembre 2009.

20

Nodo Human-TaskNodo Human-Task

Per configurare il nodo Human-Task occorre selezionarlo e accedere alla sottosezione ‘Local Parameters’ nella sezione ‘Properties’.Il form consente di specificare i parametri necessari a configurare il nodo:

Grant: ruolo utente a cui è destinata l’esecuzioneComment: variabile globale che memorizza il commento dell’operatore Result: variabile globale destinataria dell’esito dell’esecuzioneMax Ready Time: massimo tempo di attesa per la presa in caricoMax Exe Time: massimo tempo di esecuzione

Page 21: 1 WORKSHOP Chronos Jpdl Designer versione 1.0 Progetto ELISA Introduzione allutilizzo dello strumento di disegno Chronos Bologna, 17 settembre 2009.

21

Costruzione dell’archivio .parCostruzione dell’archivio .par

Page 22: 1 WORKSHOP Chronos Jpdl Designer versione 1.0 Progetto ELISA Introduzione allutilizzo dello strumento di disegno Chronos Bologna, 17 settembre 2009.

22

EsercitazioneEsercitazione

Esercitazione

Page 23: 1 WORKSHOP Chronos Jpdl Designer versione 1.0 Progetto ELISA Introduzione allutilizzo dello strumento di disegno Chronos Bologna, 17 settembre 2009.

23

Domande?