Journal article
A Holistic Approach to Design Understanding through Concept Explanation
IEEE transactions on software engineering, v 51(2), pp 1-16
2025
Abstract
Complex software systems consist of multiple overlapping design structures, such as abstractions, features, crosscutting concerns, or patterns. This is similar to how a human body has multiple interacting subsystems, such as respiratory, digestive, or circulatory. Unlike in the medical domain, software designers do not have an effective way to distinguish, visualize, comprehend, and analyze these interleaving design structures. As a result, developers often struggle through the maze of source code. In this paper, we present an Automated Concept Explanation (ACE) framework that automatically extracts and categorizes major concepts from source code based on the roles that files play in design structures and their topic frequencies. Based on these categorized concepts, ACE recovers four categories of high-level design models using different algorithms and generates a natural language explanation for each. To assess if and how ACE can help developers better understand design structures, we conducted an empirical study where two groups of graduate students were assigned three design comprehension tasks: identifying feature-related files, identifying dependencies among features, and identifying design patterns used, in an open-source project. The results reveal that the students who used ACE can accomplish these tasks much faster and more accurately, and they acknowledged the usefulness of the categorized concepts and structures, multi-type high-level model visualization, and natural language explanations.
Metrics
12 Record Views
Details
- Title
- A Holistic Approach to Design Understanding through Concept Explanation
- Creators
- Hongzhou Fang - Drexel UniversityYuanfang Cai - Drexel UniversityEwan Tempero - University of AucklandRick Kazman - University of Hawaiʻi at MānoaYu-Cheng Tu - University of AucklandJason Lefever - Drexel UniversityErnst Pisch - Drexel University
- Publication Details
- IEEE transactions on software engineering, v 51(2), pp 1-16
- Publisher
- IEEE; LOS ALAMITOS
- Number of pages
- 16
- Grant note
- National Science Foundation of the US: CCF-2232720, CCF-2232721, CCF-2213764, TI-2236824
This work was supported in part by the National Science Foundation of the US under Grant CCF-2232720, Grant CCF-2232721, Grant CCF-2213764, and Grant TI-2236824.
- Resource Type
- Journal article
- Language
- English
- Academic Unit
- Computer Science (Computing)
- Web of Science ID
- WOS:001421986900011
- Scopus ID
- 2-s2.0-85214357391
- Other Identifier
- 991022011882204721
InCites Highlights
Data related to this publication, from InCites Benchmarking & Analytics tool:
- Collaboration types
- Domestic collaboration
- International collaboration
- Web of Science research areas
- Computer Science, Software Engineering
- Engineering, Electrical & Electronic