Upload
catherine-marte
View
216
Download
2
Tags:
Embed Size (px)
Citation preview
09-05-2008
Efficient Controllability Analysis of Open Nets
Workshop on Web Services and Formal Methods 2008
Daniela [email protected]
http://www.service-technology.org/wsfm2008
2
Effi
cient C
ontro
llab
ility A
naly
sis of O
pen N
ets
Setting
Service self-contained software unit encapsulated functionality with interface designed to interact with other services
service SS interacting withanother serviceservice modeling
3
Effi
cient C
ontro
llab
ility A
naly
sis of O
pen N
ets
question, whether there exists another service C such that S and C can interact properly
does the composition of S and C reach a final state without deadlocking and no messages are left pending on the interface
interaction is done asynchronously
Controllability
4
Effi
cient C
ontro
llab
ility A
naly
sis of O
pen N
ets
Model of a Service
a service is modeled as an open net
Petri net with • output (yellow) places,• input (orange) places,• special initial state and
set of final states• acyclic
Example: online portal initial state: [p1] set of final states: {[p5]}
5
Effi
cient C
ontro
llab
ility A
naly
sis of O
pen N
ets
Using the Online Portal
user as an automaton Interaction Graph
?terms ?note
?stats
!review
!login!login
6
Effi
cient C
ontro
llab
ility A
naly
sis of O
pen N
ets
Filling out the Bubbles
nodes: set of states transient states, deadlocks
[p1][p4, terms][p2, note]
[p3, stats, note]
?terms
7
Effi
cient C
ontro
llab
ility A
naly
sis of O
pen N
ets
Filling out the Bubbles
nodes: set of states transient states, deadlocks
[p1][p4, terms][p2, note]
[p3, stats, note]
?terms
!login
[p4]
8
Effi
cient C
ontro
llab
ility A
naly
sis of O
pen N
ets
Filling out the Bubbles
nodes: set of states transient states, deadlocks
[p1][p4, terms][p2, note]
[p3, stats, note]
?terms
!login
[p4, login][p5]
[p4]
9
Effi
cient C
ontro
llab
ility A
naly
sis of O
pen N
ets
Filling out the Bubbles
nodes: set of states transient states, deadlocks
[p1][p4, terms][p2, note]
[p3, stats, note]
?terms
[p4, login][p5]
[p4]
!review
...!login
...
?note
...?stats
...
!review... ?terms
...
...
?note
...?stats
...
...
!login
10
Effi
cient C
ontro
llab
ility A
naly
sis of O
pen N
ets
Interaction Graph of Online Portal
11
Effi
cient C
ontro
llab
ility A
naly
sis of O
pen N
ets
Interaction Graph of Online Portal
Is our service controllable? Does the IG contain a controller?
Classification of the nodes necessary
12
Effi
cient C
ontro
llab
ility A
naly
sis of O
pen N
ets
The complete Interaction Graph
for real life services IG grows huge in size industrial service (open net: #P = 116, #E = 156)
complete IG: #Nodes = 1584, #Edges = 7473, time = 302s
solution: define reduction rules! reduced IG: #Nodes = 31, #Edges = 41, time
= 1s
13
Effi
cient C
ontro
llab
ility A
naly
sis of O
pen N
ets
Activation of Events
state s activates an event a:
state s is a deadlock sending or receiving a
leads from s to a new state [p1]
[p4, terms][p2, note]
[p3, stats, note]
?note
...?stats
!review
...!login
...?terms
!login
[p4]
...
14
Effi
cient C
ontro
llab
ility A
naly
sis of O
pen N
ets
Receiving before Sending
Idea: do not send anything as long as you can receive something
one state activates a receiving and a sending event
consider the receiving event only
[p1][p4, terms][p2, note]
[p3, stats, note]
?terms
?note
...?stats
...
!review
...!login
...
...
15
Effi
cient C
ontro
llab
ility A
naly
sis of O
pen N
ets
Reduced Interaction Graph I
16
Effi
cient C
ontro
llab
ility A
naly
sis of O
pen N
ets
Combining Receiving Events
Idea: receive as much as possible at once
a state activates more than one receiving event
combine all receiving events of one state to one event
[p1][p4, terms][p2, note]
[p3, stats, note]
?terms
?note
...?stats
...
!review
...!login
...
...
17
Effi
cient C
ontro
llab
ility A
naly
sis of O
pen N
ets
Combining Receiving Events
Idea: receive as much as possible at once
a state activates more than one receiving event
combine all receiving events of one state to one event
[p1][p4, terms][p2, note]
[p3, stats, note]
!review
...!login
...
?stats, ?note
...?terms
...
18
Effi
cient C
ontro
llab
ility A
naly
sis of O
pen N
ets
Reduced Interaction Graph II
19
Effi
cient C
ontro
llab
ility A
naly
sis of O
pen N
ets
All Reduction Rules combined
all reduction rules can be combined
20
Effi
cient C
ontro
llab
ility A
naly
sis of O
pen N
ets
Reduced Interaction Graph III
all reduction rules combined: 6 nodes, 5 edges
full IG: 30 nodes, 31 edges
21
Effi
cient C
ontro
llab
ility A
naly
sis of O
pen N
ets
Take Home Points
our case studies show reduced interaction graph is an efficient
technique to decide controllability for most services reduction by >90%
IG and all reduction rules are integrated into tool Fiona
http://www.service-technology.org/fiona
22
Effi
cient C
ontro
llab
ility A
naly
sis of O
pen N
ets
Future Work
define more reduction rules• which events are activated• reduce number of states stored in nodes
adapt techniques to work with cyclic open nets as well
23
Effi
cient C
ontro
llab
ility A
naly
sis of O
pen N
ets
See more
Web http://www.service-technology.org/wsfm2008 slides, paper, tools, examples, ...
09-05-2008
Thanks a lot!