Detecting Architectural Erosion using Runtime Verification

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 t...

Full description

Bibliographic Details
Main Authors: Diego Marmsoler, Ana Petrovska
Format: Article
Language:English
Published: Open Publishing Association 2019-09-01
Series:Electronic Proceedings in Theoretical Computer Science
Online Access:http://arxiv.org/pdf/1909.05973v1
_version_ 1819277770948083712
author Diego Marmsoler
Ana Petrovska
author_facet Diego Marmsoler
Ana Petrovska
author_sort Diego Marmsoler
collection DOAJ
description 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.
first_indexed 2024-12-24T00:01:24Z
format Article
id doaj.art-67f915763d284d88a4a33f6f2aea4c1f
institution Directory Open Access Journal
issn 2075-2180
language English
last_indexed 2024-12-24T00:01:24Z
publishDate 2019-09-01
publisher Open Publishing Association
record_format Article
series Electronic Proceedings in Theoretical Computer Science
spelling doaj.art-67f915763d284d88a4a33f6f2aea4c1f2022-12-21T17:25:07ZengOpen Publishing AssociationElectronic Proceedings in Theoretical Computer Science2075-21802019-09-01304Proc. ICE 20199711410.4204/EPTCS.304.7:5Detecting Architectural Erosion using Runtime VerificationDiego Marmsoler0Ana Petrovska1 Technische Universität München Technische Universität München 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.http://arxiv.org/pdf/1909.05973v1
spellingShingle Diego Marmsoler
Ana Petrovska
Detecting Architectural Erosion using Runtime Verification
Electronic Proceedings in Theoretical Computer Science
title Detecting Architectural Erosion using Runtime Verification
title_full Detecting Architectural Erosion using Runtime Verification
title_fullStr Detecting Architectural Erosion using Runtime Verification
title_full_unstemmed Detecting Architectural Erosion using Runtime Verification
title_short Detecting Architectural Erosion using Runtime Verification
title_sort detecting architectural erosion using runtime verification
url http://arxiv.org/pdf/1909.05973v1
work_keys_str_mv AT diegomarmsoler detectingarchitecturalerosionusingruntimeverification
AT anapetrovska detectingarchitecturalerosionusingruntimeverification