BPM Mini Course. Class 1 |
When Modern BPM Meets SOA |
Originally Published in iThome Computer Paper, vol. 212, 2005/10/14 |
The Difficult New Mission of 21th Century IT Departments
|
Today's IT departments are being expected to be assigned an even more important mission after ERP, which is to assist enterprises in becoming process enterprises that have rapid reaction ability. Faced with the global competition in the 21 st century, in a time with deceiving changes, companies can only continue to adjust and adapt, due to the “survival of the fittest”, and to seek the next level of growth. |
|
As enterprises grow, IT will also expand and grow to meet the needs of each enterprise at each level. But the existing IT infrastructure including off-the-shelf system or customized systems are often growing in age and their architecture lacks flexibility, and are hard to integrate. Yet when leaders that are in the frontlines of the market facing more market competition, they hope that IT can quickly react and provide support; however, often they cannot receive the needed support immediately. So “slow” seems to be the common statement of judgment from battle departments towards the IT department. |
|
Faced with the situation described above, how to plan the proper enterprise IT strategy? I believe that most of you have all heard of many new terminology that hopefully would resolve the above problems, such as SOA (Service-Oriented Architecture), BPM (Business Process Management), and Web Services. These terminologies used at various different marketing events may have been interpreted differently and given different meanings. So how to clarify their statuses? From my experience during the past few years in interacting with customers and servicing customers the BPM area, I would like to start by explaining BPM and SOA, and discuss the relationship and status of Web Services, BPEL (Business Process Execution Language), BPMN (Business Process Modeling Notation), and other related popular terminology. It is hoped that readers will not be confused and actually learn new concepts during the next seminar on a related topic. |
|
Development Approaches for SOA and BPM |
Recent developments of intermediary platforms in the IT industry are approached from two angles. The first approach is a bottom-up approach. Starting from the IT architecture to resolve the massive resources needed to integrate different systems, the focus has been improving the limitations of Enterprise Application Integration (EAI) private architecture. Building a new trans-technology distributed system can quickly integrate the required features together to satisfy the application demands. SOA has been leading the development of this approach. |
|
The other approach is a top-down approach that starts from the management and operation issues, and then extending to how IT can support achieving the operation goals. The focus is on bridging the gap between business and IT, with the goal of enabling IT to rapidly support the business objectives by forming a management mechanism with analyzable and rapidly adjustable processes. BPM has been the leading topic of this approach. |
|
Yet, the two approaches may develop from different angles, but the final goals are the same. Recent developments indicate that they have been supporting each other and moving closer together. Using building houses as an analogy, where BPM is a construction team with design plan while SOA is a modularized construction method, the first target is the build a good house, a house that is comfortable to live in. |
|
SOA and Web Services are Closely Interrelated |
When SOA was proposed in the 1990s, it was targeted at software design concepts and the architecture to integrate software. As a result, technologies such as CORBA, RMI, DCOM, and even technologies that utilize Sockets, can create systems that consist of SOA architecture. But under new definitions that places emphasis on loose coupling and technology neutral, SOA has gradually become an architecture and design concept based on standard network computing technologies. Its goal is to transform business functions into internet based services. Of course standard network computing technologies refers to SOAP, WSDL, UDDI, and other technologies derived from security, information reliability, and related Web Services technology, such as WS-Reliable Messaging and WS-Security. Web Services has became one of the basic components in building SOA, currently most information discussing SOA are closely connected to Web Services. Yet, when extending up from SOA, information authorization and conversion, distribution of content based information, load balancing, and various configurations, deployments, and monitoring management mechanisms, are added. This resulted in the emergence of Enterprise Service Bus (ESB) that surpasses the concept, technology, and architecture levels, replacing the old EAI system as the next generation Business Integration Platform. |
|
BPMN extends BPM |
Quite the opposite, BPM is focused on management. Yet, BPM system is formed by various BPM tools and process engines. Since it is focused on management, its emphasis is on continual process management, and not a single one time perfect solution. Therefore, when introducing BPM into an organization, it not only needs the BPM based process systems, but more importantly is to introduce methods and consulting services, to enable enterprise users to correctly understand BPM concepts, enabling IT departments and enterprise users to jointly hold the responsibility of creating or improving process systems. As well, during inter-department cooperation, shifting responsibility should be strongly discouraged. |
|
Therefore, creating a common language between IT and enterprise users is the most important mission of BPM. The Business Process Management Notation (BPMN) defined by Business Process Management Initiative (BPMI) is focused on a complete diagram mechanism to represent enterprise processes, since BPMN is based on flowcharting technology, therefore, business users, business analysts, and IT programmers can easily communicate through the diagrams, reducing the distance between IT and business. |
|
BPEL will be the adhesive of BPM and SOA
|
Regardless of SOA or BPM, to enable interaction of activities, an execution language is needed. The Business Process Execution Language (BPEL) is a technology created by a combination of WSFL and XLANG, initially proposed by IBM and Microsoft respectively, after Web Services became popular. BPEL provides a shared process execution language across BPM process engines. Since BPEL is based on the properties of Web Services, it enables enterprises that deploy BPM systems to quickly establish a SOA based IT architecture. |
|
On another hand, for an SOA platform provider, BPEL is a common language to combine various services into new complex services. But since WSFL and XLANG were initially focused on process automation standards, the BPEL that is based on the two technologies often would ignore supporting Human Workflow. Therefore, BPEL has a direct effect of strengthening SOA execution, but while still emphasizing on a BPEL based BPM system. Such a system does not provide sufficient flexibility in organization and job assignment. Or to makeup for deficiencies of workflow, many add proprietary extensions to standard BPEL definitions, rendering the cross process engines feature useless. |
|
In the Java One event that just finished in May, some of the classes mentioned various IT terminology mentioned in this article, and attempted to explain their relationship from an IT point of view. These classes are some of the most popular classes, guiding IT personnel lost in the large numbers of terminology to get much clearer answers. |
|
When returning to the IT department management center. So should the next step be to deploy BPM to quickly respond to enterprise needs while closing the gap between IT supporting Business? Or should the IT architecture be consolidated to first create a flexible SOA environment? Actually from the development of both, deploying both of them in either order does not affect the future interrelation between the two. Most importantly, after an evaluation of enterprise goals, department goals, and differential complexity of the IT architecture, list ranking the more urgent problems can be created. This is where it should start. |
|