• Non ci sono risultati.

3.2 Stato della Ricerca

4.1.2 BPMN: Strumenti

Nel corso di questa sezione presenteremo brevemente alcuni strumenti esi- stenti per la modellazione di processi di business in BPMN, descrivendo le caratteristiche principali e gli aspetti pi`u interessanti di ciascuno degli stru- menti menzionati.

Il primo strumento che presentiamo `e il BPMN Modeler [106]. BPMN Modeler viene creato nel 2006 per opera della societ`a Intalio [107] e nasce come una ramificazione del SOA Tools Platform Project (STP) [180], un pro- getto nato nell’ambito della piattaforma Eclipse con l’intenzione di costituire uno strumento integrato per la realizzazione di software orientato ai servi- zi. Successivamente, nell’anno 2008, BPMN Modeler evolve da componente di STP a progetto indipendente. Attualmente viene distribuito come com- ponente aggiuntivo per Eclipse. BPMN Modeler (illustrato in Figura 4.9) mette a disposizione dell’utente un ambiente grafico e degli strumenti per la creazione di diagrammi di processi di business (BPD) in notazione BPMN. Le funzionalit`a offerte dallo strumento sono essenzialmente relative alla crea- zione e modifica di diagrammi di processo, infatti l’eventuale interpretazione di tali diagrammi o la loro trasformazione in codice eseguibile (ad esempio

Fig. 4.9: Screenshot di BPMN Modeler

BPEL) `e delegata ad altri strumenti. L’introduzione di un formato comune di scambio di diagrammi BPD introdotto con la versione 2.0 di BPMN riesce ad intervenire sul problema dell’eseguibilit`a, dal momento che diagrammi creati con il BPMN Modeler possono essere importati in ambienti per la successiva esecuzione.

Uno dei vantaggi offerti dal BPMN Modeler `e legato alla sua integrazione nella piattaforma Eclipse. L’editor grafico di creazione di BPD fornisce un ambiente piuttosto friendly, la cui facilit`a di utilizzo `e sicuramente incremen- tata dal fatto che la piattaforma Eclipse `e tutt’altro che una novit`a per gli utenti IT, che quindi saranno facilitati nell’utilizzo di questo strumento. In realt`a anche gli utenti meno esperti o che non abbiano familiarit`a con Eclipse potranno utilizzare l’ambiente grafico con notevole facilit`a.

Sebbene l’utilizzo semplice e intuitivo dell’editor grafico costituisca una nota decisamente positiva sulla valutazione di BPMN Modeler, d’altro canto non si pu`o dire che il suo utilizzo risulti libero da inconvenienti. Ci si ritrova pi`u

o meno spesso a doversi scontrare con bug dello strumento che rallentano a volte in maniera sostanziale l’attivit`a dell’utente. Inoltre il livello di informa- zione e di aggiornamento della documentazione di riferimento e dei mezzi di discussione sullo strumento (blog, forum, etc.) non danno l’impressione che il progetto sia particolarmente attivo, forse perch´e l’ampliamento del BPMN Modeler `e stato uno dei progetti portati avanti dalla Intalio Inc., che ha crea- to una suite piuttosto valida per la gestione di processi e la modellazione in notazione BPMN.

Lo strumento per BPM creato da Intalio `e quello che passiamo a presentare.

Intalio Inc. [107] `e la compagnia che ha sviluppato Intalio|BPMS [108], “il sistema di gestione di processi di business pi`u utilizzato al mondo”. In effet- ti `e difficile cercare informazioni sugli strumenti per la modellazione BPMN senza incontrare dei riferimenti alla suite di Intalio. Intalio|BPMS `e una suite

Fig. 4.10: Screenshot di Intalio|BPMS Designer

deler e Apache ODE BPEL Engine [168], entrambi progetti che hanno visto il coinvolgimento di Intalio, ed `e disponibile in versione Community, Enter- prise, Business o Developer. La suite offre il supporto alla progettazione, realizzazione e gestione di processi di business complessi grazie al contributo delle due componenti pi`u significative del BPMS: Intalio|BPMS Designer e Intalio|BPMS Server.

Il Designer (rappresentato in Figura 4.10) `e il componente grafico con cui l’utente interagisce per la modellazione di processi dei business. Questo com- ponente `e pensato per offrire in un singolo strumento il supporto adeguato a diverse categorie di utenti: analisti di business, ingegneri software e am- ministratori di sistema. Sono evidenti i vantaggi ottenuti dall’impiego di un unico ambiente utilizzato per le diverse fasi di realizzazione di un business process.

Il Designer effettivamente permette un’interazione molto intuitiva che si con- cretizza in una modellazione agevole dei diagrammi. Una caratteristica piut- tosto utile `e l’analisi on the fly dei diagrammi modellati, che permette di verificare la correttezza dei propri diagrammi rispetto alle specifiche dello standard BPMN. Le incongruenze vengono segnalate con degli errori (o dei semplici avvertimenti) e vengono proposti degli eventuali suggerimenti per la risoluzione automatica dei problemi (si veda Figura 4.11).

Se si ha intenzione di specificare propriet`a dei diagrammi particolarmente dettagliate o di basso livello, sono richieste delle competenze pi`u specifiche. Per rendere effettivamente eseguibile un processo pu`o dover essere necessario specificare ad esempio i WSDL che definiscono le interfacce dei servizi utiliz- zati o dei file XSD che definiscano la struttura dei dati utilizzati. Dunque in

Fig. 4.11: Segnalazione di errori in Intalio|BPMS Designer

questo senso il Designer pu`o supportare tipologie diverse di utenti, con livelli di competenze tecniche variabili.

Uno dei punti principali enfatizzati dalla stessa Intalio `e la realizzazione di un approccio “zero-code writing”, ovvero la possibilit`a di ottenere soluzioni fun- zionanti senza la scrittura esplicita di codice. Il Designer in effetti permette la traduzione automatica dei modelli BPMN in processi BPEL completamente eseguibili senza il bisogno di scrivere codice aggiuntivo. I processi modellati attraverso il Designer vengono eseguiti su Intalio|BPMS Server.

Il Server `e progettato su un nucleo costituito dall’engine BPEL Apache ODE e permette il deployment e l’esecuzione di processi BPEL. Questo componen- te consente di eseguire processi BPEL specificati in versioni diverse (dalla 1.0 alla 2.0) e supporta il loro trasferimento su altri engine quali Oracle BPEL Process Manager [170].