lnu.sePublications
Change search
Link to record
Permanent link

Direct link
BETA
Publications (10 of 157) Show all publications
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
Open this publication in new window or tab >>Control-Theoretical Software Adaptation: A Systematic Literature Review
2018 (English)In: IEEE Transactions on Software Engineering, ISSN 0098-5589, E-ISSN 1939-3520, Vol. 44, no 8, p. 784-810Article in journal (Refereed) 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.

Place, publisher, year, edition, pages
IEEE, 2018
Keywords
self-adaptive software, control theory, software adaptation
National Category
Computer Systems
Research subject
Computer and Information Sciences Computer Science, Computer Science
Identifiers
urn:nbn:se:lnu:diva-69336 (URN)10.1109/TSE.2017.2704579 (DOI)000441791100004 ()
Available from: 2017-12-16 Created: 2017-12-16 Last updated: 2018-09-10Bibliographically approved
Van der Donckt, M. J., Weyns, D., Iftikhar, M. U. & Singh, R. K. (2018). Cost-Benefit Analysis at Runtime for Self-adaptive Systems Applied to an Internet of Things Application. In: Damiani, E Spanoudakis, G Maciaszek, L (Ed.), Proceedings of the 13th International Conference on Evaluation of Novel Approaches to Software Engineering: . Paper presented at 13th International Conference on Evaluation of Novel Approaches to Software Engineering, Funchal, PORTUGAL, MAR 23-24, 2018 (pp. 478-490). SciTePress
Open this publication in new window or tab >>Cost-Benefit Analysis at Runtime for Self-adaptive Systems Applied to an Internet of Things Application
2018 (English)In: Proceedings of the 13th International Conference on Evaluation of Novel Approaches to Software Engineering / [ed] Damiani, E Spanoudakis, G Maciaszek, L, SciTePress, 2018, p. 478-490Conference paper, Published paper (Refereed)
Abstract [en]

Ensuring the qualities of modern software systems, such as the Internet of Things, is challenging due to various uncertainties, such as dynamics in availability of resources or changes in the environment. Self-adaptation is an established approach to deal with such uncertainties. Self-adaptation equips a software system with a feedback loop that tracks changes and adapts the system accordingly to ensure its quality goals. Current research in this area has primarily focussed on the benefits that self-adaptation can offer. However, realising adaption can also incur costs. Ignoring these costs may invalidate the expected benefits. We start with demonstrating that the costs for adaptation can be significant. To that end, we apply a state-of-the-art approach for self-adaptation to an Internet of Things (IoT) application. We then present CB@R (Cost-Benefit analysis @ Runtime), a novel model-based approach for runtime decision-making in self-adaptive systems. CB@R is inspired by the Cost-Benefit Analysis Method (CBAM), which is an established approach for analysing costs and benefits of architectural decisions. We evaluate CB@R for a real world deployed IoT application and compare it with the conservative approach applied in practice and a state-of-the-art self-adaptation approach.

Place, publisher, year, edition, pages
SciTePress, 2018
Keywords
Self-adaptation, MAPE, Models at Runtime, Statistical Model Checking, Cost-Benefit Analysis Method, CBAM, Internet-of-Things, IoT
National Category
Computer Sciences
Research subject
Computer and Information Sciences Computer Science, Computer Science
Identifiers
urn:nbn:se:lnu:diva-79104 (URN)10.5220/0006815404780490 (DOI)000450506700050 ()978-989-758-300-1 (ISBN)
Conference
13th International Conference on Evaluation of Novel Approaches to Software Engineering, Funchal, PORTUGAL, MAR 23-24, 2018
Available from: 2018-12-06 Created: 2018-12-06 Last updated: 2018-12-06Bibliographically approved
Algabroun, H., Iftikhar, M. U., Al-Najjar, B. & Weyns, D. (2018). Maintenance 4.0 Framework using Self: Adaptive Software Architecture.. Journal of Maintenance Engineering, 2, 280-293
Open this publication in new window or tab >>Maintenance 4.0 Framework using Self: Adaptive Software Architecture.
2018 (English)In: Journal of Maintenance Engineering, Vol. 2, p. 280-293Article in journal (Refereed) Published
Abstract [en]

With the recent advances of manufacturing technologies, referred to as Industry 4.0, maintenance approaches have to be developed to fulfill the new de-mands. The technological complexity associated to Industry 4.0 makes designing maintenance solutions particularly challenging. This paper proposes a novel maintenance framework leveraging principles from self-adaptation and software architecture. The framework was tested in an operational scenario where a bearing condition in an electrical motor needs to be managed, the results showed a proper operation. As a conclusion, the proposed framework could be used to develop maintenance systems for Industry 4.0.

Place, publisher, year, edition, pages
UK: ShieldCrest Publishing Aylesbury, Buckinghamshire, 2018
Keywords
Maintenance 4.0, Maintenance framework, Self-adaptation, Software architecture.
National Category
Reliability and Maintenance
Research subject
Technology (byts ev till Engineering), Terotechnology
Identifiers
urn:nbn:se:lnu:diva-77713 (URN)
Note

Ej belagd 181003

Available from: 2018-09-13 Created: 2018-09-13 Last updated: 2018-10-03Bibliographically approved
Mahdavi-Hezavehi, S., Durelli, V. H. S., Weyns, D. & Avgeriou, P. (2017). A systematic literature review on methods that handle multiple quality attributes in architecture-based self-adaptive systems. Information and Software Technology, 90, 1-26
Open this publication in new window or tab >>A systematic literature review on methods that handle multiple quality attributes in architecture-based self-adaptive systems
2017 (English)In: Information and Software Technology, ISSN 0950-5849, E-ISSN 1873-6025, Vol. 90, p. 1-26Article, review/survey (Refereed) Published
Abstract [en]

Context: Handling multiple quality attributes (QAs) in the domain of self-adaptive systems is an understudied research area. One well-known approach to engineer adaptive software systems and fulfill QAs of the system is architecture-based self-adaptation. In order to develop models that capture the required knowledge of the QAs of interest, and to investigate how these models can be employed at runtime to handle multiple quality attributes, we need to first examine current architecture-based self-adaptive methods. Objective: In this paper we review the state-of-the-art of architecture-based methods for handling multiple QAs in self-adaptive systems. We also provide a descriptive analysis of the collected data from the literature. Method: We conducted a systematic literature review by performing an automatic search on 28 selected venues and books in the domain of self-adaptive systems. As a result, we selected 54 primary studies which we used for data extraction and analysis. Results: Performance and cost are the most frequently addressed set of QAs. Current self-adaptive systems dealing with multiple QAs mostly belong to the domain of robotics and web-based systems paradigm. The most widely used mechanisms/models to measure and quantify QAs sets are QA data variables. After QA data variables, utility functions and Markov chain models are the most common models which are also used for decision making process and selection of the best solution in presence of many alternatives. The most widely used tools to deal with multiple QAs are PRISM and IBM's autonomic computing toolkit. KLAPER is the only language that has been specifically developed to deal with quality properties analysis. Conclusions: Our results help researchers to understand the current state of research regarding architecture-based methods for handling multiple QAs in self-adaptive systems, and to identity areas for improvement in the future. To summarize, further research is required to improve existing methods performing tradeoff analysis and preemption, and in particular, new methods may be proposed to make use of models to handle multiple QAs and to enhance and facilitate the tradeoffs analysis and decision making mechanism at runtime. (C) 2017 Published by Elsevier B.V.

Place, publisher, year, edition, pages
Elsevier, 2017
National Category
Computer Sciences
Research subject
Computer and Information Sciences Computer Science, Computer Science
Identifiers
urn:nbn:se:lnu:diva-67101 (URN)10.1016/j.infsof.2017.03.013 (DOI)000405046400001 ()
Available from: 2017-07-28 Created: 2017-07-28 Last updated: 2018-01-13Bibliographically approved
Iftikhar, M. U. & Weyns, D. (2017). ActivFORMS: A Runtime Environment for Architecture-Based Adaptation with Guarantees. In: 2017 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE ARCHITECTURE WORKSHOPS (ICSAW): . Paper presented at IEEE International Conference on Software Architecture (ICSA), APR 03-07, 2017, Gothenburg, SWEDEN (pp. 278-281). IEEE
Open this publication in new window or tab >>ActivFORMS: A Runtime Environment for Architecture-Based Adaptation with Guarantees
2017 (English)In: 2017 IEEE INTERNATIONAL CONFERENCE ON SOFTWARE ARCHITECTURE WORKSHOPS (ICSAW), IEEE, 2017, p. 278-281Conference paper, Published paper (Refereed)
Abstract [en]

Modern software systems are exposed to various types of uncertainties, such as dynamics in the available resources that are difficult to predict and goals that may change during operation. Self-adaptation equips a software system with a feedback loop that collects additional knowledge at runtime, monitors the system and adapts it when necessary to maintain its quality goals, regardless of uncertainties. One challenging problem of self-adaptation is to provide guarantees for the goals that are subject of adaptation. In this paper, we present the ActivFORMS runtime environment to realise self- adaptation with guarantees. With ActivFORMS designers model and verify a feedback loop. The verified models can directly be deployed on top of a virtual machine that executes the models to realise adaption. The approach avoids coding of the models, which is an error-prone task. The runtime environment visualises the executing models, the state of the goals, and it supports on the fly updates of the models and goals. We illustrate the approach with an adaptation scenario of an IoT building security example.

Place, publisher, year, edition, pages
IEEE, 2017
National Category
Software Engineering
Research subject
Computer Science, Software Technology
Identifiers
urn:nbn:se:lnu:diva-68580 (URN)10.1109/ICSAW.2017.21 (DOI)000413089000057 ()978-1-5090-4793-2 (ISBN)
Conference
IEEE International Conference on Software Architecture (ICSA), APR 03-07, 2017, Gothenburg, SWEDEN
Available from: 2017-11-02 Created: 2017-11-02 Last updated: 2018-01-13Bibliographically approved
Weyns, D., Caporuscio, M., Axelsson, C. & Petersson, G. (2017). BoConnect – Reliable Assistive Technologies to Empower Elderly People to Live Independently Longer.
Open this publication in new window or tab >>BoConnect – Reliable Assistive Technologies to Empower Elderly People to Live Independently Longer
2017 (English)Report (Other academic)
Abstract [en]

BoConnect was a multi-disciplinary collaborative research project between Linnaeus University and Växjö and Kalmarmunicipalities in Sweden. The project had a budget of 3 MSEK; it stated Jan. 2015 and ended Dec. 2016.The project studied reliable assistive technologies to support elderly people. In contrast to existing work in this areathatis often limited to small-scale technology-driven pilots that are poorly embedded in the social living context, the BoConnect project took a holistic perspective on assistive technologies and put user needs and reliability of the solutions in focus, both from a technological and organizational perspective. This report summarizes the main results of the project.

Publisher
p. 2
National Category
Software Engineering
Identifiers
urn:nbn:se:lnu:diva-62014 (URN)
Projects
BoConnect
Funder
The Kamprad Family Foundation
Available from: 2017-03-31 Created: 2017-03-31 Last updated: 2018-01-13Bibliographically approved
Pahl, C., Jamshidi, P. & Weyns, D. (2017). Cloud architecture continuity: Change models and change rules for sustainable cloud software architectures. Journal of Software: Evolution and Process, 29(2), Article ID UNSP e1849.
Open this publication in new window or tab >>Cloud architecture continuity: Change models and change rules for sustainable cloud software architectures
2017 (English)In: Journal of Software: Evolution and Process, ISSN 2047-7473, E-ISSN 2047-7481, Vol. 29, no 2, article id UNSP e1849Article in journal (Refereed) Published
Abstract [en]

Cloud systems provide elastic execution environments of resources that link application and infrastructure/platform components, which are both exposed to uncertainties and change. Change appears in 2 forms: the evolution of architectural components under changing requirements and the adaptation of the infrastructure running applications. Cloud architecture continuity refers to the ability of a cloud system to change its architecture and maintain the validity of the goals that determine the architecture. Goal validity implies the satisfaction of goals in adapting or evolving systems. Architecture continuity aids technical sustainability, that is, the longevity of information, systems, and infrastructure and their adequate evolution with changing conditions. In a cloud setting that requires both steady alignment with technological evolution and availability, architecture continuity directly impacts economic sustainability. We investigate change models and change rules for managing change to support cloud architecture continuity. These models and rules define transformations of architectures to maintain system goals: Evolution is about unanticipated change of structural aspects of architectures, and adaptation is about anticipated change of architecture configurations. Both are driven by quality and cost, and both represent multidimensional decision problems under uncertainty. We have applied the models and rules for adaptation and evolution in research and industry consultancy projects.

Place, publisher, year, edition, pages
Wiley-Blackwell, 2017
Keywords
adaptation, change, change models, cloud systems, evolution, software architecture
National Category
Computer Sciences
Research subject
Computer and Information Sciences Computer Science, Computer Science
Identifiers
urn:nbn:se:lnu:diva-64230 (URN)10.1002/smr.1849 (DOI)000394986200002 ()
Available from: 2017-05-23 Created: 2017-05-23 Last updated: 2018-06-05Bibliographically approved
Calinescu, R., Weyns, D., Gerasimou, S., Iftikhar, M. U., Habli, I. & Kelly, T. (2017). Engineering Trustworthy Self-Adaptive Software with Dynamic Assurance Cases. IEEE Transactions on Software Engineering, 44(11), 1039-1069
Open this publication in new window or tab >>Engineering Trustworthy Self-Adaptive Software with Dynamic Assurance Cases
Show others...
2017 (English)In: IEEE Transactions on Software Engineering, ISSN 0098-5589, E-ISSN 1939-3520, Vol. 44, no 11, p. 1039-1069Article in journal (Refereed) Published
Abstract [en]

Building on concepts drawn from control theory, self-adaptive software handles environmental and internal uncertainties by dynamically adjusting its architecture and parameters in response to events such as workload changes and component failures. Self-adaptive software is increasingly expected to meet strict functional and non-functional requirements in applications from areas as diverse as manufacturing, healthcare and finance. To address this need, we introduce a methodology for the systematic ENgineering of TRUstworthy Self-adaptive sofTware (ENTRUST). ENTRUST uses a combination of (1) design-time and runtime modelling and verification, and (2) industry-adopted assurance processes to develop trustworthy self-adaptive software and assurance cases arguing the suitability of the software for its intended application. To evaluate the effectiveness of our methodology, we present a tool-supported instance of ENTRUST and its use to develop proof-of-concept self-adaptive software for embedded and service-based systems from the oceanic monitoring and e-finance domains, respectively. The experimental results show that ENTRUST can be used to engineer self-adaptive software systems in different application domains and to generate dynamic assurance cases for these systems.

Place, publisher, year, edition, pages
IEEE, 2017
Keywords
Self-adaptive software systems, software engineering methodology, assurance evidence, assurance cases
National Category
Software Engineering
Research subject
Computer and Information Sciences Computer Science, Computer Science
Identifiers
urn:nbn:se:lnu:diva-67353 (URN)10.1109/TSE.2017.2738640 (DOI)000449964600002 ()
Available from: 2017-08-22 Created: 2017-08-22 Last updated: 2018-12-06Bibliographically approved
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.
Open this publication in new window or tab >>Handling New and Changing Requirements with Guarantees in Self-Adaptive Systems using SimCA*
2017 (English)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, IEEE, 2017, p. 12-23, article id 7968128Conference paper, Published paper (Refereed)
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.

Place, publisher, year, edition, pages
IEEE, 2017
Keywords
self-adaptation, software, control theory
National Category
Computer Sciences
Research subject
Computer and Information Sciences Computer Science, Computer Science
Identifiers
urn:nbn:se:lnu:diva-62009 (URN)10.1109/SEAMS.2017.3 (DOI)9781538615508 (ISBN)
Conference
The 12th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, May 22-23, 2017, Buenos Aires
Available from: 2017-03-31 Created: 2017-03-31 Last updated: 2018-01-13Bibliographically approved
Weyns, D., Mirandola, R. & Crnkovic, I. (2017). Introduction to the special issue on "New frontiers in software architecture". Journal of Systems and Software, 130, 57-58
Open this publication in new window or tab >>Introduction to the special issue on "New frontiers in software architecture"
2017 (English)In: Journal of Systems and Software, ISSN 0164-1212, E-ISSN 1873-1228, Vol. 130, p. 57-58Article in journal, Editorial material (Other academic) Published
Place, publisher, year, edition, pages
Elsevier, 2017
National Category
Software Engineering
Research subject
Computer Science, Software Technology
Identifiers
urn:nbn:se:lnu:diva-67102 (URN)10.1016/j.jss.2017.02.005 (DOI)000405058000004 ()
Available from: 2017-07-28 Created: 2017-07-28 Last updated: 2018-01-13Bibliographically approved
Organisations
Identifiers
ORCID iD: ORCID iD iconorcid.org/0000-0002-1162-0817

Search in DiVA

Show all publications