EASSy Easterm Africa Submarine Cable System PROJECT SUMMARY Simon Olawo EASSy PROJECT SECRETARIAT.
Managing Non-Functional Uncertainty via Model-Driven...
Transcript of Managing Non-Functional Uncertainty via Model-Driven...
![Page 1: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/1.jpg)
Leandro S. PintoPolitecnico di Milano, Italy
Paola SpoletiniUniversità dell’Insubria, [email protected]
Giordano Tamburrelli University of Lugano, Switzerland
Carlo Ghezzi Politecnico di Milano, Italy
Shonan Meeting, September 2013
Managing Non-Functional Uncertainty via Model-Driven Adaptivity
1
Friday, September 20, 13
![Page 2: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/2.jpg)
A caveat
2 Shonan Meeting, September 2013
Friday, September 20, 13
![Page 3: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/3.jpg)
A caveat
Theory
2 Shonan Meeting, September 2013
Friday, September 20, 13
![Page 4: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/4.jpg)
A caveat
Theory Practice
2 Shonan Meeting, September 2013
Friday, September 20, 13
![Page 5: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/5.jpg)
A caveat
Theory Practice
2 Shonan Meeting, September 2013
First steps
Friday, September 20, 13
![Page 6: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/6.jpg)
Feedback
A caveat
Theory Practice
2 Shonan Meeting, September 2013
First steps
Friday, September 20, 13
![Page 7: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/7.jpg)
Motivation
3 Shonan Meeting, September 2013
Friday, September 20, 13
![Page 8: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/8.jpg)
Motivation
Complexity
Size Distribution Ownership
3 Shonan Meeting, September 2013
Friday, September 20, 13
![Page 9: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/9.jpg)
Motivation
Complexity
Size Distribution Ownership
Uncertainty
Execution Time Failure Rate
3 Shonan Meeting, September 2013
Friday, September 20, 13
![Page 10: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/10.jpg)
Adaptive Systems
3 Shonan Meeting, September 2013
Friday, September 20, 13
![Page 11: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/11.jpg)
Adaptive Systems
Adaptive Systems
3 Shonan Meeting, September 2013
Friday, September 20, 13
![Page 12: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/12.jpg)
Alternative Behaviors
Adaptive Systems
Adaptive Systems
3 Shonan Meeting, September 2013
Friday, September 20, 13
![Page 13: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/13.jpg)
Alternative Behaviors Exception Handling
Adaptive Systems
Adaptive Systems
3 Shonan Meeting, September 2013
Friday, September 20, 13
![Page 14: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/14.jpg)
An Example
5
The WPM: Apps should be responsive in less than three seconds or must display a visual progress or busy indicator
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 15: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/15.jpg)
6
Our Goal
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 16: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/16.jpg)
6
Our Goal
Formalize
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 17: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/17.jpg)
6
Our Goal
Formalize Automate
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 18: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/18.jpg)
7
ADAMAdaptive Model-driven execution
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 19: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/19.jpg)
Models
7
ADAMAdaptive Model-driven execution
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 20: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/20.jpg)
Models
7
ADAMAdaptive Model-driven execution
Transformation
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 21: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/21.jpg)
Models
7
ADAMAdaptive Model-driven execution
Probability TheoryTransformation
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 22: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/22.jpg)
8
ADAMOverview
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 23: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/23.jpg)
Activity Diagram
8
ADAMOverview
DeveloperUML Activity Diagrams Implementations
---------------------------------annotatesdesigns
System Modeling
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 24: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/24.jpg)
generates
usesuses
Embedded Model
…………… …
Generator
Model Transformation
Activity Diagram
Markov Decision Process
8
ADAMOverview
DeveloperUML Activity Diagrams Implementations
---------------------------------annotatesdesigns
System Modeling
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 25: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/25.jpg)
generates
usesuses
Embedded Model
…………… …
Generator
Model Transformation
Activity Diagram
Markov Decision Process
Embedded Model
8
ADAMOverview
DeveloperUML Activity Diagrams Implementations
---------------------------------annotatesdesigns
System Modeling
PRISM
usesModel Manipulation
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 26: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/26.jpg)
generates
usesuses
Embedded Model
…………… …
Generator
Model Transformation
Activity Diagram
Markov Decision Process
Embedded Model
Interpreted Execution
8
ADAMOverview
System Execution
invokes
executes
Interpreter
DeveloperUML Activity Diagrams Implementations
---------------------------------annotatesdesigns
System Modeling
PRISM
usesModel Manipulation
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 27: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/27.jpg)
9
ADAMModeling
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 28: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/28.jpg)
9
ADAMModeling
System is modeled as an annotated Activity Diagram:
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 29: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/29.jpg)
9
ADAMModeling
System is modeled as an annotated Activity Diagram:
0.3
2: Photo Acquisition 1: Input Price
5: Product Lookup
8: Web Search 7: Local Search
11: Publish Price
<<Optional>>10: ResultOrdering
3: Local Recognition
4: Remote Recognition
[hasAutoFocus]
<<Optional>>9: Secondary Web Search
0.6 0.4true false
6: Location
[recognized]
0.7truefalse
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 30: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/30.jpg)
9
ADAMModeling
System is modeled as an annotated Activity Diagram:
1. Optional Activities
0.3
2: Photo Acquisition 1: Input Price
5: Product Lookup
8: Web Search 7: Local Search
11: Publish Price
<<Optional>>10: ResultOrdering
3: Local Recognition
4: Remote Recognition
[hasAutoFocus]
<<Optional>>9: Secondary Web Search
0.6 0.4true false
6: Location
[recognized]
0.7truefalse
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 31: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/31.jpg)
9
ADAMModeling
System is modeled as an annotated Activity Diagram:
1. Optional Activities
0.3
2: Photo Acquisition 1: Input Price
5: Product Lookup
8: Web Search 7: Local Search
11: Publish Price
<<Optional>>10: ResultOrdering
3: Local Recognition
4: Remote Recognition
[hasAutoFocus]
<<Optional>>9: Secondary Web Search
0.6 0.4true false
6: Location
[recognized]
0.7truefalse
2. Probabilistic Branches
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 32: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/32.jpg)
9
ADAMModeling
System is modeled as an annotated Activity Diagram:
1. Optional Activities
0.3
2: Photo Acquisition 1: Input Price
5: Product Lookup
8: Web Search 7: Local Search
11: Publish Price
<<Optional>>10: ResultOrdering
3: Local Recognition
4: Remote Recognition
[hasAutoFocus]
<<Optional>>9: Secondary Web Search
0.6 0.4true false
6: Location
[recognized]
0.7truefalse
13: ShowMap
12: NPS
Location(NPS Alternative)
2. Probabilistic Branches3. Nested Activities
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 33: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/33.jpg)
10
Description Metric Class
R1After an user input the
application shall respond in at most 3s.
Response Time (RT) Threshold
R2Maximize application
usability Usability (U) Max
R3Minimize battery
consumption Energy Consumption (E) Min
ADAMModeling
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 34: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/34.jpg)
11
ADAMModeling
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 35: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/35.jpg)
11
ADAMModeling
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 36: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/36.jpg)
12
ADAMTransformation
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 37: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/37.jpg)
12
ADAMTransformation
5: ProductLookupActivity
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 38: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/38.jpg)
12
ADAMTransformation
5: ProductLookupActivity 5a
5b
MDP
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 39: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/39.jpg)
12
ADAMTransformation
ActivityMDP
<<Optional>>9: Secondary WebSearch
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 40: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/40.jpg)
12
ADAMTransformation
ActivityMDP
<<Optional>>9: Secondary WebSearch
9a
9b
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 41: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/41.jpg)
12
ADAMTransformation
ActivityMDP
8: WebSearch<<Optional>>9: Secondary Web Search
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 42: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/42.jpg)
12
ADAMTransformation
ActivityMDP
8: WebSearch<<Optional>>9: Secondary Web Search
8 i
9a
9b
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 43: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/43.jpg)
12
ADAMTransformation
ActivityMDP
8: WebSearch<<Optional>>9: Secondary Web Search
8 i
9a
9b4
3
RT= 0.3sE=1U=1
10
7c g h
RT=0.6sE=2U=1
RT=0.5sE=2U=1
RT=0.3sE=1U=1
RT=0.6sE=1U=1
RT=0.8sE=2U=1
RT=2sE=3U=1
8 i
RT=0.6sE=2U=1
9a
9b
j
RT=1.6sE=2U=1
RT=1.5sE=2U=1
0.6
0.4
6a
12
eb
f 13
RT=0sE=1U=0
1 2a0.7
0.3
5a
5b
RT=0sE=1U=0
d
RT=0sE=1U=0
RT=0sE=1U=0
k 11
RT=0sE=2U=1
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 44: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/44.jpg)
12
ADAMTransformation
ActivityMDP
8: WebSearch<<Optional>>9: Secondary Web Search
8 i
9a
9b4
3
RT= 0.3sE=1U=1
10
7c g h
RT=0.6sE=2U=1
RT=0.5sE=2U=1
RT=0.3sE=1U=1
RT=0.6sE=1U=1
RT=0.8sE=2U=1
RT=2sE=3U=1
8 i
RT=0.6sE=2U=1
9a
9b
j
RT=1.6sE=2U=1
RT=1.5sE=2U=1
0.6
0.4
6a
12
eb
f 13
RT=0sE=1U=0
1 2a0.7
0.3
5a
5b
RT=0sE=1U=0
d
RT=0sE=1U=0
RT=0sE=1U=0
k 11
RT=0sE=2U=1
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 45: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/45.jpg)
13
ADAMManipulation
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 46: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/46.jpg)
13
ADAMManipulation
i
9a
9b
j
RT=1.6sE=2U=1
RT=1.5sE=2U=1
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 47: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/47.jpg)
13
ADAMManipulation
i
9a
9b
j
RT=1.6sE=2U=1
RT=1.5sE=2U=1
9a
9b
i
RT=<0.5; 1.1>E=<4; 5>U=<1; 2>
RT=<0.6; 1.2>E=<4; 5>U=<1; 2>
j
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 48: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/48.jpg)
14
ADAMExecution
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 49: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/49.jpg)
14
ADAMExecution
Interpreter navigates the model and invokes implementations
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 50: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/50.jpg)
14
ADAMExecution
Choice among alternative paths in the EM
Interpreter navigates the model and invokes implementations
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 51: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/51.jpg)
14
ADAMExecution
Choice among alternative paths in the EM
Maximize likelihood of meeting system requirements
Interpreter navigates the model and invokes implementations
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 52: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/52.jpg)
15
ADAMExecution
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 53: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/53.jpg)
15
ADAMExecution
1
2
i
RT=<a; b>
j
RT=<a; b>
RT=<a; b>
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 54: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/54.jpg)
15
ADAMExecution
cRT
1
2
i
RT=<a; b>
j
RT=<a; b>
RT=<a; b>
th
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 55: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/55.jpg)
15
ADAMExecution
cRT
1
2
i
RT=<a; b>
j
RT=<a; b>
RT=<a; b>
th
Ps=P(RT<th)=?
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 56: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/56.jpg)
15
ADAMExecution
cRT
1
2
i
RT=<a; b>
j
RT=<a; b>
RT=<a; b>
th
Ps=P(RT<th)=?U~(a,b)
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 57: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/57.jpg)
15
ADAMExecution
0 < P(RT<th) < 1a b
P(RT<th) th-cRT
RT
b-a1
cRT
1
2
i
RT=<a; b>
j
RT=<a; b>
RT=<a; b>
th
Ps=P(RT<th)=?U~(a,b)
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 58: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/58.jpg)
15
ADAMExecution
0 < P(RT<th) < 1a b
P(RT<th) th-cRT
RT
b-a1
a b
th-cRTP(RT<th) = 1
RT
P(RT<th)
b-a1
cRT
1
2
i
RT=<a; b>
j
RT=<a; b>
RT=<a; b>
th
Ps=P(RT<th)=?U~(a,b)
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 59: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/59.jpg)
15
ADAMExecution
0 < P(RT<th) < 1a b
P(RT<th) th-cRT
RT
b-a1
a b
th-cRTP(RT<th) = 1
RT
P(RT<th)
b-a1
th-cRT
a b RTP(RT<th) = 0
P(RT<th)
b-a1
cRT
1
2
i
RT=<a; b>
j
RT=<a; b>
RT=<a; b>
th
Ps=P(RT<th)=?U~(a,b)
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 60: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/60.jpg)
15
ADAMExecution
0 < P(RT<th) < 1a b
P(RT<th) th-cRT
RT
b-a1
a b
th-cRTP(RT<th) = 1
RT
P(RT<th)
b-a1
th-cRT
a b RTP(RT<th) = 0
P(RT<th)
b-a1
cRT
1
2
i
RT=<a; b>
j
RT=<a; b>
RT=<a; b>
th
Ps=P(RT<th)=?U~(a,b)
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 61: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/61.jpg)
16
ADAMExecution
9a
9b
i
RT=<0.5; 1.1>E=<4; 5>U=<1; 2>
RT=<0.6; 1.2>E=<4; 5>U=<1; 2>
j
RT=<0; 0.6>E=<2; 3>U=<1; 2>
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 62: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/62.jpg)
16
ADAMExecution
9a
9b
i
RT=<0.5; 1.1>E=<4; 5>U=<1; 2>
RT=<0.6; 1.2>E=<4; 5>U=<1; 2>
j
RT=<0; 0.6>E=<2; 3>U=<1; 2>
cRT=1.95s
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 63: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/63.jpg)
16
ADAMExecution
9a
9b
i
RT=<0.5; 1.1>E=<4; 5>U=<1; 2>
RT=<0.6; 1.2>E=<4; 5>U=<1; 2>
j
RT=<0; 0.6>E=<2; 3>U=<1; 2>
Ps
9a 0.67
9b 0.75
opt 0.13
cRT=1.95s
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 64: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/64.jpg)
16
ADAMExecution
9a
9b
i
RT=<0.5; 1.1>E=<4; 5>U=<1; 2>
RT=<0.6; 1.2>E=<4; 5>U=<1; 2>
j
RT=<0; 0.6>E=<2; 3>U=<1; 2>
Ps
9a 0.67
9b 0.75
opt 0.13
cRT=1.95s
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 65: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/65.jpg)
16
ADAMExecution
9a
9b
i
RT=<0.5; 1.1>E=<4; 5>U=<1; 2>
RT=<0.6; 1.2>E=<4; 5>U=<1; 2>
j
RT=<0; 0.6>E=<2; 3>U=<1; 2>
Ps
9a 0.67
9b 0.75
opt 0.13
cRT=1.95s
cRT=2s
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 66: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/66.jpg)
16
ADAMExecution
9a
9b
i
RT=<0.5; 1.1>E=<4; 5>U=<1; 2>
RT=<0.6; 1.2>E=<4; 5>U=<1; 2>
j
RT=<0; 0.6>E=<2; 3>U=<1; 2>
Ps
9a 0.67
9b 0.75
opt 0.13
cRT=1.95s
Ps
9a 0.63
9b 0.57
opt 0.65
cRT=2s
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 67: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/67.jpg)
16
ADAMExecution
9a
9b
i
RT=<0.5; 1.1>E=<4; 5>U=<1; 2>
RT=<0.6; 1.2>E=<4; 5>U=<1; 2>
j
RT=<0; 0.6>E=<2; 3>U=<1; 2>
Ps
9a 0.67
9b 0.75
opt 0.13
cRT=1.95s
Ps
9a 0.63
9b 0.57
opt 0.65
cRT=2s
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 68: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/68.jpg)
16
ADAMExecution
9a
9b
i
RT=<0.5; 1.1>E=<4; 5>U=<1; 2>
RT=<0.6; 1.2>E=<4; 5>U=<1; 2>
j
RT=<0; 0.6>E=<2; 3>U=<1; 2>
Ps
9a 0.67
9b 0.75
opt 0.13
cRT=1.95s
Ps
9a 0.63
9b 0.57
opt 0.65
cRT=2s
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 69: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/69.jpg)
Overhead
17 Shonan Meeting, September 2013
Friday, September 20, 13
![Page 70: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/70.jpg)
Overhead
17
4%
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 71: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/71.jpg)
Overhead
18 Shonan Meeting, September 2013
Friday, September 20, 13
![Page 72: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/72.jpg)
Overhead
18
9%
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 73: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/73.jpg)
Related Work
19 Shonan Meeting, September 2013
Friday, September 20, 13
![Page 74: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/74.jpg)
Related Work
19
Balz et al. Fleurey et al.Cheng et al.
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 75: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/75.jpg)
20
Conclusions
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 76: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/76.jpg)
20
ConclusionsWe conceived a method for adaptivity w.r.t. non-functional requirements
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 77: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/77.jpg)
20
ConclusionsWe conceived a method for adaptivity w.r.t. non-functional requirements
Formally verified and automated approach: based on high level models and implementations
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 78: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/78.jpg)
20
ConclusionsWe conceived a method for adaptivity w.r.t. non-functional requirements
Formally verified and automated approach: based on high level models and implementationsInterpreter that optimizes the system at run-time w.r.t. non-functional requirements
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 79: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/79.jpg)
20
ConclusionsWe conceived a method for adaptivity w.r.t. non-functional requirements
Formally verified and automated approach: based on high level models and implementationsInterpreter that optimizes the system at run-time w.r.t. non-functional requirements
Adaptivity obtained dynamically composing the application considering alternative behaviors and optionalities with limited overhead
Shonan Meeting, September 2013
Friday, September 20, 13
![Page 80: Managing Non-Functional Uncertainty via Model-Driven ...sead1.open.ac.uk/eassy/tamburrelli13shonan.pdfOverview Developer UML Activity Diagrams Implementations-----designs annotates-----System](https://reader036.fdocuments.net/reader036/viewer/2022070806/5f050ca37e708231d411017c/html5/thumbnails/80.jpg)
Questions
21
Giordano Tamburrelli University of Lugano, Switzerland
Shonan Meeting, September 2013
Friday, September 20, 13