Detector-based component model abstraction for microservice-based systems

Detector-based component model abstraction for microservice-based systems

Abstract

One of the chief problems in software architecture is avoiding architecture model drift and erosion in all kinds of complex software systems. Microservice-based systems introduce new challenges in this context, as they often use a large variety of technologies in their latest iteration, and are changed and released very frequently. Existing solutions that can be used to reconstruct architecture models fall short in addressing these new challenges, as they cannot easily cope with continuous evolution, their accuracy is too low, and highly polyglot settings are not supported well. In this work, we report on a research study aiming to design a highly accurate architecture model abstraction approach for comprehending component architecture models of highly polyglot systems that can cope with continuous evolution. After analyzing the results of related studies, we found two possible architecture model abstraction approaches that meet the requirements of our study: an opportunistic, and a reusable semi-automatic detector-based approach. We have conducted an empirical case study for validation and comparison of the two approaches. We conclude that both detector approaches are feasible. In our case study, the reusable approach breaks even in terms of time and effort needed for establishing reuse, if modest reuse of detectors is possible, and is producing slightly more high quality and evolution-stable solutions than the opportunistic approach.

Grafik Top
Authors
  • Ntentos, Evangelos
  • Zdun, Uwe
  • Plakidas, Konstantinos
  • Genfer, Patric
  • Geiger, Sebastian
  • Meixner, Sebastian
  • Hasselbring, Wilhelm
Grafik Top
Shortfacts
Category
Journal Paper
Divisions
Software Architecture
Journal or Publication Title
Computing
ISSN
0010-485X
Publisher
Springer
Page Range
pp. 2521-2551
Volume
103
Date
29 August 2021
Export
Grafik Top