an integrated approach for modelling business ...

4 downloads 228 Views 134KB Size Report
These latter can be loaded in a workflow engine that allows an automatic and thus effective process management. bxModeller models business processes in ...
AN INTEGRATED APPROACH FOR MODELLING BUSINESS PROCESSES USING BPMN AND XPDL STANDARDS A. FILOGRANA, G. GIUNTA, N. INGRAFFIA, L. LOIACONO Engineering Ingegneria Informatica S.p.A., R&D Lab, Palermo,90100, Italy A. CORALLO, D. ZA e-Business Management Sector of S. S. ISUFI, University of Salento Lecce, 73100, Italy

This paper aims to introduce the bxModeller, an open source web-based application tool, to support a business user in the modelling of the Business Processes. The graphical notation used is Business Process Modelling Notation (BPMN), an OMG standard for processes modelling. Moreover, the tool allows to traduce Business Process Diagram in a business process execution language (XML Process Description Language), which can be understood by a workflow engine. In this paper, we describe the architecture, functionalities and potentialities of the bxModeller. 1.

currently, open-source applications do not support the translation between BPMN and XPDL.

Introduction

Market dynamism pushes an enterprise to adopt flexible organizational structures, business process reengineering in short time and new communication way, both at the intra-enterprise and inter-enterprise levels. The aim of this work is to address the modelling techniques of business process. Our application is able to support business analyst in the process definition through the use of an analytical model or notation, and process designer to import analytical models defined by business analyst and convert them into executable models. These latter can be loaded in a workflow engine that allows an automatic and thus effective process management. bxModeller models business processes in BPMN 1.0, a standard adopted by OMG and realized by BPMI in May 2004 [1], that is the standard de-facto to model a business process. To serialize processes, the application uses XPDL 2.0, an execution language standardized from Workflow Management Coalition (WfMC) in 2000 [2]. It is a mark-up language, which allows both the execution of process and the exchange among different systems, like modelling tool or workflow engine. The international organization for standardization, OMG and WfMC, has reached an agreement to use XPDL like a format to save a BPMN diagram. This decision provides an added value to our choice. Furthermore, XPDL is a graph-based language and, according to different other languages like BPEL4WS or BPML, this is very important to rebuild Business Process Diagram starting by XPDL representation [3]. Additional, we respect the fact that,

2.

State of the art

Nowadays, Small and Medium Enterprises (SMEs) have needed to change their approach with industrial district, passing from (a) physically to (a) virtual one. For this reason, it is needed to provide enterprises with tools that enable collaboration through Internet. Relationship are become very important for every organization which wants to improve quantity and quality of his product. The network is a structure which creates relationship between enterprises (B2B), enterprises and customers (B2C), enterprises and institutions (B2G), employs and colleagues (B2E). This allows to collaborate and share the knowledge own among users. Our application has been designed to satisfy this requirement, because it allows to model a Business Process and share it to work together with other colleagues or partners, belonging to other enterprises, who are physically far. This approach allows enterprises to reduce their costs and consequently improve their revenues. This work started after an analysis about tools which was able to model in BPMN and translate diagram in XPDL. Nowadays, there are a lot of vendors (such as CapeVision, Enhydra JaWe, Fujitsu, Kaisha-Tec) that support BPMN or XPDL, but none of the above uses the combination of two languages to model and execute entire process.

1

2 The main common aspects of these software we find during our work analysis are the follow • These products are stand-alone applications (so they don’t provide sharing functionalities) • They allow to model in BPMN and save in a proprietary format o For those one that allow to save the process in XPDL format we saw that the tool was not able to model process in BPMN. Moreover, only few vendors offer their products by open source license.

3.

• • • •

Presentation-tier Web-tier Application-tier Data tier The presentation-tier produces the web pages in html format, this is the first level of the architecture and it is a container of the whole tool, the end user will use the GUI here defined and wropped.

Architecture

A Business Process is a whole linked activities, to achieve a determined enterprise objective in the planning phase. The Business Process is a modelling of the activities performed by an enterprise in order to create added value for its market. It is simple to understand the importance of their evaluation and reengineering effort to improve the efficiency and effectiveness of enterprise activities. This goal is reached by a modelling language which allow to define graphically the development of a determined process. Nowadays, internet development has enable the enterprises to collaborate, removing the limit of a physical distances. It is important, to take advantage of potentialities of ICT, trying to realize collaborative informatics tools, which give added value to enterprise in the planning and following modelling of their business processes. For this reason, it is possible to consider innovative the approach that enable to sharing processes intra(or inter)-enterprise with partners, during the process modelling phase. In this paper, it is proposed a web-based application which offers possibility to model business processes in collaborative way, through BPMN, and then represent them in XPDL for being able to execute them in a workflow engine. To reach this prefixed objective, it’s needed to design the tool as a web-based application so that it can be used from some connected computer to Internet. Therefore, it is not necessary to install any type of software to transfer from computer to another computer. This makes our tool much less invasive then stand-alone one. The bxModeller has been designed for multi-tier architecture. It is composed of, as shown in Figura 1 the following tier’s layer

Figura 1: bxModeller Architecture

The web-tier is made by an Ajax engine, implemented through Direct Web Remoting (DWR) library, it allow a good level of interaction with Java on the server side. This layer include the potentiality of the Ajax core that support the main interactivity aspects inside the application. The Architectural idea behind this choice find support on the best performaces obtained by a lower mass of data exchanged with the server side. The result is a web-based application that work like a stand alone one. The application-tier corrisponding to an integrated module(s) in an application server for generation of dynamic contents. The technology used at this layer is Java on Apache Tomcat, this layer manage the Java core developed for the application according with the DWR library used at web tier level.

3 The data-tier include the Local Knowledge Base, which will have the function to contain all processes modelled by bxModeller, saved in a XPDL representation. The KLB represents a collection of processes a richness for the firms able to maximize the politic of reuse value, it means that the user of the application can recycle parts of the previous modelling reducing part of the design and modelling time needed.

3.1. Use Case In order to use bxModeller, a generic business user has to login, providing username and password, to take advantages assigned to him. After access, he can build a new BPD, open a model loaded from local knowledge base or imports an existing diagram saved in XPDL format and so the user can modify it. Each adjustment made on the BPMN diagram will have effect on the XPDL imported (Modify BPD/Package) (see Figure 2).

Figure 3: Part 2 of the Use Case

4.

Figure 2: Part 1 of the Use Case

The diagram creation or modification involves the definition of a business block, an abstract entity which groups all processes and sub-processes included in the package, with their detailed representation. In this way, a business block is completely defined only when a graphical representation of all elements, properties and applications of each process exists. The application has to provide tools to the user to define processes and elements. Finally it will be possible to export the formed diagram in XPDL, formerly validated. The XPDL file will be saved in the local knowledge base and can been loaded in a workflow engine for the execution (see Figure 3).

BPMN-XPDL Mapping

Before designing bxModeller architecture, the first step needed is to understand which are the links between BPMN and XPDL. Every core elements of BPMN have a correspondence with a specific element of XPDL specifications. There are some graphical elements that can not be translated in XPDL, in the same manner many attributes and elements of XPDL are used for process execution and haven’t a correspondent graphical object in BPMN. To achieve our objective, the table in appendix shows a mapping between BPMN core graphic element and XPDL correspondent tag. As explained by Tabella 1, each BPMN graph element has a correspondent XPDL element. This is in agreement with the idea of N. Palmer [4], who says that XPDL is a format to “store and exchange the process diagram, to allow a tool to model the diagram, another to read the diagram, and so on”. Furthermore, it’s important to note that, XPDL provides vendor and user extension capabilities, so that it is possible to represent new graphic elements by extended attributes, embedded in XPDL specification [5]. 5.

Serializing a Business Process Diagram

The XPDL, as announced from collaboration between WfMC and OMG, is the natural format of BPMN diagram rescue. Beyond supplying all tags in order to save every BPMN properties, it has a particular tag for saving graphical coordinates of all elements present in BPD.

4 Furthermore, what our work contemplates is not a simple rescue format that allows exchange of diagrams among different tools, but it is a execution language of modelled business process. This happens because XPDL offers the possibility to perform task managed from human. This is a strong point because it is a peculiarity that other languages, like BPEL, are not able to manage. On this subject, therefore, in our approach we propose to model entire process in BPMN and then serialize it in XPDL, making it performable by a workflow engine (i.e. Shark) able to understand manage it. However, it is necessary to keep in mind that if there are some subprocesses into BPD, automated and orchestrated, they can be designed and performed in BPEL. This technique makes complete the execution of a complex process, so the business user is not bind to model the whole process composed by automatic tasks or process that needed human operations. 6.

Activity

SubProcess

Task

Gateway

Conclusion and future work

With the current application it is possible to model the business process and then save it in XPDL format. Furthermore it’s able to make a rebuild of the BPD starting from the XPDL file. Our work for the future is going to design and implement the following functionalities: • • • •

the creation of a collaborative working environment; the sharing of a BPD between more users, afferent to the platform; the process modelling by using ontologies; the congruence of the process built by use of business rules described in SBVR.

Event

SequenceFlow

MessageFlow

Association Acknowledgments The work reported in this paper has been partially supported by the DISCoRSO FAR Italian Project. Thanks are expressed to Silvio Sorace, Francesco Arigliano and Davide Storelli for many fruitfull discussions on optimization issues.

Pool

Appendix

BPMN Business Process Diagram Process

XPDL

Lane

DataObject



5

Group

Annotation

Tabella 1: BPMN-XPDL Mapping

References 1. 2.

3. 4. 5.

6. 7. 8. 9. 10. 11. 12.

13.

Business Process Modelling Notation (BPMN) – Version 1.1 – July 31, 2005 – BPMN.org Process Definition Interface – XML Process Definition Language – Version 2.0 – October 3, 2005 – Workflow Management Coalition (WfMC). R.M. Shapiro, A comparison of XPDL, BPML and BPEL4WS, 2002. N. Palmer, Understanding the BPMN-XPDL-BPEL value chain, Business Integration Journal, 2006. R.M. Shapiro, XPDL 2.0: Integratin Process Interchange and BPMN, Workflow Handbook, 2006. Steven A. White, Introduction to BPMN, IBM Corporation. Steven A. White, XPDL and BPMN, SeeBeyond, United States. Cape Visions, XPDL with BPMN Extensions, Robert M. Saphiro, XPDL 2.0: Integrating Process Interchange and BPMN, Global 360, USA. Sang Shin , AJAX Basics. Sang Shin, Introduction to DWR (Direct Web Remotinig). Martin Owen and Jog Raj, BPMN and Business Process Management: Introduction to the New Business Process Modeling Standard, Popkin Software, 2003. W. van der Aalst et al., Workflow Pattern, 2002.