One-to-One or One-to-Many? Suggesting Extract Class Refactoring Opportunities with Intra-class Dependency Hypergraph Neural Network
This program is tentative and subject to change.
Excessively large classes that encapsulate multiple responsibilities are challenging to comprehend and maintain. Addressing this issue, several Extract Class refactoring tools have been proposed, employing a two-phase process: identifying suitable fields or methods for extraction, and implementing the mechanics of refactoring. These tools traditionally generate an intra-class dependency graph to analyze the class structure, applying hard-coded rules based on this graph to unearth refactoring opportunities. Yet, the graph-based approach predominantly illuminates direct, \textit{one-to-one}'' relationship between pairwise entities. Such a perspective is restrictive as it overlooks the complex,
\textit{one-to-many}'' dependencies among multiple entities that are prevalent in real-world classes. This narrow focus can lead to refactoring suggestions that may diverge from developers’ actual needs, given their multifaceted nature. To bridge this gap, our paper leverages the concept of intra-class dependency hypergraph to model \textit{one-to-many} dependency relationship and proposes a hypergraph learning-based approach to suggest Extract Class refactoring opportunities named HECS. For each target class, we first construct its intra-class dependency hypergraph and assign attributes to nodes with a pre-trained code model. All the attributed hypergraphs are fed into an enhanced hypergraph neural network for training. Utilizing this trained neural network alongside a large language model (LLM), we construct a refactoring suggestion system. We trained HECS on a large-scale dataset and evaluated it on two real-world datasets. The results show that demonstrates an increase of 38.5% in precision, 9.7% in recall, and 44.4% in f1-measure compared to 3 state-of-the-art refactoring tools including JDeodorant, SSECS, and LLMRefactor, which is more useful for 64% of participants. The results also unveil practical suggestions and new insights that benefit existing extract-related refactoring techniques.
This program is tentative and subject to change.
Thu 19 SepDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
15:30 - 17:10 | |||
15:30 20mTalk | One-to-One or One-to-Many? Suggesting Extract Class Refactoring Opportunities with Intra-class Dependency Hypergraph Neural Network Technical Papers Di Cui , Qiangqiang Wang Xidian University, Yutong Zhao University of Central Missouri, USA, Jiaqi Wang Xidian University, Minjie Wei Xidian University, Jingzhao Hu Xidian University, Luqiao Wang Xidian University, Qingshan Li Xidian University | ||
15:50 20mTalk | CoEdPilot: Recommending Code Edits with Learned Prior Edit Relevance, Project-wise Awareness, and Interactive Nature Technical Papers Chenyan Liu Shanghai Jiao Tong University; National University of Singapore, Cai Yufan Shanghai Jiao Tong University; National University of Singapore, Yun Lin Shanghai Jiao Tong University, Yuhuan Huang Shanghai Jiao Tong University, Yunrui Pei Shanghai Jiao Tong University, Bo Jiang Bytedance Network Technology, Ping Yang Bytedance Network Technology, Jin Song Dong National University of Singapore, Hong Mei Peking University DOI | ||
16:10 20mTalk | Arfa: an Agile Regime-based Floating-point Optimization Approach for Rounding Errors Technical Papers Jinchen Xu Information Engineering University, Mengqi Cui Information Engineering University, Fei Li Information Engineering University, Zuoyan Zhang Hunan University, Changsha, Hunan, Hongru Yang Information Engineering University, Bei Zhou Information Engineering University, Jie Zhao Hunan University | ||
16:30 20mTalk | Automated Deep Learning Optimization via DSL-Based Source Code Transformation Technical Papers Ruixin Wang Purdue University, Minghai Lu Purdue University, Cody Hao Yu BosonAI, Yi-Hsiang Lai Amazon Web Services, Tianyi Zhang Purdue University DOI | ||
16:50 20mTalk | Uncovering and Mitigating the Impact of Code Obfuscation on Dataset Annotation with Antivirus Engines Technical Papers Cuiying Gao Huazhong University of Science and Technology, Yueming Wu Nanyang Technological University, Heng Li Huazhong University of Science and Technology, Wei Yuan Huazhong University of Science and Technology, Haoyu Jiang Huazhong University of Science and Technology, Qidan He Jingdong Group, Yang Liu Nanyang Technological University |