rganizations the world over are looking for better flexibility and higher productivity. They need software applications that are not only long-lasting but also adaptable to change. Business process management (BPM) is a revolution in the software industry today that’s providing such capabilities. BPM may be defined as the practice of improving the efficiency, effectiveness, and operational agility of an enterprise by automating, optimizing, and managing its business processes. BPM enables business processes to be designed independently of any single application and then leveraged as shared business logic.
This article provides an overview of BPM and workflow, and then briefly discusses how the two differ. It then highlights the features and benefits provided by a complete BPM solution and links to widely used BPM products (both proprietary and open source).
What is a Business Process?
A business process is a sequence of one or more related, structured activities that has a clearly stated objective and a deliverable or outcome. In this PDF file, the Workflow Management Coalition (WFMC) defines a business process as “A set of one or more linked procedures or activities which collectively realize a business objective or policy goal, normally within the context of an organizational structure defining functional roles and relationships.”
Business Process Diagram (BPD)
Business processes are generally depicted diagrammatically, in a graphic form called a business process diagram (BPD). A BPD is actually a process diagram drawn using a business process designer. It is based on a flowcharting technique and consists of graphical objects that represent a network of related activities, the information about the activities, and the flow that defines the order of execution of these activities. These graphical objects have distinct symbols and shapes that help distinguish various types of activities.
According to the Workflow Management Coalition, workflow is the “automation of a business process, in whole or part, during which documents, information, or tasks are passed from one participant to another for action, according to a set of procedural rules.”
Workflow Management System (WFMS)
Large organizations have many such workflow operations?and these benefit from being grouped and managed just as do other businesses processes. A Workflow Management System (WFMS) is software that manages workflow execution, by interpreting the process definition, interacting with workflow participants and, where required, invoking external IT tools and applications. Note that all workflow systems are process oriented.
Bear with me while I finish defining workflows, then I’ll compare them generally to business processes so you can see how the two fit together.
Components of WFMS
WFMS have two basic components:
- A workflow modeling component, which lets you model workflows visually.
- A workflow execution component that’s responsible for launching and managing workflows.
Benefits of Workflow
Because workflows are such common business operations and are usually labor-intensive, they also consume a measurable percentage of business costs; therefore, automating them provides a number of benefits, including:
- Reduced operating cost. Workflow automation reduces the unit cost to execute a transaction.
- Increased efficiency. Business process automation can eliminate many unnecessary steps.
- Better control. Automation standardizes working methods and provides audit trails that can improve managerial control.
- Improved customer service. Improved consistency and control result in better customer service.
- Flexibility. Automated processes are relatively easy to change as business requirements change, and?unlike changing human-driven processes?modifying an automated process results in immediate and permanent change.
BPM vs. Workflow
So, as you’ve seen, while BPM and workflow share many of the same characteristics, there are distinct differences between the two. Workflow is a part of BPM; conversely BPM is a superset of workflow. Workflow is just one way among many to implement business processes, whereas BPM is about the management of workflow. A WFMS controls the flow of work from one person to another. In other words, it controls the information associated with workflows in an enterprise. But a WFMS does not optimize a process. Unlike a WFMS, a BPMS provides process control and integration different application software.
BPM?Integrating Business and IT
Many of today’s software applications are static in nature in the sense that they don’t adapt well to possible future changes, because the business logic is embedded inside the application’s code. Therefore, when the business changes and the applications need to reflect those changes, the application’s source code needs to be modified too, which is a labor-intensive and error-prone process.
BPM, however, isolates business logic from the application, which is in turn built on top of and relies on BPM. BPM defines, executes, and manages the business processes independent of any particular application. Thus, changes to the business process don’t affect the application(s) associated with the process. BPM aims to solve the adaptability problems stated above by describing the methodologies, metrics, and processes that an organization should adopt to monitor and manage its business.
In essence, BPM is an abstraction for building business systems. It defines a structure for application development that can be as agile as the application’s data. It is responsible for automating the business processes to achieve maximum flexibility with minimum development cost and time.
In a nutshell, BPM is about managing the entire life cycle of a business process.
Benefits of BPM
The key benefits of BPM are:
- Process transparency
- Process refinement and optimization
- Process streamlining
- Increased productivity and faster ROI
- Better agility and responsiveness
- Improved customer service
- Increased revenue and reduced expenditure
- Data centralization
Business Process Management System (BPMS)
Just as WFMS manage workflow, business process management systems (BPMSs) manage business processes. The global business community is rapidly adopting BPMSs because they simplify describing, maintaining, measuring, analyzing, and continually improving business processes. When alterations in business processes are required, a BPMS facilitates the changes, and ensures that such changes can be implemented using minimal development time and effort. The core BPMS advantage is isolation of business logic from an application’s core, helping to bridge the gap between business and IT.
In addition, BPMSs constantly measure and store process execution data in the form of business activity monitor (BAM) reports, which managers can use for process monitoring, performance management, etc. From the organization’s perspective, better reporting helps ensure better efficiency, higher productivity, reduced cost, and the other benefits listed earlier.
Business process management systems cover the full range of management services. The major activities that constitute a BPM solution include:
- Process design
- Process execution
- Process activity monitoring
A complete BPMS solution should have the necessary components to address the three listed activities. Some of the major components of a complete BPMS are as follows:
- BPM Process IDE. This is typically a graphical business process designer.
- Business process simulation engine. This engine is responsible for executing and persisting integration processes. When a process flow is triggered the process engine takes over to execute the process flow.
- Business Rules Engine. An engine that manages business rules.
- Business Activity Monitoring. This component consists of a set of reporting tools for process owners, senior management, and other business users.
A Typical BPMS Process
Typically designers design business processes using a business process modeler, which consists of a visual interface for creating, editing, and deleting business process diagrams. The business process diagrams produced using a Business Process Modeling tool are called business process diagrams (BPDs). This diagrammatic representation is then captured in business process execution language (BPEL). This is in turn deployed to the business process simulation engine. This engine is responsible for executing one or more business processes.
The Simulation and Execution Engines
The business process simulation engine parses the BPEL data and executes the series of activities in memory, storing execution data that can later be used for process monitoring and improvement. The business process execution engine can also pass parameters of the activities that accept parameters for their execution. These process engines use well-known specifications such as JMS, WSDL, etc. BPM tools provide an SDK so businesses can integrate them with custom applications. See the sidebar “BPM Software and Resources” for links to the most widely used BPMS solutions and resources.
Companies today are using BPM to evaluate, redesign, and customize their existing core processes and help rapidly integrate processes and applications within and across enterprise application boundaries. Globally, organizations are adopting BPM to include process model-driven and data-centric architecture approach rather than a document-centric one for greater operational agility, better efficiency, and higher productivity. In this article, I delved into concepts of business process, workflow, BPM, and BPMS, components of both WFMS and BPMS, and the features and benefits of BPMS with the hope that broad oversight and understanding will help your organization succeed with the business process paradigm.