Presiding Officer Training module 2024 lok sabha elections
3rd phd year dissertation
1. Cycle XXVII
3rd
PhD year report
phd student: Daniele Fanì
e-mail: daniele.fani@unicam.it
supervisor: prof. Andrea Polini
University of Camerino, February, 6 2015
Dynamic Verification for
Service-Oriented Computing
PhD in
Information Sciences
and Complex Systems
2. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
Recall to research domain
Service Oriented
Architecture
service
composition
choreography orchestration
dynamic
service
integration
unsafe
cooperation
classic
V&V mechanisms
unsuitable
BPMN2
novel service
integration testing
novel run-time
monitoring
Future
Internet
3. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
Recall to research domain
Service Oriented
Architecture
service
compositionchoreography orchestration
dynamic
service integration
unsafe
cooperation
classic
V&V mechanisms
unsuitable
BPMN2
novel service
integration testing
novel run-time
monitoring
V&V framework for
dynamic Services
Composition
4. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
Recall to research domain
integration
testing
registry
realizability
check
service
composition
deploy
run-time
monitoring
V&V framework for dynamic Services Composition
5. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
Research
Activity
The main research activities
focus on a framework for
V&V activities for dynamic
web service compositions
(e.g. services choreography)
Research Activity - Publications - Conferences - Seminars - Didactic
6. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
Participation in Research Projects
check it out at http://www.choreos.eu
Research Activity - Publications - Conferences - Seminars - Didactic
development of the V&V
framework started under
the european project
CHOReOS
Governance and V&V
framework
❖ ServicePot provides service and
choreography registering/
discovering utilities respecting
Governance rules and policies;
❖ ParTes provides testing utilities.
7. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
Research Activity - Publications - Conferences - Seminars - Didactic
ServicePot
UDDI-based registry that
provides registering and
discovering utilities for
choreographies and services
8. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
ServicePot
CHOReOS D4.3: Final release of V&V tools (Governance section)
ServicePot
store
discovery
supported
plugin
architecture
UDDI
registry
choreographies,
services, roles
plugin structure
error handler compatible with plugin structure
web-based GUI usable by final-users
Research Activity - Publications - Conferences - Seminars - Didactic
9. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
ServicePot
Research Activity - Publications - Conferences - Seminars - Didactic
10. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
Choreography Issue
Research Activity - Publications - Conferences - Seminars - Didactic
is a Web Service actually
suitable to cover a specific
choreography’s role?
confirm! book?
roles: hotel, taxi, flight
role to cover: hotel
V&V plugins
11. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
Research Activity - Publications - Conferences - Seminars - Didactic
ParTes (Participant Testing)
generates TestSuites to
test if a service is able to
cover a fixed role in a
choreography, like in an
audition.
http://www.zonecreative.it/wp-content/uploads/2012/09/20110910_ZoneCreative_2011_00385.jpg
12. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
ParTes
strategy enhancements and tricks introduction
strategy implementation
Web Service implementation and integration with ServicePot
choreography specification
generates skeletons as
Test Cases, grouped in
a Test Suite for the
integration testing
test suite
for SoapUI
ParTes
strategy complexity basic analysis O(n3)
CHOReOS D4.3: Final release of V&V tools (V&V section)
Research Activity - Publications - Conferences - Seminars - Didactic
13. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
traces to test provided by ParTes
+
A
B
CT1
A
C
CT2
B
D
CT3
+
choreography
parallel
fragment
traces to test provided by a blind
integration testing technique
CT1 → CT3 → CT2
CT3 → CT1 → CT2
CT1 → CT2 → CT3
CT1 → CT3 → CT2
CT3 → CT1 → CT2
CT3 → CT2 → CT1
CT2 → CT3 → CT1
CT2 → CT1 → CT3
TestSuite generation strategy
the objective
ParTes
Research Activity - Publications - Conferences - Seminars - Didactic
14. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
A B B D
ParTes assumes that when a
participant receives a
message, it may change its
internal state
B D A
CT1 → CT3
CT3 → CT1 B
the two traces test 2 different
internal states of participant D
ParTes
Research Activity - Publications - Conferences - Seminars - Didactic
TestSuite generation strategy
the strategy A
B
CT1
A
C
CT2
B
D
CT3
+ +
15. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
+
A
B
CT1
A
C
CT2
B
D
CT3
+ x
A
B
CT1
B
D
CT3
x
B
D
CT3
A
B
CT1
A
C
CT2
A
C
CT2
from parallel to exclusive choice
choreography fragment
ParTes
ParTes handles the fragments
as graph (Affection Graph)
and explore it to excerpt
traces to test
CT1 CT2
CT3
through Affection Graph
TestSuite generation strategy
the reduction
ParTes
Research Activity - Publications - Conferences - Seminars - Didactic
16. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
parallel fragments, once
reduced to exclusive
choice fragments, should
be refactored according
to fixed rules
TestSuite generation strategy
the refactoring
ParTes
Research Activity - Publications - Conferences - Seminars - Didactic
17. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
ATC
Weather Forecast
Service
send wrath. forecast
Airplaine
ATC
propose reroute
ATC
Airplaine
accept proposal +
Central Flow
Management Unit
ATC
send reroute warning
ATC
Central Flow
Management Unit
propose reroute
Central Flow
Management Unit
ATC
accept proposal
+
Airine
ATC
send reroute warning
Airport
ATC
send reroute warning +
Luggage Handling Co.
Airport
warn unexpected arrival
Security Company
Airport
warn unexpected arrival
Airport Bus Company
Airport
warn unexpected arrival
+
ATC
Airplaine
confirm approach Choreography C
Arrival Handling+
Choreography B
Manage Unexpected Arrival+
Ground Staff MID
Airline
warns unexpected arr.
Travel Agency
Ground Staff MID
warns unexpected arr.
Weather Forecast
Service
Ground Staff MID
accept proposal x
x
decide on travel
continuation
based on weather
+
Airline
Ground Staff MID
request amenities
Ground Staff MID
Airline
provide available ameni.
Gate management
Ground Staff MID
request amenities
Ground Staff MID
Gate management
provide available ameni.
Airport
Ground Staff MID
request amenities
Ground Staff MID
Airport
provide available ameni.
+
Bookable Amenity
Ground Staff MID
book all amenities
put passenger in
transit
keep passengers
for the night
Travel Agency
Ground Staff MID
request hotels
Ground Staff MID
Travel Agency
provide hotels +
Hotel
Ground Staff MID
measure ambient noise
Ground Staff MID
Hotel
adjust speakers volume
Ground transport. co.
Ground Staff MID
noise sensors aggretat.
Ground Staff MID
Ground transport. co.
adjust speakers volume
+
Airport
ATC
confirm approach +
Gate managem.
Airport
request amenities
Airport
gate manag.
get availab. amenit
Amenity Provider
Airport
book all availab. amenit
+
Luggage Handling Co.
Airport
book amenity
Airport
Luggage Handling Co.
get confirmation
Security Company
Airport
book amenity
Airport
Security Company
get confirmation
Airport Bus Company
Airport
book amenity
Airport
Airport Bus Company
get confirmation
+ +
Airport Noise Sensors
Airport
measure noise level
Airport
Airport Noise Sensors
adjust speakers volume
Airport Infrared Sensors
Airport
report main arrival gate pass +
+
Airport Pressure Sens.
Airport
trask landed passengers
MID Location Sensors
Airport
trask landed passengers
Airport Infrared Sens.
Airport
trask landed passengers
+
+
Airport Noise Sensors
Airport
measure ambient noise
Airport Speacker Act.
Airport
adjust speakers volume
MID Microphone Sens.
Airport
noise sensors aggretat.
Airport Speacker Act.
Airport
adjust speakers volume
+
+
Airport Display Actuat.
Airport
push up-to-date info
Airport Speacker Act.
Airport
push up-to-date info
Airport Signs Actuator
Airport
push up-to-date info
+
MID Display Actuator
Airport
push up-to-date info
+ +
+
ParTes
ServicePot
Passenger-friendly
airport
Adaptive Customer
Relationship Booster
CHOReOS D4.4: Testing tools and infrastructure
ParTes and ServicePot
Research Activity - Publications - Conferences - Seminars - Didactic
18. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
ParTesServicePot
Passenger-friendly
airport
ParTes and ServicePot
Research Activity - Publications - Conferences - Seminars - Didactic
ParTesServicePot
confirm! book?
choreography registration
service registration
19. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
Research Activity - Publications - Conferences - Seminars - Didactic
is a choreography actually
safe and realizable?
roles: hotel, taxi, flight
V&V plugins
Choreography Issue
20. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
Research Activity - Publications - Conferences - Seminars - Didactic
Choreography
Realizability and Repair
collaboration with prof.
Tevfik Bultan at the UCSB
(USA) on realizability and
automatic repair
http://dance973.blogspot.it/2012/11/blog-post_23.html
21. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
Realizability and automatic Repair
Research Activity - Publications - Conferences - Seminars - Didactic
XX
A
B
C
D
mess1!
mess2!
A C
mess1! mess2!
NOT REALIZABLE!
Chor
mess2 mess1
B D
mess1? mess2?
who starts ?
The realizability problem
22. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
Realizability and automatic Repair
Research Activity - Publications - Conferences - Seminars - Didactic
A
C
mess1!
mess2!
REALIZABLE!
B
mess1?
D
mess2?
a possible repair: change the roles
sync_C!
sync_C?
Chor
sync_C mess1
mess2
The realizability problem
23. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
Realizability and automatic Repair
Research Activity - Publications - Conferences - Seminars - Didactic
REALIZABLE!
a possible repair: change the choreography
Chor
mess2 mess1
A C
mess1! mess2!
B D
mess1? mess2?
mess2mess1
The realizability problem
24. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
Realizability and automatic Repair
Research Activity - Publications - Conferences - Seminars - Didactic
how to repair also the initial specification?The repair problem
XX
A
B
C
D
mess1!
mess2!
Chor
mess2 mess1
Chor
sync_C mess1
mess2
repair
25. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
Realizability and automatic Repair
Research Activity - Publications - Conferences - Seminars - Didactic
using the Model2Model transformationThe repair problem
Chor
mess2 mess1X
A
B
C
D
mess1!
mess2!
X X X
task1
task2
WorkFlow GraphBPMN2 System Behavior
26. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
Realizability and automatic Repair
Research Activity - Publications - Conferences - Seminars - Didactic
using the Model2Model transformationThe repair problem
t2
Chor
mess2
t1
mess1
X
A
B
C
D
mess1!
mess2!
X X X
task1
task2
WorkFlow Graph
BPMN2
t2
Chor
sync_C
tx
mess1
t1
mess2
X X
task1
task2
taskX
X
C
D
mess2!
X
A
C
sync_C!
System Behavior
27. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
Realizability and automatic Repair
Research Activity - Publications - Conferences - Seminars - Didactic
using the Model2Model transformationThe repair problem
X
A
B
C
D
mess1!
mess2!
X
BPMN2
X X
task1
task2 t2
Chor
mess2
t1
mess1
WorkFlow Graph System and
Peers behavior
check and
repair
28. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
Research Activity - Publications - Conferences - Seminars - Didactic
Will services actually act,
as they are supposed to do?
role “A”
role “B”
role “C”mess2? mess1?
mess2!
mess1!
Choreography Issue
29. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
Research Activity - Publications - Conferences - Seminars - Didactic
Cassandra
an approach to monitor
h i d d e n b e h a v i o r s a n d
predict potential failure in a
dynamic service composition
like a choreography
http://www.gettyimages.fr/detail/photo/funny-hungry-ballet-dancers-lunch-break-in-image-libre-de-droits/143918354
30. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
Cassandra
Research Activity - Publications - Conferences - Seminars - Didactic
behavior
mess2! mess1!
projection
of role “A”
mess1!
a service suitable to
cover a role,
may have extra hidden
actions. In addition,
it may expose a partial
(or supposed) behavior
suitable to
cover “A”
31. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
Cassandra
Research Activity - Publications - Conferences - Seminars - Didactic
behavior
mess2! mess1!
A
behavior
mess1?
B Cassandra
mess2 mess1
failure state
prediction of k steps
32. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
Cassandra
Research Activity - Publications - Conferences - Seminars - Didactic
mess2? mess1? mess2!
ServiceMix (ESB)
service “A” service “B” service “C”
role“A” role“B” role“C”
camel routing rules
mess1!mess3!
mess2
mess1
mess3
33. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
Cassandra
Research Activity - Publications - Conferences - Seminars - Didactic
mess2? mess1? mess2!
ServiceMix (ESB)
service “A” service “B” service “C”
role“A” role“B” role“C”
mess1!mess3!
mess2
mess1
mess3
camel routing rules
34. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
Cassandra
Research Activity - Publications - Conferences - Seminars - Didactic
mess2
mess1
mess3
mess2? mess1? mess2!
ServiceMix (ESB)
service “A” service “B” service “C”
role“A” role“B” role“C”
routing rules
mess1!mess3!
monitoring
prediction
35. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
Publications
Research Activity - Publications - Conferences - Seminars - Didactic
36. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
Articles and Posters
Articles
❖ [under review] A Flexible Architecture to Monitor Dynamic Web Service Compositions
F. Corradini, F. De Angelis, D. Fanì, A. Polini
WEBIST’15
❖ A Cloud-Based Solution for Public Administrations: The Experience of the Regione Marche
Amici C., Bilei G.M., Carota S., Cirillo F., Diamantini C., Falcioni D., Fanì D., Fano L., Fattibene E., Maggiulli M.L., Manzali M.,
Potena D., Riahi H., Ribighini G., Raffaeli L., Re B., Salomoni D., Sergiacomi A., Settimi D., Spiga D., Storchi L., Storti E.,
Valentini A., Venturi V., Veronesi P.
CTS’14, (international conference on Collaboration Technologies and Systems), Minneapolis (MN), USA
❖ An Extensible Framework for Online Testing of Choreographed Services
M. Ali, A. Bertolino, F. De Angelis, G. De Angelis, D. Fani’, A. Polini
Computer, Volume: PP, Issue: 99 (December 2013)
❖ ParTes: A Test Generation Strategy for Choreography Participants
F. De Angelis, D. Fanì, A. Polini
AST’13, 8
th
International Workshop on Automation of Software Test, San Francisco (CA), USA
❖ Protocol Compatibility Notations for Service Integration Testing
F. De Angelis, D. Fanì, A. Polzonetti
QASBA’11, 8
th
International Workshop on Quality Assurance for Service-Based Applications, Lugano, Switzerland
Poster
❖ A Test Generation Strategy for Choreography Participants
F. De Angelis, D. Fanì, A. Polini
3
rd
Scientific Day of School of Science and Technology, Camerino, Italy (June 2013)
Research Activity - Publications - Conferences - Seminars - Didactic
37. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
Conferences
Research Activity - Publications - Conferences - Seminars - Didactic
38. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
Meetings (as research collaborator)
❖ CHOReOS meeting 16 - 18 Sept 2013 at INRIA Rocquencourt (Paris), France;
❖ CHOReOS meeting 08 - 11 Jul 2013 at CITY University (London), Great Britain;
❖ CHOReOS meeting 22 - 24 Apr 2013 at Marsala (Trapani), Italy.
Conferences (as a speaker)
❖ ICFEM’14 (International Conference on Formal Engineering Methods), Luxembourg (Nov 2014);
❖ Final Review of the CHOReOS project, Bruxelles (Nov 2013);
❖ QASBA‘11 (workshop on Quality Assurance for Service-Based Applications), Lugano (Sep 2011).
Research Activity - Publications - Conferences - Seminars - Didactic
Conferences and Meetings
39. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
Seminars and
Courses
Research Activity - Publications - Conferences - Seminars - Didactic
40. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
PhD school and Seminars
❖ Verify me if you can (Timers, Actors and Session Types) 20 Nov 2014 at IMT, Lucca, Italy;
❖ Automatic Detection and Repair of Input Validation and Sanitization Bugs 20 May
2014 at UCSB, Santa Barbara, CA-USA;
❖ SFM-13:DS (School of Formal Methods for the design of Dynamical Systems) 17-22 Jun 2013
at Bertinoro, Italy;
❖ SERENE 12(Software EngineeRing for rEsilieNt systEms) 25-27 Sep 2012 at Pisa, Italy;
❖ QMC 12(Quantitative Model Checking) 27-01 Mar 2012 at Copenhagen - Denmark.
Other
❖ Google I/O Extended 25 – 26 June 2014 at Citrix, Santa Barbara, CA-USA;
❖ Hackathon (2nd
place) 25 - 27 June at Citrix, Santa Barbara, CA-USA
Research Activity - Publications - Conferences - Seminars - Didactic
Seminars and Courses
41. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
Didactic
Research Activity - Publications - Conferences - Seminars - Didactic
42. 3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015
Didactic activities
Research Activity - Publications - Conferences - Seminars - Didactic
Lecturer of:
❖ Lab of Software Engineering (2014-2015) 42 hours - 6 CFU
❖ participation at the contest SCORE-IT (Student COntest in softwaRE Engineering)
❖ Algorithms and Data Structure (2013-2014) 42 hours - 6 CFU
Teaching Assistant of:
❖ Programming (2012-2013)
43. Thank you for your attention
Cycle XXVII
Dynamic Verification for
Service-Oriented Computing
phd student: Daniele Fanì
e-mail: daniele.fani@unicam.it
supervisor: prof. Andrea Polini
Cycle XXVII
3
Information Sciences
and Complex Systems
3rd PhD year report of Daniele Fanì University of Camerino, February, 6 2015