[2005-11-25]
   
[2005-11-18]
 
Manufactures Use BPM to Achieve Inventory Risk Management and Decrease Unused Materials
   
[2005-11-11]  
Discussion of Introducing Enterprise Class BPM
   
[2005-11-04]  
Selecting the BPM from the Highest Level of the Enterprise
   
[2005-10-28]  
BPMN and BPEL
   
[2005-10-21]  
From SOA and Web Services to POA
   
[2005-10-14]  
When Modern BPM Meets SOA
   



BPM Mini Course. Class 3: Modern Business Process Management Architecture and Technology (2 of 2)

BPMN and BPEL

Originally Published in iThome Computer Paper, vol. 214, 2005/10/28

 
We discussed in the previous article that some Web Services technology and SOA architecture. Web Services provide a standard interface protocol, enabling different systems or different companies to integrate together. We can use the services provided by each system to build the needed system or service. This building block combination method is what SOA aims to achieve. Yet, is there any standard to define this combination method?
 

It has always been that programmers are comfortable with using programming languages to control complex logic, and using Application Programming Interfaces (API) to call external programs. Yet, in the SOA architecture, services have become the main principle. Complex logic is being included in the service or has been separated into different services. Therefore to build a system, the required services must be found or generated, then last, connect these services with simple logic. In the past, such work is usually designed using process diagrams, then programmers are hired convert them into programming language. But these process diagrams are only suitable for high level design, and cannot represent, parallel processing, synchronization, events handling, and etc. Therefore a standard for expressing processes, Business Process Modeling Notation (BPMN), has been created. BPMN can directly describe the process details and convert it to Business Process Execution Language (BPEL) or directly apply it on the Business Process Management System (BPMS).

 

What is BPMN

BPMN took the Business Process Management Initiative (BPMI) two years to develop. The official 1.0 version was released during May, 2004. Before this, process design diagrams do not have a standard, and were defined by process modeling companies, such as DS Sheer ( ARIS ) , ProActivity, Popkin, Casewise, and MEGA. Or were defined by consulting companies. Also other standards would also define some process diagrams, such the UML Activity diagram, BPSS in ebXML, Activity-Decision Flow (ADF) diagram, and IDEF. This situation was similar to object-oriented design before UML appeared, when many parties have their own solutions.
 

Since there wasn't a standardized notation and common language, users would often have to spend quite a bit of time before being able to understand processes that were designed with different products, which hinders usage. For this reason, BPMI developed BPMN, with its main purpose to enable all users to have a common language, from consultant analysts, process designers, business managers, and maintenance engineers to easily understand and communicate

 

BPMN unified the process diagram format and the definition of the diagram lines. For example, a round shape notation represents an event. In particular, round shaped notation with thin sides represents processes that have already started while round shaped notation with think sides represents processes that have completed. Also, as the same as the traditional process diagram, the diamond shape represents process control, which can aside from determining the direction of the process, but can also determine forking and merging. The execution of a task or activity is represented by a rectangular shape. These tasks can be in another process, referred to as a child process.

 

In the topic of lines, aside from the solid lines in process connection points, there are connection points and other items, such as the dotted line used by annotations and the broken line used to present the flow of information. BPMN can only be applied to use in systems and the design of internal processes; it can also be used to design inter-company and public processes to achieve B2B integration. In this design diagram, the line representing the flow of information can clearly represent the process and transferring of information. Aside from the design of the flow processes, another goal of the BPMN is to being close the distance between flow design and execution. Thus, BPMN defines each object and the details of its corresponding Business Process Execution Language (BPEL), so that a process design diagram can be directly converted into an executable language.

 

What is BPEL (Business Process Execution Language)

After understanding the process design diagram standard, let us have a look at process execution language standard. In this section, the standard is opposite with BPMN. Each standard organization and large software company have been competing to define a process execution. This resulted in too many standards that confuses people The standards that are related to processes includes the XML business process LAN Guage (XLANG) by Microsoft, the Web Services Flow Language (WSFL) by IBM, and the Web Services Conversion Language (WSCL) by HP. The first two (XLANG and WSFL) were combined to form BPEL and was made a standard by OASIS. WSCL evolved to become WS Choreography and was made a standard by W 3C . Also, the BPM also created the Business Process Modeling Language (BPML). Standard execution standards creates the ability to interflow, reduces redundancies, reduces the learning needed by developers, and the cost of conversion. With interflow, systems can then communicate with on another, understand, and lower system conversion costs. With the support of major venders, BPEL is the most widely accepted process execution standard in the industry.
 
BPEL coordinates services, and describes process control mechanisms, such as forks, loops, parallel processing, information processing and relationships, and exception processing. BPEL is a XML based language that describes business processes to connect different web services together to create a new solution. Comparing this combination method and the previous method that uses programs to connect services together, the new method is more flexible and easy to manage. Users can use the following combinations to quickly change or create new solutions. But because BPEL over emphasizes on enabling web services to work together, it is lacking in personnel integration and support. Therefore, some venders have proposed the BPEL4People to make up for its deficiencies.
 

From a technical point of view, SOA architecture and web services are very good design inventions. It applies the standard of the internet and sketches the outline of the next generation software architecture. Yet, it does not mention the methods and standards of the actual operation of services. This article provides an overview of business process language design and execution standards. It is hoped that the establishment of these standards and growth can enable connecting services to become easier, and increase the speed of development, with the goal of making it plug and use, enabling the SOA architecture to become available on more systems.

   
Copyright 2000-2011 AboveE Technology Inc., All rights reserved.