What is Business Process Modeling (BPM)?
Business Process Modeling (BPM) is a Model-Based Engineering sub-discipline
that specializes in Business Analysis applications. Business Process Modeling emphasizes the application of rigorous visual modeling principles and best practices to Business Analysis activities throughout the Software Development Life Cycle. These Business Analysis activities include, but are not limited to, requirements analysis, enterprise business process workflow specification, and business rule specification.
The term Business Process Modeler is popular among Business Analysts and Solution Architects who advocate the use of BPMN and UML Activity diagrams as standard visual modeling languages for specifying enterprise business process workflows, and who want to distinguish their approach from Model-Driven Development and its variants, which tend to be more software centric.
Business Process Modeling principles and best practices continue to evolve evolve. The following are some additional desirable characteristics of Business Process Modeling approaches:
- a precise and complete Business Process Model that facilitates systematic comparison and contrast of current ("As Is") and proposed ("To Be") enterprise business process workflows, with the goal of improving the efficiency and productivity of the "As Is" workflows;
- ensures that the Business Process Model is requirements-driven to the extent that all model elements must be fully traceable to business and user requirements;
Note BPM acronym overload:
- ensures that the Business Process Model is architecture-centric to the extent that all model elements must maintain structural and functional integrity relationships with the rest of the enterprise system architecture;
- provides support for Service Oriented Architectures (SOA) and Software as a Service (SaaS) paradigms; and
- combines traditional Business Analysis best practices with visual modeling best practices.
BPM = Business Process Management = Business Process Modeling
In general, Business Process Modeling may considered a sub-discipline of Business Process Management
What is the difference between Business Process Modeling and "business modeling"?
Although business modeling may be considered more generic than Business Process Modeling, the terms are largely synonymous, and they are frequently used interchangeably.
How is Business Process Modeling related to the other BPM’s: Business Process Management, Business Process Monitoring, and Business Performance Management?
In the business domain the BPM acronym is heavily overloaded with several different expansions which are related to each other. Business Process Monitoring refers to the the observation of enterprise processes. Business Process Management, which refers to all activities that manage enterprise processes, is the most generic term and subsumes the others.
What are the industry standard languages for Business Process Modeling?
Although much Business Process Modeling continues to be specified using informal ad hoc languages with general purpose drawing tools (e.g., Visio, PowerPoint drawing features), there is a trend towards increasing the precision of business process models using standardized languages, such as BPMN, UML, BPEL, and WS-CDL. These languages are described further below.
- Business Process Modeling Notation (BPMN) — BPMN is a graphic notation for representing business processes. BPMN defines a Business Process Diagram, which is based on flowcharting techniques customized for business processes, and a mapping to BPEL executable semantics (see below). The BPMN industry standard is maintained by the OMG. For more information about the BPMN check out the BPMN Forum.
- Unified Modeling Language (UML) — UML is the industry-standard visual modeling language for specifying software-intensive systems, and it can also be used to model business processes. In particular, UML Activity diagrams provide many of the workflow modeling constructs furnished by BPMN. The UML industry standard is maintained by the OMG. For more information about the UML check out the UML Forum.
- Business Process Executable Language (BPEL) — BPEL is an XML-based executable language for representing business processes. BPEL is an orchestration language (cf. choreography language, such as WS-CDL), and consequently focuses on the view of one business participant. The BPEL industry standard is maintained by OASIS.
- Web Services Choreography Description Language (WS-CDL) — WS-CDL is an XML-based non-executable language that represents global business processes. WS-CDL is a choreography language (cf. orchestration language, such as BPEL), and consequently, describes peer-to-peer collaborations of multiple business participants working on a common business goal. The BPEL industry standard is maintained by W3C.
What is Business Process Modeling Notation (BPMN)?
The Business Process Modeling Notation (BPMN) is an open standard notation for graphical flowcharts that is used to define business process workflows. BPMN is derived from the synthesis of multiple business modeling notations. Originally published by the Business Process Management Initiative (BPMI) in 2004, BPMN is now being maintained by the OMG since the two organizations merged in 2005. Read more...
What is the relationship between BPMN and BPEL?
BPMN is a visual notation for Business Process Modeling, whereas BPEL is a text-based (XML-based) Business Process Modeling language which includes precise execution semantics. BPMN defines a mapping of its visual notation to BPEL execution semantics, so that the best features of both these standards can be synergistally combined.
What is the relationship between BPEL and WS-CDL?
Both BPEL and WS-CDL are XML-based languages, but BPEL is executable and is an orchestration language (i.e., focuses on the view of a single business participant), whereas WS-CDL is non-executable and is a choreography language (i.e., describes peer-to-peer collaborations of multiple business participants).
When will the industry standards for Business Process Modeling converge?
The linguistic divergence of Business Process Modeling languages is problematic for efficient communication and interoperability, since it perpetuates a Tower-of-Babel syndrome among the various business stakeholders. Since the Business Process Management Initiative (BPMI) merged with the OMG in 2005 there has been some hope that BPMN and UML Activity diagram notation will be merged in the near future. However, given the OMG’s poor track record regarding interoperability of modeling standards, such as UML 2.0, it is unlikely that this will happen soon.
What is the difference between a graphic (visual) Business Process Modeling language and a non-graphic (textual) Business Process Modeling language?
These differences refer to variations in the concrete syntax (notation) of the Business Process Modeling languages. Graphic business modeling languages typically use a visual notation of 2-dimensional symbols (e.g., the “boxes and lines” used in BPMN and UML), whereas non-graphic business modeling languages use a text-based notation (e.g., BPEL, which is defined with XML notation).
What is the difference between an executable Business Process Modeling language and a non-executable Business Process Modeling language?
These differences refer to variations in the semantics (meanings) of the Business Process Modeling languages. Executable Business Process Modeling languages are associated with precise semantics that can be used to automatically validate and simulate business processes (e.g., BPEL, UML Action Semantics) whereas non-executable Business Process Modeling languages lack precise semantics (e.g., BPMN).
How can readers submit new questions for this FAQ?
Please email your questions using the Contact