SlideShare a Scribd company logo
1 of 79
Download to read offline
Pasqualina Potena
2
My Research Background
Short Biblio:
- Degree in Computer Science from University of L’Aquila, and Ph.D. degree
from University of Chieti e Pescara (Italy)
- PhD guest student at Mälardalen University, Mälardalen Real-Time Research
Centre (Västerås, Sweden)
- Research fellow at the University of L’Aquila, Politecnico di Milano, and
University of Bergamo
- Post-doc position linked to project ICEBERG funded by EU under IAPP Marie
Curie Program, University of Alcalà, Spain.
Research keywords:
system design, system adaptation, distributed systems, optimization techniques,
system properties, adaptive software applications, cloud computing, embedded
system, intelligent environments, SBSE search methodologies (e.g., genetic
algorithms, evolutionary algorithms), etc.
3Research activities comprise:
§ Design/Adaptation Space Exploration for component-based and service-based
systems (e.g., [1])
§ Quantifying the influence of failure repair/mitigation costs on service
based systems (e.g., see [2])
§ Resource Allocation, Trading and Adaptation in Self-Managing Systems
(e.g., see [3])
§ Architectural Decisions for HW/SW Partitioning based on multiple
Properties (e.g., see [4])
§ Other (e.g., testing decisions under quality, cost, and time constraints)
[1] Potena, P.: “Optimization of adaptation plans for a service-oriented architecture with cost, reliability,
availability and performance tradeoff”, Journal of Systems and Software, Vol. 86, Issue 3, 2013, pp.624-648.
[2] Cortellessa, V., Marinelli, F., Mirandola, R., Potena, P.: “Quantifying the influence of failure repair/mitigation
costs on Service based Systems”, Proc. of ISSRE 2013, pp.90-99, 2013.
[3] Lulli, G., Mirandola, R., Potena, P., Raibulet C.: “Resource Management in the Air Traffic Domain ”,
Proc. of ECSA 2011, LNCS, pp. 97-104, 2011.
[4] Sapienza, G., Crnkovic, I., Potena, P.: “Architectural Decisions for HW/SW Partitioning based on multiple
Extra-Functional Properties”. Proc. of 11th Working IEEE/IFIP Conference on Software Architecture (WICSA),
pages 175–184. IEEE, Sydney, Australia, 2014.
4
Research and Knowledge Transfer
For example: the ICEBERG project funded by EU under the Marie
Curie IAPP programme (http://www.iceberg-sqa.eu/).
The project investigated a novel approach to improving understanding of the
real cost impacts of poor quality software and supporting the suite of
management decisions required to take corrective action across the entire
software development cycle.
I have worked to understand the real needs of practitioners in industry.
5
Presentation roadmap
•  Software Quality: Why? What? How?
•  Optimization models for tradeoff analysis
•  Sum up and future perspective
6
SOFTWARE QUALITY
7
Software Quality: Why?
It is commonly perceived today (?!) that software
quality is becoming more and more a first-class issues
of Software Architecture
… some factual reasons…
•  Complex distributed software services
•  Devices with limited resource capabilities
•  Heterogeneity of networks
•  Cloud computing (resources on demand, pricing)
• …
8
How to understand if NF properties are relevant?
And, if they are relevant, which ones to consider?
NON-FUNCTIONAL REQUIREMENTS
Software Quality: What?
9Software Quality: How?
Single attribute analysis of monolithic systems
(e.g. response time, MTTF, etc…)
+ Focusing on a single software aspect
+ Well-assessed methodologies/notations/tools
+ Reasonable solution time for large/detailed models
- Focusing on a single software aspect!!!
- Unable to capture interactions between components
- Unable to capture relationships among attributes
Composition
10
Non-functional composition
1)  Interactions between components
2) Relationships among attributes
11
1)  Interactions between components
•  Relating (possibly in a closed form) a whole system
attribute to component/service attributes
C1
Ф(C1)
C2
Ф(C2)
Cn
Ф(Cn)
Connectors
Ф(S) = Ф(C1) ⊗ Ф(C2) ⊗ … ⊗ Ф(Cn)
Ф() : non functional
attribute (e.g., failure
probability)
•  Splitting a whole system requirement into
component/service requirements
Non-functional composition
12
Non-functional attribute composition
2) Relationships among attributes
Expressing (possibly in a closed form) the
relationships/tradeoffs/dependencies among attributes
Requirement:
<<data confidentiality>>
C2sendData
C1
C2
sendData Encryption*
Decryption*
C1
Throughput
Workload
initial system
secure system
t1
t2
λ
13
OPTIMIZATION MODELS FOR
TRADEOFF ANALYSIS
14
Optimization models
Optimization models have recently revealed to be useful for
supporting different decisions in multiple contexts:
•  Service broker based on quality (Cardellini et al., 2012)
•  Allocation of testing resources (Berman et al., 2004)
• …
Component/Service-based Software Engineering
Aldeida Aleti et al.,
Software architecture optimization methods: a systematic literature review,
IEEE TSE 39 (5): 658-683 (2013)
15
Component/Service-based Software
CLASS OF PROBLEMS
Choice of components/services driven by
non-functional properties
Optimization models
DOMAIN
16
ARCHITECTURAL PHASE
Cost vs reliability and delivery time
Cost vs satisfaction of requirements
REQUIREMENTS PHASE
Change management
MAINTENANCE PHASE
DEPLOYMENT PHASE
Cost vs reliability and performance
Optimization models
17
ARCHITECTURAL PHASE
Cost vs reliability and delivery time
Cost vs satisfaction of requirements
REQUIREMENTS PHASE
Change management
MAINTENANCE PHASE
DEPLOYMENT PHASE
Cost vs reliability and performance
Optimization models
18
In this phase, the goal is to find appropriate candidates that might be
integrated into the system.
A pre-selection of components at the requirements phase, in particular related to
a combination of functional and non-functional requirements, can sensibly improve
the efficiency of the whole process and decrease the development costs.
We intend to determine the combination of single COTS
components and assemblies of COTS that satisfy the
requirements while minimizing costs.
REQUIREMENTS PHASE
19
In [Alves et al. 2005], using the outlines of the goal-
oriented requirements engineering [Lamsweerde 2001] that
defines requirements as goals, the authors present a goal-
based approach to match the goals of the system and the
features of the COTS components.
[Alves et al. 2005] Alves, C., Franch, X., Carvallo, J.P., Finkelstein, A.: “Using Goals and Quality Models to Support
the Matching Analysis During COTS Selection”, Proc. of ICCBSS 2005, LNCS 3412, 146-156, 2005.
[Lamsweerde 2001] Lamsweerde, A.: “Goal-Oriented Requirements Engineering: A Guided Tour”, Invited mini-
tutorial paper, appared in Proc. of RE 2001, 249-263, Toronto, August 2001.
GOAL-ORIENTED REQUIREMENTS ENGINEERING
20
A non-functional goal g:
For Example The acceptable level of reliability for a
service should range between 0.8 and 0.9
Let C be a COTS component that provides the service and let 0.92 be the
value of the reliability guaranteed from the component C.
Therefore, the degree of satisfaction that C meets the goal g (i.e.
Satg(0.92)) is equal to 1. Then, we can conclude that the COTS C
completely satisfies the goal g.
Sat g
if x
x if x
if x
_
.
. .
.
=
<
− ≤ <
≥
⎧
⎨
⎪
⎩
⎪
0 08
10 8 08 09
1 09
21
C = {C1, . . . ,C|C|}
a set of COTS components.
A = {A1, . . . ,A|A|}
a set of assemblies of COTS
components.
G = {g1, . . . , gn}
a set of n operational goals, each of
which represents a non-functional
requirement of the system.
xi =
1 if the i-th COTS is chosen (1 ≤ i ≤ |C|)
0 otherwise
yj =
1 if the j-th assembly is chosen (1 ≤ j ≤ |A|)
0 otherwise
VARIABLES
ci purchase cost of the i-th COTS
component
cj cost of the j-th assembly (i.e.
integration and adaptation cost)
OPTIMIZATION MODEL
{ }
{ } ||...,
||...,
:|,|...
...],[
min
||
||
|| ||
A1j10y
C1i10x
ACiA1jxy
1y
n1kSatykjSAT
ycxc
j
i
jiij
A
1j
j
k
A
1j
j
C
1i
A
1j
jjii
=∀∈
=∀∈
∈∀=∀≤
=
=∀≥
+
∑
∑
∑ ∑
=
=
= =
cost
function
22
xi =
1 if the i-th COTS is chosen (1 ≤ i ≤ |C|)
0 otherwise
yj =
1 if the j-th assembly is chosen (1 ≤ j ≤ |A|)
0 otherwise
VARIABLES
OPTIMIZATION MODEL
S A T [ j , k ] r e p r e s e n t s t h e
satisfaction degree with which an
assembly j meets a goal k
Satk is the satisfaction degree
required for goal k
{ }
{ } ||...,
||...,
:|,|...
...],[
min
||
||
|| ||
A1j10y
C1i10x
ACiA1jxy
1y
n1kSatykjSAT
ycxc
j
i
jiij
A
1j
j
k
A
1j
j
C
1i
A
1j
jjii
=∀∈
=∀∈
∈∀=∀≤
=
=∀≥
+
∑
∑
∑ ∑
=
=
= =
23
An example: a distributed e-health system
It is a client/server system, where the AE Client subsystem is connected via a network (Network
subsystem) to the AE Server subsystem.
The communication between the entities of the system is performed using Digital Imaging and
Communication in Medicine (DICOM) standard, which is typically used, for example, for producing,
processing and exchanging medical images.
Static view
24
Let us assume that the AE Client subsystem has to guarantee
two non-functional operational goals.
Costs of available COTS components
We have taken into account 25 assemblies of components.
25Model Solution
Model solution for multiple values of the
required satisfaction degree for the
nfg1 and nfg2 goals.
26Model Solution
Optimal solution for all previous cases
(i.e. selection of assemblies of components)
27
Model builder
Model solverAnnotate
Transform
Optimization
model
-  Operational
Goals of the
system
- Set of COTS
components and
assemblies
- Set of COTS
components
and assemblies
DEER FRAMEWOK
DEER (DEcision support for componEnt-based softwaRe)
generates and solves the models automatically.
Relevance of tool support
28
ARCHITECTURAL PHASE
Cost vs reliability and delivery time
Cost vs satisfaction of requirements
REQUIREMENTS PHASE
Change management
MAINTENANCE PHASE
DEPLOYMENT PHASE
Cost vs reliability and performance
Optimization models
29
On the basis of an architectural design, for each software
component we assume to have different COTS available to buy
or an in-house version to build.
We also assume that all components are equivalent by a
functional viewpoint.
We intend to determine the combination of available COTS
products and in-house developed components that minimizes the
software costs under (delivery time and) reliability constraints.
As a ”side effect”, we provide the amount of testing to be
performed on each in-house component in order to achieve the
required reliability level.
ARCHITECTURAL PHASE
30
C1
C2
Ci
Connectors
ARCHITECTURAL PHASE
31
C1
C2
Ci
Connectors
y1
x11
x12
x1m
in-house
COTS
ARCHITECTURAL PHASE
32
C1
C2
Ci
Connectors
y1
x11
x12
x1m
in-house
COTS
yi in-house
xi1
xi2
xim
COTS
x21 x22 x2m
y2 in-house
COTS
ARCHITECTURAL PHASE
33
C1
C2
Ci
Connectors
y1
x11
x12
x1m
in-house
COTS
yi in-house
xi1
xi2
xim
COTS
x21 x22 x2m
y2 in-house
COTS
ARCHITECTURAL PHASE
34
C1
C2
Ci
Connectors
y1
x11
x12
x1m
in-house
COTS
yi in-house
xi1
xi2
xim
COTS
x21 x22 x2m
y2 in-house
COTS
ARCHITECTURAL PHASE
35OPTIMIZATION MODEL
average
number of
failures of a
component
instance
probability of
failure on-demand
Ntot
i the number of successful (i.e. failure free) tests
performed on an in-house instance
a very simple cost
(irrealistic?!) model
Selection boolean variables
36
Main aspects of the model:
-  Decision variables
-  Reliability growth model
(alternative models can be used)
-  Composition of reliability attributes
-  Additional variable on the number of tests
OPTIMIZATION MODEL
37
First Scenario
Behavioral
view
An example: a distributed e-health system
38
An example: a distributed e-health system
Second Scenario
Behavioral
view
39
An example: a distributed e-health system
Third Scenario
Behavioral
view
40
Parameters for COTS products
Parameters for in-house developed components
An example: a distributed e-health system
41
Model Solutions
Model solution for multiple values of
bound R between 0.89 and 0.99
42
Model Solutions
Model solution for multiple values of
bound R between 0.89 and 0.99
43
COST and RELIABILITY
Definining a set of optimization models
that allow quantifying the costs of service failure
repair/mitigation actions aimed at keeping the whole SBS
reliability over a certain threshold.
Quantifying the Influence of
Failure Repair/Mitigation Costs on
Service-Based Systems
44
Most reliability models for software that is assembled from basic elements
(e.g. objects, components or services [1] [2]) assume
that the elements are independent, namely they do not take into account the
dependencies that may exist between elements.
We have relaxed this assumption here and we have proposed a path-based
reliability model for Service-Oriented Architecture (SOA) that embeds the
“error propagation” property.
Probability that a service may propagate
an erroneous message when it receives as
input an erroneous message.
[1] Goseva-Popstojanova, K., Trivedi, K.S, “Achitecture based-approach to reliability assessment of software systems”,
Performance Evaluation, vol. 45 (2001),179-204.
[2] Kokash, N., “A Service Selection Model to Improve Composition Reliability”, Proc. of International Workshop on AI
for Service Composition, in conjunction with ECAI¡S06, 2006.
RELIABILITY and ERROR PROPAGATION
45
ARCHITECTURAL PHASE
Cost vs reliability and delivery time
Cost vs satisfaction of requirements
REQUIREMENTS PHASE
Change management
MAINTENANCE PHASE
DEPLOYMENT PHASE
Cost vs reliability and performance
Optimization models
46
Same as previous model…
… with an additional constraint on performance…
… and the model solution also suggests the best
deployment of components on nodes.
DEPLOYMENT PHASE
…adding a constraint on performance…
47
UML software model
(Component Diagram,
Sequence Diagram, …)
Model builder
Model solver
Annotate
Transform
Optimization
model
Results
-  component
selection
- amount of
testing on
in-house
components,…
CODER FRAMEWORK
CODER (Cost Optimization under DElivery and Reliability
constraints) generates and solves the optimization model
Relevance of tool support
48
ARCHITECTURAL PHASE
Cost vs reliability and delivery time
Cost vs satisfaction of requirements
REQUIREMENTS PHASE
Change management
MAINTENANCE PHASE
DEPLOYMENT PHASE
Cost vs reliability and performance
Optimization models
49
We intend to drives the choice of MAINTENANCE PLANS
in correspondence of a CHANGE SCENARIO (i.e a set of new
requirements) with the minimum cost and guaranteeing a
given level of reliability.
Selecting Optimal Maintenance Plans based on Cost/Reliability
Tradeoffs for Software Subject to Structural and Behavioral Changes
MAINTENANCE PHASE
50
ADAPTATION FRAMEWORK
51
A MAINTENANCE PLAN is a set of maintenance actions that address
a certain requirement.
(software) MAINTENANCE ACTIONS
Ø  Introducing new software units
Ø  Replacing existing unit instances with functionally equivalent ones
Ø  Modifying the interactions between software units in a certain
functionality
52
FEATURES N.
Maintaining a smartphone mobile application
Trancoding
Translation
Merging
Compression
Multimedia ServiceClient
Locations
Database
The Multimedia Service sends
(i) news in textual format,
(ii) news with both textual and video content, and
(iii) a geographical map with the user location to the Client.
EXISTING UNITS 7
NUM. INSTANCES 3
AVAILABLE
NEW UNITS 4
NUM. FUNCTIONALITY 3
A Running Example
53
Requirement ID
 
Maintenance Plan ID Maintenance Plan Description
req1
 
mp11
mp12
Adding a new service newun1
Adding a new service newun4 AND Replacing
Client with its second instance
req2
 
 
mp21
mp22
mp23
Replacing Trancoding with its second instance
Adding a new service newun3
Adding a new service newun4
req3
mp31
mp32
mp33
Adding a new service newun2
Adding a new service newun1 AND Replacing
Locations Database with its first instance
Replacing Multimedia Service with its sec. instance
Maintaining a smartphone mobile application
Requirement ID Requirement Specification
req1 The compression should also be performed in a different way
req2
 
The video should also be provided in AVI format
req3
The map should provide additional information, such as a list of the closer
hotels or restaurants
CHANGE SCENARIO
MAINTENANCE PLANS
54
min
| || |
Cost c x c zij ij h
h
NewS
j
Aval
i
n
h
i
= +
===
∑∑∑ 111
…
Re ( ) ( )
| || |
l pexec x z Rk ij ij
newbpex
h h
newbpn
h
NewS
j
Aval
i
n
k
K
ki kh
i
= − −
⎛
⎝
⎜
⎞
⎠
⎟ ≥
====
∏∑∏∑ 1 1
1111
θ θ
OPTIMIZATION MODEL
Number of busy periods
that the existing unit i
shows in the SD k after
the maintenance phase
…existing units
55
min
| || |
Cost c x c zij ij h
h
NewS
j
Aval
i
n
h
i
= +
===
∑∑∑ 111
…
Re ( ) ( )
| || |
l pexec x z Rk ij ij
newbpex
h h
newbpn
h
NewS
j
Aval
i
n
k
K
ki kh
i
= − −
⎛
⎝
⎜
⎞
⎠
⎟ ≥
====
∏∑∏∑ 1 1
1111
θ θ
OPTIMIZATION MODEL
Number of busy periods
that the new unit h
shows in the SD k after
the maintenance phase
…new units
56
FEATURES N.
Maintaining a smartphone mobile application
Trancoding
Translation
Merging
Compression
Multimedia ServiceClient
Locations
Database
The Multimedia Service sends
(i) news in textual format,
(ii) news with both textual and video content, and
(iii) a geographical map with the user location to the Client.
EXISTING UNITS 7
NUM. INSTANCES 3
AVAILABLE
NEW UNITS 4
NUM. FUNCTIONALITY 3
A Running Example
57
Requirement ID
 
Maintenance Plan ID Maintenance Plan Description
req1
 
mp11
mp12
Adding a new service newun1
Adding a new service newun4 AND Replacing
Client with its second instance
req2
 
 
mp21
mp22
mp23
Replacing Trancoding with its second instance
Adding a new service newun3
Adding a new service newun4
req3
mp31
mp32
mp33
Adding a new service newun2
Adding a new service newun1 AND Replacing
Locations Database with its first instance
Replacing Multimedia Service with its sec. instance
Maintaining a smartphone mobile application
Requirement ID Requirement Specification
req1 The compression should also be performed in a different way
req2
 
The video should also be provided in AVI format
req3
The map should provide additional information, such as a list of the closer
hotels or restaurants
CHANGE SCENARIO
MAINTENANCE PLANS
58
Model Solution for multiple values of
the probability of failure of
new units newun1 and newun4 and of R.
0
10
20
30
40
50
60
70
80
[0,0003, 0,00002]
[0,0003, 0,005]
[0,005, 0,00002]
[0,005, 0,005]
Cost(inKiloEuros,KE)
0,92
0,95
0,97
0,99
Reliability
threshold
R
Model Solutions
59
Model Solution for multiple values of
the probability of failure of
new units newun1 and newun4 and of R.
0
10
20
30
40
50
60
70
80
[0,0003, 0,00002]
[0,0003, 0,005]
[0,005, 0,00002]
[0,005, 0,005]
Cost(inKiloEuros,KE)
0,92
0,95
0,97
0,99
Reliability
threshold
R
Model Solutions
60
0
10
20
30
40
50
60
70
80
[0,0003, 0,00002]
[0,0003, 0,005]
[0,005, 0,00002]
[0,005, 0,005]
Cost(inKiloEuros,KE)
0,92
0,95
0,97
0,99
Reliability
threshold
R
Model Solutions
CHANGING THE MAINTENANCE PLAINS FOR A REQUIREMENT:
If mp11 is Replacing the service Compression with its second instance available
INSTEAD OF Adding a new service newun1,
we get the following solution:
[u11, u21, u31, u42, u51, u61, u72] [newun2], [mp11,mp21,mp31]. It costs 51 KE.
61
Resulting static structure of the system after the application of
mp11, mp21 and mp31.
Trancoding - u42
Translation - u51
Merging - u61
Compression - u72
Multimedia Service- u21Client - u11
Locations
Database- u31 newun2
Maintaining a smartphone mobile application
A Running Example
62
Resulting a SD
after the
application
of mp11, mp21
and mp31.
removed
interactions
added
interactions
Maintaining a smartphone mobile application
A Running Example
63
Requirement ID
 
Maintenance Plan ID Maintenance Plan Description
req1
 
mp11
mp12
Adding a new service newun1
Adding a new service newun4 AND Replacing
Client with its second instance
req2
 
 
mp21
mp22
mp23
Replacing Trancoding with its second instance
Adding a new service newun3
Adding a new service newun4
req3
mp31
mp32
mp33
Adding a new service newun2
Adding a new service newun1 AND Replacing
Locations Database with its first instance
Replacing Multimedia Service with its sec. instance
Maintaining a smartphone mobile application
Requirement ID Requirement Specification
req1 The compression should also be performed in a different way
req2
 
The video should also be provided in AVI format
req3
The map should provide additional information, such as a list of the closer
hotels or restaurants
CHANGE SCENARIO
MAINTENANCE PLANS
64
ADAPTATION FRAMEWORK
- Selecting Optimal
Maintenance Plans
based on Cost/
Reliability
Tradeoffs.
-  Optimization of
adaptation plans
for a
service-oriented
architecture with
cost, reliability,
availability and
performance
tradeoff.
65
SOA domain … Some Extentions …
Let us assume that the composite service structure of each
service offered by the system is specified by using BPEL.
An example of activity tree
that represents a BPEL
process
(ii)  a significant subset of operators expressing the composition of services
are considered (e.g., while, flow,…);
(iii)  based on these different kinds of structured activities,
a new reliability model is defined;
(iv) availability and performance constraints are added to the model.
ADAPTATION ACTIVITIES:
•  Introducing new software services
•  Replacing existing service instances with
functionally equivalent ones
•  Modifying the interactions among services in a
certain external service
66
Optimization
Model
Formulation
cost
67
Optimization
Model
Formulation
reliability
and
availability
68
Optimization
Model
Formulation
performance
69An example of Output of the optimization model
The smartphone application example
70
Static aspect of the system after the application of
ap12, ap23 and ap32
An example of Output of the optimization model
71
A BPEL tree
after the
application of
ap12, ap23 and
ap32
72
ADAPTATION FRAMEWORK
- Selecting Optimal
Maintenance Plans
based on Cost/
Reliability
Tradeoffs.
-  Optimization of
adaptation plans
for a
service-oriented
architecture with
cost, reliability,
availability and
performance
tradeoff.
Other than the software
architecture,the hardware
architecture is taken into
account.
73
SUM UP AND
FUTURE PERSPECTIVES
74
• Quality attributes (closed form!)
• Model goal (reconfiguration, component selection, …)
• Target variables
• Parameters to estimate
• Any “composition” to exploit?
• Any specific context (services, components, cloud,…)?
• Role of workload and operational profile
• Model solution technique (exact, metaheuristics, …)
Optimization models – main aspects to consider
75
We have introduced several optimization models for non-
functional requirement validation
PROS
•  Easy representation of modular software (e.g. component-based,
service-oriented)
•  Flexibility in the definition of cost functions
•  Limited solution time for small/medium size problems (i.e. about
20 components and 10 instances for each component)
•  Easy exploration of multiple alternatives (quantification!)
•  Capability of embedding stochastic parameters
Conclusions
76
We have introduced several optimization models for non-
functional requirement validation
CONS
•  Only closed-form expressions can be adopted, and they do not
capture all relevant aspects of non-functional attributes
•  Exponential solution time for growing size problems (possibly
mitigated with meta-heuristic approaches)
•  …
•  Borderline research topic between Optimization and Software
Engineering -> not the highest acceptance rate of papers J
Conclusions
77
•  Application on real large scale problems
(metaheuristics)
•  Optimization models as a support to runtime decisions
(need quick-and-dirty solution approahes)
•  Stochastic optimization
•  Robust optimization
• …
Future perspectives
78
The ideas and results presented in this talk have been
achieved in collaboration with:
Vittorio Cortellessa, Università dell’Aquila
Fabrizio Marinelli, Università Politecnica delle Marche
Ivica Crnkovic, Mälardalen University
Raffaela Mirandola, Politecnico di Milano
Acknowledgments
79Some of our references…
•  Vittorio Cortellessa, Raffaela Mirandola, Pasqualina Potena: “Managing the evolution of a
software architecture at minimal cost under performance and reliability constraints”. Science of
Computer Programming (Elsevier), Vol. 98, Part 4, 2015, pp. 439-463.
•  Pasqualina Potena: “Optimization of adaptation plans for a service-oriented architecture with
cost, reliability, availability and performance tradeoff”, Journal of Systems and Software
(Elsevier), Vol. 86, Issue 3, March 2013, pp. 624-648.
•  Vittorio Cortellessa, Raffaela Mirandola, Pasqualina Potena: Selecting Optimal Maintenance
Plans Based on Cost/Reliability Tradeoffs for Software Subject to Structural and Behavioral
Changes. CSMR 2010:21-30
•  Vittorio Cortellessa, Fabrizio Marinelli, Pasqualina Potena: An optimization framework for
"build-or-buy" decisions in software architecture. Computers & OR (COR) 35(10):3090-3106
(2008)
•  Vittorio Cortellessa, Ivica Crnkovic, Fabrizio Marinelli, Pasqualina Potena: Experimenting the
Automated Selection of COTS Components Based on Cost and System Requirements. J. UCS
(JUCS) 14(8):1228-1255 (2008)
•  Vittorio Cortellessa, Ivica Crnkovic, Fabrizio Marinelli, Pasqualina Potena: Driving the
selection of cots components on the basis of system requirements. ASE 2007:413-416
•  Vittorio Cortellessa, Fabrizio Marinelli, Pasqualina Potena: Automated Selection of
Software Components Based on Cost/Reliability Tradeoff. EWSA 2006:66-81

More Related Content

What's hot

IRJET- Use of Artificial Neural Network in Construction Management
IRJET- Use of Artificial Neural Network in Construction ManagementIRJET- Use of Artificial Neural Network in Construction Management
IRJET- Use of Artificial Neural Network in Construction ManagementIRJET Journal
 
The Computation Complexity Reduction of 2-D Gaussian Filter
The Computation Complexity Reduction of 2-D Gaussian FilterThe Computation Complexity Reduction of 2-D Gaussian Filter
The Computation Complexity Reduction of 2-D Gaussian FilterIRJET Journal
 
Java networking 2012 ieee projects @ Seabirds ( Chennai, Bangalore, Hyderabad...
Java networking 2012 ieee projects @ Seabirds ( Chennai, Bangalore, Hyderabad...Java networking 2012 ieee projects @ Seabirds ( Chennai, Bangalore, Hyderabad...
Java networking 2012 ieee projects @ Seabirds ( Chennai, Bangalore, Hyderabad...SBGC
 
Invited Iceis Tanca Orsi
Invited Iceis Tanca OrsiInvited Iceis Tanca Orsi
Invited Iceis Tanca OrsiGiorgio Orsi
 
wp-electrical-engineering-mechatronic-data-model-en
wp-electrical-engineering-mechatronic-data-model-enwp-electrical-engineering-mechatronic-data-model-en
wp-electrical-engineering-mechatronic-data-model-enThomas Gessner
 
Principles of Elastic Processes on Clouds and Some Enabling Techniques
Principles of Elastic Processes on Clouds and Some Enabling TechniquesPrinciples of Elastic Processes on Clouds and Some Enabling Techniques
Principles of Elastic Processes on Clouds and Some Enabling TechniquesHong-Linh Truong
 
#SiriusCon 2015: Talk by Christophe Boudjennah "Experimenting the Open Source...
#SiriusCon 2015: Talk by Christophe Boudjennah "Experimenting the Open Source...#SiriusCon 2015: Talk by Christophe Boudjennah "Experimenting the Open Source...
#SiriusCon 2015: Talk by Christophe Boudjennah "Experimenting the Open Source...Obeo
 
IRJET - A Research on Eloquent Salvation and Productive Outsourcing of Massiv...
IRJET - A Research on Eloquent Salvation and Productive Outsourcing of Massiv...IRJET - A Research on Eloquent Salvation and Productive Outsourcing of Massiv...
IRJET - A Research on Eloquent Salvation and Productive Outsourcing of Massiv...IRJET Journal
 
New books dec 2013
New books dec 2013New books dec 2013
New books dec 2013maethaya
 
Volume 2-issue-6-2200-2204
Volume 2-issue-6-2200-2204Volume 2-issue-6-2200-2204
Volume 2-issue-6-2200-2204Editor IJARCET
 
An analysis of a large scale wireless image distribution system deployment
An analysis of a large scale wireless image distribution system deploymentAn analysis of a large scale wireless image distribution system deployment
An analysis of a large scale wireless image distribution system deploymentConference Papers
 
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...IJERD Editor
 
IRJET- Review of Tencent ML-Images Large-Scale Multi-Label Image Database
IRJET-  	  Review of Tencent ML-Images Large-Scale Multi-Label Image DatabaseIRJET-  	  Review of Tencent ML-Images Large-Scale Multi-Label Image Database
IRJET- Review of Tencent ML-Images Large-Scale Multi-Label Image DatabaseIRJET Journal
 
"Agent-Based Service Analysis, Forecasting, Simulation and Optimisation - Fro...
"Agent-Based Service Analysis, Forecasting, Simulation and Optimisation - Fro..."Agent-Based Service Analysis, Forecasting, Simulation and Optimisation - Fro...
"Agent-Based Service Analysis, Forecasting, Simulation and Optimisation - Fro...李杨 Dr Yang Li
 
76201902
7620190276201902
76201902IJRAT
 

What's hot (19)

IRJET- Use of Artificial Neural Network in Construction Management
IRJET- Use of Artificial Neural Network in Construction ManagementIRJET- Use of Artificial Neural Network in Construction Management
IRJET- Use of Artificial Neural Network in Construction Management
 
The Computation Complexity Reduction of 2-D Gaussian Filter
The Computation Complexity Reduction of 2-D Gaussian FilterThe Computation Complexity Reduction of 2-D Gaussian Filter
The Computation Complexity Reduction of 2-D Gaussian Filter
 
Java networking 2012 ieee projects @ Seabirds ( Chennai, Bangalore, Hyderabad...
Java networking 2012 ieee projects @ Seabirds ( Chennai, Bangalore, Hyderabad...Java networking 2012 ieee projects @ Seabirds ( Chennai, Bangalore, Hyderabad...
Java networking 2012 ieee projects @ Seabirds ( Chennai, Bangalore, Hyderabad...
 
Deep learning enhanced digital twin for Closed-loop In-Process Quality Improv...
Deep learning enhanced digital twin for Closed-loop In-Process Quality Improv...Deep learning enhanced digital twin for Closed-loop In-Process Quality Improv...
Deep learning enhanced digital twin for Closed-loop In-Process Quality Improv...
 
Artificial Neural Networks for Construction Management: A Review
Artificial Neural Networks for Construction Management: A ReviewArtificial Neural Networks for Construction Management: A Review
Artificial Neural Networks for Construction Management: A Review
 
Invited Iceis Tanca Orsi
Invited Iceis Tanca OrsiInvited Iceis Tanca Orsi
Invited Iceis Tanca Orsi
 
wp-electrical-engineering-mechatronic-data-model-en
wp-electrical-engineering-mechatronic-data-model-enwp-electrical-engineering-mechatronic-data-model-en
wp-electrical-engineering-mechatronic-data-model-en
 
Principles of Elastic Processes on Clouds and Some Enabling Techniques
Principles of Elastic Processes on Clouds and Some Enabling TechniquesPrinciples of Elastic Processes on Clouds and Some Enabling Techniques
Principles of Elastic Processes on Clouds and Some Enabling Techniques
 
#SiriusCon 2015: Talk by Christophe Boudjennah "Experimenting the Open Source...
#SiriusCon 2015: Talk by Christophe Boudjennah "Experimenting the Open Source...#SiriusCon 2015: Talk by Christophe Boudjennah "Experimenting the Open Source...
#SiriusCon 2015: Talk by Christophe Boudjennah "Experimenting the Open Source...
 
IRJET - A Research on Eloquent Salvation and Productive Outsourcing of Massiv...
IRJET - A Research on Eloquent Salvation and Productive Outsourcing of Massiv...IRJET - A Research on Eloquent Salvation and Productive Outsourcing of Massiv...
IRJET - A Research on Eloquent Salvation and Productive Outsourcing of Massiv...
 
New books dec 2013
New books dec 2013New books dec 2013
New books dec 2013
 
Volume 2-issue-6-2200-2204
Volume 2-issue-6-2200-2204Volume 2-issue-6-2200-2204
Volume 2-issue-6-2200-2204
 
An analysis of a large scale wireless image distribution system deployment
An analysis of a large scale wireless image distribution system deploymentAn analysis of a large scale wireless image distribution system deployment
An analysis of a large scale wireless image distribution system deployment
 
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
IJERD (www.ijerd.com) International Journal of Engineering Research and Devel...
 
IRJET- Review of Tencent ML-Images Large-Scale Multi-Label Image Database
IRJET-  	  Review of Tencent ML-Images Large-Scale Multi-Label Image DatabaseIRJET-  	  Review of Tencent ML-Images Large-Scale Multi-Label Image Database
IRJET- Review of Tencent ML-Images Large-Scale Multi-Label Image Database
 
"Agent-Based Service Analysis, Forecasting, Simulation and Optimisation - Fro...
"Agent-Based Service Analysis, Forecasting, Simulation and Optimisation - Fro..."Agent-Based Service Analysis, Forecasting, Simulation and Optimisation - Fro...
"Agent-Based Service Analysis, Forecasting, Simulation and Optimisation - Fro...
 
Revanth Vemulapalli_pdf
Revanth Vemulapalli_pdfRevanth Vemulapalli_pdf
Revanth Vemulapalli_pdf
 
76201902
7620190276201902
76201902
 
IEEE ACADEMIC PROJECTS
IEEE ACADEMIC PROJECTSIEEE ACADEMIC PROJECTS
IEEE ACADEMIC PROJECTS
 

Viewers also liked

Google搜索从入门到精通v40
Google搜索从入门到精通v40Google搜索从入门到精通v40
Google搜索从入门到精通v40静 黄
 
Dat202 Techdays Paris 2015: PowerBI un an après
Dat202 Techdays Paris 2015: PowerBI un an aprèsDat202 Techdays Paris 2015: PowerBI un an après
Dat202 Techdays Paris 2015: PowerBI un an aprèsIsabelle Van Campenhoudt
 
Tims_engineering_resume
Tims_engineering_resumeTims_engineering_resume
Tims_engineering_resumeTim Leonard
 
Primary 10 pictures descent
Primary 10 pictures descent Primary 10 pictures descent
Primary 10 pictures descent connor2598
 
Design of Test Automation - Principles & Patterns
Design of Test Automation  - Principles & PatternsDesign of Test Automation  - Principles & Patterns
Design of Test Automation - Principles & PatternsRahul Verma
 
Documentation - Jumbo Ortung
Documentation - Jumbo OrtungDocumentation - Jumbo Ortung
Documentation - Jumbo OrtungMustafa Arıkan
 
NCR-Orderman Casestudy Vapiano
NCR-Orderman Casestudy VapianoNCR-Orderman Casestudy Vapiano
NCR-Orderman Casestudy Vapianosognasole
 

Viewers also liked (12)

La mediación
La mediaciónLa mediación
La mediación
 
Dossier pêche
Dossier pêcheDossier pêche
Dossier pêche
 
Google搜索从入门到精通v40
Google搜索从入门到精通v40Google搜索从入门到精通v40
Google搜索从入门到精通v40
 
Dat202 Techdays Paris 2015: PowerBI un an après
Dat202 Techdays Paris 2015: PowerBI un an aprèsDat202 Techdays Paris 2015: PowerBI un an après
Dat202 Techdays Paris 2015: PowerBI un an après
 
Perkawinan rahasia (evi idawati)
Perkawinan rahasia (evi idawati)Perkawinan rahasia (evi idawati)
Perkawinan rahasia (evi idawati)
 
Tims_engineering_resume
Tims_engineering_resumeTims_engineering_resume
Tims_engineering_resume
 
Perempuan petelur (iggoy el fitra)
Perempuan petelur (iggoy el fitra)Perempuan petelur (iggoy el fitra)
Perempuan petelur (iggoy el fitra)
 
Primary 10 pictures descent
Primary 10 pictures descent Primary 10 pictures descent
Primary 10 pictures descent
 
Client list
Client listClient list
Client list
 
Design of Test Automation - Principles & Patterns
Design of Test Automation  - Principles & PatternsDesign of Test Automation  - Principles & Patterns
Design of Test Automation - Principles & Patterns
 
Documentation - Jumbo Ortung
Documentation - Jumbo OrtungDocumentation - Jumbo Ortung
Documentation - Jumbo Ortung
 
NCR-Orderman Casestudy Vapiano
NCR-Orderman Casestudy VapianoNCR-Orderman Casestudy Vapiano
NCR-Orderman Casestudy Vapiano
 

Similar to Seminar pasqualina potena

Implementation of a new Size Estimation Model
Implementation of a new Size Estimation ModelImplementation of a new Size Estimation Model
Implementation of a new Size Estimation Modelijsrd.com
 
Iaetsd pinpointing performance deviations of subsystems in distributed
Iaetsd pinpointing performance deviations of subsystems in distributedIaetsd pinpointing performance deviations of subsystems in distributed
Iaetsd pinpointing performance deviations of subsystems in distributedIaetsd Iaetsd
 
Svm Classifier Algorithm for Data Stream Mining Using Hive and R
Svm Classifier Algorithm for Data Stream Mining Using Hive and RSvm Classifier Algorithm for Data Stream Mining Using Hive and R
Svm Classifier Algorithm for Data Stream Mining Using Hive and RIRJET Journal
 
Understanding and Addressing Architectural Challenges of Cloud- Based Systems
Understanding and Addressing Architectural Challenges of Cloud- Based SystemsUnderstanding and Addressing Architectural Challenges of Cloud- Based Systems
Understanding and Addressing Architectural Challenges of Cloud- Based SystemsCREST @ University of Adelaide
 
Review of Existing Methods in K-means Clustering Algorithm
Review of Existing Methods in K-means Clustering AlgorithmReview of Existing Methods in K-means Clustering Algorithm
Review of Existing Methods in K-means Clustering AlgorithmIRJET Journal
 
implementation of area efficient high speed eddr architecture
implementation of area efficient high speed eddr architectureimplementation of area efficient high speed eddr architecture
implementation of area efficient high speed eddr architectureKumar Goud
 
Tool-Driven Technology Transfer in Software Engineering
Tool-Driven Technology Transfer in Software EngineeringTool-Driven Technology Transfer in Software Engineering
Tool-Driven Technology Transfer in Software EngineeringHeiko Koziolek
 
Cloud service ranking with an integration of k-means algorithm and decision-m...
Cloud service ranking with an integration of k-means algorithm and decision-m...Cloud service ranking with an integration of k-means algorithm and decision-m...
Cloud service ranking with an integration of k-means algorithm and decision-m...IJECEIAES
 
1DS21LVS01-DEEKSHITHA P.pptx
1DS21LVS01-DEEKSHITHA P.pptx1DS21LVS01-DEEKSHITHA P.pptx
1DS21LVS01-DEEKSHITHA P.pptxTcManjunath1
 
2005年EI收录浙江财经学院论文7篇
2005年EI收录浙江财经学院论文7篇2005年EI收录浙江财经学院论文7篇
2005年EI收录浙江财经学院论文7篇butest
 
Product defect detection based on convolutional autoencoder and one-class cla...
Product defect detection based on convolutional autoencoder and one-class cla...Product defect detection based on convolutional autoencoder and one-class cla...
Product defect detection based on convolutional autoencoder and one-class cla...IAESIJAI
 
From Model-based to Model and Simulation-based Systems Architectures
From Model-based to Model and Simulation-based Systems ArchitecturesFrom Model-based to Model and Simulation-based Systems Architectures
From Model-based to Model and Simulation-based Systems ArchitecturesObeo
 
Software Architecture: introduction to the abstraction
Software Architecture: introduction to the abstractionSoftware Architecture: introduction to the abstraction
Software Architecture: introduction to the abstractionHenry Muccini
 
Brian muirhead v1-27-12
Brian muirhead v1-27-12Brian muirhead v1-27-12
Brian muirhead v1-27-12NASAPMC
 
New Research Articles 2020 January Issue International Journal of Software En...
New Research Articles 2020 January Issue International Journal of Software En...New Research Articles 2020 January Issue International Journal of Software En...
New Research Articles 2020 January Issue International Journal of Software En...ijseajournal
 
A Machine learning based framework for Verification and Validation of Massive...
A Machine learning based framework for Verification and Validation of Massive...A Machine learning based framework for Verification and Validation of Massive...
A Machine learning based framework for Verification and Validation of Massive...IRJET Journal
 
Academic Resources Architecture Framework Planning using ERP in Cloud Computing
Academic Resources Architecture Framework Planning using ERP in Cloud ComputingAcademic Resources Architecture Framework Planning using ERP in Cloud Computing
Academic Resources Architecture Framework Planning using ERP in Cloud ComputingIRJET Journal
 
'Applying System Science and System Thinking Techniques to BIM Management'
'Applying System Science and System Thinking Techniques to BIM Management' 'Applying System Science and System Thinking Techniques to BIM Management'
'Applying System Science and System Thinking Techniques to BIM Management' Alan Martin Redmond, PhD
 
PATTERN-BASED AND REUSE-DRIVEN ARCHITECTING OF MOBILE CLOUD SOFTWARE
PATTERN-BASED AND REUSE-DRIVEN ARCHITECTING OF MOBILE CLOUD SOFTWAREPATTERN-BASED AND REUSE-DRIVEN ARCHITECTING OF MOBILE CLOUD SOFTWARE
PATTERN-BASED AND REUSE-DRIVEN ARCHITECTING OF MOBILE CLOUD SOFTWAREijseajournal
 

Similar to Seminar pasqualina potena (20)

Implementation of a new Size Estimation Model
Implementation of a new Size Estimation ModelImplementation of a new Size Estimation Model
Implementation of a new Size Estimation Model
 
Iaetsd pinpointing performance deviations of subsystems in distributed
Iaetsd pinpointing performance deviations of subsystems in distributedIaetsd pinpointing performance deviations of subsystems in distributed
Iaetsd pinpointing performance deviations of subsystems in distributed
 
Svm Classifier Algorithm for Data Stream Mining Using Hive and R
Svm Classifier Algorithm for Data Stream Mining Using Hive and RSvm Classifier Algorithm for Data Stream Mining Using Hive and R
Svm Classifier Algorithm for Data Stream Mining Using Hive and R
 
Understanding and Addressing Architectural Challenges of Cloud- Based Systems
Understanding and Addressing Architectural Challenges of Cloud- Based SystemsUnderstanding and Addressing Architectural Challenges of Cloud- Based Systems
Understanding and Addressing Architectural Challenges of Cloud- Based Systems
 
Review of Existing Methods in K-means Clustering Algorithm
Review of Existing Methods in K-means Clustering AlgorithmReview of Existing Methods in K-means Clustering Algorithm
Review of Existing Methods in K-means Clustering Algorithm
 
implementation of area efficient high speed eddr architecture
implementation of area efficient high speed eddr architectureimplementation of area efficient high speed eddr architecture
implementation of area efficient high speed eddr architecture
 
Tool-Driven Technology Transfer in Software Engineering
Tool-Driven Technology Transfer in Software EngineeringTool-Driven Technology Transfer in Software Engineering
Tool-Driven Technology Transfer in Software Engineering
 
Cloud service ranking with an integration of k-means algorithm and decision-m...
Cloud service ranking with an integration of k-means algorithm and decision-m...Cloud service ranking with an integration of k-means algorithm and decision-m...
Cloud service ranking with an integration of k-means algorithm and decision-m...
 
1DS21LVS01-DEEKSHITHA P.pptx
1DS21LVS01-DEEKSHITHA P.pptx1DS21LVS01-DEEKSHITHA P.pptx
1DS21LVS01-DEEKSHITHA P.pptx
 
2005年EI收录浙江财经学院论文7篇
2005年EI收录浙江财经学院论文7篇2005年EI收录浙江财经学院论文7篇
2005年EI收录浙江财经学院论文7篇
 
Product defect detection based on convolutional autoencoder and one-class cla...
Product defect detection based on convolutional autoencoder and one-class cla...Product defect detection based on convolutional autoencoder and one-class cla...
Product defect detection based on convolutional autoencoder and one-class cla...
 
From Model-based to Model and Simulation-based Systems Architectures
From Model-based to Model and Simulation-based Systems ArchitecturesFrom Model-based to Model and Simulation-based Systems Architectures
From Model-based to Model and Simulation-based Systems Architectures
 
Software Architecture: introduction to the abstraction
Software Architecture: introduction to the abstractionSoftware Architecture: introduction to the abstraction
Software Architecture: introduction to the abstraction
 
Brian muirhead v1-27-12
Brian muirhead v1-27-12Brian muirhead v1-27-12
Brian muirhead v1-27-12
 
defense_PPT
defense_PPTdefense_PPT
defense_PPT
 
New Research Articles 2020 January Issue International Journal of Software En...
New Research Articles 2020 January Issue International Journal of Software En...New Research Articles 2020 January Issue International Journal of Software En...
New Research Articles 2020 January Issue International Journal of Software En...
 
A Machine learning based framework for Verification and Validation of Massive...
A Machine learning based framework for Verification and Validation of Massive...A Machine learning based framework for Verification and Validation of Massive...
A Machine learning based framework for Verification and Validation of Massive...
 
Academic Resources Architecture Framework Planning using ERP in Cloud Computing
Academic Resources Architecture Framework Planning using ERP in Cloud ComputingAcademic Resources Architecture Framework Planning using ERP in Cloud Computing
Academic Resources Architecture Framework Planning using ERP in Cloud Computing
 
'Applying System Science and System Thinking Techniques to BIM Management'
'Applying System Science and System Thinking Techniques to BIM Management' 'Applying System Science and System Thinking Techniques to BIM Management'
'Applying System Science and System Thinking Techniques to BIM Management'
 
PATTERN-BASED AND REUSE-DRIVEN ARCHITECTING OF MOBILE CLOUD SOFTWARE
PATTERN-BASED AND REUSE-DRIVEN ARCHITECTING OF MOBILE CLOUD SOFTWAREPATTERN-BASED AND REUSE-DRIVEN ARCHITECTING OF MOBILE CLOUD SOFTWARE
PATTERN-BASED AND REUSE-DRIVEN ARCHITECTING OF MOBILE CLOUD SOFTWARE
 

Recently uploaded

2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 

Recently uploaded (20)

2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 

Seminar pasqualina potena

  • 2. 2 My Research Background Short Biblio: - Degree in Computer Science from University of L’Aquila, and Ph.D. degree from University of Chieti e Pescara (Italy) - PhD guest student at Mälardalen University, Mälardalen Real-Time Research Centre (Västerås, Sweden) - Research fellow at the University of L’Aquila, Politecnico di Milano, and University of Bergamo - Post-doc position linked to project ICEBERG funded by EU under IAPP Marie Curie Program, University of Alcalà, Spain. Research keywords: system design, system adaptation, distributed systems, optimization techniques, system properties, adaptive software applications, cloud computing, embedded system, intelligent environments, SBSE search methodologies (e.g., genetic algorithms, evolutionary algorithms), etc.
  • 3. 3Research activities comprise: § Design/Adaptation Space Exploration for component-based and service-based systems (e.g., [1]) § Quantifying the influence of failure repair/mitigation costs on service based systems (e.g., see [2]) § Resource Allocation, Trading and Adaptation in Self-Managing Systems (e.g., see [3]) § Architectural Decisions for HW/SW Partitioning based on multiple Properties (e.g., see [4]) § Other (e.g., testing decisions under quality, cost, and time constraints) [1] Potena, P.: “Optimization of adaptation plans for a service-oriented architecture with cost, reliability, availability and performance tradeoff”, Journal of Systems and Software, Vol. 86, Issue 3, 2013, pp.624-648. [2] Cortellessa, V., Marinelli, F., Mirandola, R., Potena, P.: “Quantifying the influence of failure repair/mitigation costs on Service based Systems”, Proc. of ISSRE 2013, pp.90-99, 2013. [3] Lulli, G., Mirandola, R., Potena, P., Raibulet C.: “Resource Management in the Air Traffic Domain ”, Proc. of ECSA 2011, LNCS, pp. 97-104, 2011. [4] Sapienza, G., Crnkovic, I., Potena, P.: “Architectural Decisions for HW/SW Partitioning based on multiple Extra-Functional Properties”. Proc. of 11th Working IEEE/IFIP Conference on Software Architecture (WICSA), pages 175–184. IEEE, Sydney, Australia, 2014.
  • 4. 4 Research and Knowledge Transfer For example: the ICEBERG project funded by EU under the Marie Curie IAPP programme (http://www.iceberg-sqa.eu/). The project investigated a novel approach to improving understanding of the real cost impacts of poor quality software and supporting the suite of management decisions required to take corrective action across the entire software development cycle. I have worked to understand the real needs of practitioners in industry.
  • 5. 5 Presentation roadmap •  Software Quality: Why? What? How? •  Optimization models for tradeoff analysis •  Sum up and future perspective
  • 7. 7 Software Quality: Why? It is commonly perceived today (?!) that software quality is becoming more and more a first-class issues of Software Architecture … some factual reasons… •  Complex distributed software services •  Devices with limited resource capabilities •  Heterogeneity of networks •  Cloud computing (resources on demand, pricing) • …
  • 8. 8 How to understand if NF properties are relevant? And, if they are relevant, which ones to consider? NON-FUNCTIONAL REQUIREMENTS Software Quality: What?
  • 9. 9Software Quality: How? Single attribute analysis of monolithic systems (e.g. response time, MTTF, etc…) + Focusing on a single software aspect + Well-assessed methodologies/notations/tools + Reasonable solution time for large/detailed models - Focusing on a single software aspect!!! - Unable to capture interactions between components - Unable to capture relationships among attributes Composition
  • 10. 10 Non-functional composition 1)  Interactions between components 2) Relationships among attributes
  • 11. 11 1)  Interactions between components •  Relating (possibly in a closed form) a whole system attribute to component/service attributes C1 Ф(C1) C2 Ф(C2) Cn Ф(Cn) Connectors Ф(S) = Ф(C1) ⊗ Ф(C2) ⊗ … ⊗ Ф(Cn) Ф() : non functional attribute (e.g., failure probability) •  Splitting a whole system requirement into component/service requirements Non-functional composition
  • 12. 12 Non-functional attribute composition 2) Relationships among attributes Expressing (possibly in a closed form) the relationships/tradeoffs/dependencies among attributes Requirement: <<data confidentiality>> C2sendData C1 C2 sendData Encryption* Decryption* C1 Throughput Workload initial system secure system t1 t2 λ
  • 14. 14 Optimization models Optimization models have recently revealed to be useful for supporting different decisions in multiple contexts: •  Service broker based on quality (Cardellini et al., 2012) •  Allocation of testing resources (Berman et al., 2004) • … Component/Service-based Software Engineering Aldeida Aleti et al., Software architecture optimization methods: a systematic literature review, IEEE TSE 39 (5): 658-683 (2013)
  • 15. 15 Component/Service-based Software CLASS OF PROBLEMS Choice of components/services driven by non-functional properties Optimization models DOMAIN
  • 16. 16 ARCHITECTURAL PHASE Cost vs reliability and delivery time Cost vs satisfaction of requirements REQUIREMENTS PHASE Change management MAINTENANCE PHASE DEPLOYMENT PHASE Cost vs reliability and performance Optimization models
  • 17. 17 ARCHITECTURAL PHASE Cost vs reliability and delivery time Cost vs satisfaction of requirements REQUIREMENTS PHASE Change management MAINTENANCE PHASE DEPLOYMENT PHASE Cost vs reliability and performance Optimization models
  • 18. 18 In this phase, the goal is to find appropriate candidates that might be integrated into the system. A pre-selection of components at the requirements phase, in particular related to a combination of functional and non-functional requirements, can sensibly improve the efficiency of the whole process and decrease the development costs. We intend to determine the combination of single COTS components and assemblies of COTS that satisfy the requirements while minimizing costs. REQUIREMENTS PHASE
  • 19. 19 In [Alves et al. 2005], using the outlines of the goal- oriented requirements engineering [Lamsweerde 2001] that defines requirements as goals, the authors present a goal- based approach to match the goals of the system and the features of the COTS components. [Alves et al. 2005] Alves, C., Franch, X., Carvallo, J.P., Finkelstein, A.: “Using Goals and Quality Models to Support the Matching Analysis During COTS Selection”, Proc. of ICCBSS 2005, LNCS 3412, 146-156, 2005. [Lamsweerde 2001] Lamsweerde, A.: “Goal-Oriented Requirements Engineering: A Guided Tour”, Invited mini- tutorial paper, appared in Proc. of RE 2001, 249-263, Toronto, August 2001. GOAL-ORIENTED REQUIREMENTS ENGINEERING
  • 20. 20 A non-functional goal g: For Example The acceptable level of reliability for a service should range between 0.8 and 0.9 Let C be a COTS component that provides the service and let 0.92 be the value of the reliability guaranteed from the component C. Therefore, the degree of satisfaction that C meets the goal g (i.e. Satg(0.92)) is equal to 1. Then, we can conclude that the COTS C completely satisfies the goal g. Sat g if x x if x if x _ . . . . = < − ≤ < ≥ ⎧ ⎨ ⎪ ⎩ ⎪ 0 08 10 8 08 09 1 09
  • 21. 21 C = {C1, . . . ,C|C|} a set of COTS components. A = {A1, . . . ,A|A|} a set of assemblies of COTS components. G = {g1, . . . , gn} a set of n operational goals, each of which represents a non-functional requirement of the system. xi = 1 if the i-th COTS is chosen (1 ≤ i ≤ |C|) 0 otherwise yj = 1 if the j-th assembly is chosen (1 ≤ j ≤ |A|) 0 otherwise VARIABLES ci purchase cost of the i-th COTS component cj cost of the j-th assembly (i.e. integration and adaptation cost) OPTIMIZATION MODEL { } { } ||..., ||..., :|,|... ...],[ min || || || || A1j10y C1i10x ACiA1jxy 1y n1kSatykjSAT ycxc j i jiij A 1j j k A 1j j C 1i A 1j jjii =∀∈ =∀∈ ∈∀=∀≤ = =∀≥ + ∑ ∑ ∑ ∑ = = = = cost function
  • 22. 22 xi = 1 if the i-th COTS is chosen (1 ≤ i ≤ |C|) 0 otherwise yj = 1 if the j-th assembly is chosen (1 ≤ j ≤ |A|) 0 otherwise VARIABLES OPTIMIZATION MODEL S A T [ j , k ] r e p r e s e n t s t h e satisfaction degree with which an assembly j meets a goal k Satk is the satisfaction degree required for goal k { } { } ||..., ||..., :|,|... ...],[ min || || || || A1j10y C1i10x ACiA1jxy 1y n1kSatykjSAT ycxc j i jiij A 1j j k A 1j j C 1i A 1j jjii =∀∈ =∀∈ ∈∀=∀≤ = =∀≥ + ∑ ∑ ∑ ∑ = = = =
  • 23. 23 An example: a distributed e-health system It is a client/server system, where the AE Client subsystem is connected via a network (Network subsystem) to the AE Server subsystem. The communication between the entities of the system is performed using Digital Imaging and Communication in Medicine (DICOM) standard, which is typically used, for example, for producing, processing and exchanging medical images. Static view
  • 24. 24 Let us assume that the AE Client subsystem has to guarantee two non-functional operational goals. Costs of available COTS components We have taken into account 25 assemblies of components.
  • 25. 25Model Solution Model solution for multiple values of the required satisfaction degree for the nfg1 and nfg2 goals.
  • 26. 26Model Solution Optimal solution for all previous cases (i.e. selection of assemblies of components)
  • 27. 27 Model builder Model solverAnnotate Transform Optimization model -  Operational Goals of the system - Set of COTS components and assemblies - Set of COTS components and assemblies DEER FRAMEWOK DEER (DEcision support for componEnt-based softwaRe) generates and solves the models automatically. Relevance of tool support
  • 28. 28 ARCHITECTURAL PHASE Cost vs reliability and delivery time Cost vs satisfaction of requirements REQUIREMENTS PHASE Change management MAINTENANCE PHASE DEPLOYMENT PHASE Cost vs reliability and performance Optimization models
  • 29. 29 On the basis of an architectural design, for each software component we assume to have different COTS available to buy or an in-house version to build. We also assume that all components are equivalent by a functional viewpoint. We intend to determine the combination of available COTS products and in-house developed components that minimizes the software costs under (delivery time and) reliability constraints. As a ”side effect”, we provide the amount of testing to be performed on each in-house component in order to achieve the required reliability level. ARCHITECTURAL PHASE
  • 35. 35OPTIMIZATION MODEL average number of failures of a component instance probability of failure on-demand Ntot i the number of successful (i.e. failure free) tests performed on an in-house instance a very simple cost (irrealistic?!) model Selection boolean variables
  • 36. 36 Main aspects of the model: -  Decision variables -  Reliability growth model (alternative models can be used) -  Composition of reliability attributes -  Additional variable on the number of tests OPTIMIZATION MODEL
  • 37. 37 First Scenario Behavioral view An example: a distributed e-health system
  • 38. 38 An example: a distributed e-health system Second Scenario Behavioral view
  • 39. 39 An example: a distributed e-health system Third Scenario Behavioral view
  • 40. 40 Parameters for COTS products Parameters for in-house developed components An example: a distributed e-health system
  • 41. 41 Model Solutions Model solution for multiple values of bound R between 0.89 and 0.99
  • 42. 42 Model Solutions Model solution for multiple values of bound R between 0.89 and 0.99
  • 43. 43 COST and RELIABILITY Definining a set of optimization models that allow quantifying the costs of service failure repair/mitigation actions aimed at keeping the whole SBS reliability over a certain threshold. Quantifying the Influence of Failure Repair/Mitigation Costs on Service-Based Systems
  • 44. 44 Most reliability models for software that is assembled from basic elements (e.g. objects, components or services [1] [2]) assume that the elements are independent, namely they do not take into account the dependencies that may exist between elements. We have relaxed this assumption here and we have proposed a path-based reliability model for Service-Oriented Architecture (SOA) that embeds the “error propagation” property. Probability that a service may propagate an erroneous message when it receives as input an erroneous message. [1] Goseva-Popstojanova, K., Trivedi, K.S, “Achitecture based-approach to reliability assessment of software systems”, Performance Evaluation, vol. 45 (2001),179-204. [2] Kokash, N., “A Service Selection Model to Improve Composition Reliability”, Proc. of International Workshop on AI for Service Composition, in conjunction with ECAI¡S06, 2006. RELIABILITY and ERROR PROPAGATION
  • 45. 45 ARCHITECTURAL PHASE Cost vs reliability and delivery time Cost vs satisfaction of requirements REQUIREMENTS PHASE Change management MAINTENANCE PHASE DEPLOYMENT PHASE Cost vs reliability and performance Optimization models
  • 46. 46 Same as previous model… … with an additional constraint on performance… … and the model solution also suggests the best deployment of components on nodes. DEPLOYMENT PHASE …adding a constraint on performance…
  • 47. 47 UML software model (Component Diagram, Sequence Diagram, …) Model builder Model solver Annotate Transform Optimization model Results -  component selection - amount of testing on in-house components,… CODER FRAMEWORK CODER (Cost Optimization under DElivery and Reliability constraints) generates and solves the optimization model Relevance of tool support
  • 48. 48 ARCHITECTURAL PHASE Cost vs reliability and delivery time Cost vs satisfaction of requirements REQUIREMENTS PHASE Change management MAINTENANCE PHASE DEPLOYMENT PHASE Cost vs reliability and performance Optimization models
  • 49. 49 We intend to drives the choice of MAINTENANCE PLANS in correspondence of a CHANGE SCENARIO (i.e a set of new requirements) with the minimum cost and guaranteeing a given level of reliability. Selecting Optimal Maintenance Plans based on Cost/Reliability Tradeoffs for Software Subject to Structural and Behavioral Changes MAINTENANCE PHASE
  • 51. 51 A MAINTENANCE PLAN is a set of maintenance actions that address a certain requirement. (software) MAINTENANCE ACTIONS Ø  Introducing new software units Ø  Replacing existing unit instances with functionally equivalent ones Ø  Modifying the interactions between software units in a certain functionality
  • 52. 52 FEATURES N. Maintaining a smartphone mobile application Trancoding Translation Merging Compression Multimedia ServiceClient Locations Database The Multimedia Service sends (i) news in textual format, (ii) news with both textual and video content, and (iii) a geographical map with the user location to the Client. EXISTING UNITS 7 NUM. INSTANCES 3 AVAILABLE NEW UNITS 4 NUM. FUNCTIONALITY 3 A Running Example
  • 53. 53 Requirement ID   Maintenance Plan ID Maintenance Plan Description req1   mp11 mp12 Adding a new service newun1 Adding a new service newun4 AND Replacing Client with its second instance req2     mp21 mp22 mp23 Replacing Trancoding with its second instance Adding a new service newun3 Adding a new service newun4 req3 mp31 mp32 mp33 Adding a new service newun2 Adding a new service newun1 AND Replacing Locations Database with its first instance Replacing Multimedia Service with its sec. instance Maintaining a smartphone mobile application Requirement ID Requirement Specification req1 The compression should also be performed in a different way req2   The video should also be provided in AVI format req3 The map should provide additional information, such as a list of the closer hotels or restaurants CHANGE SCENARIO MAINTENANCE PLANS
  • 54. 54 min | || | Cost c x c zij ij h h NewS j Aval i n h i = + === ∑∑∑ 111 … Re ( ) ( ) | || | l pexec x z Rk ij ij newbpex h h newbpn h NewS j Aval i n k K ki kh i = − − ⎛ ⎝ ⎜ ⎞ ⎠ ⎟ ≥ ==== ∏∑∏∑ 1 1 1111 θ θ OPTIMIZATION MODEL Number of busy periods that the existing unit i shows in the SD k after the maintenance phase …existing units
  • 55. 55 min | || | Cost c x c zij ij h h NewS j Aval i n h i = + === ∑∑∑ 111 … Re ( ) ( ) | || | l pexec x z Rk ij ij newbpex h h newbpn h NewS j Aval i n k K ki kh i = − − ⎛ ⎝ ⎜ ⎞ ⎠ ⎟ ≥ ==== ∏∑∏∑ 1 1 1111 θ θ OPTIMIZATION MODEL Number of busy periods that the new unit h shows in the SD k after the maintenance phase …new units
  • 56. 56 FEATURES N. Maintaining a smartphone mobile application Trancoding Translation Merging Compression Multimedia ServiceClient Locations Database The Multimedia Service sends (i) news in textual format, (ii) news with both textual and video content, and (iii) a geographical map with the user location to the Client. EXISTING UNITS 7 NUM. INSTANCES 3 AVAILABLE NEW UNITS 4 NUM. FUNCTIONALITY 3 A Running Example
  • 57. 57 Requirement ID   Maintenance Plan ID Maintenance Plan Description req1   mp11 mp12 Adding a new service newun1 Adding a new service newun4 AND Replacing Client with its second instance req2     mp21 mp22 mp23 Replacing Trancoding with its second instance Adding a new service newun3 Adding a new service newun4 req3 mp31 mp32 mp33 Adding a new service newun2 Adding a new service newun1 AND Replacing Locations Database with its first instance Replacing Multimedia Service with its sec. instance Maintaining a smartphone mobile application Requirement ID Requirement Specification req1 The compression should also be performed in a different way req2   The video should also be provided in AVI format req3 The map should provide additional information, such as a list of the closer hotels or restaurants CHANGE SCENARIO MAINTENANCE PLANS
  • 58. 58 Model Solution for multiple values of the probability of failure of new units newun1 and newun4 and of R. 0 10 20 30 40 50 60 70 80 [0,0003, 0,00002] [0,0003, 0,005] [0,005, 0,00002] [0,005, 0,005] Cost(inKiloEuros,KE) 0,92 0,95 0,97 0,99 Reliability threshold R Model Solutions
  • 59. 59 Model Solution for multiple values of the probability of failure of new units newun1 and newun4 and of R. 0 10 20 30 40 50 60 70 80 [0,0003, 0,00002] [0,0003, 0,005] [0,005, 0,00002] [0,005, 0,005] Cost(inKiloEuros,KE) 0,92 0,95 0,97 0,99 Reliability threshold R Model Solutions
  • 60. 60 0 10 20 30 40 50 60 70 80 [0,0003, 0,00002] [0,0003, 0,005] [0,005, 0,00002] [0,005, 0,005] Cost(inKiloEuros,KE) 0,92 0,95 0,97 0,99 Reliability threshold R Model Solutions CHANGING THE MAINTENANCE PLAINS FOR A REQUIREMENT: If mp11 is Replacing the service Compression with its second instance available INSTEAD OF Adding a new service newun1, we get the following solution: [u11, u21, u31, u42, u51, u61, u72] [newun2], [mp11,mp21,mp31]. It costs 51 KE.
  • 61. 61 Resulting static structure of the system after the application of mp11, mp21 and mp31. Trancoding - u42 Translation - u51 Merging - u61 Compression - u72 Multimedia Service- u21Client - u11 Locations Database- u31 newun2 Maintaining a smartphone mobile application A Running Example
  • 62. 62 Resulting a SD after the application of mp11, mp21 and mp31. removed interactions added interactions Maintaining a smartphone mobile application A Running Example
  • 63. 63 Requirement ID   Maintenance Plan ID Maintenance Plan Description req1   mp11 mp12 Adding a new service newun1 Adding a new service newun4 AND Replacing Client with its second instance req2     mp21 mp22 mp23 Replacing Trancoding with its second instance Adding a new service newun3 Adding a new service newun4 req3 mp31 mp32 mp33 Adding a new service newun2 Adding a new service newun1 AND Replacing Locations Database with its first instance Replacing Multimedia Service with its sec. instance Maintaining a smartphone mobile application Requirement ID Requirement Specification req1 The compression should also be performed in a different way req2   The video should also be provided in AVI format req3 The map should provide additional information, such as a list of the closer hotels or restaurants CHANGE SCENARIO MAINTENANCE PLANS
  • 64. 64 ADAPTATION FRAMEWORK - Selecting Optimal Maintenance Plans based on Cost/ Reliability Tradeoffs. -  Optimization of adaptation plans for a service-oriented architecture with cost, reliability, availability and performance tradeoff.
  • 65. 65 SOA domain … Some Extentions … Let us assume that the composite service structure of each service offered by the system is specified by using BPEL. An example of activity tree that represents a BPEL process (ii)  a significant subset of operators expressing the composition of services are considered (e.g., while, flow,…); (iii)  based on these different kinds of structured activities, a new reliability model is defined; (iv) availability and performance constraints are added to the model. ADAPTATION ACTIVITIES: •  Introducing new software services •  Replacing existing service instances with functionally equivalent ones •  Modifying the interactions among services in a certain external service
  • 69. 69An example of Output of the optimization model The smartphone application example
  • 70. 70 Static aspect of the system after the application of ap12, ap23 and ap32 An example of Output of the optimization model
  • 71. 71 A BPEL tree after the application of ap12, ap23 and ap32
  • 72. 72 ADAPTATION FRAMEWORK - Selecting Optimal Maintenance Plans based on Cost/ Reliability Tradeoffs. -  Optimization of adaptation plans for a service-oriented architecture with cost, reliability, availability and performance tradeoff. Other than the software architecture,the hardware architecture is taken into account.
  • 73. 73 SUM UP AND FUTURE PERSPECTIVES
  • 74. 74 • Quality attributes (closed form!) • Model goal (reconfiguration, component selection, …) • Target variables • Parameters to estimate • Any “composition” to exploit? • Any specific context (services, components, cloud,…)? • Role of workload and operational profile • Model solution technique (exact, metaheuristics, …) Optimization models – main aspects to consider
  • 75. 75 We have introduced several optimization models for non- functional requirement validation PROS •  Easy representation of modular software (e.g. component-based, service-oriented) •  Flexibility in the definition of cost functions •  Limited solution time for small/medium size problems (i.e. about 20 components and 10 instances for each component) •  Easy exploration of multiple alternatives (quantification!) •  Capability of embedding stochastic parameters Conclusions
  • 76. 76 We have introduced several optimization models for non- functional requirement validation CONS •  Only closed-form expressions can be adopted, and they do not capture all relevant aspects of non-functional attributes •  Exponential solution time for growing size problems (possibly mitigated with meta-heuristic approaches) •  … •  Borderline research topic between Optimization and Software Engineering -> not the highest acceptance rate of papers J Conclusions
  • 77. 77 •  Application on real large scale problems (metaheuristics) •  Optimization models as a support to runtime decisions (need quick-and-dirty solution approahes) •  Stochastic optimization •  Robust optimization • … Future perspectives
  • 78. 78 The ideas and results presented in this talk have been achieved in collaboration with: Vittorio Cortellessa, Università dell’Aquila Fabrizio Marinelli, Università Politecnica delle Marche Ivica Crnkovic, Mälardalen University Raffaela Mirandola, Politecnico di Milano Acknowledgments
  • 79. 79Some of our references… •  Vittorio Cortellessa, Raffaela Mirandola, Pasqualina Potena: “Managing the evolution of a software architecture at minimal cost under performance and reliability constraints”. Science of Computer Programming (Elsevier), Vol. 98, Part 4, 2015, pp. 439-463. •  Pasqualina Potena: “Optimization of adaptation plans for a service-oriented architecture with cost, reliability, availability and performance tradeoff”, Journal of Systems and Software (Elsevier), Vol. 86, Issue 3, March 2013, pp. 624-648. •  Vittorio Cortellessa, Raffaela Mirandola, Pasqualina Potena: Selecting Optimal Maintenance Plans Based on Cost/Reliability Tradeoffs for Software Subject to Structural and Behavioral Changes. CSMR 2010:21-30 •  Vittorio Cortellessa, Fabrizio Marinelli, Pasqualina Potena: An optimization framework for "build-or-buy" decisions in software architecture. Computers & OR (COR) 35(10):3090-3106 (2008) •  Vittorio Cortellessa, Ivica Crnkovic, Fabrizio Marinelli, Pasqualina Potena: Experimenting the Automated Selection of COTS Components Based on Cost and System Requirements. J. UCS (JUCS) 14(8):1228-1255 (2008) •  Vittorio Cortellessa, Ivica Crnkovic, Fabrizio Marinelli, Pasqualina Potena: Driving the selection of cots components on the basis of system requirements. ASE 2007:413-416 •  Vittorio Cortellessa, Fabrizio Marinelli, Pasqualina Potena: Automated Selection of Software Components Based on Cost/Reliability Tradeoff. EWSA 2006:66-81