Testing adaptation policies for software components

Autor: Jean-Philippe Gros, Frédéric Dadeau, Olga Kouchnarenko
Přispěvatelé: Franche-Comté Électronique Mécanique, Thermique et Optique - Sciences et Technologies (UMR 6174) (FEMTO-ST), Université de Technologie de Belfort-Montbeliard (UTBM)-Ecole Nationale Supérieure de Mécanique et des Microtechniques (ENSMM)-Université de Franche-Comté (UFC), Université Bourgogne Franche-Comté [COMUE] (UBFC)-Université Bourgogne Franche-Comté [COMUE] (UBFC)-Centre National de la Recherche Scientifique (CNRS)
Jazyk: angličtina
Rok vydání: 2020
Předmět:
Event (computing)
business.industry
Computer science
Distributed computing
Runtime verification
Control reconfiguration
020207 software engineering
02 engineering and technology
[INFO.INFO-SE]Computer Science [cs]/Software Engineering [cs.SE]
Fuzzy logic
[INFO.INFO-MO]Computer Science [cs]/Modeling and Simulation
[INFO.INFO-IU]Computer Science [cs]/Ubiquitous Computing
[INFO.INFO-CR]Computer Science [cs]/Cryptography and Security [cs.CR]
Software
[INFO.INFO-MA]Computer Science [cs]/Multiagent Systems [cs.MA]
020204 information systems
Component-based software engineering
0202 electrical engineering
electronic engineering
information engineering

[INFO.INFO-ET]Computer Science [cs]/Emerging Technologies [cs.ET]
State (computer science)
[INFO.INFO-DC]Computer Science [cs]/Distributed
Parallel
and Cluster Computing [cs.DC]

Safety
Risk
Reliability and Quality

Adaptation (computer science)
business
Zdroj: Software Quality Journal
Software Quality Journal, 2020, 28 (3), pp.1347-1378
Popis: International audience; Self-adaptive systems have to implement adaptation policies described by sets of rules that express how the components are reconfigured within the system, the priority of a given reconfiguration to happen, when a given (sequence of) event(s) occurs, and when specific conditions on the system state are satisfied. However, when this priority is given by a fuzzy value (e.g., high, medium, low) depending on external and internal events, it has to be implemented inside the software with particular implementation choices made. This paper is dedicated to the validation of adaptation policies, using a model-based testing approach and a verdict establishment that is based on both the runtime verification of temporal properties, and the detection of inconsistencies between the adaptation policy and the reconfigurations implemented in the self-adaptive system. We propose means to establish a test verdict based on the respect of the adaptation policy by the implementation, along with coverage measures of the rules. This provides interesting feedback on the adaptation policy rules, allowing to detect reconfigurations that should not have occurred, high-priority reconfigurations that are never triggered, or low-priority reconfigurations that are too frequently executed, potential inconsistencies in the rules, or wrong interpretation of priorities. The test verdict is made based on the analysis of the execution traces of the system, which is stimulated using a usage model that describes the probabilities of external events to occur. An experiment, performed on a vehicular ad-hoc network of autonomous vehicles, illustrates the interest of the approach.
Databáze: OpenAIRE