
 
buffers of limited size. Furthermore, this approach 
analyzes only the processing machines of the 
manufacturing system. Other elements, such as 
human workers, supply and demand, do not have the 
concept of buffer, so that the waiting time measuring 
approach is not feasible for them. For measuring 
utilization, the measure result may be not accurate 
enough to be trusted because the difference between 
the utilizations of the machines may be very small. 
While this method is easy to be automated, the 
results are not always accurate (Luthi, 1997). 
Moreover, most of utilization bottleneck detection 
methods are based on analyzing the system data in 
running time or simulating the systems, which will 
result in great cost and time consuming. 
In this paper, an abstract computational model is put 
forward aiming at analyzing business process 
performance effectively and efficiently. Firstly, a 
computational model is proposed to abstractly model 
business process as sets of transitions, data, data 
buffers, and connections between transitions, based 
on which most of the common performance related 
problems are described. Then, the problem of 
analyzing bottleneck transitions in a business 
process is theoretically induced as a Balance 
Equation solving problem and a solving algorithm 
for Balance Equation is proposed. Finally, real 
business performance problems are analyzed using 
above theoretical method to illustrate the application 
of this approach and verify its effect.  
We start presenting the computational and analytical 
model in Section 2. Section 3 introduces the 
theoretical foundation, Balance Equation System, for 
business transition bottleneck detection and proposes 
the equation solving algorithm. Performance 
problems in real case are dealt with in Section 4 for 
illustrating and verifying the whole approach. 
Section 5 concludes this paper and gives direction of 
the future works.  
2 THE COMPUTATIONAL 
MODEL 
To perform performance analysis, it’s necessary to 
firstly abstract the system as a mathematical model. 
Such mathematical models keep critical elements 
but eliminate those unnecessary details. As a result, 
we can focus on the perspective closely related to 
the problem we concern. At the same time, we can 
utilize some mathematical mechanism to detect the 
bottleneck conveniently and accurately. A lot of 
theoretical models can act this role, for example, 
queue network(Donald, 1998), Petri Net(Ajmone, 
1984)(Baccelli, 1993)(Salimifard, 2001), fluid 
model(Kelly, 2004) etc. However, all these models 
are not specially designed for analyzing the 
performance of business process model. They are 
complex and not easy to be used in the business 
process bottleneck detection. 
To simulate the behavior of a business process and 
support further mathematical performance analysis, 
we use a computational model defined in Definition 
2.1. In our definition, four kinds of elements are 
taken into consideration: transitions, data, 
connections and data buffers. Transitions are 
abstraction of activities in a business process, which 
perform data processing in a certain period of time. 
Data are abstraction of business items processed by 
business process activities. The basic unit of data is 
a data particle, which can be a group of transaction 
data with fixed composition structure in a business 
process. A connection is a directed linkage between 
two transitions representing that output data from the 
source transition provides input data for the target 
transition. A data buffer is associated with a 
connection to cache data for dealing with the run 
time un-synchronization between two connected 
transitions. A transition is periodically executed on a 
fixed time interval. In case that one of the input 
buffers is empty or an output buffer is full, the 
current transition operation is skipped. Later, after 
the time interval, the transition engine will come 
again to see if the transition can be performed.  
Definition 2.1 A Computational Model is a tuple (T, 
C, B, Start, End, I/O, V
R
, V
E
), where, 
1) T is a set of transitions. 2)C is a set of connections 
that connect two transitions. 3)B is a set of data 
buffers. Each data buffer may store multiple data 
particles.  4)Start is a set of initial data buffers, and 
the size of these buffers is supposed to be infinite. 
5)End is a set of final data buffers, and the size of 
these buffers is supposed to be infinite. 6)I/O is a 
finite set. Each of the elements in the set is called a 
data input/output structure (D-I/O-S) which is 
defined for an individual transition. A D-I/O-S is 
denoted as the following form: T
i
: ( ) -> (
N
ˆ
ˆ
ˆ
), 
where T
i
 is the transition,   is the consumed data 
particles by transition X, and 
N
ˆ
is the produced 
data particles. For example, T
1
: (1,2,2) -> (3,4) 
means that each time transition T
1
 consumes three 
types of data particles and the number of each type 
separately is 1, 2, and 2, and produces two types of 
data particles and the number is 3 and 4.  7) V
R 
is a 
set of running speeds of all the transitions. 8) V
E
 is a 
set of effective speeds of all the transitions.    
ICEIS 2005 - INFORMATION SYSTEMS ANALYSIS AND SPECIFICATION
74