lnu.sePublikationer
Ändra sökning
Länk till posten
Permanent länk

Direktlänk
Publikationer (10 of 13) Visa alla publikationer
Shevtsov, S. (2019). A Control-theoretic Approach to Realize Self-adaptive Software Systems with Guarantees. (Doctoral dissertation). Växjö: Linnaeus University Press
Öppna denna publikation i ny flik eller fönster >>A Control-theoretic Approach to Realize Self-adaptive Software Systems with Guarantees
2019 (Engelska)Doktorsavhandling, sammanläggning (Övrigt vetenskapligt)
Abstract [en]

Engineering modern software systems is a challenging task as these systems are subject to different types of uncertainties. Examples of such uncertainties are disturbances in the environment that are difficult to predict and goals that may change during operation. The idea of self-adaptation is to handle these uncertainties at runtime, when the knowledge becomes available to resolve them. As more software systems with strict requirements are designed to be self-adaptive, the need for adaptation guarantees is becoming a high-priority concern. Providing such guarantees with traditional architecture-based approaches has shown to be challenging, calling for new approaches to engineer self-adaptive systems. To tackle this challenge, this thesis studies control-based software adaptation (CBSA). CBSA applies principles from control theory to design self-adaptive software systems. More specifically, we address the following research problem using CBSA: how to realize self-adaptive software systems that satisfy multiple stakeholder requirements with guarantees in the presence of uncertainties.

The thesis addresses the research problem in two subsequent stages. The first stage focuses on satisfying multiple stakeholder requirements of different types, and providing adaptation guarantees. This stage starts with a systematic literature review of CBSA, which provides a comprehensive overview of the field, including existing CBSA approaches, applied models and controllers, and analyzed guarantees. From the review, we identify a number of gaps in the existing research and concrete challenges in addressing the research problem. Then, we devise SimCA, a control-theoretic approach to realize self-adaptive software systems that satisfy multiple requirements with guarantees. SimCA combines mathematical models of software system, a control-based adaptation mechanism, and formal analysis of the required guarantees. SimCA is also reusable, meaning that it can be applied to a family of cooperative software systems with strict requirements. The second research stage focuses on handling different types of uncertainty.We first discuss the types of uncertainty and study whether existing CBSA approaches try to deal with these types. We then introduce an enhanced approach called SimCA* that includes components to deal with uncertainty in software parameters, addition or removal of requirements at runtime and software component interactions. In order to obtain evidence about the applicability and reusability of SimCA and SimCA*, we apply informal exploratory case studies with three software systems with strict requirements from different domains.

Ort, förlag, år, upplaga, sidor
Växjö: Linnaeus University Press, 2019
Nationell ämneskategori
Datavetenskap (datalogi)
Forskningsämne
Data- och informationsvetenskap, Datavetenskap
Identifikatorer
urn:nbn:se:lnu:diva-81037 (URN)978-91-88898-49-4 (ISBN)978-91-88898-50-0 (ISBN)
Disputation
2019-03-29, D1136, Universitetsplatsen 1, Hud B/D, Vaxjo, 13:00 (Engelska)
Opponent
Handledare
Forskningsfinansiär
Vetenskapsrådet
Tillgänglig från: 2019-03-12 Skapad: 2019-03-11 Senast uppdaterad: 2019-09-16Bibliografiskt granskad
Shevtsov, S., Weyns, D. & Maggio, M. (2019). Self-adaptation of software using automatically generated control-theoretical solutions. In: Yijun Yu, Arosha Bandara, Shinichi Honiden, Zhenjiang Hu, Tetsuo Tamai, Hausi Muller, John Mylopoulos & Bashar Nuseibeh (Ed.), Engineering adaptive software systems: communications of NII Shonan Meetings (pp. 35-55). Springer
Öppna denna publikation i ny flik eller fönster >>Self-adaptation of software using automatically generated control-theoretical solutions
2019 (Engelska)Ingår i: Engineering adaptive software systems: communications of NII Shonan Meetings / [ed] Yijun Yu, Arosha Bandara, Shinichi Honiden, Zhenjiang Hu, Tetsuo Tamai, Hausi Muller, John Mylopoulos & Bashar Nuseibeh, Springer, 2019, s. 35-55Kapitel i bok, del av antologi (Övrigt vetenskapligt)
Abstract [en]

Control theory has contributed a set of foundational techniques to handle "change" at runtime in software applications. These techniques however have fundamental limitations as well: (i) they require the development and understanding of mathematical models; (ii) synthesizing solutions is often done on a per-problem basis, discouraging flexibility and generality. Software engineering, as a discipline, has always aimed at finding reusable and modular solutions. The combination of the desire to apply formally grounded control-theoretical principles and reuse existing solutions has motivated research on the topic of automatically generated control solutions. This research aims at designing control strategies in an automated way from data that qualifies the given problem at hand. This chapter provides an overview of the research topic of automatically generated control-theoretical solutions, explaining the key research contributions and paving the way for future research. © Springer Nature Singapore Pte Ltd. 2019. All Rights reserved.

Ort, förlag, år, upplaga, sidor
Springer, 2019
Nationell ämneskategori
Programvaruteknik
Forskningsämne
Datavetenskap, Programvaruteknik
Identifikatorer
urn:nbn:se:lnu:diva-94508 (URN)10.1007/978-981-13-2185-6_2 (DOI)2-s2.0-85078198507 (Scopus ID)9789811321856 (ISBN)9789811321849 (ISBN)
Tillgänglig från: 2020-05-12 Skapad: 2020-05-12 Senast uppdaterad: 2021-04-13Bibliografiskt granskad
Shevtsov, S., Weyns, D. & Maggio, M. (2019). SimCA*: A Control-theoretic Approach to Handle Uncertainty in Self-adaptive Systems with Guarantees. ACM Transactions on Autonomous and Adaptive Systems, 13(4), 1-34, Article ID 17.
Öppna denna publikation i ny flik eller fönster >>SimCA*: A Control-theoretic Approach to Handle Uncertainty in Self-adaptive Systems with Guarantees
2019 (Engelska)Ingår i: ACM Transactions on Autonomous and Adaptive Systems, ISSN 1556-4665, E-ISSN 1556-4703, Vol. 13, nr 4, s. 1-34, artikel-id 17Artikel i tidskrift (Refereegranskat) Published
Abstract [en]

Self-adaptation provides a principled way to deal with software systems' uncertainty during operation. Examples of such uncertainties are disturbances in the environment, variations in sensor readings, and changes in user requirements. As more systems with strict goals require self-adaptation, the need for formal guarantees in self-adaptive systems is becoming a high-priority concern. Designing self-adaptive software using principles from control theory has been identified as one of the approaches to provide guarantees. In general, self-adaptation covers a wide range of approaches to maintain system requirements under uncertainty, ranging from dynamic adaptation of system parameters to runtime architectural reconfiguration. Existing control-theoretic approaches have mainly focused on handling requirements in the form of setpoint values or as quantities to be optimized. Furthermore, existing research primarily focuses on handling uncertainty in the execution environment. This article presents SimCA*, which provides two contributions to the state-of-the-art in control-theoretic adaptation: (i) it supports requirements that keep a value above and below a required threshold, in addition to setpoint and optimization requirements; and (ii) it deals with uncertainty in system parameters, component interactions, system requirements, in addition to uncertainty in the environment. SimCA* provides guarantees for the three types of requirements of the system that is subject to different types of uncertainties. We evaluate SimCA* for two systems with strict requirements from different domains: an Unmanned Underwater Vehicle system used for oceanic surveillance and an Internet of Things application for monitoring a geographical area. The test results confirm that SimCA* can satisfy the three types of requirements in the presence of different types of uncertainty.

Ort, förlag, år, upplaga, sidor
ACM Publications, 2019
Nyckelord
Software, uncertainty, self-adaptation, control theory, SimCA*, IoT, UUV
Nationell ämneskategori
Data- och informationsvetenskap
Forskningsämne
Data- och informationsvetenskap, Datavetenskap
Identifikatorer
urn:nbn:se:lnu:diva-90330 (URN)10.1145/3328730 (DOI)000496481100002 ()2-s2.0-85069975685 (Scopus ID)
Tillgänglig från: 2019-11-29 Skapad: 2019-11-29 Senast uppdaterad: 2021-04-13Bibliografiskt granskad
Shevtsov, S., Berekmeri, M., Weyns, D. & Maggio, M. (2018). Control-Theoretical Software Adaptation: A Systematic Literature Review. IEEE Transactions on Software Engineering, 44(8), 784-810
Öppna denna publikation i ny flik eller fönster >>Control-Theoretical Software Adaptation: A Systematic Literature Review
2018 (Engelska)Ingår i: IEEE Transactions on Software Engineering, ISSN 0098-5589, E-ISSN 1939-3520, Vol. 44, nr 8, s. 784-810Artikel i tidskrift (Refereegranskat) Published
Abstract [en]

Modern software applications are subject to uncertain operating conditions, such as dynamics in the availability of services and variations of system goals. Consequently, runtime changes cannot be ignored, but often cannot be predicted at design time. Control theory has been identified as a principled way of addressing runtime changes and it has been applied successfully to modify the structure and behavior of software applications. Most of the times, however, the adaptation targeted the resources that the software has available for execution (CPU, storage, etc.) more than the software application itself. This paper investigates the research efforts that have been conducted to make software adaptable by modifying the software rather than the resource allocated to its execution. This paper aims to identify: the focus of research on control-theoretical software adaptation; how software is modeled and what control mechanisms are used to adapt software; what software qualities and controller guarantees are considered. To that end, we performed a systematic literature review in which we extracted data from 42 primary studies selected from 1512 papers that resulted from an automatic search. The results of our investigation show that even though the behavior of software is considered non-linear, research efforts use linear models to represent it, with some success. Also, the control strategies that are most often considered are classic control, mostly in the form of Proportional and Integral controllers, and Model Predictive Control. The paper also discusses sensing and actuating strategies that are prominent for software adaptation and the (often neglected) proof of formal properties. Finally, we distill open challenges for control-theoretical software adaptation.

Ort, förlag, år, upplaga, sidor
IEEE, 2018
Nyckelord
self-adaptive software, control theory, software adaptation
Nationell ämneskategori
Datorsystem
Forskningsämne
Data- och informationsvetenskap, Datavetenskap
Identifikatorer
urn:nbn:se:lnu:diva-69336 (URN)10.1109/TSE.2017.2704579 (DOI)000441791100004 ()2-s2.0-85052241956 (Scopus ID)
Tillgänglig från: 2017-12-16 Skapad: 2017-12-16 Senast uppdaterad: 2021-04-13Bibliografiskt granskad
Shevtsov, S. (2017). A Control-based Approach for Self-adaptive Software Systems with Formal Guarantees. (Licentiate dissertation). Växjö: Linnaeus University Press
Öppna denna publikation i ny flik eller fönster >>A Control-based Approach for Self-adaptive Software Systems with Formal Guarantees
2017 (Engelska)Licentiatavhandling, sammanläggning (Övrigt vetenskapligt)
Abstract [en]

 

Ort, förlag, år, upplaga, sidor
Växjö: Linnaeus University Press, 2017. s. 172
Serie
Lnu Licentiate ; 5
Nationell ämneskategori
Datorsystem
Forskningsämne
Data- och informationsvetenskap, Datavetenskap
Identifikatorer
urn:nbn:se:lnu:diva-69338 (URN)978-91-88357-95-3 (ISBN)
Presentation
2017-12-15, D1136A, 13:00 (Engelska)
Opponent
Handledare
Tillgänglig från: 2017-12-18 Skapad: 2017-12-16 Senast uppdaterad: 2022-03-08Bibliografiskt granskad
Filieri, A., Maggio, M., Angelopoulos, K., D'Ippolito, N. R., Gerostathopoulos, I. T., Hempel, A. B., . . . Vogel, T. (2017). Control strategies for self-adaptive software systems. ACM Transactions on Autonomous and Adaptive Systems, 11(4), Article ID 24.
Öppna denna publikation i ny flik eller fönster >>Control strategies for self-adaptive software systems
Visa övriga...
2017 (Engelska)Ingår i: ACM Transactions on Autonomous and Adaptive Systems, ISSN 1556-4665, E-ISSN 1556-4703, Vol. 11, nr 4, artikel-id 24Artikel, forskningsöversikt (Refereegranskat) Published
Abstract [en]

The pervasiveness and growing complexity of software systems are challenging software engineering to design systems that can adapt their behavior to withstand unpredictable, uncertain, and continuously changing execution environments. Control theoretical adaptation mechanisms have received growing interest from the software engineering community in the last few years for their mathematical grounding, allowing formal guarantees on the behavior of the controlled systems. However, most of these mechanisms are tailored to specific applications and can hardly be generalized into broadly applicable software design and development processes. This article discusses a reference control design process, from goal identification to the verification and validation of the controlled system. A taxonomy of the main control strategies is introduced, analyzing their applicability to software adaptation for both functional and nonfunctional goals. A brief extract on how to deal with uncertainty complements the discussion. Finally, the article highlights a set of open challenges, both for the software engineering and the control theory research communities.

Ort, förlag, år, upplaga, sidor
ACM Digital Library, 2017
Nationell ämneskategori
Inbäddad systemteknik
Forskningsämne
Datavetenskap, Programvaruteknik
Identifikatorer
urn:nbn:se:lnu:diva-74991 (URN)10.1145/3024188 (DOI)000395848000005 ()2-s2.0-85017638966 (Scopus ID)
Tillgänglig från: 2018-06-04 Skapad: 2018-06-04 Senast uppdaterad: 2021-05-06Bibliografiskt granskad
Shevtsov, S., Weyns, D. & Maggio, M. (2017). Handling New and Changing Requirements with Guarantees in Self-Adaptive Systems using SimCA*. In: Proceedings - 2017 IEEE/ACM 12th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS 2017, 3 July 2017 -  23 May 2017, Buenos Aires: . Paper presented at The 12th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, May 22-23, 2017, Buenos Aires (pp. 12-23). IEEE, Article ID 7968128.
Öppna denna publikation i ny flik eller fönster >>Handling New and Changing Requirements with Guarantees in Self-Adaptive Systems using SimCA*
2017 (Engelska)Ingår i: Proceedings - 2017 IEEE/ACM 12th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS 2017, 3 July 2017 -  23 May 2017, Buenos Aires, IEEE, 2017, s. 12-23, artikel-id 7968128Konferensbidrag, Publicerat paper (Refereegranskat)
Abstract [en]

Self-adaptation provides a principled way to deal with change during operation. As more systems with strict goals require self-adaptation, the need for guarantees in self-adaptive systems is becoming a high-priority concern. Designing adaptive software using principles from control theory has been identified as one of the approaches to provide guarantees. However, current solutions can only handle pre-specified requirements either in the form of setpoint values (S-reqs) or values to be optimized (O-reqs). This paper presents SimCA* that makes two contributions to control-based self-adaptation: (a) it allows the user to specify a third type of requirement that keeps a value above/below a threshold (T-reqs); and (b) it can deal with requirement sets that change at runtime (i.e., requirements can be adjusted, activated, and deactivated on the fly). SimCA* offers robustness to disturbances and provides adaptation guarantees. We evaluate SimCA* for two systems with strict goals from different domains: an underwater vehicle system used for oceanic surveillance, and a tele-assistance system for health care support. The test results demonstrate that SimCA* can deal with the three types of requirements (STO-reqs) operating under various types of dynamics and the set of requirements can be changed on the fly.

Ort, förlag, år, upplaga, sidor
IEEE, 2017
Nyckelord
self-adaptation, software, control theory
Nationell ämneskategori
Datavetenskap (datalogi)
Forskningsämne
Data- och informationsvetenskap, Datavetenskap
Identifikatorer
urn:nbn:se:lnu:diva-62009 (URN)10.1109/SEAMS.2017.3 (DOI)2-s2.0-85027154401 (Scopus ID)9781538615508 (ISBN)
Konferens
The 12th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, May 22-23, 2017, Buenos Aires
Tillgänglig från: 2017-03-31 Skapad: 2017-03-31 Senast uppdaterad: 2021-01-13Bibliografiskt granskad
Gerasimou, S., Calinescu, R., Shevtsov, S. & Weyns, D. (2017). UNDERSEA: An Exemplar for EngineeringSelf-Adaptive Unmanned Underwater Vehicles. In: 2017 IEEE/ACM 12th International Symposium on Software Engineering for Adaptive and Self-Managing Systems (SEAMS): . Paper presented at 2017 IEEE/ACM 12th International Symposium on Software Engineering for Adaptive and Self-Managing Systems (SEAMS), 22-23 May 2017, Buenos Aires, Argentina (pp. 83-89). IEEE
Öppna denna publikation i ny flik eller fönster >>UNDERSEA: An Exemplar for EngineeringSelf-Adaptive Unmanned Underwater Vehicles
2017 (Engelska)Ingår i: 2017 IEEE/ACM 12th International Symposium on Software Engineering for Adaptive and Self-Managing Systems (SEAMS), IEEE, 2017, s. 83-89Konferensbidrag, Publicerat paper (Refereegranskat)
Abstract [en]

Recent advances in embedded systems and underwater communications raised the autonomy levels in unmanned underwater vehicles (UUVs) from human-driven and scripted to adaptive and self-managing. UUVs can execute longer and more challenging missions, and include functionality that enables adaptation to unexpected oceanic or vehicle changes. As such, the simulated UUV exemplar UNDERSEA introduced in our paper facilitates the development, evaluation and comparison of self-adaptation solutions in a new and important application domain. UNDERSEA comes with predefined oceanic surveillance UUV missions, adaptation scenarios, and a reference controller implementation, all of which can easily be extended or replaced.

Ort, förlag, år, upplaga, sidor
IEEE, 2017
Nationell ämneskategori
Inbäddad systemteknik
Forskningsämne
Datavetenskap, Programvaruteknik
Identifikatorer
urn:nbn:se:lnu:diva-74990 (URN)10.1109/SEAMS.2017.19 (DOI)2-s2.0-85027200841 (Scopus ID)978-1-5386-1550-8 (ISBN)978-1-5386-1551-5 (ISBN)
Konferens
2017 IEEE/ACM 12th International Symposium on Software Engineering for Adaptive and Self-Managing Systems (SEAMS), 22-23 May 2017, Buenos Aires, Argentina
Tillgänglig från: 2018-06-04 Skapad: 2018-06-04 Senast uppdaterad: 2021-01-13Bibliografiskt granskad
Shevtsov, S. (2016). Developing a Reusable Control-Based Approach to Build Self-Adaptive Software Systems with Formal Guarantees. In: Zimmermann, T; ClelandHuang, J; Su, Z (Ed.), FSE'16: PROCEEDINGS OF THE 2016 24TH ACM SIGSOFT INTERNATIONAL SYMPOSIUM ON FOUNDATIONS OF SOFTWARE ENGINEERING. Paper presented at 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering (FSE), NOV 13-18, 2016, Seattle, WA (pp. 1060-1062). ACM Publications
Öppna denna publikation i ny flik eller fönster >>Developing a Reusable Control-Based Approach to Build Self-Adaptive Software Systems with Formal Guarantees
2016 (Engelska)Ingår i: FSE'16: PROCEEDINGS OF THE 2016 24TH ACM SIGSOFT INTERNATIONAL SYMPOSIUM ON FOUNDATIONS OF SOFTWARE ENGINEERING / [ed] Zimmermann, T; ClelandHuang, J; Su, Z, ACM Publications, 2016, s. 1060-1062Konferensbidrag, Publicerat paper (Refereegranskat)
Abstract [en]

An increasingly important concern of software engineers is handling uncertainty at runtime. Over the last decade researchers have applied architecture-based self-adaptation approaches to address this concern. However, providing guarantees required by current software systems has shown to be challenging with these approaches. To tackle this challenge, we study the application of control theory to realize self-adaptation and develop novel control-based adaptation mechanisms that guarantee desired system properties. Results are validated on systems with strict requirements.

Ort, förlag, år, upplaga, sidor
ACM Publications, 2016
Nyckelord
control theory, software, self-adaptive, guarantees
Nationell ämneskategori
Datavetenskap (datalogi)
Forskningsämne
Datavetenskap, Programvaruteknik
Identifikatorer
urn:nbn:se:lnu:diva-60256 (URN)10.1145/2950290.2983949 (DOI)000391133400111 ()2-s2.0-84997272324 (Scopus ID)978-1-4503-4218-6 (ISBN)
Konferens
24th ACM SIGSOFT International Symposium on Foundations of Software Engineering (FSE), NOV 13-18, 2016, Seattle, WA
Tillgänglig från: 2017-01-26 Skapad: 2017-01-26 Senast uppdaterad: 2018-01-13Bibliografiskt granskad
Shevtsov, S. & Weyns, D. (2016). Keep It SIMPLEX: Satisfying Multiple Goals with Guarantees in Control-Based Self-Adaptive Systems. In: FSE'16: PROCEEDINGS OF THE 2016 24TH ACM SIGSOFT INTERNATIONAL SYMPOSIUM ON FOUNDATIONS OF SOFTWARE ENGINEERING. Paper presented at 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering (FSE), NOV 13-18, 2016, Seattle, WA (pp. 229-241). ACM Publications
Öppna denna publikation i ny flik eller fönster >>Keep It SIMPLEX: Satisfying Multiple Goals with Guarantees in Control-Based Self-Adaptive Systems
2016 (Engelska)Ingår i: FSE'16: PROCEEDINGS OF THE 2016 24TH ACM SIGSOFT INTERNATIONAL SYMPOSIUM ON FOUNDATIONS OF SOFTWARE ENGINEERING, ACM Publications, 2016, s. 229-241Konferensbidrag, Publicerat paper (Refereegranskat)
Abstract [en]

An increasingly important concern of software engineers is handling uncertainties at design time, such as environment dynamics that may be difficult to predict or requirements that may change during operation. The idea of self-adaptation is to handle such uncertainties at runtime, when the knowledge becomes available. As more systems with strict requirements require self-adaptation, providing guarantees for adaptation has become a high-priority. Providing such guarantees with traditional architecture-based approaches has shown to be challenging. In response, researchers have studied the application of control theory to realize self-adaptation. However, existing control-theoretic approaches applied to adapt software systems have primarily focused on satisfying only a single adaptation goal at a time, which is often too restrictive for real applications. In this paper, we present Simplex Control Adaptation, SimCA, a new approach to self-adaptation that satisfies multiple goals, while being optimal with respect to an additional goal. SimCA offers robustness to measurement inaccuracy and environmental disturbances, and provides guarantees. We evaluate SimCA for two systems with strict requirements that have to deal with uncertainties: an underwater vehicle system used for oceanic surveillance, and a tele-assistance system for health care support.

Ort, förlag, år, upplaga, sidor
ACM Publications, 2016
Nyckelord
Self-adaptive system, control theory, simplex, multiple goals
Nationell ämneskategori
Datavetenskap (datalogi)
Forskningsämne
Data- och informationsvetenskap, Datavetenskap
Identifikatorer
urn:nbn:se:lnu:diva-60255 (URN)10.1145/2950290.2950301 (DOI)000391133400025 ()2-s2.0-84997501213 (Scopus ID)978-1-4503-4218-6 (ISBN)
Konferens
24th ACM SIGSOFT International Symposium on Foundations of Software Engineering (FSE), NOV 13-18, 2016, Seattle, WA
Tillgänglig från: 2017-01-26 Skapad: 2017-01-26 Senast uppdaterad: 2018-01-13Bibliografiskt granskad
Organisationer
Identifikatorer
ORCID-id: ORCID iD iconorcid.org/0000-0003-0098-9376

Sök vidare i DiVA

Visa alla publikationer