TY - GEN
T1 - Behavioral Maps
T2 - Identifying Architectural Smells in Self-Adaptive Systems at Runtime
AU - Lima dos Santos, Edilton
AU - Fortz, Sophie
AU - Schobbens, Pierre-Yves
AU - Perrouin, Gilles
N1 - Funding Information:
Acknowledgements. Edilton Lima dos Santos is funded by a CERUNA grant from the University of Namur. Sophie Fortz is supported by the FNRS via a FRIA grant. Gilles Perrouin is an FNRS Research Associate.
Publisher Copyright:
© 2022, The Author(s), under exclusive license to Springer Nature Switzerland AG.
Publisher Copyright:
© 2022, The Author(s), under exclusive license to Springer Nature Switzerland AG.
PY - 2022/8/19
Y1 - 2022/8/19
N2 - 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.
AB - 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.
KW - Architectural Smells
KW - Dynamic Software Product Lines
KW - Runtime Validation
KW - Self-adaptive Systems
KW - Behavioral Maps
KW - Architectural smells
KW - Dynamic software product lines
KW - Self-adaptive systems
KW - Runtime validation
KW - Behavioral maps
UR - http://www.scopus.com/inward/record.url?scp=85136918623&partnerID=8YFLogxK
UR - https://researchportal.unamur.be/en/publications/59e0b6ba-4af5-4c9c-be1c-3ca93865fe46
U2 - https://doi.org/10.1007/978-3-031-15116-3_8
DO - https://doi.org/10.1007/978-3-031-15116-3_8
M3 - Conference contribution
SN - 978-3-031-15116-3
SN - 978-3-031-15115-6
VL - 13365
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 159
EP - 180
BT - Software Architecture - 15th European Conference, ECSA 2021 Tracks and Workshops, Revised Selected Papers
A2 - Scandurra, Patrizia
A2 - Galster, Matthias
A2 - Mirandola, Raffaela
A2 - Weyns, Danny
A2 - Weyns, Danny
PB - Springer Nature Switzerland AG
ER -