2013, Dipaola, Tesi
Total Page:16
File Type:pdf, Size:1020Kb
UNIVERSITÀ DI PISA Dipartimento di Ingegneria dell’Informazione Corso di Laurea Magistrale in Ingegneria Informatica per la gestione d’azienda Tesi di Laurea Progettazione e prototipazione di una piattaforma di supporto a processi collaborativi basati su regole semantiche e modelli di flusso di attività. Candidato: Daniele Di Paola Relatori: Prof.ssa Gigliola Vaglini Ing. Mario G.C.A. Cimino Prof.ssa Antonella Martini ANNO ACCADEMICO 2012-2013 INDICE. ABSTRACT. ............................................................................................................. 6 INTRODUZIONE. .................................................................................................... 7 1 TECNOLOGIE PER LA MODELLAZIONE DEI PROCESSI. ................................... 10 1.1 Introduzione ai processi di business e ai workflow. ............................................. 11 1.2 Standard per la rappresentazione dei workflow. ................................................... 13 1.2.1 Activity Diagram UML. ..................................................................................... 14 1.2.2 Event-Driven Process Chain. ........................................................................... 16 1.3 BPMN (Business Process Model and Notation). .................................................. 17 1.3.1 Processi privati. ................................................................................................... 18 1.3.2 Processi pubblici. ................................................................................................ 19 1.3.3 Processi di collaborazione. ................................................................................ 19 1.3.4 Coreografie. ......................................................................................................... 20 1.3.5 Punto di vista di un diagramma BPMN. ......................................................... 21 1.3.6 Comportamento di un diagramma BPMN. .................................................... 21 1.3.7 Elementi BPMN. ................................................................................................ 21 1.3.8 Flow Objects. ...................................................................................................... 22 1.3.9 Connecting Objects. ........................................................................................... 25 1.3.10 Swimlanes. ......................................................................................................... 26 1.3.11 Artifacts. ............................................................................................................. 27 2 TECNOLOGIE DI WEB SEMANTICO PER IL SUPPORTO A PROCESSI COLLABORATIVI. .................................................................................................. 28 2.1 Introduzione al Web Semantico. ............................................................................. 29 2.2 Architettura del Web Semantico. ............................................................................. 31 2.3 URI e Unicode. ........................................................................................................... 32 2.4 XML. ............................................................................................................................ 32 2.5 RDF. ............................................................................................................................. 33 2.6 Introduzione alle Ontologie. .................................................................................... 34 2.7 OWL. ............................................................................................................................ 36 2.8 SWRL. .......................................................................................................................... 37 2 2.8.1 Regole SWRL. ..................................................................................................... 38 2.8.2 Regole SWRL come regole di business. .......................................................... 40 3 PROGETTAZIONE DEI MODULI DI UNA PIATTAFORMA DI SUPPORTO AI PROCESSI COLLABORATIVI. .................................................................................. 44 3.1 Modulo di gestione dei contenuti digitali. .............................................................. 46 3.1.1 Requisiti funzionali. ............................................................................................ 46 3.1.2 Diagramma dei casi d’uso. ................................................................................. 49 3.1.3 Casi d’uso. ............................................................................................................ 49 3.1.4 Diagrammi di sequenza. .................................................................................... 58 3.1.5 Diagramma delle classi. ...................................................................................... 67 3.2 Modulo per la gestione ed esecuzione dei workflow. ........................................... 68 3.2.1 Requisiti funzionali. ............................................................................................ 68 3.2.2 Diagramma dei casi d’uso. ................................................................................. 69 3.2.3 Casi d’uso. ............................................................................................................ 70 3.2.4 Diagrammi di sequenza. .................................................................................... 75 3.2.5 Diagramma delle Classi. ..................................................................................... 80 3.2.6 Mock up. .............................................................................................................. 80 3.3 Modulo Semantic Web. ............................................................................................. 82 3.3.1 Requisiti funzionali. ............................................................................................ 82 3.3.2 Diagramma casi d’uso. ....................................................................................... 83 3.3.3 Casi d’uso. ............................................................................................................ 84 3.3.4 Diagrammi di sequenza. .................................................................................... 90 3.3.5 Diagramma delle classi. ...................................................................................... 95 3.3.6 Mock up. .............................................................................................................. 96 4 ANALISI DI PIATTAFORME, SOFTWARE E TOOL. ............................................. 97 4.1 Magnolia. ..................................................................................................................... 97 4.2 Liferay. ......................................................................................................................... 98 4.3 Nuxeo. ........................................................................................................................ 100 4.4 Alfresco. ..................................................................................................................... 100 4.5 Altre piattaforme. ..................................................................................................... 102 4.6 AperteWorkflow. ...................................................................................................... 103 3 4.7 BonitaBpm. ............................................................................................................... 103 4.8 Activiti. ....................................................................................................................... 104 4.9 Apache Jena. .............................................................................................................. 105 4.10 Pellet. ........................................................................................................................ 106 4.11 Protégé. .................................................................................................................... 106 5 UN PROCESSO DI COLLABORAZIONE BASATO SU REGOLE SEMANTICHE E FLUSSI DI ATTIVITÀ. ........................................................................................... 107 5.1 Lo scenario. ............................................................................................................... 108 5.2 Progettazione dell’ontologia. .................................................................................. 109 5.3 Creazione dell’ontologia in Protégé. ...................................................................... 110 5.4 Creazione delle regole ontologiche Swrl. .............................................................. 114 5.5 Ragionamento con il reasoner Pellet. .................................................................... 116 5.6 Modellazione del processo collaborativo in BPMN. .......................................... 117 6 REALIZZAZIONE DEL PROTOTIPO. ................................................................ 119 6.1 Introduzione ad Activiti. ......................................................................................... 120 6.2 Creazione di un workflow personalizzato. ........................................................... 126 6.3 Installazione di Activiti Designer. .......................................................................... 127 6.4 Fase di creazione del diagramma