Behavioral Maps: Identifying Architectural Smells in Self-Adaptive Systems at Runtime

Research output: Contribution in Book/Catalog/Report/Conference proceedingConference contribution

48 Downloads (Pure)

Abstract

Self-adaptive systems (SAS) change their behavior and structure at runtime, depending on environmental changes and reconfiguration plans and goals. Such systems combine architectural fragments or solutions in their (re)configuration process. However, this process may negatively impact the system's architectural qualities, exhibiting architectural bad smells (ABS). Also, some smells may appear in only particular runtime conditions. This issue is challenging to detect due to the combinatorial explosion of interactions amongst features. We initially proposed the notion of Behavioral Map to explore architectural issues at runtime. This extended study applies the Behavioral Map to analyze the ABS in self-adaptive systems at runtime. In particular, we look for Cyclic Dependency, Extraneous Connector, Hub-Like Dependency, and Oppressed Monitor ABS in various runtime adaptations in the Smart Home Environment (SHE) framework, Adasim, and mRUBiS systems developed in Java. The results indicate that runtime ABS identification is required to fully capture SAS architectural qualities because the ABS are feature-dependent, and their number is highly variable for each adaptation. We have observed that some ABS appears in all runtime adaptations, some in only a few. However, some ABS only appear in the publish-subscribe architecture, such as Extraneous Connector and Oppressed Monitor smell. We discuss the reasons behind these architectural smells for each system and motivate the need for targeted ABS analyses in SAS.
Original languageEnglish
Title of host publicationSoftware Architecture - 15th European Conference, ECSA 2021 Tracks and Workshops, Revised Selected Papers
Subtitle of host publication15th European Conference, ECSA 2021 Tracks and Workshops; Växjö, Sweden, September 13–17, 2021, Revised Selected Papers
EditorsPatrizia Scandurra, Matthias Galster, Raffaela Mirandola, Danny Weyns, Danny Weyns
PublisherSpringer Nature Switzerland AG
Pages159-180
Number of pages22
Volume13365
EditionLecture Notes in Computer Science
ISBN (Electronic)978-3-031-15116-3
ISBN (Print)978-3-031-15116-3, 978-3-031-15115-6
DOIs
Publication statusPublished - 19 Aug 2022

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume13365 LNCS
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Keywords

  • Architectural Smells
  • Dynamic Software Product Lines
  • Runtime Validation
  • Self-adaptive Systems
  • Behavioral Maps
  • Architectural smells
  • Dynamic software product lines
  • Self-adaptive systems
  • Runtime validation
  • Behavioral maps

Fingerprint

Dive into the research topics of 'Behavioral Maps: Identifying Architectural Smells in Self-Adaptive Systems at Runtime'. Together they form a unique fingerprint.

Cite this