Sep 8, 2008 - taking the knowledge coming from the characterization of network as input. ⢠producing a BPMN compliant process as output. Knowledge on.
Leading Open Source SOA
Collaborative Process Definition using an Ontology-based Approach V.Rajsiri, J-P Lorré, F. Bénaben and H. Pingaud 08/09/08
AGENDA • • • • •
Scope of the work Collaboration ontology Collaborative process ontology Deduction rules Open source based prototype
08/09/08
2
Scope of the work
Rajsiri PhD (2006-2009)
Touzi PhD (2004-2007)
Touzi Post Doc (2007-2008)
08/09/08
MIS = Mediation Information System
3
Scope of the work (2) • • •
dedicated to semi-automate the specification of collaborative processes taking the knowledge coming from the characterization of network as input producing a BPMN compliant process as output
Knowledge on collaboration
08/09/08
BPMN collaborative process model
4
Scope of the work (3) « Ontology is a formal explicit specification of a shared conceptualization for a domain of interest. It contains a set of concepts relevant in a given domain, their definitions, and relationships » (Gruber, 1993) Collaborative Network Ontology knowledge Collaboration ontology Rules
Collaborative process ontology Specific knowledge BPMN collaborative process model
Knowledge on collaboration
• Concepts – Features of collaboration – Features of collaborative process
• Deduction rules • Instances coming from an OWLized version of the MIT Process Handbook http://www.ifi.uzh.ch/ddis/ph/2006/08/ 08/09/08
5
AGENDA • • • • •
Scope of the work Collaboration ontology Collaborative process ontology Deduction rules Open source based prototype
08/09/08
6
Collaboration Ontology
Collaboration ontology
Rules
Collaborative process ontology
•
Participant can be an individual or an enterprise.
•
Collaborative network is a set of participants who would like to work together in respond to one or multiple common goals and a set of relationships between the participants.
•
Role defines the responsibility of participant in the network.
•
Common goal describes the reason why the network does exist.
•
Abstract service is a high level service that explains the competencies or the know-how of the participant.
•
Relationship defines the existing of interaction between two participants.
•
Topology describes the overall structure of collaborative network.
•
Power describes the behavior and the orientation of decision-making in the network.
•
Duration describes the frequency of interactions occurred during the collaboration in the network.
08/09/08
7
Collaboration Ontology (2)
Collaboration ontology
Rules
Collaborative process ontology P1 P2 participant
A play
has
has
central contain
role
Collaborative network
Buyer
power
kindOf
provide
relationship
hierarchic
perform has
topology
has duration
Common Goal achieve
Purchase materials & supplies Acquire resources…
08/09/08
has
kindOf star
P2P
chain
kindOf
Is performed by Abstract service
equal
discontinuous continuous
8
AGENDA • • • • •
Scope of the work Collaboration ontology Collaborative process ontology Deduction rules Open source based prototype
08/09/08
9
Collaborative Process Ontology
Collaboration ontology
Rules
Collaborative process ontology
•
Business service explains task at a functional level. An abstract service is composed of some business services.
•
Coordination service is in charge of coordinate the dependency by managing its resource.
•
MIS service is considered as a coordination service.
•
Resource can be machine, software, tool or material used or produced by business service.
•
Dependency between business services (message flow) is a flow from a business service to another when they have a resource in common. The two business services linked by this kind of flow do belong to different participants.
•
Dependency between MIS services (sequence flow) is a flow from a MIS service to another when they have a resource in common. It is like the movement of resource between MIS services.
08/09/08
10
Collaborative Process Ontology (2)
Collaboration ontology
Rules
Collaborative process ontology coordinate is coordinated by
Manage flow of document resource
manage
Coordination service
Abstract service
Purchase materials & supplies Acquire resources…
has input
Dependency b/w MIS services (sequence flow) from
has output
is a
Place order (output = PO) Obtain order (input = PO)
to
coordinate
Is composed of
specific
is coordinated by
Identify needs Place order Select supplier Receive Pay
Business service
MISservice *
generic
to from
Manage flow of document Dependency b/w services of different participants (message flow)
A
B PO
Place order
08/09/08
Manage flow of document
Obtain order
11
AGENDA • • • • •
Scope of the work Collaboration ontology Collaborative process ontology Deduction rules Open source based prototype
08/09/08
12
Deduction rules
Collaboration ontology
Rules
Collaborative process ontology
5 groups of rules written in SWRL (Semantic Web Rule Language) : •
role ← → abstract service (Petersen, 2005)
Participant(?x) ^ playRole(?x, ?y) ^ performAService(?y, ?z) → provideAService(?x, ?z) –
•
links between role and abstract service
abstract → business service (Process Handbook online)
Participant(?x) ^ provideAService(?x, ?y) ^ hasBusinessService(?y, ?a) → provideBusinessService(?x, ?a) –
•
links between abstract and business service
dependency → coordination service → MIS service
(Malone et al., Chapter 3: A Taxonomy of Organizational Dependencies and Coordination Mechanisms) (Touzi, 2007)
CNetwork(?a) ^ hasRelationship(?a, ?z) ^ P1(?z, ?y) ^ provideBusinessService(?y, ?c) ^ hasOutput(?c, ?d) ^ P2(?z, ?x) ^ provideBusinessService(?x, ?b) ^ hasInput(?b, ?d) ^ CoordinationService(?f) ^ manageResource(?f, ?d) ^ Dependency (?e) → fromBusinessService(?e, ?c) ^ toBusinessService(?e, ?b) ^ containResource(?e, ?d) ^ isCoordinatedBy(?e, ?f) ^ hasMISservice(?a, ?f) ^ MISservice(?f) –
links between input of a business service and output of another business service belonging to the different participants – links between resource managed by a coordination service and the common resource 08/09/08
13
Deduction rules (2)
Collaboration ontology
Rules
Collaborative process ontology
5 groups of rules (cont.): •
common goal → abstract service (Tawbi, 2001)
CommonGoal(?x) ^ description(?x, ?a) ^ swrlb:substringBefore(?y, ?a, " ") ^ AbstractService(?b) ^ name(?b, ?c) ^ swrlb:containsIgnoreCase(?c, ?y) → composedAService(?x, ?b) –
•
links between the description of goal and the name of abstract service.
Power and duration → topology (Katzy et al., 2003)
Topology(?x) ^ hasPower(?x, central) ^ hasDuration(?x, continuous) → hasType(?x, star) –
08/09/08
Deduction of the type of topology from the characteristics of decision-making power and duration of collaboration
14
AGENDA • • • • •
Scope of the work Collaboration ontology Collaborative process ontology Deduction rules Open source based prototype
08/09/08
15
Open source based prototype
knowledge
Collaboration ontology Rules
Collaborative process ontology Specific knowledge
Knowledge on collaboration
1) Knowledge gathering Network Editor
2) Collaboration pattern deduction XSL
Instances Deduction rules
08/09/08
3) Specific collaborative process extraction
SPARQL
SWRL Editor and Jess engine (plug-in Protégé)
BPMN collaborative process model
XSL Specific collaboration patterns (XML)
Collaborative Process Editor
4) BPMN construction
ATL
BPMN Editor
manuel and automatic complements 16
Thank you for your attention
Vatcharaphun Rajsiri and Jean-Pierre Lorré EBM WebSourcing, 10 Avenue de l’Europe, 31520 Ramonville St-Agne, France {netty.rajsiri, jean-pierre.lorre}@ebmwebsourcing.com
Frédérick Bénaben and Hervé Pingaud Centre de Génie Industriel, Ecole des Mines d’Albi-Carmaux, 81000 Albi, France {benaben, pingaud}@enstimac.fr
08/09/08
17
Technologies •
GMF (Graphical Modeling Framework) provides a generative component and runtime infrastructure for developing graphical editors based on EMF (Eclipse Modeling Framework) and GEF (Graphical Editing Framework). http://www.eclipse.org/gmf/
•
Protégé is an open source OWL editor and knowledge-base framework. It has been developed by the Stanford University. http://protege.cim3.net/cgi-bin/wiki.pl/
•
SWRL (Semantic web Rule Language) allows to manipulate the instances by variables (?x, ?y…). It does not create the concepts, nor the relations but it adds the relations following the values of the variables and the satisfaction of the rule. http://www.w3.org/Submission/2004/03/
•
Jess is an inference engine that performs the logic deductions of an expert system from a knowledge or rule bases and verifies the consistency of an ontology * free trial for 30 days, 100% for academic users, http://www.jessrules.com/jess/
•
SPARQL is a query language for RDF. http://www.w3.org/TR/rdf-sparql-query/
•
ATL (Atlas Transformation Language) is a model transformation language specified as both a metamodel. ATL provides a mean to specify the way to produce a number of target models from a set of source models.
•
SOA Tools BPMN Modeler is a graphical editor to create BPMN diagrams. It is based on GMF and uses an EMF object model. The object model is persisted as XMI. http://www.eclipse.org/stp/bpmn/#
08/09/08
18
Network Editor
08/09/08
19
Collaborative Process Editor
08/09/08
20
SOA Tools BPMN Modeler
08/09/08
21
Open source based prototype
knowledge
Collaboration ontology Rules
Collaborative process ontology Specific knowledge
Knowledge on collaboration
SPARQL Network Editor
SWRL Editor & Jess
BPMN collaborative process model
BPMN Editor
Collaborative Process Editor
Instances coming from MIT Process Handbook http://www.ifi.uzh.ch/ddis/ph/2006/08/
08/09/08
22