Master thesis

Performance Analysis For Business Process Modeling Notation (BPMN)

Duaa Ayyad

Business Process Management (BPM) is a very important topic in building or improving organizations processes. BPM provides power of a business process environment to improve performance. Applying BPM correctly can lead to better structural design and more elastic software systems.

 

Business Process Modeling Notation (BPMN) provides the prospect to model all kinds of business processes in a way that is easily readable to all people without any technical knowledge.

Many business process modeling tools are available. To exchange the descriptions of a graphical workflow models like BPMN among modeling tools or workflow engines, a formal standard process definition language called XML Process Definition Language (XPDL) is used.

When we need to improve existing process or to design a new process, it is always hard to expect the resulting performance; an important part of BPM discipline emerged, this important part is the Business Process Simulation (BPS). Although BPMN is the most widely used notation, it needs the support for process simulation; BPS gives the ability to analyze the outcome of a certain process. With BPS it is possible to estimate existing process model performance (as-is model) and to compare it with its modified versions to verify the increase in some key performance indicator (KPI) such as cycle time, cost and resource utilization.

Many process simulations tools are available, but most of them are commercial, rare, and costly, with closed source and closed documentation. Some simulation tools allow simulating processes designed only in the same tool, other tools support importing and simulating processes designed in another tool but with constraints with the version of that imported file i.e., BPMN or XPDL, which make simulation uninteresting for many companies.

The main objective of this master thesis is to create an open source BPS tool that can simulate XPDL file exported from BPMN designed in any modeling tool, focusing on waiting and cycle time calculations. Our simulation tool can answer what-if questions concerning resources or input parameters. This simulator evaluate the cycle time for the overall process and the cycle time for any specific block of nodes of a process, with the accumulative cycle time from the start node to that node.