Are We There Yet?
The short answer to this question is "not completely," but we are getting rather close. Even though the industry has make much progress in foundational areas, it is still a highly dynamic market. Here are just a few of the areas that are in flux:
- Standards for managing person-to-person processes
- Ongoing revisions of message security and reliability for system-to-system processes
- Transaction propagation
- Business activity monitoring
- Integration of multiple process engines
There is currently a lack of strong support for a standard way of working with processes that involve human-interactions, even though there are recommendations to address them. BPEL currently does not handle person-to-person processes, so an extension has been proposed called "BPEL4People." Similar capabilities can also be found in XPDL.
The security issues are about message integrity, confidentiality and authentication. In SOAP-based communication, XML extensions are created to support the use of multiple security tokens (such as username, certificates, SAML) within the message. The example of such effort comes from the WS-Security specification.
Communication standards are a priority given the need to handle communication problems gracefully between any two systems (due to, say, a network or application outage). In SOAP-based Web-service integration, the two competing standards, backed by different vendors, are WS-RM and WS-R. They are both XML-based protocols that attempt to ensure that the sender of the message gets a reliable acknowledgement when the receiver has received the message (and preferably ignored any duplicate messages). Currently WS-RM seems to have broader vendor support, but reconciliation between the two standards is necessary.
One other area in flux involves how transactions are managed during system-to-system interactions with Web services. BPEL and WS-* extensions are becoming widely supported in this type of back-office BPMS. BPEL workflow transactions, for example, can be short or long running. WS-Transaction and WS-Coordination services are ways of supporting transactional Web services. While another standard, BTP (Business Transaction Protocol) supports similar needs, currently BPEL and WS-* extensions are getting more visibility.
On the BAM front, BPM vendors are determining how to best collect and present information from the customer's BAM tool of choice. While most BPM products provide operational metrics on dashboards, it's not easy to use BAM and BPM products from different vendors. Creating historical reports from BPM data and analyzing KPIs using existing reporting tools requires customization effort.
When disparate process engines (XPDL- or BPEL-compliant) from different vendors need to be integrated, it may be hard to reconcile different levels of standards, vendor-specific features and proprietary interfaces. For example, to start a process in one process engine and hand it off to another, you need proper communication. The WfXML initiative is an effort to address issues specific to this scenario.