Meng Yan

Dr. Meng Yan


Research Focus & Metrics

Academic Career Length

8Years (2019-Present)

(Calculated once Scilit publication data is synced: current year − year of first publication + 1)

Representative Publications

View All Publications
8 November 2022 in Empirical Software Engineering
Verified
Journal Article
Closed access
PDF file
YFYing Fu
Ying Fu
MYMeng Yan
Meng Yan
ZXZhou Xu
Zhou Xu
XXXin Xia
Xin Xia
XZXiaohong Zhang
Xiaohong Zhang
DYDan Yang
Dan Yang

28 December 2021 in IEEE Transactions on Software Engineering
Verified
Journal Article
Closed access
ZLZhongxin Liu
Zhongxin Liu
XXXin Xia
Xin Xia
DLDavid Lo
David Lo
MYMeng Yan
Meng Yan
SLShanping Li
Shanping Li
Comments are valuable resources for the development, comprehension and maintenance of software. However, while changing code, developers sometimes neglect the evolution of the corresponding comments, resulting in obsolete comments. Such obsolete comments can mislead developers and introduce bugs in the future and are therefore detrimental. We notice that by detecting and updating obsolete comments in time with code changes, obsolete comments can be effectively reduced and even avoided. We refer to this task as Just-In-Time (JIT) Obsolete Comment Detection and Update. In this work, we propose a two-stage framework named CUP^2 (Two-stage Comment UPdater) to automate the JIT detection and update of obsolete comments. CUP^2 consists two components, i.e., an Obsolete Comment Detector named OCD and a Comment UPdater named CUP, each of which relies on a distinct neural network model to perform detection (updates). Specifically, given a code change and a corresponding comment, CUP^2 first leverages OCD to predict whether this comment should be updated. If the answer is yes, CUP will be used to generate the new version of the comment automatically. To evaluate CUP^2, we build a large-scale dataset with over 4 million code-comment change samples. Evaluation results show that 1) both OCD and CUP outperform their baselines by substantial margins, and 2) CUP^2 performs better than a rule-based baseline, achieves an accuracy of over 42% and can reduce the efforts of developers on detecting and updating obsolete comments.

23 May 2023 in IEEE Transactions on Software Engineering
Verified
Journal Article
Open access
ZZZhuo Zhang
Zhuo Zhang
YLYan Lei
Yan Lei
XMXiaoguang Mao
Xiaoguang Mao
MYMeng Yan
Meng Yan
XXXin Xia
Xin Xia
DLDavid Lo
David Lo
Numerous fault localization techniques identify suspicious statements potentially responsible for program failures by discovering the statistical correlation between test results ( i.e., failing or passing ) and the executions of the different statements of a program ( i.e., covered or not covered ). They rarely incorporate a failure context into their suspiciousness evaluation despite the fact that a failure context showing how a failure is produced is useful for analyzing and locating faults. Since a failure context usually contains the transitive relationships among the statements of causing a failure, its relationship complexity becomes one major obstacle for the context incorporation in suspiciousness evaluation of fault localization. To overcome the obstacle, our insight is that leveraging the promising learning ability may be a candidate solution to learn a feasible model for incorporating a failure context into fault localization. Thus, we propose a context-aware neural fault localization approach (CAN). Specifically, CAN represents the failure context by constructing a program dependency graph, which shows how a set of statements interact with each other ( i.e., data and control dependencies) to cause a failure. Then, CAN utilizes graph neural networks to analyze and incorporate the context ( e.g., the dependencies among the statements) into suspiciousness evaluation. Our empirical results on the 12 large-sized programs show that CAN achieves promising results ( e.g., 29.23% faults are ranked within top 5), and it significantly improves the state-of-the-art baselines with a substantial margin.

23 February 2025 in ACM Transactions on Software Engineering and Methodology
Verified
Journal Article
Open access
QZQuanjun Zhang
Quanjun Zhang
WSWeifeng Sun
Weifeng Sun
Chunrong FangChunrong Fang
Chunrong Fang
BYBowen Yu
Bowen Yu
HLHongyan Li
Hongyan Li
Zhenyu ChenZhenyu Chen
Zhenyu Chen
Unit testing aims to validate the correctness of software system units and has become an essential practice in software development and maintenance. However, it is incredibly time-consuming and labor-intensive for testing experts to write unit test cases manually, including test inputs (i.e., prefixes) and test oracles (i.e., assertions). Very recently, some techniques have been proposed to apply Large Language Models (LLMs) to generate unit assertions and have proven the potential in reducing manual testing efforts. However, there has been no systematic comparison of the effectiveness of these LLMs, and their pros and cons remain unexplored. To bridge this gap, we perform the first extensive study on applying various LLMs to automated assertion generation. The experimental results on two independent datasets show that studied LLMs outperform six state-of-the-art techniques with a prediction accuracy of 51.82%–58.71% and 38.72%–48.19%. The improvements achieve 29.60% and 12.47% on average. Besides, as a representative LLM, CodeT5 consistently outperforms all studied LLMs and all baselines on both datasets, with an average improvement of 13.85% and 26.64%, respectively. We also explore the performance of generated assertions in detecting real-world bugs, and find LLMs are able to detect 32 bugs from Defects4J on average, with an improvement of 52.38% against the most recent approach EditAS . Inspired by the findings, we construct a simplistic retrieval-and-repair-enhanced LLM-based approach by transforming the assertion generation problem into a program repair task for retrieved similar assertions. Surprisingly, such a simplistic approach can further improve the prediction accuracy of LLMs by 9.40% on average, leading to new records on both datasets. Besides, we provide additional discussions from different aspects (e.g., the impact of assertion types and test lengths) to illustrate the capacity and limitations of LLM-based approaches. Finally, we further pinpoint various practical guidelines (e.g., the improvement of multiple candidate assertions) for advanced LLM-based assertion generation in the near future. Overall, our work underscores the promising future of adopting off-the-shelf LLMs to generate accurate and meaningful assertions in real-world test cases and reduce the manual efforts of unit testing experts in practical scenarios.

10 September 2021 in IEEE Transactions on Parallel and Distributed Systems
Verified
Journal Article
Closed access
ZWZiliang Wang
Ziliang Wang
XZXiaohong Zhang
Xiaohong Zhang
MYMeng Yan
Meng Yan
LXLing Xu
Ling Xu
DYDan Yang
Dan Yang
The high-precision QoS (quality of service) prediction is based on the comprehensive perception of state information of users and services. However, the current QoS prediction approaches have limited accuracy, for most state information of users and services (i.e., network speed, latency, network type, and more) are hidden due to privacy protection. Therefore, this article proposes a hidden-state-aware network (HSA-Net) that includes three steps called hidden state initialization, hidden state perception, and QoS prediction. A hidden state initialization approach is developed first based on the latent dirichlet allocation (LDA). After that, a hidden-state perception approach is proposed to abstract the initialized hidden state by fusing the known information (e.g., service ID and user location). The perception approach consists of four hidden-state perception (HSP) modes (i.e., known mode, object mode, hybrid mode and overall mode) implemented to generate explainable and fused features through four adaptive convolutional kernels. Finally, the relationship between the fused features and the QoS is discovered through a fully connected network to complete the high-precision QoS prediction process. The proposed HSA-Net is evaluated on two real-world datasets. According to the results, the HSA-Net's mean absolute error (MAE) index reduced by 3.67% and 28.84%, whereas the root mean squared error (RMSE) index decreased by 3.07% and 7.14% compared with ten baselines on average in the two datasets.

31 May 2024 in IEEE/ACM Transactions on Networking
Verified
Journal Article
Closed access
ZWZiliang Wang
Ziliang Wang
SZShiyi Zhu
Shiyi Zhu
JLJianguo Li
Jianguo Li
WJWei Jiang
Wei Jiang
KRK. K. Ramakrishnan
K. K. Ramakrishnan
ALAlex X. Liu
Alex X. Liu
Cloud service providers often provision excessive resources to meet the desired Service Level Objectives (SLOs), by setting lower CPU utilization targets. This can result in a waste of resources and a noticeable increase in power consumption in large-scale cloud deployments. To address this issue, this paper presents DeepScaling, an innovative solution for minimizing resource cost while ensuring SLO requirements are met in a dynamic, large-scale production microservice-based system. We propose DeepScaling, which introduces three innovative components to adaptively refine the target CPU utilization of servers in the data center, and we maintain it at a stable value to meet SLO constraints while using minimum amount of system resources. First, DeepScaling forecasts workloads for each service using a Spatio-temporal Graph Neural Network. Secondly, it estimates CPU utilization with a Deep Neural Network, considering factors such as periodic tasks and traffic. Finally, it uses a modified Deep Q-Network (DQN) to generate an autoscaling policy that controls service resources to maximize service stability while meeting SLOs. Evaluation of DeepScaling in Ant Group’s large-scale cloud environment shows that it outperforms state-of-the-art autoscaling approaches in terms of maintaining stable performance and resource savings. The deployment of DeepScaling in the real-world environment of 1900+ microservices saves the provisioning of over 100,000 CPU cores per day, on average.