Professional Documents
Culture Documents
♦
This work is supported by the National High Technology Research and Development Program (863 Program) of China (Grant
Nos. 2006AA01Z172 and 2006AA01Z199), the National Natural Science Foundation of China (NSFC) (Grant Nos. 60773089,
60533040, and 60725208), Natural Science Foundation of Shanghai Municipality of China (Grant No. 05ZR14081), and
Shanghai Pujiang Program (Grant No. 07pj14049).
Ubiquitos Campus
The above scenario is highly context-dependent, systems coexist. HowU [7] is an information service
especially in the following ways, which is different model, where a service is regarded as the basic unit of
from traditional workflow applications: information publication. The HowU service is able to
location-dependent. When a user hope to have guarantee service existence in wide area and service
a lunch, for example, the navigation system information validity in organization area. McRunjob [8]
should find a restaurant closest to the user’s is a grid workflow manager used to manage the
current location. generation of large number of production processing
network-dependent. The navigation system has jobs in high energy physics. It converts core metadata
to select a qualified network to transmit the into jobs submitted in a variety of environments. In
request and response for the user, based on 2002, Krishnan et al. [9] presented a workflow
current network topology and bandwidth. framework for Grid services(GSFL) to manage
process-transparent. The details of a workflows within the Open Grid Services Architecture
workflow execution process is invisible to the (OGSA) framework. The GSFL focuses on the
user, including qualified network selection, definition of an XML-based workflow language, but
expected target finding etc. also includes a description of an implementation of a
In this paper, we propose a context-aware workflow workflow engine. An important feature distinguishing
management service characteristic to navigation from Web services workflow models is the GFSL
applications in ubiquitous campuses. We model the proposes a Notification Model to provide the solution
context in the campus navigation, present a context- to the problem of the workflow engine mediating at
aware workflow management algorithm (CAWM). every step of an activity.
Finally, we model the CAWM through Petri nets. Nichols et al.[10] proposed a model for autonomic
workflow management in Grids. The model integrated
2. Related work dynamic fault tolerance mechanism selection into
Grid-based workflow management systems, providing
In this Section, we carefully review existing awareness and resilience to failures for automatic Grid
proposals of workflow management for traditional computing. ChinaGrid Support Platform (CGSP) [11]
distributed systems as well as ubiquitous environments. is a grid middleware developed for the ChinaGrid
project, one of the world’s largest implementations of
2.1. Traditional workflow management Grid computing, fund supported by the Ministry of
Education of China with more than 500M RMB (about
Workflow management technology has been 60M USD dollars). Workflow Engine is one of main
extensively researched for traditional distributed components of CGSP, providing Grid applications
systems. DISCOBOLE [6] is a service architecture for with workflow execution, control, monitoring as well
interconnecting workflow processes. This model as workflow load balancing. Task net [12] is
supports dynamic heterogeneous workflow process transactional workflow model based on colored Petri
interconnection for inter-enterprise cooperations, net. It defined a workflow specification language that
where several heterogeneous workflow management can express task state dependency relationships and
222
enable users to express both the transaction- and providing navigation information (e.g., text, photo) of
application-oriented requirements of complex business targets for users with mobile devices (e.g., PDA) based
rules. However, these existing workflow systems have on current location of the users and status of networks
not yet included functions enough to support context- and devices. So, we consider the following context
aware services for ubiquitous computing [13]. dimensions for campus navigation applications (see
Table 1).
2.2. Workflow management for ubiquitous Person: profile, preferences and requirements of
computing a user,
Location: longitude and latitude (or relative
There also have been reports [13-15] on workflow position) of a user,
management for ubiquitous computing. Cho et al. [13] Network: connection and performance of
proposed a context-aware workflow service system networks, and
that uses contexts as conditions of service execution, Mobile device: computing and storage capacity
and dynamically derives service transition according to of devices
a user’s situation information generated from real
environments. When a change of a user’s situation Table 1. Context of ubiquitous campus
information happens, the system can dynamically Entity Attribute Value
reconstruct a context-aware service workflow. In [14], Name Name description
Hsieh presented a workflow model to describe the
Sex Male or female
medical service processes in healthcare systems, with
Age Value of age
the goal of automatic resource allocation. Elcsarva [15]
Person Identity Teacher, student, guest
is a workflow-centric context-aware collaboration
etc.
framework, focusing the collaboration in meeting the
Requirement Requirement description
trends of ubiquitous computing for process automation.
In order to support heterogeneous and dynamic Preference Behavior preference
collaboration environment, Elcsarva maintains clients’ Connectivity Connected, disconnected
context profile, and periodically uses a “pull” Bandwidth High, medium, low
Network
mechanism to survey each client’s profile to maintain Cost Expensive, cheap, free
and update the whole collaboration context Stability Good, medium, bad
environment. Available_ Full, half, low
Distinguishing from above proposals, this paper Battery
investigates how to automatically manage workflows Available_ Available, unavailable
based on varying context in ubiquitous environments Data
where many kinds of networks (wired, WiFi, WiMax, Computing_ High, medium, low
Device
Bluetooth etc.) co-exist and users keep highly mobile. Capacity
Available_ Full, half, low
3. Context model for campus navigation Memory
Available_ Full, half, low
Context awareness enables systems to automatically Cache
configure and adjust to provide better services for Longitude Value of longitude
Location
users. A system is context-aware if it can extract, Latitude Value of latitude
interpret and use context information and adapt its
functionality to the current context. The challenge for We model context information using entity, attribute
such systems lies in the complexity of representing and and relationship among entities. Note that some
processing contextual data. attributes (e.g., preference) can not be directly
Context is the representation of the information that abstracted from entity profiles and data mining-like
is relevant to the individuals and devices within the technologies have to be used for this purpose. The
activity space[17]. A context adaptive system typically graphic context model for ubiquitous campus
enables the user to maintain a certain application (in navigation is shown in Fig.2, where we only illustrate
different forms) while roaming between different attributes of the entity Person. Attributes of other
wireless access technologies, locations, devices and entities can be easily complemented in the same way
even simultaneously executing everyday tasks. according to Table 1. An entity is fully captured by
Ubiquitous campus navigation systems focus on
223
means of its attributes. For example, a user with the A Petri net is an effective modeling tool applicable
name Alice can be described just like this: to many systems, especially to distributed and parallel
Person.Name=“Alice”, systems. It can model systems’ events, conditions and
Person.Identity=“student”, relationships. The occurrence of these events may
Person.Age=“20”, change the state of the system, causing some of the
Person.Sex=“male”, previous conditions to cease holding and other
Person.Requirement=“he needs to visit a library, a conditions to begin to hold [18-20]. In the following,
restaurant and a bus stop”, and we model a context-adaptive ubiquitous workflow in
Person.Preference=“he likes computer books”. Petri nets.
On the other hand, there are relationships between Definition 1. a context-adaptive workflow (CAW) is
two entities. For example, the relationship “Person m a 7-tuple CAW=(P,T,I,O,IT,CO,M0), where
n Location” means that these two entities have many to P={p1,p2,…,pn} is a finite set of places,
T={t1,t2,…,tn} is a finite set of transitions such that
many relationships, i.e., a person may lie at many
P ∩ T= ∅ and T ∩ P= ∅ ,
locations while a location can be visited by many
I ⊆ P × T is a finite set of input arcs from pi to tj (1≤
persons.
i≤m,1≤j≤n),
O ⊆ T × P is a finite set of input arcs from tj to pi (1
Name Identity Age Sex ≤i≤m,1≤j≤n),
IT={IT1, IT2,…,ITk} is a finite set of user’s
interesting targets,
Preference Person Requirement CO is a finite set of context information, and
m m M0 is the initial marking.
m
224
Context-Aware Workflow Management Algorithm and ti/ti(j) mean corresponding system states and
Input: a set of a user's expected targets (IT); actions respectively. Each sub-figure in Fig.4 denotes a
Output: navigation information of IT; workflow fragments and the corresponding Petri net.
{ To express the selective execution, we introduce a
i=1; selective transition concept. Let the set of output arcs
while (IT ≠ ∅ ) do of a transition t be O(t) such that O(t)={O(t)(i) | O(t)(i) is
Ci= candidates corresponding to ITi; one of output arcs, 1 ≤ i ≤ n}, where n is the number of
j=1; t’s output arcs.
suc=true;
Definition 2. A transition t is selective if (1) any
while (Ci ≠ ∅ ) and (suc) do
O(t)(i) ∈ O(t) associates with a condition O(t)(i).cond(i),
k=1;
repeat and (2) when a firing occurs, only O(t)(i) with
η =bandwidth of network Nk; O(t)(i).cond(i)=true (1 ≤ i ≤ n) is fired.
if ( η is low) k++; Selective transaction concept extends the modeling
until (k>K) or ( η is high or medium); ability of Petri nets by introducing firing conditions for
send request for Ci,j to server via network Nk; each output arcs. Let a selective transition t2 in Fig.4(2)
wait for navigation information of ITi,j; denote express transmitting data via a network Nk, and
if (the user does not satisfy) { corresponding conditions be network performance.
Ci=Ci-{Ci,j}; When t2 is fired, only O(t)(2) is actually fired if the Nk
j++; } is qualified, i.e., O(t)(2).cond(2)=true. Otherwise, O(t)(1)
else is fired when the Nk is not qualified.
suc=false;
endwhile
A1 A2 A3
IT=IT-{IT i};
i++;
t1 t2
endwhile
} p1 p2 p3
Fig.3. Context-aware workflow management algorithm for (1) sequential execution: sub-activities A1,A2,A3 are
campus navigation (CAWM). executed one by one
that the bandwidth of a network for transmitting (2) iterative execution: A2 is repeatedly executed
workflow request and result have to be high or
medium. Currently, we only consider main context
A21
dimensions such as the user location, network
bandwidth. More dimensions of context will be
AND
225
p 21
(5) AND-Join: A2 is executed if and only if all
t1 t2 predecessors A11,A12,…A1n finish
p1 p 22 p3
... A11
p 2n
SEL
A12 A2
(3) AND-Split: all successors A21,A22,…A2n are ...
executed
A1n
A21
t1
p 11
SEL
A1 A22 A3
... t2
p 12 p2
A2n ...
tn
p 1n
t1(1) t2(1)
(6) Selective(SEL)-Join: A2 is executed if one of
p2
predecessors A11,A12,…A1n finishes
t1(2) t2(2)
A1
p1 p2 p3
AND
workflow A A2
t1(n) t2(n)
R
p2
AND
workflow B B2
(4) Selective(SEL)-Split: one of successors
A21,A22,…A2n is executed B1
A11
p1 t1
AND
p2
A12 A2
... p' t2
A1n p4
p3
p 11
t1 (7) Exclusive resource: workflows A and B
p 12 p2 exclusively use the resource R
... Fig. 4. Workflow execution structures and
corresponding Petri nets.
p 1n
5.2. Petri nets of CAWM sub-activities and networks while transitions means the
execution of corresponding actions (see Table 2).
Fig.5 depicts the graphic Petri net of the CAWM, Three selective transitions t3, t5 and t6 denote
simplified PN-CAWM, where places refer to states of respectively inspecting network status, checking the
226
navigation information for a target ITi and judging
whether a workflow finishes, i.e.:
(1 )
t2 p3 t4 t5
t1
co n d
AND
AND
p1 p2 p6
t3 ond(1)
c o nd
c p5
p4
co nd
(2)
(2 )
t6
cond(1)
p7
p8 d( 2)
co n
227
information for users with the graphical and textual on Advanced Parallel Processing Technologies
way based on user’s current locations, network states (APPT 2005), 2005, pp. 292-300.
and device capacity. [12] I.Choi, C.Park, C.Lee. Task net: Transactional
We are going to investigate how to mine and reason workflow model based on colored Petri net.
users’ behavior model and further predict the users’ European Journal of Operational Research 2002;
actions based on the users’ profiles and history data. 136: 383-402.
Based on this, we will set up a context knowledge [13] Y.Y.Cho, J.S. Choi, J.Y.Choi. A Context-Aware
based user-centric intelligent campus. Workflow System for a Smart Home.
Proceedings of International Conference on
7. References Convergence Information Technology, Nov. 2007,
pp.95 - 100.
[1] T.G.Kanter. HotTown, enabling context-aware [14] F.S. Hsieh. Context-aware Workflow Driven
and extensible mobile interactive spaces. IEEE Resource Allocation for e-Healthcare.
Wireless Communications Oct. 2002; 9(5): 18 - Proceedings of 9th International Conference on
27. e-Health Networking, Application and Services,
[2] A.Ranganathan, R.H.Campbell, A.Ravi, June 2007, pp.34-39.
A.Mahajan. ConChat: a context-aware chat [15] J.Yu, Y.V.R. Reddy, S.Sentil et al. A workflow-
program. IEEE Pervasive Computing 2002; 1(3): centric, context-aware collaboration framework
51 - 57. Proceedings of the Ninth International
[3] D.Bottazzi, R. Montanari, A.Toninelli. Context- Conference on Computer Supported Cooperative
Aware Middleware for Anytime, Anywhere Work in Design, May 2005, pp.514-519.
Social Networks. Intelligent Systems 2007; 22(5): [16] F.L. Tang, M.Y. Guo, M.L. Li. An Adaptive
23 - 32. Context-Aware Transaction Model for Mobile
[4] K.Rehman, F.Stajano, G.Coulouris. An and Ubiquitous Computing. to appear in
Architecture for Interactive Context-Aware Computing and Informatics, 2008.
Applications. IEEE Pervasive Computing 2007 [17] W. Mark. Turning pervasive computing into
6(1): 73 - 80. mediated spaces. IBM Systems Journal 1999;
[5] Z.W. Yu, X.S. Zhou, D.Q. Zhang et al. 38(4): 672-692.
Supporting Context-Aware Media [18] F.L. Tang, M.L. Li, Joshua Z.X. Huang et al.
Recommendations for Smart Phones. IEEE Real-time transaction processing for autonomic
Pervasive Computing 2006 5(3): 68 - 75. Grid applications. Engineering Applications of
[6] K.Baïna, K. Benali, C. Godart. DISCOBOLE: A Artificial Intelligence, 2004, 17(7): 799-807.
service architecture for interconnecting workflow [19] J.L.Peterson. Petri nets. Computing Surveys, 1977,
processes. Computers in Industry 2006; 57: 768- Vol. 9, pp. 223-252.
777. [20] T.Murata. Petri nets: properties, analysis and
[7] D.Zou, H.Jin, F.Mao et al. Service organization applications. Proceedings of the IEEE, 1989,
and information consistency for service Grid. Int. pp.541-580.
J. Web and Grid Services 2005; 1(1): 69-86
[8] G.E.Graham, D.E.Bertram. Mcrunjob: A high
energy physics workflow planner for grid
computing. High Energy and Nuclear Physics
2003; 3
[9] S.Krishnan, P.Wagstrom, G.V. Laszewski. GSFL:
A Workflow Framework for Grid Services.
Available from: http://www-unix.globus.org/cog/
papers/gsfl-paper.pdf. 2002.
[10] J.Nichols, H.Demirkan, M. Goul. Autonomic
workflow execution in the grid. IEEE
Transactions on Systems, Man and Cybernetics,
Part C 2006; 36(3): 353-364.
[11] Y.Wu, S.Wu, H.Yu et al. CGSP: An Extensible
and Reconfigurable Grid Framework.
Proceedings of the Sixth International Workshop
228