Software architecture: perspectives on an emerging discipline
Software architecture: perspectives on an emerging discipline
Multimedia Systems
Architecture-based runtime software evolution
Proceedings of the 20th international conference on Software engineering
Experience with performing architecture tradeoff analysis
Proceedings of the 21st international conference on Software engineering
A Classification and Comparison Framework for Software Architecture Description Languages
IEEE Transactions on Software Engineering
Software maintenance and evolution: a roadmap
Proceedings of the Conference on The Future of Software Engineering
Monitoring, security, and dynamic configuration with the dynamicTAO reflective ORB
IFIP/ACM International Conference on Distributed systems platforms
Design and use of software architectures: adopting and evolving a product-line approach
Design and use of software architectures: adopting and evolving a product-line approach
Communications of the ACM - Adaptive middleware
Middleware for real-time and embedded systems
Communications of the ACM - Adaptive middleware
Core J2EE Patterns: Best Practices and Design Strategies
Core J2EE Patterns: Best Practices and Design Strategies
A survey on software architecture analysis methods
IEEE Transactions on Software Engineering
Initial Design of the "Plug-n-Analyze" Framework for Architecture Tradeoff Analysis
COMPSAC '99 23rd International Computer Software and Applications Conference
ABC/ADL: An ADL Supporting Component Composition
ICFEM '02 Proceedings of the 4th International Conference on Formal Engineering Methods: Formal Methods and Software Engineering
PKUAS: An Architecture-Based Reflective Component Operating Platform
FTDCS '04 Proceedings of the 10th IEEE International Workshop on Future Trends of Distributed Computing Systems
SAM: A Tool for Software Architecture Modeling and Performance Analysis
QEST '05 Proceedings of the Second International Conference on the Quantitative Evaluation of Systems
The Model and Implementation of Component Array Container
COMPSAC '06 Proceedings of the 30th Annual International Computer Software and Applications Conference - Volume 02
Service configurator: a pattern for dynamic configuration of services
COOTS'97 Proceedings of the 3rd conference on USENIX Conference on Object-Oriented Technologies (COOTS) - Volume 3
Proceedings of the ACM/IFIP/USENIX 2003 International Conference on Middleware
An architecture for next generation middleware
Middleware '98 Proceedings of the IFIP International Conference on Distributed Systems Platforms and Open Distributed Processing
QuO's runtime support for quality of service in distributed objects
Middleware '98 Proceedings of the IFIP International Conference on Distributed Systems Platforms and Open Distributed Processing
Software architecture design: evaluation and transformation
ECBS'99 Proceedings of the 1999 IEEE conference on Engineering of computer-based systems
Model-driven architectural monitoring and adaptation for autonomic systems
ICAC '09 Proceedings of the 6th international conference on Autonomic computing
Towards runtime optimization of software quality based on feedback control theory
Proceedings of the First Asia-Pacific Symposium on Internetware
A hybrid approach for multi-attribute qos optimisation in component based software systems
QoSA'10 Proceedings of the 6th international conference on Quality of Software Architectures: research into Practice - Reality and Gaps
Towards a methodology driven by relationships of quality attributes for qos-based analysis
Proceedings of the 4th ACM/SPEC International Conference on Performance Engineering
On the relationships between QoS and software adaptability at the architectural level
Journal of Systems and Software
Hi-index | 0.00 |
Quality attributes, e.g. performance and reliability, become more and more important for the development of software systems. One of the critical issues on quality assurance is how to make good enough tradeoffs between quality attributes that interfere with each other. Some architecture-based quality design and analysis methods are proposed to make tradeoffs at design time. However, many quality attributes depend on runtime contexts; it may be difficult and even impossible to make tradeoffs between them at design time. In this paper, we use an adaptive architecture model to capture candidate strategies for different quality attributes; the tradeoff, i.e. which strategies are more appropriate and thus applied, is postponed to runtime. The contribution of our approach is threefold. First, it makes use of existing architecture-based quality design and analysis methods to identify why and where quality attribute tradeoffs are necessary. Second, a traditional architecture description language is extended to support the modeling of an adaptive architecture, which records strategies for different quality attributes under different conditions. Third, a reflective middleware is used to monitor the runtime system, collect required information to determine appropriate strategies, and adapt the application's architecture to achieve expected quality attributes. This approach is demonstrated on J2EE.