Comparing Business Definition Languages P. Maresca*, A. Donatelli, R. Gangemi,R. Longobardi, G. Perrini*, R. Correro* *Università di Napoli Federico II – IBM Software Group Rome Laboratory Paolo.maresca@unina.it (Alex.donatelli, rosario.gangemi, roberto.longobardi)@it.ibm.com Paolo P. Maresca et al. Comparing Business Definition Languages Outline • P7 Eclipse in Business: the big picture • Introduction • A classification of business process modeling languages • A BPML Comparisons • Discussion • Conclusion and future development Paolo P. Maresca et al. Comparing Business Definition Languages A joined project among Eclipse Italian Community and IBM A P7 task from document attempt Paolo P. Maresca et al. Comparing Business Definition Languages P7 Eclipse in Business: the big picture Paolo P. Maresca et al. Comparing Business Definition Languages Introduction • We aims to – extract the principal concepts of the BPL from the most important languages for business process modeling – Extract specification in order to implement an advanced business process editor based on the Eclipse environment. • The languages are classified according to the “four perspectives” of Curtis augmented by the List-Korherr perspective denominated Business Process Context perspective Paolo P. Maresca et al. Comparing Business Definition Languages Introduction (II) • Business process modeling is one of the most complex activity – Different perspectives (analysis, design, user,…) • Modeling can be though as the process of mapping two different worlds, the modeled and the modeling ones. Paolo P. Maresca et al. Comparing Business Definition Languages Introduction (III) • A modeling technique is defined as a set of objects, concepts and artifacts of the modeled world in direct relation with objects, concepts and artifacts of the modeling world. • A key characteristic of the modeling process is that the elements of the modeled world are represented by “simpler” elements in the modeling world. Paolo P. Maresca et al. Comparing Business Definition Languages BPML classification : different objectives 1. 2. 3. Process Description: A process is modeled to document and describe it. The targets of this description can be either people to whom the comprehensibility is important [8] or computers in which case it is important the formalism of the description. Process Analysis: The analysis of a process consists in understanding the process internals and the process peculiarities. Processes re-engineering and improvement is based on the analysis of existing processes. When processes are specified by using formal languages, their analysis can be automated and it is possible to easily assess structural properties like cohesion and association or dynamic properties like deadlocks. Process Enactment: A process is executed to simulate it or to unveil the support of different capabilities. Depending on the language used, the support can have different forms like, for example, the ability to react to the events raised by the execution of the process, to check that a specific constraint is satisfied, to drive the execution of the process. Only formal languages allow the execution of the process by a computer. Paolo P. Maresca et al. Comparing Business Definition Languages Language designer: different perspectives • Functional view. This perspective describes functional dependences among the elements of a process (activity, subactivities, etc.). These dependences are typically tied to the fact that some elements of a process consume data or resources produced by others. • Dynamic view. This perspective details sequencing and control information within the elements of the process, for example when a given activity is executed (synchronization, pre-conditions) and how the execution takes place (for example describing the control logic). • Informational view. It includes the description of the entities that are produced, consumed or otherwise manipulated by the process. These entities include pure data, artifacts, etc. Paolo P. Maresca et al. Comparing Business Definition Languages Language designer: different perspectives (II) • Organizational view. This perspective describes who executes every step and where s/he stands in the business organization. • Another important distinction is the one introduced particularly in the context of web services, between the Choreography view and the Orchestration view. • The first view focuses on the composition of Web services from a global perspective, and it differs from the second view which focuses on the interactions among one party and others. Paolo P. Maresca et al. Comparing Business Definition Languages Paolo P. Maresca et al. Comparing Business Definition Languages Business Process Context Perspective: A BPMLs Comparison The following languages has been compared: 1. 2. 3. 4. 5. 6. 7. 8. 9. UML 2.0 Activity Diagram Business Process Definition Metamodel (BPDM) Business Process Modelling Notation (BPMN) Event Driven Process Chain (EPC) Integrated DEFinition Method 3 (IDEF3) Petri Net Role Activity Diagram (RAD) UML 2 profiles for business process modelling Unified Scenario-Based Design (USBD) Paolo P. Maresca et al. Comparing Business Definition Languages Results BPML Element UML2.0 Activity Diagram Business Process Definition Metamodel Business Process Modeling Notation (BPMN) Event Process Chain (EPC) Integrated DEFinition Method 3 (IDEF3) Business Process -/+ -/+ -/+ -/+ -/+ Core, Support, Management -/- Customer -/+ Activity Partition -/+ Deliverable -/+ Object N. -/+ Service -/+ Object N. Product -/+ Object N. Process Owner Goal Activity Stereotype SubProcess -/- SubProcess -/- Role/Partecip ant -/+ Complex Function -/- Pool Unit Behaviour -/- -/+ Organisational Role -/- -/- +/+ Input/Output -/+ Object -/- -/- -/+ Input/Output -/+ Object -/- -/- -/+ Input/Output -/+ Object -/- -/- -/- -/- -/- -/- -/- -/- -/- -/- Paolo P. Maresca et al. Comparing Business Definition Languages Results BPML Element UML2.0 Activity Diagram Business Process Definition Metamodel Business Process Modeling Notation (BPMN) Event Process Chain (EPC) Integrated DEFinition Method 3 (IDEF3) Process -/- -/- -/- -/- -/- Enterprise -/- -/- -/- -/- -/- Measure -/- -/- -/- -/- -/- Quantitative -/- -/- -/- -/- -/- Qualitative -/- -/- -/- -/- -/- To Be Value -/- -/- -/- -/- -/- Unit -/- -/- -/- -/- -/- Paolo P. Maresca et al. Comparing Business Definition Languages Results BPML Element Petri Nets Role Activity Diagram UML 2 Profile to Business Process Modeling Unified Scenario Based Design (USBD) Business Process -/+ -/+ +/+ Business Process +/+ Business Process, Business Process Map Core, Support, Management -/- -/- +/+ Core, Support and Manaaement Process +/+ Business Process Customer -/- -/+ Role +/+ External and Internal customer +/+ Customer Stakeholder, Business Worker Deliverable -/- -/+ Resource +/+ Deliverable +/+ Business Entity Service -/- -/+ Resource +/+ Service +/+ Business Entity Product -/- -/+ Resource +/+ Product +/+ Business Entity Process Owner -/- -/- +/+ Process Owner +/+ Business Actor Goal -/- -/- +/+ Goal +/+ Business Goal Transition Hierarchy Activity Paolo P. Maresca et al. Comparing Business Definition Languages Results BPML Element Petri Nets Role Activity Diagram UML 2 Profile to Business Process Modeling Unified Scenario Based Design (USBD) Process -/- -/- +/+ Process Goal +/+ Business Goal Enterprise -/- -/- +/+ Enterprise Goal +/+ Business Goal Measure -/- -/- +/+ Measure +/+ Measure Quantitative -/- -/- +/+ Quantitative Measure +/+ Measure Qualitative -/- -/- +/+ Qualitative Measure +/+ Measure To Be Value -/- -/- +/+ To Be Value +/+ Business Goal Unit -/- -/- +/+ Unit +/+ Business Role Paolo P. Maresca et al. Comparing Business Definition Languages A BPMLs Comparison: results (I) • The Functional perspective and the Behavioural perspective are well represented by all languages while the Organizational and Informational ones are less so. • In particular the Organizational perspective is covered, at different levels, by almost all languages but IDEF3 and the Petri Nets. • All other languages are more focused on the business processes and include the concept of the role. • Of all only the UML (AD) diagrams make it explicit on whether a role is in the modelled organization or outside of it. Paolo P. Maresca et al. Comparing Business Definition Languages A BPMLs Comparison: results (II) • Most of the modelling languages use a single concept to represent all types of process participants (e.G. AD, RAD, BPMN) but make no distinction on role types. • This differentiation can be very useful in a modelling language when focusing on the process enactment. • More recent languages, like AD, BPDM, BPMN, e EPC, are the ones which provide a good coverage of the Informational Perspective and so better adapt to this specific dimension. • The Business Process Context Perspective is only explicitly supported by the UML 2 Profile for Business Process Modeling and the Unified Scenario-Based Design. Paolo P. Maresca et al. Comparing Business Definition Languages UML 2 profiles for business process modelling Paolo P. Maresca et al. Comparing Business Definition Languages Unified Scenario-Based Design (USBD) Paolo P. Maresca et al. Comparing Business Definition Languages Conclusions The comparison aimed at extracting and abstracting the useful primitives of a business language in order to enable the design of a business eclipse tool for non experienced user. • The end result of this evaluation is that UML2 profile for business process modeling and the Unified Scenario Based Design seem to be the best equipped languages/methodologies for our purpose. • These two languages are candidates for the following step of extracting and abstracting specification for a Business Eclipse Editor (BEE) • USBD, compared with UML2, is better because it allows to mangage the different process perspectives , has a richer semantic than UML2 and is driven from a methodology Paolo P. Maresca et al. Comparing Business Definition Languages