SAAM: a method for analyzing the properties of software architectures
ICSE '94 Proceedings of the 16th international conference on Software engineering
Generative programming: methods, tools, and applications
Generative programming: methods, tools, and applications
Theory of software reliability based on components
ICSE '01 Proceedings of the 23rd International Conference on Software Engineering
Software Engineering Economics
Software Engineering Economics
Software Testability: The New Verification
IEEE Software
A survey on software architecture analysis methods
IEEE Transactions on Software Engineering
Abstract State Machines: A Method for High-Level System Design and Analysis
Abstract State Machines: A Method for High-Level System Design and Analysis
Metaheuristics in combinatorial optimization: Overview and conceptual comparison
ACM Computing Surveys (CSUR)
Model-Based Performance Prediction in Software Development: A Survey
IEEE Transactions on Software Engineering
DSM '05 Proceedings of the 2nd international doctoral symposium on Middleware
Identifying "good" architectural design alternatives with multi-objective optimization strategies
Proceedings of the 28th international conference on Software engineering
Architecture-Based Software Reliability Analysis: Overview and Limitations
IEEE Transactions on Dependable and Secure Computing
An optimization framework for "build-or-buy" decisions in software architecture
Computers and Operations Research
A Scenario-Based Validation Language for ASMs
ABZ '08 Proceedings of the 1st international conference on Abstract State Machines, B and Z
Incorporating fault tolerance tactics in software architecture patterns
Proceedings of the 2008 RISE/EFTS Joint International Workshop on Software Engineering for Resilient Systems
Self-adaptive software: Landscape and research challenges
ACM Transactions on Autonomous and Adaptive Systems (TAAS)
Model evolution by run-time parameter adaptation
ICSE '09 Proceedings of the 31st International Conference on Software Engineering
Quality-driven architecture development using architectural tactics
Journal of Systems and Software
Automatic, Model-Based Software Performance Improvement for Component-based Software Designs
Electronic Notes in Theoretical Computer Science (ENTCS)
Reconfigurable SCA Applications with the FraSCAti Platform
SCC '09 Proceedings of the 2009 IEEE International Conference on Services Computing
A framework for utility-based service oriented design in SASSY
Proceedings of the first joint WOSP/SIPEW international conference on Performance engineering
Proceedings of the first joint WOSP/SIPEW international conference on Performance engineering
Software adaptation patterns for service-oriented architectures
Proceedings of the 2010 ACM Symposium on Applied Computing
Rule-based automatic software performance diagnosis and improvement
Performance Evaluation
Metaheuristic Optimization of Large-Scale QoS-aware Service Compositions
SCC '10 Proceedings of the 2010 IEEE International Conference on Services Computing
Dynamic Composition of Services in Sensor Networks
SCC '10 Proceedings of the 2010 IEEE International Conference on Services Computing
How do architecture patterns and tactics interact? A model and annotation
Journal of Systems and Software
Effective self adaptation by integrating adaptive framework with architectural patterns
Proceedings of the 1st Amrita ACM-W Celebration on Women in Computing in India
The qnetworks toolbox: a software package for queueing networks analysis
ASMTA'10 Proceedings of the 17th international conference on Analytical and stochastic modeling techniques and applications
On the role of architectural styles in improving the adaptation support of middleware platforms
ECSA'10 Proceedings of the 4th European conference on Software architecture
Design for adaptation of service-based applications: main issues and requirements
ICSOC/ServiceWave'09 Proceedings of the 2009 international conference on Service-oriented computing
A model-driven process for engineering a toolset for a formal method
Software—Practice & Experience
Self-Adaptation of Service Based Systems Based on Cost/Quality Attributes Tradeoffs
SYNASC '10 Proceedings of the 2010 12th International Symposium on Symbolic and Numeric Algorithms for Scientific Computing
Automated selection of software components based on cost/reliability tradeoff
EWSA'06 Proceedings of the Third European conference on Software Architecture
AsmetaSMV: a way to link high-level ASM models to low-level NuSMV specifications
ABZ'10 Proceedings of the Second international conference on Abstract State Machines, Alloy, B and Z
A process to effectively identify “guilty” performance antipatterns
FASE'10 Proceedings of the 13th international conference on Fundamental Approaches to Software Engineering
Checking component composability
SC'06 Proceedings of the 5th international conference on Software Composition
A component-based middleware platform for reconfigurable service-oriented architectures
Software—Practice & Experience
Proceedings of the 27th IEEE/ACM International Conference on Automated Software Engineering
An optimization process for adaptation space exploration of service-oriented applications
SOSE '11 Proceedings of the Proceedings of 2011 IEEE 6th International Symposium on Service Oriented System Engineering
Reliability Prediction for Service Component Architectures with the SCA-ASM Component Model
SEAA '12 Proceedings of the 2012 38th Euromicro Conference on Software Engineering and Advanced Applications
Hi-index | 0.00 |
Service-oriented applications may require adaptation to tackle changing user needs, system intrusions or faults, changing operational environment, resource variability, etc. In order to achieve the right trade off among the functional requirements, software qualities (such as performance and reliability) and the adaptation cost itself, the adaptation decisions should involve the (a priori) evaluation of new alternatives to the current application design. However, the generation and evaluation of design alternatives is often time-consuming, it can be error-prone and can lead to suboptimal design decisions, especially if carried out manually by system maintainers. This article proposes an automatic optimization process for adaptation space exploration of service-oriented applications based on trade-offs between functional and extra-functional requirements. The proposed method combines the use of metaheuristic search techniques and functional/extra-functional patterns (i.e., architectural design patterns and tactics). Besides, the proposed methodology relies on the standard Service Component Architecture (SCA) for heterogeneous service assembly and its runtime platforms. As a proof-of-concept, this article provides also an example of instantiation of the process together with an experimentation on a sample application and a numerical evaluation of the scalability of the approach.