Understanding the architecture is vital for effectively maintaining and managing large software systems. However, as software systems evolve over time, their architectures inevitably change. To keep up with the change, architects need to track the implementation-level changes and update the architectural documentation accordingly, which is time-consuming and error-prone. Therefore, many automatic architecture recovery techniques have been proposed to ease this process. Despite efforts have been made to improve the accuracy of architecture recovery, existing solutions still suffer from two limitations. First, most of them only use one or two type of information for the recovery, ignoring the potential usefulness of other sources. Second, they tend to use the information in a coarse-grained manner, overlooking important details within it. To address these limitations, we propose SARIF, a fully automated architecture recovery technique, which incorporates three types of comprehensive information, including dependencies, code text and folder structure. SARIF can recover architecture more accurately by thoroughly analyzing the details of each type of information and adaptively fusing them based on their relevance and quality. To evaluate SARIF, we collected six projects with published ground-truth architectures and three open-source projects labeled by our industrial collaborators. We compared SARIF with nine state-of-the-art techniques using three commonly-used architecture similarity metrics and two new metrics designed by ourselves. The experimental results show that SARIF is 34.5% more accurate than the best of the previous techniques on average. By providing comprehensive architecture, SARIF can help users understand systems effectively and reduce the manual effort of obtaining ground-truth architectures.
Thu 7 DecDisplayed time zone: Pacific Time (US & Canada) change
14:00 - 15:30 | Machine Learning VResearch Papers / Ideas, Visions and Reflections / Journal First at Golden Gate C2 Chair(s): Prem Devanbu University of California at Davis | ||
14:00 15mTalk | LExecutor: Learning-Guided Execution Research Papers Media Attached | ||
14:15 15mTalk | Deeper Notions of Correctness in Image-based DNNs: Lifting Properties from Pixel to Entities Ideas, Visions and Reflections Felipe Toledo , David Shriver University of Virginia, Sebastian Elbaum University of Virginia, Matthew B Dwyer University of Virginia Link to publication DOI Pre-print Media Attached | ||
14:30 15mTalk | Software Architecture Recovery with Information Fusion Research Papers Yiran Zhang Nanyang Technological University, Zhengzi Xu Nanyang Technological University, Chengwei Liu Nanyang Technological University, Hongxu Chen Huawei Technologies Co., Ltd., Sun Jianwen Huawei Technologies Co., Ltd, Dong Qiu Huawei Technologies Co., Ltd, Yang Liu Nanyang Technological University Media Attached | ||
14:45 15mTalk | What Kinds of Contracts Do ML APIs Need? Journal First Samantha Syeda Khairunnesa Bradley University, Shibbir Ahmed Dept. of Computer Science, Iowa State University, Sayem Mohammad Imtiaz Iowa State University, Hridesh Rajan Dept. of Computer Science, Iowa State University, Gary T. Leavens University of Central Florida Media Attached | ||
15:00 15mTalk | Evaluating Transfer Learning for Simplifying GitHub READMEs Research Papers Haoyu Gao The University of Melbourne, Christoph Treude University of Melbourne, Mansooreh Zahedi The Univeristy of Melbourne Pre-print Media Attached | ||
15:15 15mTalk | [Remote] CodeMark: Imperceptible Watermarking for Code Datasets against Neural Code Completion Models Research Papers Zhensu Sun Singapore Management University, Xiaoning Du Monash University, Australia, Fu Song State Key Laboratory of Computer Science, Institute of Software, Chinese Academy of Sciences, and University of Chinese Academy of Sciences Beijing, China, Li Li Beihang University Pre-print Media Attached |