Foliage: Nourishing Evolving Software by Characterizing and Clustering Field Bugs
This program is tentative and subject to change.
Modern programs, characterized by complex functionalities, high integration, and rapid iteration cycles, are prone to errors. This complexity presents challenges in program analysis and software testing, making comprehensive bug coverage difficult during the development phase. Consequently, many bugs are often only discovered during the software’s production phase. Tracking and understanding these field bugs are indispensable yet non-trivial tasks: The uploaded field error reports are enormous, and trivial but high-frequency bugs can overshadow low-frequency but important bugs; Application codebases evolve rapidly and one bug can produce very different exceptions and stack traces across code releases. In this paper, we introduce Foliage, a bug tracking and clustering toolchain, which traces and characterizes field bugs of JavaScript applications to help developers locate and fix these bugs. To address the challenges of efficiently tracking and analyzing the dynamic and complex nature of software bugs, Foliage proposes an error message enhancement technique. Foliage also introduces the verbal-characteristic-based clustering technique along with three evaluation metrics for bug clustering, namely V-measure, cardinality bias, and hit rate. The results demonstrate that Foliage’s verbal-characteristic-based bug clustering outperforms previous bug clustering approaches on average by 31.1% for these three metrics. We present an empirical study of Foliage applied to a complicated real-world application during a two-year production period. Foliage captures over 250,000 error reports and clusters them into 132 unique bugs. Finally, we open-source a bug dataset consisting of real and labeled error reports, which can be used to benchmark bug clustering techniques.
This program is tentative and subject to change.
Thu 19 SepDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
10:30 - 11:50 | |||
10:30 20mResearch paper | A Large-Scale Evaluation for Log Parsing Techniques: How Far Are We? Technical Papers Zhihan Jiang The Chinese University of Hong Kong, Jinyang Liu The Chinese University of Hong Kong, Junjie Huang The Chinese University of Hong Kong, Yichen LI The Chinese University of Hong Kong, Yintong Huo The Chinese University of Hong Kong, Jiazhen Gu The Chinese University of Hong Kong, Zhuangbin Chen School of Software Engineering, Sun Yat-sen University, Jieming Zhu Huawei Noah's Ark Lab, Michael Lyu Chinese University of Hong Kong DOI Pre-print | ||
10:50 20mTalk | FastLog: An End-to-End Method to Efficiently Generate and Insert Logging Statements Technical Papers Xiaoyuan Xie School of Computer Science, Wuhan University, China, Zhipeng Cai School of Computer Science, Wuhan University, Songqiang Chen The Hong Kong University of Science and Technology, Jifeng Xuan Wuhan University DOI | ||
11:10 20mTalk | Face It Yourselves: An LLM-Based Two-Stage Strategy to Localize Configuration Errors via Logs Technical Papers Shiwen Shan Sun Yat-sen University, Yintong Huo The Chinese University of Hong Kong, Yuxin Su Sun Yat-sen University, Yichen LI The Chinese University of Hong Kong, Dan Li Sun Yat-sen University, Zibin Zheng Sun Yat-sen University DOI | ||
11:30 20mTalk | Foliage: Nourishing Evolving Software by Characterizing and Clustering Field Bugs Technical Papers Zhanyao Lei Shanghai Jiao Tong University, Yixiong Chen Shanghai Jiao Tong University, Mingyuan Xia AppetizerIO, Zhengwei Qi Shanghai Jiao Tong University DOI |