Business Process Modeling Language
Encyclopedia
Business Process Modeling Language (BPML) is a meta-language for the modeling of business processes, just as XML is a meta-language for the modeling of business data. BPML was a proposed language, but now the BPMI has dropped support for this in favor of BPEL4WS
. BPMI took this decision when it was acquired by OMG
in order to gain access to its popular specification, BPMN (Business Process Model and Notation). This notation was useful to OMG in order to enrich UML with process notation.
BPML, a superset of BPEL, was implemented by early stage vendors, such as Intalio Inc., but incumbents such as IBM and Microsoft could not implement BPML in their existing workflow and integration engine implementations (BizTalk, Websphere etc.). Hence, they pushed for a simpler language, BPEL. Today, open source implementations of BPML still exceed the capability of these commercial products. This led some to say that BPML versus BPEL was a case of VHS versus Betamax. The analogy is not quite correct. For VHS and Betamax both let you watch video - even if one implementation won out. That is not the case with BPML and BPEL. BPML was designed as a formally complete language, able to model any process, and, via a BPMS, deployed as an executable software process without generation of any software code. This is not possible with BPEL, since BPEL is not a complete process language. To illustrate this, note that BPEL is often used in conjunction with Java to fill in the "missing" semantics. In addition, BPEL is often tied to proprietary implementations of workflow or integration broker engines. Whereas, BPML was designed, and implemented, as a pure concurrent and distributed processing engine.
Ironically, the most complete implementation of BPEL today, is Intalio's open BPMS, which also completes the semantics by fulfilling the spirit of the BPML specification. Maybe in future BPML will be seen in other BPEL implementations. The only difference in the future will be syntax, not semantics. In this sense, BPML cannot be avoided, since it was designed to be semantically complete according to the Pi-calculus
formal representation of computational processes.
The battle between BPML and BPEL is widely viewed as an example of the power of IBM and Microsoft over early stage startups to complete a core technology stack at the heart of their business model.
BPEL and BPML are examples of a trend towards Process Oriented Programming. BPEL and BPML herald the concept of a Business Process Management System (BPMS) as an IT capability for management of business processes, playing a role similar to a Relational Database Management System (RDBMS) for business data.
Business Process Execution Language
Business Process Execution Language , short for Web Services Business Process Execution Language is an OASIS standard executable language for specifying actions within business processes with web services...
. BPMI took this decision when it was acquired by OMG
Object Management Group
Object Management Group is a consortium, originally aimed at setting standards for distributed object-oriented systems, and is now focused on modeling and model-based standards.- Overview :...
in order to gain access to its popular specification, BPMN (Business Process Model and Notation). This notation was useful to OMG in order to enrich UML with process notation.
BPML, a superset of BPEL, was implemented by early stage vendors, such as Intalio Inc., but incumbents such as IBM and Microsoft could not implement BPML in their existing workflow and integration engine implementations (BizTalk, Websphere etc.). Hence, they pushed for a simpler language, BPEL. Today, open source implementations of BPML still exceed the capability of these commercial products. This led some to say that BPML versus BPEL was a case of VHS versus Betamax. The analogy is not quite correct. For VHS and Betamax both let you watch video - even if one implementation won out. That is not the case with BPML and BPEL. BPML was designed as a formally complete language, able to model any process, and, via a BPMS, deployed as an executable software process without generation of any software code. This is not possible with BPEL, since BPEL is not a complete process language. To illustrate this, note that BPEL is often used in conjunction with Java to fill in the "missing" semantics. In addition, BPEL is often tied to proprietary implementations of workflow or integration broker engines. Whereas, BPML was designed, and implemented, as a pure concurrent and distributed processing engine.
Ironically, the most complete implementation of BPEL today, is Intalio's open BPMS, which also completes the semantics by fulfilling the spirit of the BPML specification. Maybe in future BPML will be seen in other BPEL implementations. The only difference in the future will be syntax, not semantics. In this sense, BPML cannot be avoided, since it was designed to be semantically complete according to the Pi-calculus
Pi-calculus
In theoretical computer science, the π-calculus is a process calculus originally developed by Robin Milner, and David Walker as a continuation of work on the process calculus CCS...
formal representation of computational processes.
The battle between BPML and BPEL is widely viewed as an example of the power of IBM and Microsoft over early stage startups to complete a core technology stack at the heart of their business model.
BPEL and BPML are examples of a trend towards Process Oriented Programming. BPEL and BPML herald the concept of a Business Process Management System (BPMS) as an IT capability for management of business processes, playing a role similar to a Relational Database Management System (RDBMS) for business data.
See also
- Business Process Execution LanguageBusiness Process Execution LanguageBusiness Process Execution Language , short for Web Services Business Process Execution Language is an OASIS standard executable language for specifying actions within business processes with web services...
(BPEL) - Business Process Model and Notation (BPMN)
- Business process modelingBusiness process modelingBusiness Process Modeling in systems engineering is the activity of representing processes of an enterprise, so that the current process may be analyzed and improved. BPM is typically performed by business analysts and managers who are seeking to improve process efficiency and quality...
- workflowWorkflowA workflow consists of a sequence of connected steps. It is a depiction of a sequence of operations, declared as work of a person, a group of persons, an organization of staff, or one or more simple or complex mechanisms. Workflow may be seen as any abstraction of real work...
- workflow engineWorkflow engineA workflow engine is a software application that manages and executes modeled computer processes. It is a key component in workflow technology and typically makes use of a database server....