You could say it's the latest name for workflow, but workflow [applications] tend to sit in a silo and don't touch the outside world. BPM is far more generic, and BPM is about automation. It tends to blur on one edge into EAI, because it's necessary to integrate with legacy and other systems. The key difference is that BPM is much more about getting users into the process, and EAI is about straight-out processes. There's some speculation that Microsoft's XLANG and IBM's Web Services Flow Language (WSFL), the standards BPEL4WS is expected to replace, may not fade away. What does that mean for Web services developers?
IBM claims BPEL4WS extends and subsumes WSFL, and that they've ceased work on WSFL, but on the other hand it says it will work with partners and customers who are working on implementation plans for WSFL. In print, both IBM and Microsoft have said they're going ahead with only BPEL4WS, which is [different] from the phone call I had with IBM, so they've tightened their position, or [decided] internally that this is what they're going ahead with. I'd still like to touch base with them directly. So how would the BPEL4WS standard play into that?
It supports using a Web service as a part of the entire business process. For instance, if I send the National Student Clearinghouse's Web service a request for information on 20 students, it could become a business process when it becomes an
Business process integration would be if I have a series of applications, mine or my customer or partners, and I need to take some information -- such as an order -- and I need to go through a process to evaluate the order, then maybe put it through my ERP system, and then I have to verify that the customer's purchase order is valid, and finally I have to check the inventory system before we process the order. All of those steps or business processes occur before we send the e-mail to the customer saying the order has been placed. What types of companies would benefit from trying out BPEL4WS today?
If companies with a lot of legacy systems want to integrate them, Web services are probably the best way to go today, and will be for some time. If you need to orchestrate those systems -- I think there's less of a need to do that because people are just trying to get these things talking to each other and not have them have meaningful conversations -- then you should look at the standard. The definition of a meaningful conversation is one where both sides need to maintain knowledge of the state of the conversation across multiple calls, so both sides know what's happening in the conversation and what should happen next. Typically, there's more than just a message and a response. Usually there are all sorts of long-running transactions that need to be coordinated between the two parties, and that's coordinating a business process.
FOR MORE INFORMATION:
CLICK for our Best Web Links on BPEL4WS
CLICK for other articles by Eric B. Parizo