The future of BPM and SOA is so bright you might have to wear shades.
According to industry observers, business process management in conjunction with a service-oriented architecture will spawn a platform that unites and aligns business and IT around business processes.
"Everyone is charting to go to a world where things are aligned around business processes, with a platform that enables the automation of processes and provides visibility into those processes," said Gary So, vice president in the office of the CTO at webMethods, Inc.
That platform, according to Microsoft's vision for its BizTalk Server, will be a unified process server that brings together both human and system workflow and federates business processes end-to-end. And central to that vision is SOA, according to Oliver Sharp, general manager in the Connected Systems Division at Microsoft.
For organizations creating and orchestrating services, "those services are only useful if you can create a business process in very flexible way that uses those services," said Ivo Totev, vice president of product marketing for the crossvision SOA suite from Software AG. "That's why you increasingly see BPM and SOA coming closer together."
While SOA is a newer concept, BPM has evolved through several incarnations. "This is the third rendition of what BPM is," said Shane Pearson, vice president of marketing and product management for BEA Systems Inc. "For several years BPM was a more modeling-based approach and business-user centric. Over the last 5-10 years there's been a heavy integration approach. The new BPM marries the two. The evolution of standards is helping that."
"A lot of BPM suites have proprietary technology built in, but most BPM products are migrating toward open standards and most of the ESBs have a BPEL [Business Process Execution Language] engine," said Anne Thomas Manes, vice president and research director at Burton Group. "BPM has human workflow plus system workflow; BPEL is basically system-to-system workflow, but that's starting to merge."
Web Services Business Process Execution Language (WS-BPEL, or just BPEL), originally developed by IBM and Microsoft and backed by the major SOA platform vendors, is a standard for the orchestration of XML Web Services under the auspices of OASIS. The WS-BPEL Extension for People (BPEL4People), proposed by IBM and SAP, is an extension to bring human workflow into the process.
Other key standards in the BPM world are Business Process Modeling Notation (BPMN) and XML Process Definition Language (XPDL). BPMN is a graphical notation that depicts the end-to-end flow of a business process. It is being maintained by the Object Management Group. XPDL was standardized by the Workflow Management Coalition to interchange business process definitions between different modeling tools and workflow engines.
BPMN and BPEL address different areas.
"BPM traditionally has been separate from composite applications and the concept of service orchestration because it has traditionally been a modeling or design-time application," said Ron Schmelzer, senior analyst at ZapThink LLC. "But runtime process modeling and management necessarily means management of composite services, which means that process-driven SOA tools will necessarily support composite applications that are either an orchestration or choreography of services."
However, Pierre Fricke, director of product management for Atlanta-based JBoss, now a division of Red Hat Inc., points out that orchestration of Web services is just a subset of BPM. For example, he said, an organization might automate the payroll calculation by creating services to calculate the social security tax, the state income tax and a 401K deduction and then orchestrate those services in an SOA environment.
"But that orchestration is part of larger business process of 'paying your employees.' Now you've got to send information to, say, ADP if you do printing of checks and you may send other things to partners, like your 401K partners. BPM is the end-to-end payroll process, not just the calculation process."
The BPM/SOA handoff
End-to-end includes everything from modeling through execution, and here is where the standards still need hammering out. "There's dichotomy between what's done on the modeling end with BPMN and BPEL," said webMethods' So. "Those two standards weren't designed to work together."
Oracle Corp. is working "to minimize latency of converting BPMN to BPEL," said Ashish Mohindroo, senior product director for Oracle Fusion Middleware. "BPEL is critical in terms of SOA [as is] tying back to the modeling language. It closes the gap between process definition and execution. If you make a change in BPMN it gets tracked to BPEL, but not necessarily the other way. That round-trip gap will be the next major step, when SOA and BPM tools can be tightly linked to provide end-to-end process definition."
In addition to tighter integration with modeling, BPM in the context of an SOA is moving toward utilization of a registry/repository for metadata. "Since business processes are represented as compositions of services, registries will increasingly be the place where service compositions and orchestrations are stored and registered," said ZapThink's Schmelzer. "Users will be able to query registries to not only find services, but also processes that are compositions of those services. We haven't seen much activity in this area as of late, but we hope to see more process-driven services with metadata residing in registries soon."
BusinessManager from Savvion Inc. in Santa Clara, Calif., is an example. An organization can publish its processes as services and subscribe to other services, which in turn can become part of their processes. Savvion's BPM Studio can publish that process in a UDDI directory.
And CentraSite is a jointly developed SOA repository from Fujitsu and Software AG. CentraSite, which supports UDDI 2.0 and 3.0, acts as a Web services and SOA asset management platform, holding all metadata assets and offering reports on usage. The concept for CentraSite emerged after Software AG and Fujitsu integrated their products. "We discovered that just middleware plus BPM was not enough to get an SOA up and working. You need one place to manage/control the environment and understand relationships of different components to each other," said Software AG's Totev.
King of the mountain
Going forward, BPM tools need to evolve in the area of runtime, according to ZapThink's Schmelzer. "Most of today's BPM tools are design-time or modeling activities. We need the idea of a runtime business process that is in essence an actual representation of the running system."
He continued, "That means that if you change the defined process, it will actually change the application right then and there. And conversely, if you change the application and composition, it will change the running process. There are very few runtime process management tools on the market. For companies to have a credible process-driven SOA solution, they will have to build such tooling."
Optimization of processes will be another next step in the evolution, according to Software AG's Totev. For example, he said, improving the time it takes to go from step 2 to step 3 of a process may require changing the process flow or creating a new service. The vision is a single place of control to monitor and optimize those processes, with the ability to drill down to the individual service or BPEL sequence or even to the code. "With SOA progressing, you will be able to make those changes in the framework of SOA," he said.
Increasingly, though, SOA will be in the background. "The premise of SOA as an end goal is short-sighted," said WebMethods' So. "It's certainly important and will be transformative, but once it's ingrained in the IT corporate discipline, there are grander mountains to climb."
One of those mountains is clearly BPM.