Home // International Journal On Advances in Software, volume 16, numbers 1 and 2, 2023 // View article


A Formalism for Explaining Concepts through Examples based on a Source Code Abstraction

Authors:
Mirco Schindler
Christian Schindler
Andreas Rausch

Keywords: Software Architecture; Architectural Concepts; Design Pattern; Concept Extraction; Source Code Comprehension

Abstract:
Design and architecture patterns are proven domain-independent solution approaches for common problems occurring in the development of software systems. Correct implementation of the design pattern is essential to guarantee the problem-solving capabilities of patterns. As the developers need to perform a context-specific adoption of the design pattern to the software system, we argue that their comprehension plays a crucial role in creating and maintaining such correct implementations over the system’s lifespan. Even with migration and integration of legacy components into an adaptive System, where other paradigms are used, for example, must be compatible on a conceptual level. Given a set of implementation samples, this paper intends to separate essential syntactic information from varying aspects. We introduce an approach that abstracts given object-oriented implementations by semantically resolving and splitting an Abstract Syntax Tree into small paths. The contribution this paper provides is composed of two parts. First, we introduce an approach to extract negligible details of given concept examples to distill the essence of concepts, and the second part presents a formal foundation to describe and interact with concepts. Based on this foundation, we derive several underlying problem statements.

Pages: 1 to 22

Copyright: Copyright (c) to authors, 2023. Used with permission.

Publication date: June 30, 2023

Published in: journal

ISSN: 1942-2628