A business, whether it is a commercial or a government organization, and whether it pursues for profit or not-for-profit goals, conducts itself within some defined norms, policies, practices, and a set of activities. A business process is essentially a collection of related business activities with specified logic for coordination between such activities and the governing norms, policies, and practices. Business processes are often graphically represented using flowchart diagrams. A business process may be defined at a pretty high-level using coarse-grain business activities that are sometimes identified with what are called enterprise value chains. These coarse grain activities may be further decomposed into finer activities or tasks that may also be related through lower-level processes or sub-processes. Typically, it is the lower level activities or tasks that are actually executed, either by humans or by machines, and the results rolled up to the coarser-grain activities so as to provide higher-level business sense. For example, an order-to-cash process can be described by a handful of high-level business activities such as order entry, order fulfillment, payment receipt, and so on. Each of these activities will most likely be comprised of finer activities; for example, order fulfillment could include activities related to handling the distribution channels and some of these activities may even be outsourced or done by partners.
Business Process Management (BPM) is a disciplined approach for treating business processes as assets, managing their lifecycle, and seeking to improve and optimize them. Using some of the key benefits of BPM, Gartner defined it to be something that provides governance of a business's process environment to improve agility and operational performance. BPM scope includes process analysis, modeling, execution, monitoring, and improvement. As such a BPM adoption involves certain changes to organizational behavior, pursuance of suitable BPM methodology, and the use of appropriate software tools often categorized as Business Process Management System (BPMS), each contributing their part within the broad BPM scope.
Our goal in this book is to introduce the reader to one such BPMS, the Oracle BPM Suite 11g, using a series of hands-on exercises. There are of course many easy-to-find books and publications that go into the general strategies and procedural details of BPM adoption.
BPM is a management practice that provides for governance of a business's process environment toward the goal of improving agility and operational performance. BPM is a structured approach employing methods, policies, metrics, management practices, and software tools to manage and continuously optimize an organization's activities and processes.—Gartner report "Business Process Management: Preparing for the Process-Managed Organization", 2005.
A business process may be explicit (that is, clearly documented) or implicit (that is, based only on the understanding of those that are involved in executing the process), and may be manual (that is, tasks are done by humans) or automated (that is, tasks are handled by machine applications). Enterprise software applications such as Customer Relationship Management (CRM), Enterprise Resource Planning (ERP), Human Resource Planning (HRM) and Supply Chain Management (SCM) typically embed (portions of) many business processes while many other business processes are implemented in a layer above and independent of applications, the middleware layer. In reality, many business processes exhibit characteristics that are mixtures of some of the above traits. This book will focus on explicit business processes implemented in middleware that may include a combination of automated and manual tasks.
Roughly two decades ago, the US economy was going through a bit of crisis, a brief recession of sorts; consumer confidence was low leading to reduced expenditure and less goods sold. Manufacturers were looking to become efficient, which often meant reducing the total cost to produce, and deliver goods and services. So, the Harvard Business Review (HBR) article by Michael Hammer titled Re-engineering Work: Don't Automate, Obliterate, published in late 1990 was not only catchy but also timely. This and similar articles, and then popular books such as Re-engineering the Corporation by Hammer and Champy (which made to it into the national best-sellers list), The Process Engineering Workbook by Harbour, and Process Innovation by Davenport were focused on eliminating work that was thought to be dragging down efficiency and were starting to advocate the use of (information) technology to boost efficiency of work. Of course, processes, the targets of these re-engineering drives, are the so-called business processes, and such re-engineering efforts came to be known as BPR or Business Process Re-engineering. As launched, BPR initiatives were narrowly focused on few specific aspects of process dynamics as opposed to being a wholesome treatment of related business activities. In addition, in the zeal of achieving large benefits through BPR, most companies had set unachievable goals and proceeded to execute them without holistic plans, and in the name of waste elimination many of them laid off a lot of the workforce. There were few successes and, although BPR quickly fell out of favor, the movement had raised the visibility of business processes quite high.
About a decade later, another HBR article, this time by Nicholas Carr, titled IT Doesn't Matter and his book Does IT Matter? Information Technology and the Corrosion of Competitive Advantage that soon followed the HBR article, generated a storm of opinions, some for and many against Carr's observations and conclusions. According to Carr, IT had gotten mostly commoditized, such as the railroads and electricity, and thus, did not offer much competitive advantage anymore. Those who argued against Carr's conclusions pointed to his narrow scope of data-centric IT. It was interesting to note, however, that as debates progressed, the importance of business processes and BPM as enablers of organizational excellence and competitiveness were again in the lime-light (see, for example, Business Process Management: The Third Wave by Smith and Fingar).
Of course, the discipline of dealing with processes started much earlier than the excitement caused by the likes of Hammer or Carr. In the late 18th century, the famous economist Adam Smith used the notion of a process to describe the activities in a pin factory using some 18 different operations comprised of relatively easy tasks that ranged from drawing the wire, straightening it, cutting it, sharpening its end, fitting the head, and so on, up to coloring it for a particular type of application. By using the ideas of division of labor and work specialization the process of pin making could achieve over 200 times the original productivity! In the early 1900s, Frederic Winslow Taylor of Philadelphia published his monograph titled Shop Management based on his work on process management at Midvale Steele Company. Taylor's goal was also to improve worker productivity by streamlining activities and by division of labor. Similar ideas were also used by Henry Ford around the same time to create efficient assembly line processes for producing automobiles.
Over time, statistical quality controls brought significant enhancements to the early workflow systems inspired by Taylor, Ford, Gantt, and so on. During the mid-to-late 1900s, workflow and process improvement methods such as Six Sigma, Total Quality Management (TQM), Lean, and BPR were being practiced. While the methods become more sophisticated, process management continued to mainly focus on improvements in labor productivity till around early 21st century, and then these ideas were expanded to cover most of the business activities, and the phrase BPM became more appropriate and popular.
It may be interesting to point out here that the acronym BPM sometimes has also been used to refer to business process modeling, business process monitoring, and business performance monitoring or management.
Software tools supporting process management have also been evolving steadily over the last two decades. There were multiple paths of evolution. Modern workflow management systems started emerging in the 80s. These systems were mainly focused on keeping track of a sequence of activities by individual (human) workers or agents and the flow of associated documents. Over time, these systems became capable of handling automated agents such as computer applications and databases. By the late 1990s, enterprise application (EAI) tools started adding some workflow capabilities with user interfaces and basic process modeling capabilities on top of their otherwise stronger system-to-system integration capabilities. In the early 2000s, a handful of pure-play vendors, mostly start-ups, created a market focus for process modeling and analysis tools. These specialized tools had relatively advanced features with better graphics and were aimed also at business analysts as opposed to only technical programmers. However, often these pure-play offerings essentially focused on human-centric processes and lacked strong system-level integration support.
It was becoming apparent that a suitable combination of the functionalities provided by the various forms of process tools was required to create general purpose process management platforms and would best serve the end user requirements. The analyst firm Gartner introduced the idea of Business Process Management Suites (BPMS) to capture a comprehensive set of functionalities for an enterprise class BPM platform. These capabilities included support of structured and unstructured processes, human tasks, forms and documents, rules and policies, participant roles and responsibilities, organizational structures, work-item routing, collaboration, business events, handling of design-time changes, integration with software services, and process monitoring and management. Due to the breadth and the depth of a typical BPMS, bigger middleware platform vendors were more suitable to take up the challenge of BPMS offering—Oracle Business Process Management Suite 11g, the tool set used in this book is an example of a full-featured BPMS.
Most business processes cut across functional and departmental silos, and connect disparate applications, information, and people. Thus, a full-featured BPMS must cater to the requirements of many stakeholders, ranging from business users and analysts to IT developers and operations people. They must also handle the challenges of integration of systems, events, information, documents, and human workers, and keeping with the emerging trend of increasing digital communication must facilitate employee and partner collaboration. Given rapid changes in the business environment, a modern BPMS should also make the job of adapting existing processes easy. As will be shown later in the book, Oracle BPM Suite 11g has been designed from the groundup to handle such challenges.
A contemporary IT trend called Service Oriented Architecture (SOA), where the development and use of computer applications utilize the concept of services can be seen as complementary to BPM. Services are a type of encapsulation of technology-based functionalities that, philosophically speaking, resemble the idea of services in our day-to-day life. SOA-based applications access services through well-defined service interfaces and operations, and are expected to receive service responses that are in line with published service contracts. Services facilitate reuse of functionality and easier composition of SOA-based applications. Such applications are characterized as loosely coupled as the service consumers are isolated from the inner working of the services—this helps in making such application significantly more resilient to change.
Business processes can be built by orchestration of such software services, particularly when functionalities from other applications need to be accessed; in this scenario business processes can be viewed as types of SOA-based applications. While SOA and BPM both provide business benefits on their own, when practiced in tandem, these benefits increase significantly. In a SOA-enabled BPM setting, business analysts and IT developers are closely aligned yet also enjoy the benefits of separation of concerns—business analysts focusing on the process descriptions and technical developers dealing with the intricacies of service implementation and collaborating through service interfaces and contracts. As will be shown later in this book, Oracle BPM Suite 11g provides an integrated platform for SOA-enabled BPM, thus easing the challenges of adopting SOA-enabled BPM.
As the process management tools evolved and were being adopted more broadly, the emergence of standards to describe modeling, exchange and execution of such processes was natural. Two noteworthy standards are the Business Process Execution Language (BPEL) and Business Process Modeling Notation (BPMN). BPEL, an XML-based language, was inspired by IBM's Web Services Flow Language (WSFL) and its directed graph approach, as well as Microsoft's XLANG and its block-structured approach. BPEL is now backed by most of the software vendors in the process management space and has received a broad industry uptake; pervasive adoption of a wide variety of Web Services standards (WS-*) like those for software functionality encapsulation, interfacing and policy enforcement, and message-based connectivity, which BPEL heavily leverages, has contributed significantly to this popularity. BPEL 1.0 was proposed in 2002 followed by BPEL 1.1 in 2003 when it was also submitted to OASIS (www.oasis-open.org) for making it an industry standard. BPEL 2.0 was proposed in 2005 and was accepted as a standard in 2007. BPEL provides strong execution semantics, and thus supports construction of standards-based process execution engines (for example, as found in products such as Oracle's SOA Suite).
Definitions from Wikipedia:
Business Process Execution Language (BPEL), short for Web Services Business Process Execution Language (WS-BPEL) is an OASIS standard executable language for specifying interactions with Web Services. Processes in Business Process Execution Language export and import information by using Web Service interfaces exclusively.
Business Process Modeling Notation (BPMN) is a graphical representation for specifying business processes in a business process modeling.
However, BPEL is viewed as something that requires technical savvy and is seen as difficult for business analysts to handle. Besides, BPEL's block-structured syntax limits its ability to handle certain process modeling requirements, such as complex human interactions and tasks, and extensive roles and responsibility management. Almost contemporary to the BPEL efforts is another initiative called Business Process Management Initiative (BPMI) with the aim of meeting the business analyst challenges resulted in BPMN specification. BPMN followed concepts familiar to business analysts such as flow-charts and swim-lanes, and supported highly flexible interaction graphs. BPMI's BPM activities were merged with OMG (www.omg.org) in 2005 and BPMN 1.0 and 1.1 versions emerged in 2006 and 2007, respectively. BPMN 1.x provided a powerful approach to process modeling but it did not include the discipline for execution of those models. With the emergence of BPMN 2.0, a version that is nearing final acceptance by OMG at this time, standards specs added the necessary enhancements to BPMN so that execution engines would be able to interpret the model and execute the process. As Oracle's BPM Suite and SOA Suite use the same modeling and run-time infrastructure (more explanations on this later in the book), the end user has the ability to both model and execute both BPMN and BPEL processes, and even combine them in process composites.
It is perhaps worth mentioning that many of the process modeling languages either exhibit similarities with or were influenced by more rigorous mathematical models for communicating processes, for example, Pi Calculus and Petri Nets. The connections between Pi Calculus with process modeling are along the lines of themes such as flow control, communication through messaging, and dynamic assignments of process end-points. The focus of Petri Net concepts is on the process graphs, states, and state transition. BPMN is closer to Petri Nets while BPEL, due its heritage, exhibits certain conceptual commonalities with both Pi Calculus and Petri Nets. Interested readers may catch a short and introductory review of Pi Calculus and Petri Nets, and their relationships with BPEL and BPMN in the 2005 article BPM Theory for Laymen by Michael Harvey (http://soa.sys-con.com/node/89786)
The overall promise of BPM is to get organizational excellence that manifests in an organization's ability to outperform its competition. This means doing better at producing higher revenue and profit margins, introducing products and services better and faster than the competition, and achieving better customer satisfaction. A successful adoption of BPM adoption helps improve organizational excellence by enabling business-IT alignment, by improving operational efficiency, visibility, and predictability, and by increasing organizational agility.
Business-IT alignment is critical for the healthy functioning of any modern business. In the presence of such alignment, IT delivers functionality required by business promptly and efficiently, and innovations in IT lead to business innovation. BPMS provides a great platform for business-IT alignment. Model-driven BPMS, such as Oracle BPM Suite 11g with business-friendly interfaces for process analysis and modeling, empower business analysts to quickly and accurately specify the process steps and execution logic through graphical process models. In a unified BPMS such as Oracle 11g, these process models are embellished (for example, refined) by IT developers where necessary so that a process model can be executed. Conversely, IT developers can create reusable assets, typically lower level processes and services, which can be easily combined by business users very quickly to support business innovation or faster time-to-market requirements.
BPM increases operational efficiency in several ways. By integrating functionalities of other systems and computer calculation of applicable rules associated with processes, it increases the level of automation in process execution, which in turn decreases process cycle time and increases process volume. Reduction in human activities reduces human errors thus increasing reliability and reducing exceptions. In case of processes where automated tasks and human activities are combined, BPM makes the human participation explicit and precise which leads to productivity improvements. BPMS such as Oracle BPM Suite 11g adds another critical productivity booster—advanced participant collaboration facilitating what may be called Social BPM. Using Web 2.0 and Enterprise 2.0 (E 2.0) style collaboration portals, participants can share and influence process design and certain decision making activities during process execution as opposed to (or in some cases in addition to) traditional styles involving email, document attachments, and web-based or face-to-face meetings.
Explicit description of processes as captured by the BPMS helps tracking of process execution at many levels; for example, the overall health of the end-to-end process execution at the business level or system problems at infrastructure levels, and specific events or milestones such as alerts and exceptions. Comprehensive tracking, increased visibility, and timely alerting during process execution are crucial for achieving high customer satisfaction, leveraging of potential up-sell and cross-sell opportunities, for managing a wide variety of regulatory compliance mandates, and for early detection system failures.
Clear process description, better visibility into process execution states, and appropriate processing of events generated during process execution can be used to predict possible outcomes of a process, often well in time to take appropriate remedial actions so as to reverse potential bad outcomes (for example, SLA violations, event storms generated by excessive alerts due to a few known exceptions, unacceptable system performance, and so on). Such predictive capabilities afforded by BPMS can significantly lower business execution risks.
In order to remain competitive, modern businesses have to often act very quickly to changing business requirements. Ability to sense-and-respond fast in a cost effective manner is the essence of business agility which BPM can boost significantly. Good business-IT alignment reduces communication gap between business need and speeds up delivery of quality IT functionality. User-centric features of BPMS as in Oracle BPM Suite 11g, where interactions with BPM toolset are designed to specifically cater to the needs of different participants through the lifecycle of processes, reduce the time and cost of process design, implementation and execution, and improve the overall quality. Reuse of established processes (and corresponding services in SOA-enabled BPM) also reduces both cost and implementation time. A BPMS such as Oracle BPM Suite 11g provides easy editing of existing processes and hot-deployable changes in process execution behavior through business rules, thus leading to high business agility.
BPM excellence is fast becoming popular as a corporate goal—contemporary reports by many industry analyst firms such as Gartner and Forrester, surveys done by BPM vendors such as Oracle, and personal experiences of the authors strongly support this trend. As with most things of value, the adoption of BPM does require some corporate will and appropriate adoption strategy.
In this chapter, we reviewed the evolution of BPM both as a discipline as well as the tools and standards used. We discussed how BPM delivers an overall benefit of organizational excellence and how it gets you there by aligning the business with IT using a unified BPMS. In the next chapter, we will briefly discuss these topics and offer some guidance regarding starting BPM initiatives in an organization.