Assessing System Quality Changes during Software Evolution: The Impact of Design Patterns Explored via Dependency Analysis

Kuo-Hsun Hsu,Hua-Chieh Szu-Tu,Chia-Hsing Tsai
DOI: https://doi.org/10.3390/electronics13081444
IF: 2.9
2024-04-12
Electronics
Abstract:Design patterns provide solutions to recurring problems in software design and development, promoting scalability, readability, and maintainability. While past research focused on the utilization of the design patterns and performance, there is limited insight into their impact on program evolution. Dependency signifies relationships between program elements, reflecting a program's structure and interaction. High dependencies indicate complexity and potential flaws, hampering system quality and maintenance. This paper presents how design patterns influence software evolution by analyzing dependencies using the Syntax Tree (AST) to examine dependency patterns during evolution. We employed three widely adopted design patterns from the Gang of Four (GoF) as experimental examples. The results show that design patterns effectively reduce dependencies, lowering system complexity and enhancing quality.
engineering, electrical & electronic,computer science, information systems,physics, applied
What problem does this paper attempt to address?