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