Business Process Modeling Techniques

In this article, we’re going to illustrate principles and techniques to model business processes and check the underlying design in order to avoid certain anomalies.


Business processes are a logical and chronological order of activities in order to produce some products or provide some services. These activities may be supported by information systems or by the interaction of the users. Businesses processes are partly automated by workflow technology which can make sure those activities in the processes are performed in the specified order, and the underlying information systems are invoked to realize the business functionality. It's remarkable to say that not all activities are associated to workflows, because there are other activities which require the human intervention and they are part of human interaction workflow.

In order to capture the complexities of business processes, we need to deal with different concepts which enable understand and model the business processes. In this article, we're going to illustrate principles and techniques to model business processes and check the underlying design in order to avoid certain anomalies. The modeling technique to illustrate the examples is Event-driven Process Chains (EPC) which is an important notation to model business processes. This technique is very easy to understand even without any knowledge about it.

Data dependencies

Application data is an important part of business processes. A data dependency between activities in a process is sometimes described by data flow. Let's illustrate this concept with an example from the Ordering process modeled using EPC technique (see Figure 1). You can see that there is a dependency between the data and this dependency dictates the order of the activities in the process. For example, the Receive Order activity is the first activity and you need to enter data to create a PurchaseOrder entity. The Send Invoice activity can be started only when the purchase order information is available, and this is the output of the Receive Order activity; thus implying the ordering of the activities. In summary, the dependency between data is reflected by the data flow, and the output data is only available when the underlying activity finishes; therefore data flow implicates the control flow. In other words, control flow needs to follow the data flow.

This assumption can be relaxed if we assume that activities generate data while they are running; then the generated data can be taken by the follow-up activity, and those activities can execute concurrently.


Figure 1

Structural Soundness

Now we're going to analyze the structure of the business process in order to find structural errors specifically dangling transitions; that is, transitions without inputs or outputs. We can define that a process is structurally sound if the following conditions are hold:

  1. There is exactly one initial node, which is the only node without any incoming edges.
  2. There is exactly one final node, which is the only node without any outgoing edges.
  3. Each remaining node is on a path from the initial node to the final node.

This definition entails that a business process comprises of related and order activities, and no activity is independent of other activities in the same business process. The EPC technique by definition enforces the rules of structural soundness because it enforces that we have alternating event-function sequences (see Figure 1).


In this article, I covered some principles and techniques to model and analysis business processes in order to automate business process using IT technologies.