ABSTRACT
Self-adaptive systems (SAS) can adapt their behavior to suit user preferences or contexts, as well as monitor their performance and adjust it if necessary. In addition to adaptation operations, self-adaptive systems communicate with sensors, actuators, and other devices. Due to the complexity and dynamism of SAS, many situations can compromise the functioning of the system, such as faults in adaptations, low performance to execute tasks, and context inconsistencies. To prevent the system of these problems, it is essential to ensure high levels of quality. However, due to the peculiarities of these systems, there are still challenges to perform quality evaluations in these systems. In this sense, this paper proposes a discussion about the quality evaluation of self-adaptive systems in the last years. As a result, we identify challenges, limitations and research opportunities related to SAS quality evaluation.
- S. Adjoyan and A. Serial. 2017. Reconfigurable service-based architecture based on variability description. In Proceedings of the Symposium on Applied Computing. ACM, 1154--1161.Google Scholar
- C. I. M. Bezerra, R. M. C. Andrade, J. Monteiro, and D. Cedraz. 2018. Aggregating Measures using Fuzzy Logic for Evaluating Feature Models. In Proceedings of the 12th International Workshop on Variability Modelling of Software-Intensive Systems. ACM, 35--42.Google Scholar
- C. I. M. Bezerra, J. Barbosa, J. H. Freires, R. M. C. Andrade, and J. Monteiro. 2016. DyMMer: a measurement-based tool to support quality evaluation of DSPL feature models. In Proceedings of the 20th International Systems and Software Product Line Conference. ACM, 314--317.Google Scholar
- Y. Brun, G. Di Marzo Serugendo, C. Gacek, H. Giese, H. Kienle, M. Litoiu, H. Müller, M. Pezzè, and M. Shaw. 2009. Engineering Self-Adaptive Systems through Feedback Loops. Springer Berlin Heidelberg, Berlin, Heidelberg, 48--70. https: //doi.org/10.1007/978-3-642-02161-9_3Google Scholar
- M. Camilli, C. Bellettini, A. Gargantini, and P. Scandurra. 2018. Online Model-Based Testing under Uncertainty. In 2018 IEEE 29th International Symposium on Software Reliability Engineering (ISSRE). 36--46. https://doi.org/10.1109/ISSRE.2018.00015Google ScholarCross Ref
- C. Cetina, P. Giner, J. Fons, and V. Pelechano. 2013. Prototyping Dynamic Software Product Lines to evaluate run-time reconfigurations. Science of Computer Programming 78, 12 (2013), 2399--2413. https://doi.org/10.1016/j.scico.2012.06.007 Special Section on International Software Product Line Conference 2010 and Fundamentals of Software Engineering (selected papers of FSEN 2011).Google ScholarDigital Library
- B. Chen, X. Peng, Y. Liu, S. Song, J. Zheng, and W. Zhao. 2016. Architecture-based behavioral adaptation with generated alternatives and relaxed constraints. IEEE Transactions on Services Computing (2016).Google Scholar
- B. H. C. Cheng, R. de Lemos, H. Giese, P. Inverardi, J. Magee, J. Andersson, B. Becker, N. Bencomo, Y. Brun, B. Cukic, G. Di Marzo Serugendo, S. Dustdar, A. Finkelstein, C. Gacek, K. Geihs, V. Grassi, G. Karsai, H. M. Kienle, J. Kramer, M. Litoiu, S. Malek, R. Mirandola, H. A. Müller, S. Park, M. Shaw, M. Tichy, M. Tivoli, D. Weyns, and J. Whittle. 2009. Software Engineering for Self-Adaptive Systems: A Research Roadmap. Springer Berlin Heidelberg, Berlin, Heidelberg, 1--26. https://doi.org/10.1007/978-3-642-02161-9_1Google Scholar
- J. Criado, S. Martínez-Fernández, D. Ameller, L. Iribarne, and N. Padilla. 2016. Exploring Quality-Aware Architectural Transformations at Run-Time: The ENIA Case. In Model and Data Engineering, Ladjel Bellatreche, Óscar Pastor, Jesús M. Almendros Jiménez, and Yamine Aït-Ameur (Eds.). Springer International Publishing, Cham, 288--302.Google Scholar
- J. Criado, S. Martínez-Fernández, D. Ameller, L. Iribarne, N. Padilla, and A. Jedlitschka. 2018. Quality-aware architectural model transformations in adaptive mashups user interfaces. Fundamenta Informaticae 162, 4 (2018), 283--309.Google ScholarDigital Library
- R. Edwards and N. Bencomo. 2018. DeSiRE: Further Understanding Nuances of Degrees of Satisfaction of Non-functional Requirements Trade-off. In Proceedings of the 13th International Conference on Software Engineering for Adaptive and Self-Managing Systems (SEAMS '18). ACM, New York, NY, USA, 12--18. https://doi.org/10.1145/3194133.3194142Google Scholar
- A. Farahani, E. Nazemi, G. Cabri, and A. Rafizadeh. 2017. An evaluation method for Self-Adaptive systems. 2016 IEEE International Conference on Systems, Man, and Cybernetics, SMC 2016 - Conference Proceedings (2017), 2814--2820. https: //doi.org/10.1109/SMC.2016.7844665 cited By 0.Google Scholar
- J. M. Franco, F. Correia, R. Barbosa, M. Zenha-Rela, B. Schmerl, and D. Garlan. 2016. Improving self-adaptation planning through software architecture-based stochastic modeling. Journal of Systems and Software 115 (2016), 42--60. https://doi.org/10.1016/j.jss.2016.01.026Google ScholarDigital Library
- A. Goldsteen, M. Moffie, T. Bandyszak, N.G. Mohammadi, X. Chen, S. Meichanetzoglou, S. Ioannidis, and P. Chatziadam. 2015. A tool for monitoring and maintaining system trustworthiness at runtime. CEUR Workshop Proceedings 1342 (2015), 142--147. cited By 3.Google Scholar
- A. Imed and M. Graiet. 2017. An automatic configuration algorithm for reliable and efficient composite services. IEEE Transactions on Network and Service Management 15, 1 (2017), 416--429.Google ScholarCross Ref
- ISO. 2011. IEC 25010: 2011 systems and software engineering--systems and software quality requirements and evaluation (square)--system and software quality models. International Organization for Standardization 34 (2011), 2910.Google Scholar
- E. Kaddoum, C. Raibulet, J. Georgé,G. Picard,and M. Gleizes. 2010. Criteria for the Evaluation of Self-Systems. In Proceedings of the 2010 ICSE Workshop on Software Engineering for Adaptive and Self-Managing Systems (SEAMS '10). ACM, New York, NY, USA, 29--38. https://doi.org/10.1145/1808984.1808988Google Scholar
- R. Laddaga and P. Robertson. 2004. Self adaptive software: A position paper. In SELF-STAR: International Workshop on Self- Properties in Complex Information Systems, Vol. 31. 19.Google Scholar
- R. Moein Far and A. A. Barforoush. 2017. Using models at run-time to measure quality of SAS in the large-scale software systems. In 2017 9th International Conference on Information and Knowledge Technology (IKT). IEEE, 99--103.Google Scholar
- F. A. Moghaddam, G. Procaccianti, G. A. Lewis, and P. Lago. 2018. Empirical validation of cyber-foraging architectural tactics for surrogate provisioning. Journal of Systems and Software 138 (2018), 37--51.Google ScholarCross Ref
- S. Neti and H. A. Muller. 2007. Quality Criteria and an Analysis Framework for Self-Healing Systems. In International Workshop on Software Engineering for Adaptive and Self-Managing Systems (SEAMS '07). 6--6. https://doi.org/10.1109/SEAMS.2007.15Google ScholarDigital Library
- S. Park, S. Park, and K. Ma. 2018. An Automatic User Activity Analysis Method for Discovering Latent Requirements: Usability Issue Detection on Mobile Applications. Sensors 18, 9 (2018), 2963.Google Scholar
- L.H.G. Paucar and N. Bencomo. 2017. The reassessment of preferences of non-functional requirements for better informed decision-making in self-adaptation. Proceedings - 2016 IEEE 24th International Requirements Engineering Conference Workshops, REW 2016 (2017), 32--38. https://doi.org/10.1109/REW.2016.38 cited By 5.Google Scholar
- L. Pessoa, P. Fernandes, T. Castro, V. Alves, G. N. Rodrigues, and H. Carvalho. 2017. Building reliable and maintainable Dynamic Software Product Lines: An investigation in the Body Sensor Network domain. Information and Software Technology 86 (2017), 54--70. https://doi.org/10.1016/j.infsof.2017.02.002Google ScholarDigital Library
- P. Potena. 2013. Optimization of adaptation plans for a service-oriented architecture with cost, reliability, availability and performance tradeoff. Journal of Systems and Software 86, 3 (2013), 624--648. https://doi.org/10.1016/j.jss.2012.10.929Google ScholarDigital Library
- C. Raibulet. 2014. Hints on Quality Evaluation of Self-Systems. In 2014 IEEE Eighth International Conference on Self-Adaptive and Self-Organizing Systems. 185--186. https://doi.org/10.1109/SASO.2014.36Google Scholar
- C. Raibulet, F. Arcelli Fontana, R. Capilla, and C. Carrillo. 2016. An Overview on Quality Evaluation of Self-Adaptive Systems. Managing Trade-offs in Adaptable Software Architectures (2016).Google Scholar
- C. Raibulet, F. Arcelli Fontana, R. Capilla, and C. Carrillo. 2017. Chapter 13 - An Overview on Quality Evaluation of Self-Adaptive Systems. In Managing Trade-Offs in Adaptable Software Architectures, Ivan Mistrik, Nour Ali, Rick Kazman, John Grundy, and Bradley Schmerl (Eds.). Morgan Kaufmann, Boston, 325--352. https://doi.org/10.1016/B978-0-12-802855-1.00013-7Google Scholar
- A. Rodrigues, R. D. Caldas, G. N. Rodrigues, T. Vogel, and P. Pelliccione. 2018. A learning approach to enhance assurances for real-time self-adaptive systems. In 2018 IEEE/ACM 13th International Symposium on Software Engineering for Adaptive and Self-Managing Systems (SEAMS). IEEE, 206--216.Google Scholar
- L. Sabatucci, V. Seidita, and M. Cossentino. 2018. The four types of self-adaptive systems: A metamodel. Smart Innovation, Systems and Technologies 76 (2018), 440--450. https://doi.org/10.1007/978-3-319-59480-4_44 cited By 1.Google ScholarCross Ref
- A. A. A. Saeed and S. Lee. 2018. Non-functional Requirements Trade-Off in Self-Adaptive Systems. In 2018 4th International Workshop on Requirements Engineering for Self-Adaptive, Collaborative, and Cyber Physical Systems (RESACS). IEEE, 9--15.Google Scholar
- M. Salehie and L. Tahvildari. 2009. Self-adaptive software: Landscape and research challenges. ACM transactions on autonomous and adaptive systems (TAAS) 4, 2 (2009), 14.Google Scholar
- L. E. Sanchez, J. A. Diaz-Pace, A. Zunino, S. Moisan, and J. Rigault. 2015. An approach based on feature models and quality criteria for adapting component-based systems. Journal of Software Engineering Research and Development 3, 1 (23 Jun 2015), 10. https://doi.org/10.1186/s40411-015-0022-1Google ScholarCross Ref
- T. Sanislav, G. Mois, and L. Miclea. 2016. An approach to model dependability of cyber-physical systems. Microprocessors and Microsystems 41 (2016), 67--76. https://doi.org/10.1016/j.micpro.2015.11.021Google ScholarDigital Library
- E. Serral, P. Sernani, and F. Dalpiaz. 2018. Personalized adaptation in pervasive systems via non-functional requirements. Journal of Ambient Intelligence and Humanized Computing 9, 6 (01 Nov 2018), 1729--1743. https://doi.org/10.1007/s12652-017-0611-4Google ScholarCross Ref
- P. Smiari and S. Bibi. 2018. A Smart City Application Modeling Framework: A Case Study on Re-engineering a Smart Retail Platform. In 2018 44th Euromicro Conference on Software Engineering and Advanced Applications (SEAA). IEEE, 111--118.Google Scholar
- B.Vogel-Heuser and J. Prieler. 2017. Evaluation of selected metrics for flexibility of Cyber Physical Production Systems. In 2017 13th IEEE Conference on Automation Science and Engineering(CASE). IEEE, 701--708.Google Scholar
- J. Yang, G. Huang, W. Zhu, X. Cui, and H. Mei. 2009. Quality attribute tradeoff through adaptive architectures at runtime. Journal of Systems and Software 82, 2 (2009), 319--332. https://doi.org/10.1016/j.jss.2008.06.039Google ScholarDigital Library
Index Terms
- Quality Evaluation of Self-Adaptive Systems: Challenges and Opportunities
Recommendations
Multi-Staged Quality Assurance for Self-Adaptive Systems
SASOW '12: Proceedings of the 2012 IEEE Sixth International Conference on Self-Adaptive and Self-Organizing Systems WorkshopsThe emerging approach to tackle the increasing complexity of today's software systems is the use of self-adaptation techniques. Most often, self-adaptation is introduced in terms of externalized adaptation rules (e.g. event-condition-action rules). ...
Adaptive Knowledge Bases in Self-Adaptive System Design
SEAA '15: Proceedings of the 2015 41st Euromicro Conference on Software Engineering and Advanced ApplicationsSelf-adaptive systems allow for flexible solutions in changing environments. Usually, a fixed set of predefined rules is used to define the adaptation possibilities of a system. The main problem of such systems is to cope with environment behaviours ...
Modeling of correct self-adaptive systems: a graph transformation system based approach
CSTST '08: Proceedings of the 5th international conference on Soft computing as transdisciplinary science and technologySoftware is always embedded in a social and technical context which change over time and therefore also the software has to be adjusted over time to preserve its value. Self-adaptive systems provide a vision how the systems can become capable of doing a ...
Comments