Content uploaded by Jaehun Park
Author content
All content in this area was uploaded by Jaehun Park on Jun 20, 2015
Content may be subject to copyright.
Journal of Information Technology and Architecture
Vol. 9. No. 1, March 2012, Pages 1-10
1
Container Flow Management in Port Logistics Based
on BPM Framework
1Department of Logistics Information Technology, Pusan National University
2Industrial Engineering, Pusan National University
{amna.shifia, pjh3479, hrbae, bernardo} @pusan.ac.kr
(Received December 10, 2011;
Revised
January
25, 2012;
Accepted February 3, 2012)
Abstract:
To promote process effectiveness and efficiency, it is necessary that port logistics employ
automated equipments for handling containers. There exists a system for automatically managing the
container flow, called Control Module. However, it has limitation to assign the execution order to the
machine and monitor the container flow in real time process. Business process management (BPM)
provides a suitable and effective framework to address this problem including controlling and
monitoring the flow of each container. Since the nature of container handling process is different with
the common process in BPM that is conducted by human performer, it is necessary to adjust the BPM
framework in the domain of port logistic management. This study presents a BPM framework
corresponds with both human-based and machine-based activity to enhance the efficiency of port process
flow including container flow. This framework is introduced as an integrated approach and mechanism
of BPM application into the container handling system for the purpose of port logistics process
automation.
Keywords:
Business Process Management (BPM), port logistics process, container handling
1. Introduction
Worldwide container traffic moving through the
ports is expected to grow about 7.2% annually until
2015 [1]. Port logistics operations in global supply
chain become more complex and consequently, the
workload on port logistics is increasing. Thus, it is
necessary to enhance the effectiveness and efficiency
of port logistics service worldwide. Port logistics
refers to integrated logistics, which manage con-
tainer management and distribution to provide logis-
tics services with advanced infrastructure and
equipment. In the container terminal, container han-
dling, which is a part of port logistics process, is con-
sidered as the most important process to perform the
containers more effectively. There are a lot of sys-
tems thathadbeen developed to improve container-
handling process.
Control Module (CM) is one of the systems to effec-
tively control machines utilized in the container ter-
minals [2] for handling the container such as Quay
Crane (QC), Automated Guided Vehicle (AGV) and
Yard Crane (YC). CM comprises of two sub-modules,
control algorithm and control executor. Control algo-
rithm (CA) in CM has a function to assign a machine
to handle a container based on the schedule. Cor-
responding to CA result, Control executor (CE)
orders the machine to operate based on the CA order
list.
The mechanism of CA and CE is shown in Figure
1. Due to the complexity of port logistics process,
there may be some problems in this mechanism.
First, when CA updates the list of sequences in some
interval of time,it raises an issue on real time assign-
ment problems. Second, there is no updated infor-
mation about the machine status, and it effects on
the rising of the number of container queue. For
example, CA assigns machine 1 to execute container
Amna Shifia Nisafani, Jaehun Park, Hyerim Bae and Bernardo Nugroho Yahya
2Journal of Information Technology and Architecture
B and the present time, machine 1 is running for con-
tainer A. Since CE has no information about
machine status, container B will wait the machine 1,
although machine 2 is idle. Third, there is no func-
tion to detect the present location of container by
using the CM.
To cope with those problems, we propose a new
approach, called Container Flow Graph (CFG), em-
bedded in the Business Process Management (BPM)
system to automate and enhance the process of con-
tainer handling in seaport terminal. The CFG con-
tains several types of activity to operate, control and
monitor the CA and CE. This study also presents
additional functions in order to connect between
BPM and CM. A prototype for controlling the CM is
presented in this work.
The remainder of this paper is organized as fol-
lows. In section 2 of this paper, we review previous
research related to port logistics management and
BPM. Section 3 introduces the concept of CFG and
CM proposed for container handling in seaport ter-
minal. Section 4 mentions the prototype and imple-
mentation of this study. Section 5 concludes the
paper with a summary of our contribution and out-
line of future challenges.
2. Related Work
Many research studies have been conducted in the
domain of container terminal management espe-
cially container handling area. Yan
et al
. [3] proposed
a multi agent system for container terminal man-
agement. A research on scheduling problem based on
multi agent system in container terminal was pro-
posed by Yu
et al
. [4]. Lau
et al
. [5] discussed a
method to improve the productivities of an auto-
mated container terminal by employing mixed-inte-
ger programming model, which considers various
constraints, related to the integrated operations
between different types of handling equipment. Chen
et al.
[6] presented a tabu-search algorithm for the
integrated scheduling problem of container handling
systems in a maritime terminal. Kim
et al
. [7] also
introduced a method related to container handling
by determining the optimal amount of storage space
and the optimal number of transfer of cranes or han-
dling import containers. All of previous studies focus
on resource allocation and scheduling problem.
Instead of dealing with optimization problem in han-
dling the container, this study intends to focus on
container flow, which is a part of container handling,
and describe the movement of container in container
terminal.
In order to properly manage container flow in con-
tainer terminal, it is necessary to apply Business
Process Management (BPM). There are many
research studies in implementing BPM in container
terminal. Zhu
et al
. [8] developed an application
based on BPEL Services composition for port logis-
tics and focused on choreography architecture bet-
ween more than two applications. Park
et al
. [9] pro-
posed an architecture for applying BPM in port com-
munity. All previous papers provided only the
architecture of general BPM based port logistics,
which are mainly focused on human-based activity.
In order to deal with automation port logistics, pro-
cesses should be handled by machines. Since general
BPM do not fit enough to be implemented in auto-
mation port logistics, it is necessary to develop a new
architecture that supports machine-based activity.
3. Business Process Model
In this study, we provide a formal process model
definition in a common BPM system[10].
Definition 1. Process Model
We define a process model
p
as a tuple of <
A
,
L
>
Figure 1. Control Module Mechanism
Container Flow Management in Port Logistics Based on BPM Framework
Journal of Information Technology and Architecture 3
with function
f
and each element of which is defined
below [11]:
•A
={
a
i
|
i
=1,2,…,
N
} is set of activities, where
a
i
is
the
i
-th activity and
N
is total number of activities
in the process structure
p
.
•L
{
l
ij
=(
a
i
,
a
j
)|
a
i
,
a
j
A
and
i
≠
j
} is the link among
activities where an element (
a
i
,
a
j
) represents that
a
i
immediately precedes
a
j
.
•
For a split activity
a
i
, such that |
SA
i
| > 1, where
SA
i
={
a
j
|(
a
i
,
a
j
)
L
},
f(a
i
)
= ‘AND’ if all
a
i
’s should be
executed; otherwise,
f
(
a
i
)
= ‘XOR’.
•
For a merger activity
a
i
, such that |
MA
i
| > 1,
where
MA
i
={
a
j
|(
a
j
,
a
i
)
L
},
f
(
a
i
) = ‘AND’ if all
a
i
’s
should be executed; otherwise,
f
(
a
i
)
= ‘XOR’.
3.1 Proposed Approach
Definition 2. Container Flow Graph (CFG)
CFG is a graph notation, which consists of mul-
tiple connected activities to manage the container
flow based on process model definition. CFG is a
tuple of <
A
c
,
L
c
> and
A
c
A
,
L
c
L.
It can be defined
as the following.
•A
c
=
(
MAA
∪
MSA
∪
TEA
∪
LAA
) where
•
MAA
is an assignment activity, which deals with
the machine assignment. Thisactivity is connected
to CA.
•
MSA
is machine status activity, which controls the
status of machine. This activity is connected to CE.
•
TEA
is task execution activity, which controls the
execution of assigned machine. This activity is con-
nected to CE.
•
LAA
is an assignment activity, which decides the
next location of assigned machine. This activity is
connected to CM.
•A
c
is container flow activity that has various sta-
tuses following the trigger. The trigger is an event
based on the machine status. Based on these
events, we derive additional activities as
A
c
.
The flow of container to be executed by CM has
two characteristics: commonality and variability.
The notion of commonality means that there is a
common event pattern for machine execution in con-
⊆
∈
∈
∈
⊆
⊆
Figure 2. BPM Engine integrating CA and CE
Amna Shifia Nisafani, Jaehun Park, Hyerim Bae and Bernardo Nugroho Yahya
4Journal of Information Technology and Architecture
tainer flow. Assignment activity can be represented
as
MAA
and
LAA
and the movement activity can be
represented as
MSA
and
TEA
. All machines start
with the assignment activity followed by the move-
ment activity. However, there is variability in the
movement activity. There are twovariability cases in
event pattern. First, engine assigns a machine and
CE checksthe status of assigned machine. If the
machine statusis available, CA passes location infor-
mation to machine and then executes it. Second, CA
does two tasks concurrently: passes location infor-
mation and executes machine. Afterward, CE will
execute
MSA
and
TEA
sequentially.
4. BPM Framework for Container Flow
4.1 Enhancement of BPM Engine
BPM Engine becomes one alternative to solve the
problems in CM. In our proposed framework, BPM
Engine acts as a regulator to control the activity of
CA and CE.
Figure 2 illustrates the mechanism of BPM Engine
as one of the solutions along with the CFG. Engine
manages the interaction between CA and CE
through the CFG execution. If there is an incoming
event, Engine executes the activity and triggers the
appropriate module for synchronization. For exam-
ple, there is a movement of container from a ship to
the AGV. Engine executes the
MAA
by sending the
required data to CA for allocating one type of
machine. CA determines the suitable machine based
on some rules and sends the result back to Engine.
The completion of
MAA
invokes
MSA
as the next
activity. In addition, the execution of
MSA
will trig-
ger next incoming event. The event triggers a func-
tion to retrieve the recent status of requested
machine from CE and send the information status to
Engine. This recursive event pattern will determine
the container movement in port logistics.
In order to synchronize BPM Engine and CM, we
define two functions for interfacing Engine and CM;
they are
get
and
retrieve
function (Figure 3).
get
is a
function for sending a request of machine informa-
tion.
retrieve
is a function for receiving information
about machine state. The parameters of
get
function
are
container_id
,
activity_type
,
machine_type
, and
request_message
.
The parameters of
retrieve
function are
container_id
,
activity_type
,
machine_type
, and
result_message
. The
value of
result_message
depends on the value of
request_message
, and the value of
request_message
depends on the value of
activity_type
. For instance,
when the value of
activity_type
is
MAA
, the
request_message
isthe request of machine ID, and the
result_message
is the ID of assigned machine. The
detail parameters of each function can be seen in the
Table 1.
From Table 1, we can categorize the parameters
into two types: primary and secondary parameter.
Primary parameter is invoked as primary informa-
tion of a function. The parameters (
Container ID
,
Activity ID
,
Equipment Type
and
Equipment ID
)
show the example of primary parameters. The re-
mainders on each function are the secondary param-
eter, which is used in certain activity. We define
Start Time
and
End Time
as secondaryparameter for
MSA
. In
MSA
,
Start Time
and
End Time
are null
Figure 3. Interface Function Definition
Table 1. Parameters of
get
and
retrieve
Function
Get Function Retrieve Function
Container ID Container ID
Activity ID/Type Activity ID/Type
Equipment Type Equipment Type
Equipment ID Equipment ID
Start Time Machine Status
End Time Start Time
End Time
Location
Container Flow Management in Port Logistics Based on BPM Framework
Journal of Information Technology and Architecture 5
when Engine invokes
get
function. Subsequently, the
machine runs and stores data to these parameters.
Finally, CA sends the requested data to Engine
through
retrieve
function. The secondary parameter
will be the value of
result_message
at most of the
time
The interaction between Engine and CM invoke
functions and pass the parameters in XML. XML is
a markup language that has been designed to trans-
port and store data, with a focus on what data is [12].
It is a common language to interconnect data
between two independent systems such as Engine
and CM. By using XML we can provide higher sys-
tem interoperability. XML provides rich structures
and semantics. It also provides well-defined and con-
trolled syntax. There is a clear separation of content
from style and behavior in XML [13]. Based on Table
1, we define the XML format. The following figure
shows the XML format used in this framework.
In Figure 4, there are three elements:
instanceID
,
containerID
, and
messages
. The
instanceID
repre-
sents the value of the process instance id. The
con-
tainerID
is the ID of container that is in the running
state. The
messages
element has several child ele-
ments. All the
request_message
and
result_message
include in
messages
element.
The
request_message
can be seen in
activityType-
and
machineType
element. The
result_message
is
stored in
machineID
element. The initial value of
result_message
element is null when Engine invoked
get
function to CM at the first time. If the
activity-
Type
value is
MAA
and the value of
machineType
is
Quay Crane, then CA will assign
QC
1 and store the
value in
machineID
element. Consequently, the
request_message
and
result_message
element are dif-
ferent based on activity type. One child element rep-
resents one
request_message
and
result_message
. For
example, when Engine executes
MAA
, it calls
get
function. In this case, the
messages
element generate
new child element message. The attribute of child
element is
ID
which represents the ID of
message
element
.
This attribute can be used as log informa-
tion.
In the BPM Engine, the execution flow of activity
is started from instance creation, activity assign-
ment, activity running, activity finishing instance
terminating and next instance creation. In our pro-
posed framework BPM engine act collaboratively
with CM.
Figure 5 shows the detail execution flow in the pro-
posed framework for each type of activity. In Figure
5,
MAA
and
LAA
interact with control algorithm,
and
MSA
and
TEA
interact with control executor.
4.2. Case Study
We utilize the unloading process at the container
terminal as a case study to show the implementation
of our proposed model. Unloading process is one of
the important processes in logistics ports that handle
incoming containers from the vessel. This process
can represent the process automation of container
handling at the port logistics, due to the high use of
machines and the large number of containers in
queue [2].
The unloading process at a container terminal (see
Figure 4. XML Format Data Exchange
Amna Shifia Nisafani, Jaehun Park, Hyerim Bae and Bernardo Nugroho Yahya
6Journal of Information Technology and Architecture
Figure 6) is defined as follows. A ship arrives in port
and the unloading process can begin as soon as the
completion of a administrative tasks related to
incoming containers. Afterward, assigned QC un-
loads containers from ships to the AGV. AGV
receives the container and transport it to designated
yards. When the AGV arrives at the destination
point in the yard, YC begins to unload the container
from the AGV and stores it in a specific block in the
Yard Slots (YS).
Based on Figure 6, we can derive CFG for unload-
ing process. Figure 7 shows the CFG for unloading
process in container terminal. CFG is an extention
of Business Process Management Notation (BPMN),
Figure 5. Flow of each activity type in proposed approach
Figure 6. Unloading Process in Container Terminal
Container Flow Management in Port Logistics Based on BPM Framework
Journal of Information Technology and Architecture 7
which is specialized for container flow. In Figure 7,
we can see the variability in event pattern. The red
rectangles show the variability pattern in unloading
process such as
MSA-MAA-TEA
and
LAA-MSA-
MAA-TEA
. In this study, we apply SPRING frame-
work by using Java programming language. Since
SPRING is a Java-based framework, it provides
seamless integration with other Java framework
such as POJO, Struts, Hibernate, etc. Another ben-
efit using SPRING is its looselycoupled methodology,
which is important for the rapidly changing enter-
prise application [14]. Figure 8 shows the architec-
ture for interfacing BPM and CM using SPRING. In
Figure 8, SPRING Integration Component (SIC) will
act as a regulator. This module shows how BPM
Engine interacts with control module and vice versa.
SIC enables messaging within SPRING-based
applications (engine, control algorithm, and control
executor) and integrates each other via SPRING
Integration’s adapter framework. The adapter frame-
work provides a higher level of abstraction over-
spring’s existing support for remote method invoca-
tion, messaging, scheduling, and much more.
We develop a prototype of BPM Engine and inte-
grate it with CA and CE using the proposed archi-
tecture in Figure 8. Our system provides seamless
integration to control and monitor the container flow.
Figure 9 captures one of the UI provided by our sys-
tem.
By implementing BPM Engine, we can improve
the monitoring process of container flow. Previous
system only focuses on generating schedule without
considering current machines state. There are two
possible states that a machine can have: idle and
busy. Generating schedule without considering cur-
rent state might result on the poor schedule gener-
ation. For example, let us consider a system with
three machines with similar processing time. System
can assign a job to a busy machine even though there
are one or more idle machines. Here, our framework
provides a mechanism to obtain current machines
state and consider them in the real-time schedule
Figure 7. CFG of Unloading Process
Figure 8. Architecture for interfacing between BPM
Engine and Control Module (CA and CE)
Amna Shifia Nisafani, Jaehun Park, Hyerim Bae and Bernardo Nugroho Yahya
8Journal of Information Technology and Architecture
generation. However, thousands of containers exist
in the container terminal. This study limits the ap-
proach to handle the single instance for single con-
tainer. It means that the execution of containers will
be done in sequential order. Hence, it will increase
the possibility of containers to wait longer.
5. Conclusions and Future Challenges
This study presents a BPM framework corre-
sponds with application of control module in the con-
tainer handling process. This framework, which can
be applied based on human-activity and machine-
activity, is introduced as an integrated approach and
mechanism of BPM application for the purpose of
port logistics process automation. This study also dis-
cusses the provision of interface functions and XML
format as a bridge to accommodate the connection
between BPM Engine and CM. There are two salient
features of this proposed approach. First, it intro-
duces the Container Flow Graph (CFG) as an embed-
ded tool in BPM system for the purpose of port
logistics process automation and second, it shows the
inter-operabilitymechanism between BPM Engine
and CM.
The proposed of four types of activity (Machine
Assignment Activity, Machine Status Activity, Task
Execution Activity and Location Assignment Activ-
ity) by using the means of CFG are introduced to
deal with machine activity. It is believed that the
existence of those activities in the BPM Framework
can handle the changing of the machine state in the
port logistics process. Hence, it assists stakeholders
to manage and monitor the container flow.
There are some open issues for future works. Since
we limit our approach to handle the single instance
for single container, it is necessary to consider mul-
tiple process instances with multi-containers at once.
Figure 9 Prototype of BPM Engine
Container Flow Management in Port Logistics Based on BPM Framework
Journal of Information Technology and Architecture 9
In addition, bottleneck may occur in the system cor-
respond with the multiple process instances. We put
all these issues as our future works.
Acknowledgement
This work was supported by a 2-Year Research
Grant of Pusan National University.
References
[1] Economic and Social Commision for Asia Pacific,
“
Regional Shipping and Port Development, Container
Traffic Forecast 2007 Update
”
, New York, 2007.
[2] Technical Report of Logistic Information Technology
Department Development of next generation of TiOS,
Pusan National University, 2011.
[3] Yan, N., Liu, G. and Xi, Z.,
“
A Multi-Agent System for
Container Terminal Management
”
, in The 7th World
Congress on Intelligent Control and Automation,
Chongqing, China, June 25-27, pp. 6247-6252, 2008.
[4] Yu, M. and Wang, S.,
“
Study on Scheduling System
Based on Multi-Agent of Container Terminal
”
, in 10th
International Conference on Computer Supported
Cooperative Work in Design, 2006.
[5] Lau, H. Y. K and Zhao, Y.,
“
Integrated scheduling of
handling equipment at automated container termi
-
nals
”
, Int. J. Production Economics, vol. 112, pp. 665–
682, 2008.
[6] Chen, L., Bostel, N., Dejax, P., Cai, J. and Xi, L.,
“
A
tabu search algorithm for the integrated scheduling
problem of container handling systems in a maritime
terminal
”
, European Journal of Operational Research,
vol. 181, pp. 40-58, 2007.
[7] Kim, K. H. and Kim, H. B.,
“
The optimal sizing of the
storage space and handling facilities for import con-
tainers
”
, Transportation Research Part B, vol. 36, pp.
821-835, 2002.
[8] Zhu, P., Zhan, D., Zhu, C., Li, D., Song, T. and Huang,
B.,
“
A Rich Internet Application Based on BPEL Ser-
vices Composition for Port Logistics
”
, IEEE Congress
on Services 2008 - Part I, pp. 120-127, 2008.
[9] Park, J. H., Bae, H. R., Ha, J. K., Lee, H. and Seo, C.
S.,
“
Integrated Architecture Design of BPM Based
Port Community System
”
, Journal of Information
Technology and Architecture, vol. 7, pp. 263-270,
December 3 2010.
[10] Song, J. Y. and Rhew, S. Y.,
“
A BPM-based knowledge
management mode
l
”
, Journal of Information Technol-
ogy and Architecture, vol. 4, pp. 27-36, 2007.
[11] Bae, H. R., Hu, W., Yoo, W. S. and Kwak, B. K.,
“
Doc-
ument configuration control process captured in a
workflow
”
,
Computer in Industry, vol. 53, no. 2, pp.
117-131, 2004.
[12] Tabolt, R. (2011, Oct.) Why Do We Even Need XML
Anyway? http://ezinearticles.com/? Why-Do-We-Even-
Need-XML-Anyway?&id=2594438. [Online]. http://
ezinearticles.com/? Why-Do-We-Even-Need-XML-Any-
way?&id=2594438.
[13] Kimber, W. E.,
“
Why
do
We Need XML?
”
,
in Swedish
SGML User's Group XML Seminar, 8 Sept., 1998.
[14] Johnson, R., Hoeller, J., Andersen, A., Sampaleanu,
C., Harrop, R., Risberg, T., Davison, D., Kopylenko, D.,
Pollack, M., Templier, T. and Vervaet, E., (2011,
November) Open Framework. [Online]. http://open-
framework.or.kr/framework_reference/spring/ver2.x/
html/index.html
Amna Shifia Nisafani, Jaehun Park, Hyerim Bae and Bernardo Nugroho Yahya
10 Journal of Information Technology and Architecture
Amna Shifia Nisafani
2010~2012 Pusan National university, Korea, Department of Logistics Information Technology,
Master of Engineering.
2009~Now: Lecturer at Department of Information Systems, Institut Teknologi Sepuluh
Nopember Surabaya Indonesia
Research interests: Workflow Scheduling, Business Process Management, Information System
and Audit
Jaehun Park
2008.Pusan National University, Korea,Industrial Engineering, MS
2008~Now.Pusan National University, Korea, Industrial Engineering Department, Ph.D. Can-
didate
Research interests: BPM (Business Process Management), Process Efficiency, Benchmarking,
DEA
Hyerim Bae
Associate Professor in the Industrial Engineering at Pusan National University, Korea
MS and PhD in Industrial Engineering from Seoul National University, Korea, in 1998 and
2002
Research interests: Multi-organizational Process Management in e-Business Environments,
BPM (Business Process Management) and Enterprise Information System Integration, e-SCM
& e-CRM, etc.
Bernardo Nugroho Yahya
2004. DongseoUniversity, Korea, Information System Engineering, MS
2012. Pusan National University, Korea, Industrial Engineering, Ph.D.
Research interests: BPM (Business Process Management), Business Process Reference Model,
Process Modeling, Enterprise Information System