Modellare un processo

<< Fare clic per visualizzazione il sommario >>

Percorso:  Jamio Composer >

Modellare un processo

Un processo è un insieme di attività in relazione tra loro, che realizzano un servizio allo scopo di soddisfare uno o più richiedenti. Parliamo di processo anche quando ci riferiamo alla sua rappresentazione formale. Nelle trasformazioni alimentari, così come nei processi di business più astratti, rappresentiamo eventi, collegamenti, attività, scelte, risorse e cicli, ma anche strutture, organizzazioni e le interazioni che avvengono tra tutti questi elementi.

Un processo può essere la rappresentazione dell’approvazione di un ordine, la scrittura di un’offerta, l’accettazione di un paziente al pronto soccorso, e così via.

Esistono numerose modalità di rappresentazione formale di un processo: il BPMN è un linguaggio di modellazione la cui finalità è quella di descrivere un processo utilizzando simboli e regole condivise dalla più ampia comunità dei professionisti del Business Process Management.

Jamio si ispira al BPMN nella modellazione dei processi, integrandone la rappresentazione con gli elementi caratteristici della sua architettura. In questo modo Jamio consente la progettazione e la realizzazione di applicazioni che orchestrano, attraverso i processi, i servizi di gestione dati, attività utente, attività di automazione, in una logica aderente alla prassi organizzativa.

La notazione BPMN risulta molto familiare perché declinata dal più diffuso e universalmente riconosciuto linguaggio grafico del flowchart.

Con la notazione BPMN possiamo raffigurare:

le attività interne ai dipartimenti di un’organizzazione;

le attività e i processi tra l’organizzazione e un’entità esterna;

le attività di un processo globale, quindi i processi che intercorrono in uno scenario che comprende più organizzazioni.

I simboli utilizzati dalla notazione BPMN possono essere raggruppati in due aree principali: gli oggetti di flusso che rappresentano ciò che accade durante il processo e i connettori che descrivono come tali oggetti sono messi in relazione l’uno con l’altro.

Nella prima area ricadono i tre elementi grafici principali di un processo:

Eventi;

Attività;

Gateway.

Della seconda area Jamio utilizza esclusivamente i connettori che descrivono il flusso di esecuzione del processo, noti come Sequence Flow.

Il menu Home -> Inserisci modello del Jamio Composer consente di inserire nella soluzione un nuovo modello di processo.

Quando si aggiunge alla soluzione un nuovo modello di processo si accede alla finestra di definizione del diagramma di processo che è composta di differenti sezioni, ciascuna dedicata alla descrizione delle caratteristiche personalizzate del processo che si desidera creare.

 

Immagine61

Modellare un processo

 

Proprietà modello: la sezione comprende informazioni generali relative al modello di processo quali il nome, la descrizione, il nome e la categoria di destinazione, lo schema autorizzativo. Deve assumere un valore alfanumerico, iniziare sempre con una lettera, i caratteri ammessi come nome del modello di processo sono: lettere (comprese le lettere accentate), numeri, spazi bianchi, underscore (_) e trattino (-). Per l'utilizzo del modello di processo da API Rest OpenAPI si consiglia di specificare il nome delle variabili senza spazi o caratteri speciali.

Definizione: la sezione permette di disegnare e dettagliare il modello di processo. E’ suddivisa nelle seguenti sezioni:

- area principale, nella quale si modella graficamente il processo;

- la toolbar degli elementi grafici insieme degli elementi utili a modellare un processo. Per inserire un elemento nel disegno, selezionarlo con il mouse e cliccare nell’area principale. In alternativa è possibile inserire un nuovo elemento nel processo facendo clic con il tasto destro del mouse nell’area di disegno e scegliendo dal menù contestuale il nodo che si preferisce, come nell'immagine sottostante;

 

Immagine62

Menù contestuale al disegno di processo

 

Variabili: la sezione permette di specificare le variabili di processo;

Input: la sezione permette di specificare le variabili di input di un processo;

Output: la sezione permette di specificare le variabili di output di un processo. I nomi delle variabili devono assumere un valore alfanumerico, iniziare sempre con una lettera, i caratteri ammessi sono: lettere (comprese le lettere accentate), numeri, spazi bianchi, underscore (_) e trattino (-). Per l'utilizzo del modello di processo da API Rest OpenAPI si consiglia di specificare il nome delle variabili senza spazi o caratteri speciali.

 

La logica di esecuzione dei processi è legata ad una logica di isolamento dei contesti di esecuzione. Ogni istanza di processo ha il proprio contesto di esecuzione ed è indipendente dai contesti di esecuzione di altri processi e possiede un bagaglio informativo isolato. Pertanto è possibile creare una serie di variabili appartenenti ad un 'istanza di processo il cui stato è mantenuto nel corso di esecuzione di tutto il processo. Un processo non sempre ha un'esecuzione istantanea, ad esempio è possibile eseguire processi che coinvolgono attività interattive ibridate con chiamate a servizi che spesso diventano istanze long running. In queste situazioni il processo viene tolto dalla memoria e conservato con tutte le sue variabili in uno stato dormiente. Un processo però ha degli elementi che sono di tipo attività (o task). Queste attività hanno ha loro volta un set di variabili. Ad esempio un sotto-processo è completamente isolato sia dal chiamante che da qualsiasi altra sua istanza. Per cui i dati che passati dal processo padre è necessario trasferirli in un ambiente isolato (sotto-processo) che li usa in copia. Tutte le variabili di processo non sono viste se non dal processo che le possiede. Per cui ogni volta che quando in un processo viene inserita un'attività occorre necessariamente passare ad essa tutte le variabili utili per la sua esecuzione. Analogamente l’output prodotto da un sotto-processo deve essere sempre passato al padre o dall’oggetto task al chiamante.