Business process management (BPM) – while also its own independent practice / school of thought – is an application of technology that is served by many products, not the least of which is jBPM. The best definition of BPM that I’ve found is: “Business Process Management (BPM) is the concept of shepherding work items through a multi-step process. The items are identified and tracked as they move through each step, with either specified people or applications processing the information. The process flow is determined by process logic and the applications (or processes) play virtually no role in determining where the messages are sent.”.

There are many different BPM engines, some open sourced (jBPM, OpenWFE), some closed source: Tibco iProcess Suite, webMethods BPM, etc. There are a lot of proprietary systems that came from former application integration vendors. Because the topology of EAI has changed, and integration has evolved from more than ease-of-message passing to orchestration of that message passing we’re now starting to see open source BPM systems that didn’t exist before. The proprietary offerings, however, did exist in some form or another from these vendors, but as very limited (with respect to BPM) application integration suites.