We recommend you cite the published version. The publisher s URL is

Similar documents
The OntoREM-Mind Mapper Software for Visualising OWL Ontologies

Business Process Modelling

QoS-aware model-driven SOA using SoaML

1 Executive Overview The Benefits and Objectives of BPDM

UWE has obtained warranties from all depositors as to their title in the material deposited and as to their right to deposit such material.

Hippo Software BPMN and UML Training

Business-Driven Software Engineering Lecture 5 Business Process Model and Notation

Chapter 1 Introduction

Second OMG Workshop on Web Services Modeling. Easy Development of Scalable Web Services Based on Model-Driven Process Management

Chapter 7. Modular Refactoring. 7.1 Introduction to Modular Refactoring

UML 2.0 Profile for ArchWare ADL: Coping with UML 2.0

SCOS-2000 Technical Note

Model Driven Engineering (MDE)

5/9/2014. Recall the design process. Lecture 1. Establishing the overall structureof a software system. Topics covered

The 2006 International Arab Conference on Information Technology (ACIT'2006)

An Architecture for Semantic Enterprise Application Integration Standards

Web Services. Lecture I. Valdas Rapševičius. Vilnius University Faculty of Mathematics and Informatics

A Technical Comparison of XPDL, BPML and BPEL4WS

Web Services. Lecture I. Valdas Rapševičius Vilnius University Faculty of Mathematics and Informatics

AUTOMATED BEHAVIOUR REFINEMENT USING INTERACTION PATTERNS

Introduction to Dependable Systems: Meta-modeling and modeldriven

Enabling Flexibility in Process-Aware

MEF Specification MEF Amendment to MEF 55 - TOSCA Service Templates. October, 2017

BPMN Working Draft. 1. Introduction

AN AGENT-ORIENTED EXECUTIVE MODEL FOR SERVICE CHOREOGRAPHY

European Component Oriented Architecture (ECOA ) Collaboration Programme: Architecture Specification Part 2: Definitions

Enterprise Architect Training Courses

Integration With the Business Modeler

An Approach to Software Component Specification

20. Business Process Analysis (2)

POAD Book: Chapter 4: Design Patterns as Components Chapter 5: Visual Design Models

MEF Specification. Amendment to MEF 55 - TOSCA Service Templates. Approved Draft 1 July

Towards a Semantic Web Platform for Finite Element Simulations

JBPM5 - QUICK GUIDE JBPM5 - OVERVIEW

Chapter 6 Architectural Design. Lecture 1. Chapter 6 Architectural design

UNIT I. 3. Write a short notes on process view of 4+1 architecture. 4. Why is object-oriented approach superior to procedural approach?

Chapter 2 State of the Art

NOTES ON OBJECT-ORIENTED MODELING AND DESIGN

Modelling in Enterprise Architecture. MSc Business Information Systems

Software Development Methodologies

We recommend you cite the published version. The publisher s URL is

Semantics-Based Integration of Embedded Systems Models

Software Development Methodologies

Modeling the Dialogue Aspects of an Information System

Can precise requirements models drive software case reuse?

Model-Solver Integration in Decision Support Systems: A Web Services Approach

Notation Standards for TOGAF:

Workflow, Planning and Performance Information, information, information Dr Andrew Stephen M c Gough

An Approach to VoiceXML Application Modeling

Automatic Reconstruction of the Underlying Interaction Design of Web Applications

Enterprise Architect. User Guide Series. Domain Models

Proposed Revisions to ebxml Technical. Architecture Specification v1.04

Unit 1 Introduction to Software Engineering

1Z0-560 Oracle Unified Business Process Management Suite 11g Essentials

Chapter 6 Architectural Design. Chapter 6 Architectural design

INTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY

Business Process Modeling Language

Using Component-oriented Process Models for Multi-Metamodel Applications

Interactions A link message

The ATCP Modeling Framework

Software Architectures

Patterns for Business Object Model Integration in Process-Driven and Service-Oriented Architectures

Software Architecture Recovery based on Dynamic Analysis

Oracle Service Bus Integration Implementation Guide Oracle FLEXCUBE Universal Banking Release [April] [2014]

Requirements Driven Mediation for Collaborative Security. Amel Bennaceur The Open University, UK

Mappings from BPEL to PMR for Business Process Registration

Design Patterns for Description-Driven Systems

An Ontology-Based Methodology for Integrating i* Variants

Meta Architecting: Towered a New Generation of Architecture Description Languages

RIGOROUSLY AUTOMATING TRANSFORMATIONS OF UML BEHAVIOR MODELS

BPMN Working Draft. 1. Introduction

Incorporating applications to a Service Oriented Architecture

OMG Specifications for Enterprise Interoperability

Michel Drescher, FLE, Ltd. Standardised Namespaces for XML in GGF (draft 09) N/A

TransactionVision Technical White Paper

Business Process Modeling Language

Representing Symbolic Reasoning

Achieving Right Automation Balance in Agile Projects

ISO/IEC TR TECHNICAL REPORT. Information technology Procedures for achieving metadata registry (MDR) content consistency Part 1: Data elements

SNOMED Clinical Terms

Chapter 2 Overview of the Design Methodology

Lecture 1. Chapter 6 Architectural design

MOMOCS D2.1 XIRUP S UPPORTING T OOLS R EQUIREMENTS. Model driven Modernisation of Complex Systems. Dissemination Level: Work package:

Service-Oriented Architecture

CSCU9T4: Managing Information

Designing a System Engineering Environment in a structured way

A Framework Supporting Quality of Service for SOA-based Applications

Software Language Engineering of Architectural Viewpoints

XML ALONE IS NOT SUFFICIENT FOR EFFECTIVE WEBEDI

Master of Science Thesis. Modeling deployment and allocation in the Progress IDE

ISO INTERNATIONAL STANDARD. Health informatics Service architecture Part 3: Computational viewpoint

Using JBI for Service-Oriented Integration (SOI)

OCL Support in MOF Repositories

Data-Transformation on historical data using the RDF Data Cube Vocabulary

Creational. Structural

CAS 703 Software Design

ISO/IEC INTERNATIONAL STANDARD. Software engineering Lifecycle profiles for Very Small Entities (VSEs) Part 2: Framework and taxonomy

TOWARDS A META-MODEL FOR COLLABORATIVE CONSTRUCTION PROJECT MANAGEMENT

Engr. M. Fahad Khan Lecturer Software Engineering Department University Of Engineering & Technology Taxila

Unified Modeling Language

Transcription:

Khan, Z. and Odeh, M. (2008) Business process modelling: Coarse to fine grain mapping using metamodels. In: IASTED Software Engineering Conference (SE2008), Innsbruck, Austria, 2th - 4th February, 2008. We recommend you cite the published version. The publisher s URL is http://www.actapress.com/abstract.aspx?paperid=32523 Refereed: Yes (no note) Disclaimer UWE has obtained warranties from all depositors as to their title in the material deposited and as to their right to deposit such material. UWE makes no representation or warranties of commercial utility, title, or fitness for a particular purpose or any other warranty, express or implied in respect of any material deposited. UWE makes no representation that the use of the materials will not infringe any patent, copyright, trademark or other property or proprietary rights. UWE accepts no liability for any infringement of intellectual property rights in any material deposited but will remove such material from public view pending investigation in the event of an allegation of any such infringement. PLEASE SCROLL DOWN FOR TEXT.

BUSINESS PROCESS MODELLING: COARSE TO FINE GRAIN MAPPING USING METAMODELS Zaheer Abbas Khan, Mohammed Odeh CCCS, CEMS Faculty, University of the West of England (UWE), Bristol, UK Tel: +44(0)7 328 3700, Fax: +44(0)7 328 2587 Email: {Zaheer2.Khan, Mohammed.Odeh}@uwe.ac.uk ABSTRACT One of the key objectives of Business Process Modelling is to better understand and visualise business processes in order to improve and/or enact them in some IT infrastructure. This modelling perspective becomes more complicated and challenging with the expansion of businesses across geographical boundaries. Further, this necessitates finding technological solutions to execute agile business processes. And, in an effort to enact business process models using distributed technologies, we present a novel framework for translating business processes modelled using Role Diagramming into generic meta-representation with the objective to access, customize and integrate the modelling constructs with functional and non-functional processing artefacts. In this regard we present meta-models to translate coarse to fine grained process model and provide their relevant implementation as a step towards bridging the gap between Business Process Models and Grid-based Service Oriented Architectures (BPMSOA). KEY WORDS Business process modelling, meta-models, translation, and Role Diagramming. Introduction Business Process Modelling Languages (BPML) play an important role to make organizational behaviour more visible and understandable under different contexts. Further in order to cope with the changing market demands, organizations seek technological solutions to execute their process models. However, this process modelling perspective is not without shortcomings. For example, a business process model provides coarse grained process activities which are underspecified and can limit the scope of the process enactment. The above limitation may be overcome if the process modelling languages possess the capability to refine and transform a high level business process model into more concrete models. In order to reduce this limitation as well as to enact business process models, the coarse grained activities require translations into more fine grained constructs by using specific programming languages such as Java [5]. Such translations provide customized control on the structural and behavioural composition of the process models. This control further allows the programmers either to link process activities with computational services or translate process topology into more concrete executable scripts. In context with the above problem, we are in pursuit of finding technological solutions to model business processes in high level role-based process modelling languages and then leading towards their enactment. There have been efforts for mapping Role Diagrams (RAD) [2] into system models using algorithmic approaches [7], simulations [8] and formal representations [6]. But, less has been achieved in concrete form. In this regard, this paper reports on a novel framework to enact role-based business process models into a highly distributed environment utilising the Service-Oriented Architecture (SOA) [] paradigm rather than adopting the traditional Enterprise Application Integration (EAI) methods in order to cope with the increased agility of business processes [2]. Our approach is influenced by Model Driven Engineering (MDE) in translating business process models into metarepresentation to be interpreted using specially written application software which also provides additional control on the processing constructs. These translation steps affect the level of granularity of the process models by transforming highly coarse grained models into finer, open and adaptable levels. Using appropriate technologies these fine grained models can be analysed using some measurements and simulation of process computational complexity. Further, these fine grained model activities can be integrated with external computational artefacts such as web services. Also, non functional requirements (NFR) can be incorporated with the process models which can lead process enactment in a customized manner. All these benefits are not possible without affecting the levels of granularity and access to the processes being modelled. Enacting a role-based business process model into SOA enabled grid entails establishing an architectural framework that can integrate both Business Process Models and Grid-based Service Oriented Architectures. This has been named as BPMSOA as briefly presented in section 2. Further, a generic meta-representation is provided for role-based modelling languages in section 3.

However, enactment of RAD based models is not a straightforward task as it requires generic meta-models to transform abstract process models into more concrete form which are presented in section 4. In this paper we only present α-metamodel and τ-metamodel. These metamodels are followed by a brief example implementation in section 5. Finally, conclusion and brief summary of future work is presented in section 6. 2. The BPMSOA A Business Process Business Process Modeller Process Modelling A Business Process Model BPM Language In this section, we briefly introduce a novel generic architectural framework, namely Business Process Models and Grid-based SOA (BPMSOA) to integrate and bridge the gap between business process models and grid based SOA. Using BPMSOA, as shown in figure, a business process can be specified in a role-based process modelling language and then transformed to be enacted into grid based SOA environment. BPMSOA consists of four logical layers. These are: (i) Process Modelling, (ii) Generalisation, (iii) Transformation and (iv) Enactment. Each layer takes a specific input, processes it using its internal models and algorithms to generate a specific output which is consumed by the subsequent lower layer. The Process Modelling layer takes a business process description as an input and generates its model using the appropriate role-based business process modelling language. The Generalisation layer takes the modelled business process as input and translates it into a meta-process representation using markup languages, and in particular XML, based on the rules and guidelines defined in the α- Metamodel. The Transformation layer takes the semi-formal meta-representation of the business process generated from the processing in the above layer as an input to interpret and translates these meta-representation into a formal executable script, for example π-adl, based on the rules and guidelines defined in both the τ-metamodel and χ-metamodel. The Enactment layer takes the π-adl based executable script of the business process as an input and enact it into an execution environment, in particular the ArchWare virtual machine [3], utilising the readily available grid services. In BPMSOA, the service management and integration component has been introduced to automate the process of enacting a given business process model in grid-based SOA environment. This paper introduces only the framework for α-metamodel which is used in the Abstraction component of the Generalisation layer in order to translate the business process model into generic meta-representation. Further, we present the τ-metamodel which is used in the Customisation component of the Transformation layer. More information of the other Service Management and Integration Abstraction Generalisation A Meta-Representation of the Business Process Model Customisation Concretisation Transformation Executable Script of the Business Process Model Execution Engine Enactment α-metamodel τ-metamodel χ-metamodel Grid Application Services Enacted Business Process using Grid application services Figure : Architectural Framework of the BPMSOA components and layers of the BPMSOA are detailed in [3]. 3. The Generic Role-based Metarepresentation A role based process model is an integrated collection of composed, flow and interaction elements as shown in figure 2 and defined below: At a higher level, a role based process model is a collection of distinct composed elements (CE), such as RAD roles, BPMN Pool/Lane and UML Diagrams (AD) swimlanes etc. There should be at least two or more CE in a process model. A CE is a collection of multiple distinct flow elements (FE) such as interaction, activity etc. However, there can be more than one occurrences of a particular type of FE in the CE such as activities or interactions.

An FE is a modelling construct with well defined semantics and is used in a CE to build process structure. For example,,,, etc., o (A) is the processing element of a business process. It can be classified into sub types such as action, sub-process or encapsulation, instantiation and terminate etc. Further, there can be more sub types in different business process modelling languages. o (G) branches the sequential flow into multiple flows. can be divided in conditional (case-refinement), concurrent (partrefinement) and repetitive control structures. o (T) can be either internal or external to the process model. These are of type timer, message and error which can occur at starting, intermediary or ending stage of the business process. o (S) represents the state of the process at a o particular instance of time. (I) takes place between two or more CEs to exchange resources such as messages. can be of type sender or receiver in a particular CE. Each sender interaction must have its corresponding receiver interaction in another CE. An interaction element (IE) is a collection of interactions among CEs. It consists of sender and receiver interaction elements. 4. The Generic BPMSOA Meta-Models Most of the role-based business process modelling languages consists of elements as shown in figure 2. This however requires a generic meta-model which can represent graphical role-based business process models into a machine-accessible and semantically understandable format. Further, this meta-model can also customize the process model to incorporate vigilant control and non-functional requirements in process execution. In this regard, the BPMSOA has introduced two generic meta-models such as α-metamodel and τ- Metamodel. These meta-models present different perspectives as discussed in following sections 4. and 4.2. 4. The α-metamodel Many role-based business process modelling languages use syntactically different but semantically similar constructs such as gateways in BPMN [] and refinements in RAD [2] etc. In this regard, the α-metamodel masks the syntactic heterogeneity of modelling languages and provides a common model which can be mapped in a machine-readable format such as XML. In figure 3 we have presented the α-metamodel which is based on the interaction, structural and flow perspectives. In α- Metamodel, all CE, FE and IE are identified with a unique ID and type. (IP) IP deals with Inter- Role interaction model. In an interaction between different CEs, at least two activities must take place such as Sender Part and Receiver Part which can be traceable from the IE. Since both Sender and Receiver Parts are FEs and belong to particular Roles CEs. Therefore, the IE stores and provides IDs of Sender and Receiver Parts and their encompassing Roles which are involved in particular interactions. Action Sub-process Instantiation Terminate Concurrency Composed Element (CE) Timer Message Error Iterative API : Element (IE) Sender Receiver Key: Flow Element (FE) Possible types Shared between two or more CEs Figure 2: A generic role-based modelling perspective Structural (SP) SP deals with structural composition of the process model using composed, flow and interaction elements. It is used to specify the individual modelling elements in their topological formation. For example, each CE instance such as Role may consist of m number of FEs such that m > 0. Further, two or more Role occurrences may interact with each other. However, it is difficult to determine the number of possible interactions in advance without having the actual process model.

SenderPart.. ReceiverPart Action Sub-process Sender Part I n P t e e r r s p a e c c t t i i o v n e.. Structural.. <<IE>>.. 2.... <<CE>> Role Error Timer Message Stop Repetitive Concurrent Role-Instantiate Key: Gate Way Flow Receiver Part FE : Flow Element CE: Composed Element IE : Element Doubly link between FEs which can be specified using Next and Previous Element attributes in FEs. Further, each FE consists of ID and Type attributes for unique identification and type classification respectively. Flow (FP) FP identifies all the possible links between FE inside Role CE. In order to define the workflow of the FEs within a Role CE, this perspective uses two additional attributes for each FE; the Next and Previous Elements. The Next Element of a particular FE identifies the ID (s) of the next FE(s) in the flow within a specific Role CE. Further this Next Element can also contain n number of IDs which results in that a gateway of type FE is encountered and it consists of n number of separate threads to follow. Similarly, the Previous Element of the FE gives the ID(s) of the previous FE(s) within that specific Role CE to determine the reverse flow. Likewise the Next Element, and the Previous Element can also contain m number of IDs which result in that either a gateway is closed by merging the m number of threads or m number of states are merged in an iterative flow. 4.2 The τ-metamodel After mapping a role-based business process model into a semi-structured and machine-understandable metarepresentation such as XML using the α-metamodel, we need to interpret this meta-representation and transform it in a way which can also incorporate customized control, non-functional and integration aspects of the business process. In this regard, we have presented the τ- Metamodel in figure 4, which covers the structural, control, non-functional, accessibility and integration aspects of a business process model towards its implementation. Figure 3: The α Metamodel Structural (SP) SP deals with the topological structure, more from the implementation and execution point of view, of the process model by using the α-metamodel. In this regard, SP also handles the workflow of the process model using customised data structures for complex FEs such as nested gateways. As an example Java based implementation, we have presented a complex data structure to handle nested conditional gateway FE in figure 5. In this data structure the caserefinementseries is a Java Hashtable where each key refers to the ID of the each case or thread of a particular conditional gateway in a specific process model. The value of each key is a Java Vector named as the casenextelements. This casenextelements stores the IDs of all the Flow Elements which come under a specific conditional thread. It might be possible that there is a nested conditional gateway structure. In this case, the ID of nested conditional gateway is indexed into a Java Vector inncasenextelements (just ID) and also reflected as a normal Flow Element in casenextelements. This inncasenextelements keeps the IDs of all the nested conditional gateways which exist in other conditional gateways. Similarly, if there is a nested concurrent gateway instead conditional gateway then the ID of the concurrent gateway is indexed into the Case_Ref_Clash vector. This Case_Ref_Clash vector keeps the IDs of all the nested concurrent gateways which exist in conditional gateways. Furthermore, the caserefinementcollection is a Java Hashtable where each key refers to a particular conditional gateway and its value refers to another Java Hashtable which further refers to the

Structural <<CE>> Composed Element 2.. <<IE>> Element.... 2.. Flow Element.. <<Controller>> WF Generator Others Non-Functional Security Compensation Fault Handling Control <<Controller>> Model Controller Accessibility and Integration.. <<Accessibility>> User Interface Application Integration for Behavioural Utility API GUI API Key: CE : Composed Element, FE : Flow Element, IE : Element, API : Application Programming Interface, NFR: Non-Functional Requirement, GUI: Graphical User Interface, WF: Work Flow Figure 4: The τ Metamodel caserefinementseries. By using this type of data structure and approach we can track all the conditional gateways which are present in a process model from the caserefienementcollection. Similar approach is adopted for concurrent gateways. Control (CP) CP deals with controlling the topological, accessibility, functional and nonfunctional aspects of the process model which can be customized based on the usage context. It may be used to integrate non-functional aspects with the functional and structural FEs of the process model. Further, it is used to provide a controlled access to other systems or external environment. an exiting proprietary tool such as RADModeller [4]. The RADModeller generates a high level description of a RAD based business process model in XML. This XML representation of RAD based process model seems to fall under the objectives of the α-metamodel. Then, in order to interpret this XML based representation of the business process and map it into the τ-metamodel, we have developed a software application using Java programming language. This application uses several customized data structures (as shown in figure 5) and provides access to individual process model constructs. Further this application lets these constructs integrate with other applications or services or translate into any other executable programming language script. Non-Functional (NFP) NFP deals with the non-functional requirements of the process which may be required during the execution of the process [0], such as security policies, transaction rollback procedures etc. Accessibility and Integration (AIP) AIP provides the access to lower level formatted and customized FEs of the process model using a suitable interface. Further, these FEs can be translated into any other format or integrated with other systems. For example FE of type can be linked with appropriate behaviour provided by a specific web service. 5. An Example Implementation As a reference implementation for the α-metamodel and τ-metamodel of the BPMSOA, we have designed a software application which uses the XML based output of As an example, figure 6 shows glimpse of XML representation of the Order Placement process which is modelled using the RADModeller. The RAD model of the Order Placement process can be found in [9, 3]. Due to space limitation, we can not elaborate on this software application in this paper and it is presented elsewhere. This application can parse the XML based RAD process structure and provide additional control as mentioned in τ- Metamodel. 6. Conclusions The layered architecture of the BPMSOA has demonstrated the applicability of this novel approach in the generic transformation of business process models for the later enactment in particular instantiations of IT environments. Not only BPMSOA is a generic

Figure 6: A snippet of XML representation of the Order Placement process [9] architecture but also extensible and is able to accommodate various types of process modelling paradigms. service orientation. And, hence this will allow us to enact business process models at wider scale e.g utilising Grid based Service Oriented Architectures. CaseRefinementCollection CaseRefinementSeries CaseNextElements Key Value Particular Key Value FE ID Case or (String) Thread ID (String) ID Case_Ref_Clash InnCaseNextElements If ID of Nested Concurrent If ID of Nested Figure 5: Data Structure for In addition, the twofold role of meta-models makes the BPMSOA generic and facilitates intermediary transformations towards process enactment. Using the α- Metamodel, a business process model is represented in a common and unique meta-representation which makes the model more accessible to the components of the lower layers of the BPMSOA. This model representation provides flexibility to programmers to use their proprietary programming models or legacy systems or software at different layers of the BPMSOA. On the other hand, the customised control provided by the τ- Metamodel allows tracing back the original requirements presented in the business process model. The application of the new approach in this paper to the above RAD based process model indicates that role-based business process models can be transformed into metarepresentation and further translations into procedural programming makes it more accessible in providing customised control and linking both the non-functional and functional aspects using the appropriate IT infrastructure. Further work is being carried out to investigate transforming model-based representations of processes into executable languages and in particular Pi- ADL [9, 3], with an additional support of domain specific libraries (functions/behavioural aspects) and References [] Stephen A. White, Introduction to BPMN, http://www.bpmn.org/ Last Accessed July 2007. [2] Ould M., Business Processes: Modelling and Analysis for Re-engineering and Improvement ISBN # 0-47- 95352-0, 995. [3] ArchWare Tools, URL: http://www.arch-ware.org/ Last accessed July 2006. [4] Instream Tool, 2006, The RADModeller: http://www.instream.co.uk/radmodeller.html, Last accessed November 2006. [5] Michael Havey, 2005, Essential Business Process Modelling, ISBAN: 0-596-00843-0, O Reilly Publishers. [6] Badica C. et.al., Business Process Modelling Using Process Algebras, presented at OR'43 (BPCME'0), Bath, UK, 200. [7] Odeh M., et. al., 2003, Bridging the Gap between Business Models and System Models, Information and Software Technology, Special Edition on Modelling Organisational Processes, 45(5), 053-060. [8] Martinez, A.I. et. al., 2002, Integrating Process Modeling and Simulation Through Reusable Models in XML, In Proceedings of the Summer Computer Simulation Conference 2002, The Society for Modeling and Simulation International-SCS, ISBN -56555-255-5. pp. 452-460, 2002. [9] Khan Z. A., Odeh M., A Framework for Translating RAD business process models into π-adl, Proceedings of ACIT2007, Syria, November 2007. [0] F. Aburub et al., Modelling non-functional requirements of business processes, Inform. Softw. Technol. (2007), doi:0.06/j.infsof.2006.2.002. [] The Integration Journey a Field Guide to Enterprise Integration for SOA, BEA White paper, http://contact2.bea.com/bea/www/soa_mom/mom3.jsp?p C=56TU3GXXWPBE Accessed July 2007. [2] David S. Linthicum, Next Generation Application Integration: From Simple Information to Web Services ISBN: 0-20-84456-7, 2004. [3] Zaheer A. Khan, Bridging the Gap between Business Process Models and Grid-based SOA, Technical Report # UWE-CEMS-CCCS-SERG-0004, UWE, Bristol, UK. http://www.cems.uwe.ac.uk/cccs/, April 2007.