Detecting Architectural Erosion using Runtime Verification

09/12/2019
by   Diego Marmsoler, et al.
0

The architecture of a system captures important design decisions for the system. Over time, changes in a system's implementation may lead to violations of specific design decisions. This problem is common in industry and known as architectural erosion. Since it may have severe consequences on the quality of a system, research has focused on the development of tools and techniques to address the presented problem. As of today, most of the approaches to detect architectural erosion employ static analysis techniques. While these techniques are well-suited for the analysis of static architectures, they reach their limit when it comes to dynamic architectures. Thus, in this paper, we propose an alternative approach based on runtime verification. To this end, we propose a systematic way to translate a formal specification of architectural constraints to monitors, which can be used to detect violations of these constraints. The approach is implemented in Eclipse/EMF, demonstrated through a running example, and evaluated using two case studies.

READ FULL TEXT

page 9

page 15

research
02/25/2019

A Taxonomy of Modeling Approaches for Systems-of-Systems Dynamic Architectures: Overview and Prospects

Systems-of-Systems (SoS) result from the collaboration of independent Co...
research
05/17/2018

Adaptation and Abstract Runtime Models

Runtime adaptability is often a crucial requirement for today's complex ...
research
02/04/2018

An Energy-aware Mutation Testing Framework for EAST-ADL Architectural Models

Early design artifacts of embedded systems, such as architectural models...
research
07/08/2018

Formal Semantics of Architectural Decision Models

A software architecture is the result of multiple decisions made by a so...
research
03/31/2023

Architecture Smells vs. Concurrency Bugs: an Exploratory Study and Negative Results

Technical debt occurs in many different forms across software artifacts....
research
12/11/2019

A Reference Architecture and Modelling Principles for Architectural Stability based on Self-Awareness: Case of Cloud Architectures

With the increased dependence on software, there is a pressing need for ...
research
09/27/2020

The Remaining Improbable: Toward Verifiable Network Services

The trustworthiness of modern networked services is too important to lea...

Please sign up or login with your details

Forgot password? Click here to reset