Concept: Business Process Decomposition
Business process decomposition is an approach which allows the refinement of business use cases, to make tractable the expression of use case realizations in UML Activity Diagram form.
Main Description


A business process is a group of logically related (and typically sequenced) activities that use the resources of the organization to provide defined results in support of the organization's objectives -- delivering value in the form of product or service, often to an external party such as a customer or partner. The process, possibly decomposed into sub-processes, has associated organization, resource, and data models to capture all aspects of the process, including not only performing roles, but required/used resources, ownership of resources, accountability, definitions of items passed into and out of tasks, and so on.

This is a very concrete view of process, and so we adopt the view that business processes are realizations of the bounding business system's business use cases. Therefore we can apply the same taxonomy to them as we do to business use cases (see Guideline: Business Use-Case Model), that is:

  • Core, for the external-facing business processes that provide the value chain
  • Management, for the internal business use cases that coordinate the value chain
  • Support, for the internal business use cases that support the value chain

We also allow processes to be event-driven, that is, they are triggered by conditions (resulting in Artifact: Business Events) that arise in the conduct of business.

Process Level

In Concept: Modeling Large Organizations (extract in quotes below), we describe a technique for accommodating the needs of executive management, as well as business process owners, by defining business use cases at two levels of detail:

"One model, for the executives, would contain a set of high-level business use cases that showed the intent and purpose of the organization. The other model, for the process owners, would contain a detailed set of use cases that helped clarify how the organization needs to function internally. For each high-level business use case, you could define one, or several, detailed business use cases representing the same activities in the organization..."

The figure below illustrates this refinement of use cases.

Illustration of Business Use-Case refinement

Note that the lower-level, more detailed use cases are still use cases for the same business system as the high-level use cases, that is they still represent a black-box view of the behavior of that business system. For each of these levels of use-case, there is a corresponding realization, which we can describe as a business process, it is possible therefore to regard this kind of analysis as process decomposition.

Process decomposition analyzes business processes and sub-processes to a level of detail at which it is feasible and useful to construct an activity diagram for the sub-process. Input to process decomposition can come from Level 1 business process models, perhaps written only as narratives, and associated with the corresponding Level 1 business use cases by realization relationships. A Level 1 process is the high-level description of what a business system does, meeting the needs of executive management, as described above.

Process decomposition results in a set of documented Level 2 processes captured in the Business Analysis Model as Business Use-Case Realizations -- at Level 2 it is typically possible to construct an activity diagram for the process, so as a rule of thumb we have three levels of decomposition -- level 1 process, level 2 process and activity (composed of activity nodes). There are several ways to illustrate a business use-case realization -- we focus on activity diagrams (see Guideline: Diagrams in the Business Analysis Model) here because they have a form and semantics that will be familiar to most business analysts interested in business process modeling. Such models are especially useful in identifying inefficiencies in current processes, leading to identification of opportunities for automation and business transformation.

Business Process Decomposition in SOMA mapped to Use-Case Refinement.

IBM Global Business Services (GBS) Service-Oriented Modeling and Architecture (SOMA) is an approach and set of techniques for SOA that bridge the gap between business and IT.

In the figures below, we map the results of process decomposition as SOMA would show it, to the equivalent results in business modeling using business use-case refinement. We include this to show that the two approaches are really only using different terminology and representations for the same concepts, and yield the same result in the end -- a set of business process descriptions that can be used to bridge the gap to automation, for example, using IT systems, or services in a Service-Oriented Architecture (SOA) initiative.

Illustration of process decomposition

The figure above shows process decomposition into sub-processes and use cases in a notational form used in SOMA. The notion of a sub-process is a convenient construct used to denote further levels of refinement of a process, into its constituent parts (sub-processes), recursively.

Once we get to the point where we begin to look at user-system interactions, we stop and label the sub-process a leaf-level sub-process.  A leaf-level sub-process is potentially a composite of system use cases, for example, a leaf-level sub-process of Process Order might have have use-cases of Get Customer Name, Get Customer Address and Get Order Items.

The figure below shows the equivalent structure expressed using RUP business modeling notation.

Illustration of mapping of business use-case refinement

This structure shows the same three levels, with the leaf-level sub-processes being represented by action nodes in the activity diagram.

Note that what SOMA shows as use cases at the lowest level, are not Business Use Cases as we define them here: they are -- as are the corresponding activity nodes (action nodes) in the Business Use-Case Realizations -- the loci for possible interaction(s) with IT systems. SOMA's use cases are therefore closer to the use cases that arise in application development, as it is described in RUP (see Guideline: Going from Business Models to Systems).

Using UML activity diagrams to model business processes it is possible to identify key business workers, business significant milestones and events, task sequences and dependencies, business entities modified and exchanged, and interactions within and between organizations.  A process model should concretely identify "what" needs to take place, not "how" tasks are carried out, since that is an aspect of business process that can change over time, especially in response to changes in business environment or technology.