Abstract
In modern software development processes, existing software components are increasingly used to implement functionality instead of developing it from scratch. Reuse of individual components or even more complex subsystems leads to more cost-efficient development and higher quality of software. Subsystems often offer a variety of features whose use is associated with unclear effects on the quality attributes of the software architecture, such as performance. It is unclear, whether the quality requirements for the system can be met by using a certain feature of a particular subsystem. After initial selection, features must be incorporated in the target architecture. Due to a multitude of possibilities of placing the subsystem in the target system to be used, many architectural candidates may result which have to be evaluated in existing decision support solutions. The approach presented here enables software architects to automatically evaluate with the help of software architecture models the effects on quality of using individual features in an existing software architecture. The result helps to automatically evaluate design decisions regarding features and to decide whether their use is compatible with the quality requirements. We show the benefits of our approach using different decision scenarios driven by features and their placement alternatives. All scenarios are automatically evaluated, demonstrating how decisions can be made to best meet the requirements.
Keywords
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsNotes
- 1.
Please note that the approach is not limited to systems that build on each other and are related in their architecture.
References
Aleti, A., Bjornander, S., Grunske, L., Meedeniya, I.: ArcheOpterix: an extendable tool for architecture optimization of AADL models. In: MOMPES 2009 (2009)
Andres, C., Camacho, C., Llana, L.: A formal framework for software product lines. Inf. Softw. Technol. 55, 1925–1947 (2013)
Atkinson, C., et al.: Component-Based Product Line Engineering with UML. Addison-Wesley Longman Publishing Co., Inc., Boston (2002)
Bachmann, F., Bass, L., Klein, M., Shelton, C.: Designing software architectures to achieve quality attribute requirements. In: SW Proceedings (2005)
Bayer, J., et al.: PuLSE: a methodology to develop software product lines. In: SSR 1999, ACM (1999)
Bosch, J.: Design and Use of Software Architectures: Adopting and Evolving a Product-line Approach. ACM Press/Addison-Wesley Publishing Co., Boston (2000)
Busch, A., Schneider, Y., Koziolek, A., et al.: Modelling the structure of reusable solutions for architecture-based quality evaluation. In: CloudSPD 2016. IEEE (2016)
Eckert, M.: Konditionale Platzierung von Architekturelementen zur Optimierung von Software-Architekt. Master’s thesis, Karlsruhe Institute of Technology (2018)
Koziolek, A.: Automated Improvement of Software Architecture Models for Performance and Other Quality Attributes. KIT, Karlsruhe (2013)
Koziolek, A., Koziolek, H., et al.: PerOpteryx: automated application of tactics in multi-objective software architecture optimization. In: QoSA-ISARCS 2011 (2011)
Martens, A., Koziolek, H., et al.: Automatically improve software models for performance, reliability and cost using genetic algorithms. In: WOSP/SIPEW ICPE 2010 (2010)
Reussner, R.H., Becker, S.: Modeling and Simulating Software Architectures: The Palladio Approach. The MIT Press, Cambridge (2016)
Vogel, T.: mRUBiS: an exemplar for model-based architectural self-healing and self-optimization. In: SEAMS 2018. ACM (2018)
Weiss, D.M., Lai, C.T.R.: Software Product-line Engineering: A Family-Based Software Development Process. Addison-Wesley, Boston (1999)
Author information
Authors and Affiliations
Corresponding authors
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Switzerland AG
About this paper
Cite this paper
Busch, A., Fuchß, D., Eckert, M., Koziolek, A. (2019). Assessing the Quality Impact of Features in Component-Based Software Architectures. In: Bures, T., Duchien, L., Inverardi, P. (eds) Software Architecture. ECSA 2019. Lecture Notes in Computer Science(), vol 11681. Springer, Cham. https://doi.org/10.1007/978-3-030-29983-5_14
Download citation
DOI: https://doi.org/10.1007/978-3-030-29983-5_14
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-29982-8
Online ISBN: 978-3-030-29983-5
eBook Packages: Computer ScienceComputer Science (R0)