Semantic Slicing of Architectural Change Commits: Towards Semantic Design Review
Amit Kumar Mondal, Chanchal K. Roy, Kevin A. Schneider, Banani Roy,, Sristy Sumana Nath

TL;DR
This paper introduces a lightweight tool that detects and decomposes semantic slices of architectural change commits, aiding design review by providing understandable relational descriptions of involved modules and classes.
Contribution
The paper presents a novel approach using DANS properties to accurately detect and decompose semantic slices of architectural changes in source code commits.
Findings
High precision and recall (93-100%) in detecting architectural slices
Effective decomposition of semantic slices for design review
Applicability to Java and Kotlin open-source projects
Abstract
Software architectural changes involve more than one module or component and are complex to analyze compared to local code changes. Development teams aiming to review architectural aspects (design) of a change commit consider many essential scenarios such as access rules and restrictions on usage of program entities across modules. Moreover, design review is essential when proper architectural formulations are paramount for developing and deploying a system. Untangling architectural changes, recovering semantic design, and producing design notes are the crucial tasks of the design review process. To support these tasks, we construct a lightweight tool [4] that can detect and decompose semantic slices of a commit containing architectural instances. A semantic slice consists of a description of relational information of involved modules, their classes, methods and connected modules in a…
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 · Advanced Software Engineering Methodologies · Software System Performance and Reliability
