Semantic Code Graph -- an information model to facilitate software comprehension
Krzysztof Borowski, Bartosz Bali\'s, Tomasz Orzechowski

TL;DR
The paper introduces the Semantic Code Graph (SCG), a detailed code dependency model that improves software comprehension and outperforms existing models like Call Graphs and Class Collaboration Networks in various activities.
Contribution
It proposes the SCG model, a new source code representation that closely reflects code dependencies and enhances comprehension tools compared to existing models.
Findings
SCG outperforms CCN and CG in comprehension activities
Qualitative analysis shows SCG provides clearer dependency insights
SCG facilitates better visualization and code similarity detection
Abstract
Software comprehension can be extremely time-consuming due to the ever-growing size of codebases. Consequently, there is an increasing need to accelerate the code comprehension process to facilitate maintenance and reduce associated costs. A crucial aspect of this process is understanding and preserving the high quality of the code dependency structure. While a variety of code structure models already exist, there is a surprising lack of models that closely represent the source code and focus on software comprehension. As a result, there are no readily available and easy-to-use tools to assist with dependency comprehension, refactoring, and quality monitoring of code. To address this gap, we propose the Semantic Code Graph (SCG), an information model that offers a detailed abstract representation of code dependencies with a close relationship to the source code. To validate the SCG…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Engineering Research · Software System Performance and Reliability · Software Engineering Techniques and Practices
