lnu.sePublications
Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • harvard1
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
ASPLe: a methodology to develop self-adaptive software systems with systematic reuse
Linnaeus University, Faculty of Technology, Department of computer science and media technology (CM). (AdaptWise)ORCID iD: 0000-0002-7555-7300
Linnaeus University, Faculty of Technology, Department of computer science and media technology (CM).ORCID iD: 0000-0001-5471-551x
Linnaeus University, Faculty of Technology, Department of computer science and media technology (CM).ORCID iD: 0000-0002-1162-0817
(English)Manuscript (preprint) (Other academic)
Abstract [en]

More than two decades of research have demonstrated an increasing need for software systems to be self-adaptive. Self-adaptation is required to deal with runtime dynamics which are difficult to predict before deployment. A vast body of knowledge to develop Self-Adaptive Software Systems (SASS) has been established. We, however, discovered a lack of process support to develop self-adaptive systems with reuse. To that end, we propose a domain-engineering based methodology, Autonomic Software Product Lines engineering (ASPLe), which provides step-by-step guidelines for developing families of SASS with systematic reuse. The evaluation results from a case study show positive effects on quality and reuse for self-adaptive systems designed using the ASPLe compared to state-of-the-art engineering practices.

Keywords [en]
Software design, Uncertainty, Variability, Self-adaptation, Software reuse, Domain engineering, Software product lines
National Category
Computer and Information Sciences Software Engineering
Research subject
Computer and Information Sciences Computer Science, Computer Science; Computer and Information Sciences Computer Science
Identifiers
URN: urn:nbn:se:lnu:diva-74441OAI: oai:DiVA.org:lnu-74441DiVA, id: diva2:1208992
Available from: 2018-05-21 Created: 2018-05-21 Last updated: 2018-06-05Bibliographically approved
In thesis
1. Designing Self-Adaptive Software Systems with Reuse
Open this publication in new window or tab >>Designing Self-Adaptive Software Systems with Reuse
2018 (English)Doctoral thesis, comprehensive summary (Other academic)
Abstract [en]

Modern software systems are increasingly more connected, pervasive, and dynamic, as such, they are subject to more runtime variations than legacy systems. Runtime variations affect system properties, such as performance and availability. The variations are difficult to anticipate and thus mitigate in the system design.

Self-adaptive software systems were proposed as a solution to monitor and adapt systems in response to runtime variations. Research has established a vast body of knowledge on engineering self-adaptive systems. However, there is a lack of systematic process support that leverages such engineering knowledge and provides for systematic reuse for self-adaptive systems development. 

This thesis proposes the Autonomic Software Product Lines (ASPL), which is a strategy for developing self-adaptive software systems with systematic reuse. The strategy exploits the separation of a managed and a managing subsystem and describes three steps that transform and integrate a domain-independent managing system platform into a domain-specific software product line for self-adaptive software systems.

Applying the ASPL strategy is however not straightforward as it involves challenges related to variability and uncertainty. We analyzed variability and uncertainty to understand their causes and effects. Based on the results, we developed the Autonomic Software Product Lines engineering (ASPLe) methodology, which provides process support for the ASPL strategy. The ASPLe has three processes, 1) ASPL Domain Engineering, 2) Specialization and 3) Integration. Each process maps to one of the steps in the ASPL strategy and defines roles, work-products, activities, and workflows for requirements, design, implementation, and testing. The focus of this thesis is on requirements and design.

We validate the ASPLe through demonstration and evaluation. We developed three demonstrator product lines using the ASPLe. We also conducted an extensive case study to evaluate key design activities in the ASPLe with experiments, questionnaires, and interviews. The results show a statistically significant increase in quality and reuse levels for self-adaptive software systems designed using the ASPLe compared to current engineering practices.

Place, publisher, year, edition, pages
Växjö: Linnaeus University Press, 2018. p. 56
Series
Linnaeus University Dissertations ; 318/2018
Keywords
Variability, Uncertainty, Self-Adaptation, Software Reuse, Software Design, Methodology, Domain Engineering.
National Category
Software Engineering Computer Sciences Computer and Information Sciences
Research subject
Computer and Information Sciences Computer Science, Computer Science; Computer and Information Sciences Computer Science; Computer Science, Software Technology
Identifiers
urn:nbn:se:lnu:diva-74443 (URN)978-91-88761-51-4 (ISBN)978-91-88761-52-1 (ISBN)
Public defence
2018-04-19, 13:15 (English)
Supervisors
Available from: 2018-05-22 Created: 2018-05-21 Last updated: 2018-05-22Bibliographically approved

Open Access in DiVA

No full text in DiVA

Authority records BETA

Abbas, NadeemAndersson, JesperWeyns, Danny

Search in DiVA

By author/editor
Abbas, NadeemAndersson, JesperWeyns, Danny
By organisation
Department of computer science and media technology (CM)
Computer and Information SciencesSoftware Engineering

Search outside of DiVA

GoogleGoogle Scholar

urn-nbn

Altmetric score

urn-nbn
Total: 340 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • harvard1
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf