Una panoramica su Bizagi Studio
In questo articolo riprendiamo l’approfondimento della suite Bizagi BPM Suite, della omonima azienda, ed in particolare andiamo a vedere alcuni degli elementi che caratterizzano il modulo Bizagi Studio. Per una visione d’insieme dell’architettura della suite di Bizagi, si veda la seconda puntata di questa serie [1].
Bizagi Studio è l’ambiente dove il modello del processo, realizzato in Bizagi Modeler, viene trasformato in una vera e propria applicazione di processo eseguibile aggiungendo tutti gli elementi di dettaglio necessari allo scopo. In questo ambiente viene inoltre costruito il modello dei dati, la user interface, viene definita la work allocation, vengono definite le business rules e le interfacce con le altre applicazioni software.
Quali tecnologie utilizza Bizagi Studio?
Per realizzare delle applicazioni di processo, Bizagi Studio usa due principali elementi di infrastruttura: un database e una applicazione web-based, chiamata Work Portal.
Il database è il “luogo” in cui vengono memorizzati i processi e tutti i dettagli per l’automazione degli stessi. Questo è il DB Server.
Work Portal è una applicazione web ospitata su una istanza di web server, dove i processi possono essere caricati e lanciati per permettere allo sviluppatore di verificare il risultato delle attività di realizzazione dell’automazione del processo e il modo in cui questo sarà visualizzato all’utente finale. Di fatto, il Work Portal è un vero e proprio ambiente di prototyping e test. Durante l’installazione, Bizagi crea in maniera automatica questo ambiente. La macchina dove vengono ospitate le istanze del web server e il Work Portal, è il BPM Server.
I database supportati sono Microsoft SQL Server e Oracle. I web server supportati sono Microsoft IIS, WebSphere, WebLogic, JBoss EAP.
Bizagi mette a disposizione un’installazione — la quick start installation — che su macchina locale consente di installare in maniera automatica una istanza di SQL Server Express 2008 e di IIS Express.
Per l’installazione e i requisiti minimi rimandiamo al sito di Bizagi [3] dove queste informazioni sono molto ben dettagliate e dal quale provengono anche le immagini che utilizziamo in questo articolo.
Bizagi Project
In Bizagi, per realizzare una automazione dei processi di una organizzazione, è necessario creare un progetto che comprende:
- un repository dei processi, che è un’istanza di database dove vengono memorizzati tutti i processi e i loro dettagli di automazione, che costituiscono l’applicazione dei processi dell’organizzazione;
- un work portal, che è un ambiente di runtime che presenta l’applicazione dei processi esattamente come questa sarà visibile all’utente finale nell’ambiente di produzione;
- uno scheduler service, che è un servizio, chiamato Bizagi Scheduler, che ha in carico l’esecuzione di task di tipo offline e di tipo asincrono, o altri che possono essere schedulati.
Creazione di un nuovo progetto
Per creare un nuovo progetto si devono eseguire alcuni passaggi. Anzitutto, si seleziona New nel pannello che viene subito aperto quando si avvia Bizagi (figura 1).
Poi si inseriscono i dettagli del progetto (figura 2) e si seleziona il bottone Next
Si passa quindi all’inserimento dei dettagli relativi al server del database (figura 3).
Se si è usata l’installazione quick start (versione 10.7 della suite), si può usare il database SQL Server installato automaticamente durante tale operazione. Per questo DB le credenziali sono
- login: sa
- password: Bizagi10GO
Si seleziona a questo punto il bottone Next e, in pochi minuti, Bizagi creerà il progetto (figura 4)
Una volta che il progetto è stato creato, Bizagi Studio lo aprirà automaticamente e si potrà iniziare a definire tutti i dettagli per automatizzare i processi.
Interfaccia di Bizagi Studio
Bizagi Studio ha due viste: la Wizard view a la Module view.
I progetti possono essere automatizzati già usando solo la Wizard view; comunque alcune feature avanzate possono essere raggiunte unicamente grazie alla Module view. Per cambiare da una vista all’altra è sufficiente selezionare il bottone relativo che si trova nella tab Home sulla sezione detta ribbon di Bizagi Studio (figura 5).
Bizagi raccomanda di usare inizialmente la Wizard view per creare i processi e di accedere alla Module view per aggiungere delle opzioni avanzate, quali ad esempio definire l’organizzazione, gestire la sicurezza del Work Portal, gestire lo scheduler, creare le regole di business globali e così via.
Wizard view
La Wizard view è la vista che consente la realizzazione dell’automazione del processo in maniera guidata, passo dopo passo.
Di seguito i passi che in sequenza vengono suggeriti:
- Model Process:permette di definire il modello del processo usando Bizagi Modeler.
- Model Data:è l’ambiente dove si definisce il modello dei dati che organizza le informazioni gestite dalle varie istanze di processo.
- Define Forms:permette di disegnare la user interface e le informazioni che saranno visualizzate durante l’esecuzione delle attività del processo.
- Business Rules:permette di definire i flussi condizionali e le espressioni che modellano il processo sul reale flusso di lavoro dell’organizzazione.
- Performers:permette di assegnare gli utenti alle attività del processo.
- Integrate:è l’ambiente dove si definiscono le eventuali connessioni con i sistemi esterni o gli altri processi.
- Execute:permette di realizzare il deploy del progetto nell’ambiente di test o produzione.
Ribbon e Tab
La Ribbon è la sezione che contiene i menu che richiamo i comandi e i controlli per gestire gli elementi delle due viste. I menu sono organizzati in tab. Di seguito andiamo a descrivere brevemente i principali.
Home Tab
L’ Home Tab (figura 7) contiene tre bottoni che sono sempre visualizzati:
- Module/Wizard: serve per cambiare dalla visualizzazione da Wizard a Module e viceversa.
- Run: consente di accedere alla web application Work Portal.
- Search: consente di eseguire una ricerca di oggetti quali entità, attributi, business rules e processi.
Se si sceglie invece la Module View, i bottoni visualizzati dipendono dal modulo e dall’elemento del modulo selezionato.
In figura 8 sono mostrati i bottoni visualizzati quando si selezionano il modulo Processes e un elemento di tipo process.
In figura 9 si può vedere ciò che è visualizzato quando si selezionano il modulo Entities e un elemento di tipo attribute.
Tools Tab
Anche la Tool Tab ha diversi elementi (figura 10).
- User Fields: consente di accedere all’omonimo menu dove si possono creare e gestire sofisticati controlli HTML che non fanno parte dei controlli di default di Bizagi Forms Modeler.
- Scripting: consente di scrivere degli script in JavaScript che possono essere poi invocati da qualsiasi User Field incluso in qualsiasi processo.
- Functions: consente di creare una libreria di business rules condivisa da tutte le applicazioni e processi creati nel progetto.
- Component Library: consente di creare una libreria di componenti che servono per integrare gli altri sistemi software con Bizagi.
Configuration Tab
Discorso analogo si può fare per la Configuration Tab (figura 11).
- Environment configuration: consente di definire, tra le altre cose, la configurazione delle email, dello scheduler, dell’upload dei file e delle opzioni di login. La configurazione è specifica dell’ambiente, quindi Sviluppo, Test, Produzione.
- Business configuration: permette di definire delle preferenze rispetto alla localizzazione, i template delle email di notifica e altre opzioni di carattere globale che si applicano quindi a tutti i progetti
- Tracing: consente di attivare dei trace per tracciare differenti comportamenti e valori per entità, business rules, validazioni, interface, LDAP server, scheduler.
- Sequences and case numbering: permette di personalizzare i case identifier, cioè gli identificatori univoci che Bizagi assegna per ogni istanza di processo nel Work Portal.
Definire la struttura del progetto
Bizagi organizza i progetti in Applications. Questo approccio risulta particolarmente utile quando il progetto si compone di numerosi processi, infatti una Application non è altro che un modo per raggruppare un insieme di processi che sono logicamente connessi per raggiungere un determinato obiettivo di business.
Ciascuna Application può essere a sua volta ulteriormente partizionata in Categories con ciascuna categoria che organizza e raggruppa i processi in maniera gerarchica.
Per organizzare i processi in applicazioni e categorie è necessario usare la Module View.
Esempio di strutturazione di un progetto
Bizagi raccomanda di creare un’applicazione sulla base della unità organizzativa che ha in carico i processi e successivamente di ragguppare i processi sulla base della loro natura.
Seguendo questa raccomandazione, la possibile struttura di un progetto Bigazi potrebbe apparire come quella mostrata nella figura 12.
Come si vede, le Applications individuate sono Commercial, Administrative, Human Resources e IT Department.
I processi dell’application Human Resources sono stati raggruppati, mediante la creazione della Categories (cartelle colorate di azzurro), in maniera gerarchica in
- Human Talent
- Talent Management
- Personal Management
- Payroll
Invece i processi dell’applicazione IT Department sono stati raggruppati in
- ITIL
- Service Transaction
- Service Operation
Conclusioni
In questo articolo abbiamo visto, a grandi linee, alcuni degli elementi principali che caratterizzano il modulo Bizagi Studio. In particolare, abbiamo fatto una panoramica sugli elementi infrastrutturali che lo compongono: il BPM Server, dove viene ospitata la web application Work Portal, che presenta l’applicazione dei processi così come sarà vista dall’utente finale; il DB Server, che ospita il repository dei processi automatizzati.
Abbiamo visto come in Bizagi, per realizzare un’applicazione di processo, sia necessario creare un Progetto, quindi abbiamo percorso tutti i passi necessari allo scopo.
Siamo passati a vedere gli elementi principali dell’interfaccia di Bizagi Studio e in particolare abbiamo visto che esistono due viste: la Wizard View e la Module View. Da quest’ultima si può accedere a delle opzioni più avanzate per automatizzare i processi. Abbiamo visto anche i tab che compongono la Ribbon e gli elementi che sono compresi nei tab principali.
Infine, abbiamo visto come strutturare un progetto in Bizagi, e il modo in cui i processi vengono classificati in Applicazioni e organizzati in maniera gerarchica mediante il concetto di Categoria.
Nel prossimo e ultimo articolo della serie sulla suite di BPM di Bizagi, realizzeremo un case study con Bizagi Studio: un esempio di un caso pratico in cui applicheremo i concetti visti in questo articolo e ne introdurremo altri facendoci aiutare proprio dai bisogni che il caso pratico presenterà.