VLDB 2026 Research / reviewers in the wild / expert
Yu Zhou 0010
dblp:36/2728-10
· DBLP profile ↗
86ranked-venue papers
20as first author
52since 2021 · last 2026
0000-0002-3723-7584ORCID · conflict
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 65 · 14 first-author · 43 since 2021Applied, interdisciplinary, general and emerging computing · 10 · 5 first-author · 3 since 2021Systems, architecture and hardware · 5 · 2 since 2021Artificial intelligence and machine learning · 3 · 1 since 2021Graphics, computer vision, multimedia, augmented reality and games · 2 · 2 since 2021Databases, data management, data science and information retrieval · 1 · 1 since 2021Human-computer interaction and ubiquitous computing · 1 · 1 first-author
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2026 | Defending neural code understanding models by eliminating backdoors
Yu Zhou 0010, Guang Yang 0019, Xiangyu Zhang 0005, Wenhua Yang 0001, Taolue Chen 0001 |
Autom. Softw. Eng. | 2 |
| 2026 | Empirical evaluation of simulation-based fuzz testing for autonomous driving systems
Huiwen Yang, Yu Zhou 0010, Taolue Chen 0001 |
Empir. Softw. Eng. | 2 |
| 2026 | Less is more: Towards green code large language models via unified structural pruning
Guang Yang 0019, Yu Zhou 0010, Xiangyu Zhang 0005, Xiang Chen 0005, Terry Yue Zhuo, Taolue Chen 0001 |
Inf. Process. Manag. | 2 |
| 2026 | LARANet: A lightweight defect detection network with reinforcement-guided perception and energy-aware statistical attention
Yuhan Shao, Yu Zhou 0010, Taolue Chen 0001 |
J. Vis. Commun. Image Represent. | 2 |
| 2026 | Detecting duplicate vulnerability records across databases
Kangliang Zhu, Wenhua Yang 0001, Minxue Pan, Yu Zhou 0010 |
Sci. Comput. Program. | 4 |
| 2026 | SimADFuzz: Simulation-Feedback Fuzz Testing for Autonomous Driving SystemsabstractAutonomous driving systems (ADSs) have achieved remarkable progress in recent years. However, ensuring their safety and reliability remains a critical challenge due to the complexity and uncertainty of driving scenarios. In this article, we focus on simulation testing for ADS, where generating diverse and effective testing scenarios is a central task. Existing fuzz testing methods face limitations, such as overlooking the temporal and spatial dynamics of scenarios and failing to leverage simulation feedback (e.g., speed, acceleration and heading) to guide scenario selection and mutation. To address these issues, we propose SimADFuzz , a novel framework designed to generate high-quality scenarios that reveal violations in ADS behavior. Specifically, SimADFuzz employs violation prediction models, which evaluate the likelihood of ADS violations, to optimize scenario selection. Moreover, SimADFuzz proposes distance-guided mutation strategies to enhance interactions among vehicles in offspring scenarios, thereby triggering more edge-case behaviors of vehicles. Comprehensive experiments demonstrate that SimADFuzz outperforms state-of-the-art fuzzers by identifying 73 more unique violations, including 5 reproducible cases of vehicle–vehicle, vehicle–pedestrian, and vehicle–roadside collisions. These results demonstrate SimADFuzz ’s effectiveness in enhancing the robustness and safety of ADSs. Huiwen Yang, Yu Zhou 0010, Taolue Chen 0001 |
ACM Trans. Softw. Eng. Methodol. | 2 |
| 2026 | Less Is More: DocString Compression in Code GenerationabstractThe widespread use of Large Language Models (LLMs) in software engineering has intensified the need for improved model and resource efficiency. In particular, for neural code generation, LLMs are used to translate function/method signature and DocString to executable code. DocStrings, which capture user requirements for the code and are typically used as the prompt for LLMs, often contain redundant information. Recent advancements in prompt compression have shown promising results in Natural Language Processing (NLP), but their applicability to code generation remains uncertain. Our empirical study shows that the state-of-the-art prompt compression methods achieve only about 10% reduction, as further reductions would cause significant performance degradation. In our study, we propose a novel compression method, ShortenDoc, dedicated to DocString compression for code generation. Our experiments on six code generation datasets, five open source LLMs (1B to 10B parameters), and one closed-source LLM GPT-4o confirm that ShortenDoc achieves 25–40% compression while preserving the quality of generated code, outperforming other baseline methods at similar compression levels. The benefit of this method is to improve efficiency and reduce the token processing cost while maintaining the quality of the generated code, especially when calling third-party APIs. Guang Yang 0019, Yu Zhou 0010, Xiangyu Zhang 0005, Xiang Chen 0005, Terry Yue Zhuo, Xin Zhou 0014, David Lo 0001, Taolue Chen 0001 |
ACM Trans. Softw. Eng. Methodol. | 2 |
| 2026 | Defending Code Language Models against Backdoor Attacks with Deceptive Cross-Entropy LossabstractCode Language Models (CLMs), particularly those leveraging deep learning, have achieved significant success in code intelligence domain. However, the issue of security, particularly backdoor attacks, is often overlooked in this process. The previous research has focused on designing backdoor attacks for CLMs, but effective defenses have not been adequately addressed. In particular, existing defense methods from natural language processing, when directly applied to CLMs, are not effective enough and lack generality, working well in some models and scenarios but failing in others, thus fall short in consistently mitigating backdoor attacks. To bridge this gap, we first confirm the phenomenon of “early learning” as a general occurrence during the training of CLMs. This phenomenon refers to that a model initially focuses on the main features of training data but may become more sensitive to backdoor triggers over time, leading to overfitting and susceptibility to backdoor attacks. We then analyze that overfitting to backdoor triggers results from the use of the cross-entropy loss function, where the unboundedness of cross-entropy leads the model to increasingly concentrate on the features of the poisoned data. Based on this insight, we propose a general and effective loss function DeCE (Deceptive Cross-Entropy) by blending deceptive distributions and applying label smoothing to limit the gradient to bounded, which prevents the model from overfitting to backdoor triggers and then enhances the security of CLMs against backdoor attacks. To evaluate the effectiveness of our defense method, we select four code-related tasks as our experimental scenes and conduct experimental analyses on both natural language and two programming languages (Java and Python). Our experiments across multiple models with different sizes (from 125 millions to 7 billions) and poisoning ratios demonstrate the applicability and effectiveness of DeCE in enhancing the security of CLMs. The findings emphasize the potential of DeCE as a novel defense mechanism for CLMs, effectively tackling the challenge of securing models against backdoor threats. Guang Yang 0019, Yu Zhou 0010, Xiangyu Zhang 0005, Xiang Chen 0005, Terry Yue Zhuo, David Lo 0001, Taolue Chen 0001 |
ACM Trans. Softw. Eng. Methodol. | 2 |
| 2025 | Beyond Sequences: Two-dimensional Representation and Dependency Encoding for Code GenerationabstractThe advent of large language models has significantly advanced automatic code generation, transforming the way programmers writing code. Inspired by natural language processing, mainstream code generation approaches represent code as a linear sequence of tokens. In this paper, we propose to represent code snippets as two-dimensional entities, where both code lines and tokens within lines are explicitly modeled. This representation allows us to capture the hierarchical and spatial structure of code, especially the dependencies between code lines. Our method CoDE introduces a dependency encoding approach that leverages dictionary learning to perform semantic matching between code lines. As such, it avoids the reliance on strict position indices, leading to better generalization to code with diverse context and lengths. We thoroughly evaluate CoDE based on four categories of tasks. The experimental results showcase its generalizability, context understanding and retrieval, as well as interpretability in code generation. Xiangyu Zhang 0005, Yu Zhou 0010, Guang Yang 0019, Taolue Chen 0001 |
ACL (1) | 2 |
| 2025 | Understanding Feature Request Practice on GitHub via a Large-Scale Empirical StudyabstractFeature requests are a key communication mechanism on GitHub, enabling users and developers to collaboratively shape the direction of open-source projects. Feature requests are prevalent and important, but have been underexplored in existing studies. There is limited understanding of how they are labeled, how they evolve, and how they are resolved. A deeper understanding of feature requests is critical, not only for improving issue triage and project management but also for fostering more effective collaboration within open-source communities. In this work, we present the first systematic and large-scale empirical study of feature requests. Drawing on 1.4 million issues from 825 GitHub repositories, we examine how feature requests are labeled, how their submission and backlog patterns change over a project’s lifecycle, how they differ from other types of issues in terms of resolution and engagement, and what factors contribute to their successful handling. Our findings reveal that labeling practices are often inconsistent across projects, that feature requests follow distinct temporal trends, and that those which are lengthy and contain large code snippets tend to be more difficult to resolve. By contrast, concise and clearly defined requests, particularly those submitted by experienced contributors and accompanied by active discussions, are more likely to be addressed. This study underscores the challenges of managing feature requests at scale and provides practical insights for maintainers, contributors, and researchers. To support future work in this area, we publicly release our dataset and analysis results. Wenhua Yang 0001, Minxue Pan, Yu Zhou 0010 |
ASE | 4 |
| 2025 | Code-DiTing: Automatic Evaluation of Code Generation without References or Test CasesabstractTrustworthy evaluation methods for code snippets play a crucial role in neural code generation. Traditional methods, which either rely on reference solutions or require executable test cases, have inherent limitation in flexibility and scalability. The recent LLM-as-Judge methodology offers a promising alternative by directly evaluating functional consistency between the problem description and the generated code. To systematically understand the landscape of these LLM-as-Judge methods, we conduct a comprehensive empirical study across three diverse datasets. Our investigation reveals the pros and cons of two categories of LLM-as-Judge methods: the methods based on general foundation models can achieve good performance but require complex prompts and lack explainability, while the methods based on reasoning foundation models provide better explainability with simpler prompts but demand substantial computational resources due to their large parameter sizes. To address these limitations, we propose Code-DiTing, a novel code evaluation method that balances accuracy, efficiency and explainability. We develop a data distillation framework that effectively transfers reasoning capabilities from DeepSeek-R1-671B to our Code-DiTing 1.5B and 7B models, significantly enhancing evaluation explainability and reducing the computational cost. With the majority vote strategy in the inference process, Code-DiTing 1.5B outperforms all models with the same magnitude of parameters and achieves performance which would normally exhibit in a model with 5 times of parameter scale. Code-DiTing 7B surpasses GPT-4o and DeepSeek-V3 671B, even though it only uses 1% of the parameter volume of these large models. Further experiments show that Code-DiTing is robust to preference leakage and can serve as a promising alternative for code evaluation. Guang Yang 0019, Yu Zhou 0010, Xiang Chen 0005, Wei Zheng 0006, Xing Hu 0008, Xin Zhou 0014, David Lo 0001, Taolue Chen 0001 |
ASE | 2 |
| 2025 | Defending LLMs Against Jailbreak Prompts Through Key Information Protection and Selective CompressionabstractWith the widespread application of Large Language Models (LLMs) in the field of natural language processing and software engineering, security vulnerabilities have emerged as a critical concern. Among these, jailbreak attacks represent a prevalent security threat, as they bypass the internal security checks of the model through carefully designed input perturbations, generating malicious outputs which severely may compromise the reliability and security of the LLM-based software tools. Existing defense methods based on reinforcement learning and fine-tuning often suffer from limited generalization, low interpretability, and high computational overhead. To address these limitations, we propose MaskedDefender, a novel defense approach that detects potential attack features by analyzing model's response differences to various inputs. Guided by the principle of key information protection and selective compression, MaskedDefender identifies critical tokens associated with jailbreak attacks by optimizing the gradient of a multi-objective loss function. It then applies soft guidance to steer the model's attention toward these critical tokens. Our approach highlights jailbreak intentions and reduces the model's confusion in identifying such attacks without modifying model parameters. Experimental results show that MaskedDefender outperforms existing defense methods in enabling the model to detect and resist jailbreak attacks, while maintaining both efficiency and effectiveness. Yu Zhou 0010, Xiangyu Zhang 0005, Tingting Han 0001 |
QRS | 2 |
| 2025 | Detecting data manipulation errors in android applications using scene-guided exploration
Yu Zhou 0010, Wenhua Yang 0001, Taolue Chen 0001, Harald C. Gall |
Empir. Softw. Eng. | 2 |
| 2025 | An Efficient Visual State Space Model for Remote Sensing Binary Change DetectionabstractABSTRACT Transformer and convolutional neural network (CNN) have made significant progress in the issue of remote sensing binary change detection. However, Transformer has high quadratic computational complexity, while CNN is limited by a fixed receptive field, which may hinder their capability of learning spatial contextual features. Inspired by the remarkable performance of Mamba on the task of natural language processing, which can effectively make up for the deficiencies of the above two architectures, we tailor the structure of Mamba to solve the issue of binary change detection. In this work, we explore the potential of visual Mamba to address the task of binary change detection in remote sensing imageries, which is abbreviated as Mam‐BCD. The entire network is designed as an encoder–decoder architecture. The encoder employs the effective visual Mamba to fully learn global spatial contextual features from input images. For the decoder, we introduce three spatio‐temporal feature learning strategies, which can be organically integrated into the Mamba architecture to achieve spatio‐temporal interaction between different temporal features. Comprehensive experiments are conducted on three public available datasets to verify the efficacy of the proposed Mam‐BCD. Compared to the advanced CTDFormer, Mam‐BCD achieves 4.49%, 8.73% and 3.44% gain in accuracy metric on SYSU‐CD, LEVIR‐CD+ and WHU‐CD datasets, respectively. Huagang Jin, Yu Zhou 0010 |
IET Image Process. | 2 |
| 2025 | Assessing and improving syntactic adversarial robustness of pre-trained models for code translation
Guang Yang 0019, Yu Zhou 0010, Xiangyu Zhang 0005, Xiang Chen 0005, Tingting Han 0001, Taolue Chen 0001 |
Inf. Softw. Technol. | 2 |
| 2025 | Integrating behavioral semantic analysis in usage-based equivalent tests generation for mobile applications
Yu Zhou 0010, Huiwen Yang, Tingting Han 0001, Taolue Chen 0001 |
Sci. Comput. Program. | 2 |
| 2025 | Anchor Attention, Small Cache: Code Generation With Large Language ModelsabstractThe development of large language models (LLMs) has revolutionized automated code generation. However, their high demand of computation resources has hindered a broader deployment and raised environmental concerns. A common strategy for diminishing computational demands is to cache Key-Value (KV) states from the attention mechanism which is adopted predominately by mainstream LLMs. It can mitigate the need of repeated attention computations, but brings significant memory overhead. Current practices in NLP often use sparse attention which may, unfortunately, lead to substantial inaccuracies, or hallucinations, in code generation tasks. In this paper, we analyze the attention weights distribution within code generation models via an empirical study, uncovering a sparsity pattern, i.e., the aggregation of information at specific anchor points. Based on this observation, we propose a novel approach, AnchorCoder, which features token-wise anchor attention designed to extract and compress the contextual information, and layer-wise anchor attention enabling cross-layer communication to mitigate the issue of excessive superposition caused by the compression. The extensive experiments across multiple benchmark datasets confirm the effectiveness of AnchorCoder, which can consistently achieve a significant (at least 70%) reduction in KV cache requirements, while preserving the majority of model’s performance. Xiangyu Zhang 0005, Yu Zhou 0010, Guang Yang 0019, Harald C. Gall, Taolue Chen 0001 |
IEEE Trans. Software Eng. | 2 |
| 2024 | An Empirical Study on Python Library Dependency and Conflict IssuesabstractWith the rapid development of open-source communities, code reuse in Python projects is increasingly common. Developers heavily rely on third-party libraries from the Python central repository. They need to write specific configuration scripts with version constraints to ensure the correct version of dependent libraries when building projects. However, existing research focuses on direct dependency libraries and ignores potential dependencies that may exist in other dependency configuration files (e.g., requirements-dev.txt for development dependencies). To fill this gap, we conduct an in-depth comprehensive study to quantify the distribution of direct and potential dependencies, correlation, and classification along with detection tools of dependency conflict issues with 278 top popular Python library projects, which were collected from the prominent dependency tracking system Libraries.io. Specifically, we first investigate the magnitude distribution of dependencies by parsing library source files. Second, we visualize dependencies among Python libraries to determine the correlation. We then classify types of dependency conflicts from the perspective of third-party libraries. Finally, we compare Python dependency conflict detection and resolution tools for researchers and developers. Our findings show that third-party libraries containing dependencies are more common, with 79.1% having at least one dependent library. Moreover, the dependency relationship among Python libraries is intricate, which generates lots of dependency conflict issues such as version conflicts. The main cause of issues is the conflict among third-party libraries, accounting for 60.13%. Our findings can help developers better understand library dependencies and provide them insights on how to better manage them. Yu Zhou 0010, Yasir Hussain, Wenhua Yang 0001 |
QRS | 2 |
| 2024 | Exploring the Impact of Vocabulary Techniques on Code Completion: A Comparative ApproachabstractIntegrated Development Environments (IDEs) are pivotal in enhancing productivity with features like code completion in modern software development. Recent advancements in Natural Language Processing (NLP) have empowered neural language models for code completion. In this study, we present an extensive investigation of the impact of open and closed vocabulary systems on the task of code completion. Specifically, we compare open and closed vocabulary systems with various vocabulary sizes to observe their impact on code completion performance. We experiment with three different open vocabulary systems: byte pair encoding (BPE), WordPiece and Unigram to compare them with closed-vocabulary systems to analyze their modeling performance. We also conduct experiments with different context sizes to study their impact on code completion performance. We have experimented using various prominent language models, including one from recurrent neural networks and five from transformers. Our results indicate that vocabulary size significantly impacts modeling performance and can artificially boost the accuracy of code completion models, especially in the case of a closed-vocabulary system. Moreover, we find that different vocabulary systems have varying impacts on token coverage, whereas open-vocabulary systems exhibit better token coverage. Our findings offer valuable insights for building effective code completion models, aiding researchers and practitioners in this field. Yasir Hussain, Yu Zhou 0010, Izhar Ahmed Khan |
Int. J. Softw. Eng. Knowl. Eng. | 3 |
| 2024 | Context-aware code generation with synchronous bidirectional decoder
Xiangyu Zhang 0005, Yu Zhou 0010, Guang Yang 0019, Tingting Han 0001, Taolue Chen 0001 |
J. Syst. Softw. | 2 |
| 2024 | Enhancing test reuse with GUI events deduplication and adaptive semantic matching
Yu Zhou 0010, Longbing Ji, Tingting Han 0001, Taolue Chen 0001 |
Sci. Comput. Program. | 2 |
| 2024 | How accessibility affects other quality attributes of software? A case study of GitHub
Yaxin Zhao, Lina Gong, Wenhua Yang 0001, Yu Zhou 0010 |
Sci. Comput. Program. | 4 |
| 2024 | Richen: Automated enrichment of Git documentation with usage examples and scenariosabstractAbstract As the predominant modern version control system, Git has become an indispensable tool for both commercial and open‐source software projects. It substantially improves software development effectiveness and efficiency through its distributed version control system, fostering seamless collaboration among teams and across locations. However, research has found that many developers have doubts about using Git commands, while the official Git documentation is rather scanty, that is, lacking sufficient explanations and examples. To help developers learn and use Git commands, we propose the first approach (Richen) for enriching Git documentation with usage examples and scenarios by leveraging crowd knowledge from Stack Overflow. Richen retrieves Git‐related posts from Stack Overflow, extracts relevant Q&A pairs, and selects representative command usages, including usage examples and scenarios, for different Git commands. Experimental results have shown that Richen can extract informative and concise command usages for Git commands. Compared with alternative methods adapted from API usage mining, the command usages obtained by Richen have significant advantages in terms of relevance, readability, and usability. Furthermore, we have shown through an empirical study that the command usages extracted by Richen can better help developers complete Git command‐related tasks. Chaochao Shen, Wenhua Yang 0001, Haitao Jia, Minxue Pan, Yu Zhou 0010 |
J. Softw. Evol. Process. | 5 |
| 2024 | How Important Are Good Method Names in Neural Code Generation? A Model Robustness PerspectiveabstractPre-trained code generation models (PCGMs) have been widely applied in neural code generation, which can generate executable code from functional descriptions in natural languages, possibly together with signatures. Despite substantial performance improvement of PCGMs, the role of method names in neural code generation has not been thoroughly investigated. In this article, we study and demonstrate the potential of benefiting from method names to enhance the performance of PCGMs from a model robustness perspective. Specifically, we propose a novel approach, named neu RA l co D e gener A tor R obustifier (RADAR). RADAR consists of two components: RADAR -Attack and RADAR -Defense. The former attacks a PCGM by generating adversarial method names as part of the input, which are semantic and visual similar to the original input but may trick the PCGM to generate completely unrelated code snippets. As a countermeasure to such attacks, RADAR -Defense synthesizes a new method name from the functional description and supplies it to the PCGM. Evaluation results show that RADAR -Attack can reduce the CodeBLEU of generated code by 19.72% to 38.74% in three state-of-the-art PCGMs (i.e., CodeGPT, PLBART, and CodeT5) in the fine-tuning code generation task and reduce the Pass@1 of generated code by 32.28% to 44.42% in three state-of-the-art PCGMs (i.e., Replit, CodeGen, and CodeT5+) in the zero-shot code generation task. Moreover, RADAR -Defense is able to reinstate the performance of PCGMs with synthesized method names. These results highlight the importance of good method names in neural code generation and implicate the benefits of studying model robustness in software engineering. Guang Yang 0019, Yu Zhou 0010, Wenhua Yang 0001, Tao Yue 0002, Xiang Chen 0005, Taolue Chen 0001 |
ACM Trans. Softw. Eng. Methodol. | 2 |
| 2024 | DRIVE: Dockerfile Rule Mining and Violation DetectionabstractA Dockerfile defines a set of instructions to build Docker images, which can then be instantiated to support containerized applications. Recent studies have revealed a considerable amount of quality issues with Dockerfiles. In this article, we propose a novel approach, Dockerfiles Rule mIning and Violation dEtection ( DRIVE ), to mine implicit rules and detect potential violations of such rules in Dockerfiles. DRIVE first parses Dockerfiles and transforms them to an intermediate representation. It then leverages an efficient sequential pattern mining algorithm to extract potential patterns. With heuristic-based reduction and moderate human intervention, potential rules are identified, which can then be utilized to detect potential violations of Dockerfiles. DRIVE identifies 34 semantic rules and 19 syntactic rules including 9 new semantic rules that have not been reported elsewhere. Extensive experiments on real-world Dockerfiles demonstrate the efficacy of our approach. Yu Zhou 0010, Weilin Zhan, Tingting Han 0001, Taolue Chen 0001, Harald C. Gall |
ACM Trans. Softw. Eng. Methodol. | 1 |
| 2024 | Chain-of-Thought in Neural Code Generation: From and for Lightweight Language ModelsabstractLarge Language Models (LLMs) have demonstrated remarkable potential in code generation. The integration of Chain of Thought (CoT) reasoning can further boost their performance. However, current CoT methods often require manual writing or LLMs with over 100 billion parameters to generate, impeding their applicability in resource-constrained scenarios. In this study, we investigate lightweight Language Models ($\ell$LMs), which are defined to have fewer than 10 billion parameters. Empirically, we find that most$\ell$LMs cannot generate high-quality CoTs when prompted by the few-shot method, but can take advantage of high-quality CoTs generated elsewhere to improve their performance in code generation. Based on these findings, we design a novel approachCOTTONwhich can leverage$\ell$LMs to automatically generate CoTs for code generation. We synthesize new datasets and conduct extensive experiments on various benchmarks. The results show that the CoTs generated byCOTTONoutperform the baselines in terms of automated and human evaluation metrics. In particular, the CoTs generated byCOTTONboost various$\ell$LMs to achieve higher performance gains than those generated by LLMs such as ChatGLM (130B), and are competitive with those generated by Gemini and gpt-3.5-turbo. The results also reveal thatCOTTONnot only improves the performance of$\ell$LMs, but also enhances the performance of LLMs. Our study showcases the potential of$\ell$LMs in software engineering applications. Guang Yang 0019, Yu Zhou 0010, Xiang Chen 0005, Xiangyu Zhang 0005, Terry Yue Zhuo, Taolue Chen 0001 |
IEEE Trans. Software Eng. | 2 |
| 2023 | Optimized Tokenization Process for Open-Vocabulary Code Completion: An Empirical StudyabstractStudies have substantiated the efficacy of deep learning-based models in various source code modeling tasks. These models are usually trained on large datasets that are divided into smaller units, known as tokens, utilizing either an open or closed vocabulary system. The selection of a tokenization method can have a profound impact on the number of tokens generated, which in turn can significantly influence the performance of the model. This study investigates the effect of different tokenization methods on source code modeling and proposes an optimized tokenizer to enhance the tokenization performance. The proposed tokenizer employs a hybrid approach that initializes with a global vocabulary based on the most frequent unigrams and incrementally builds an open-vocabulary system. The proposed tokenizer is evaluated against popular tokenization methods such as Closed, Unigram, WordPiece, and BPE tokenizers, as well as tokenizers provided by large pre-trained models such as PolyCoder and CodeGen. The results indicate that the choice of tokenization method can significantly impact the number of sub-tokens generated, which can ultimately influence the modeling performance of a model. Furthermore, our empirical evaluation demonstrates that the proposed tokenizer outperforms other baselines, achieving improved tokenization performance both in terms of a reduced number of sub-tokens and time cost. In conclusion, this study highlights the significance of the choice of tokenization method in source code modeling and the potential for improvement through optimized tokenization techniques. Yasir Hussain, Yu Zhou 0010, Izhar Ahmed Khan, Nasrullah Khan, Muhammad Zahid Abbas |
EASE | 3 |
| 2023 | Understanding and Enhancing Issue Prioritization in GitHubabstractGitHub has become a prominent platform for open source software development, facilitating collaboration and communication among a diverse group of contributors. Efficient issue tracking is a crucial aspect of managing projects on GitHub, and labels serve as one of the primary mechanisms for issue prioritization, while various other issue features are also utilized by issue handlers for the same purpose. However, in large projects, prioritizing issues remains a challenge, and the efficacy of using labels or other issue features for prioritization is not well understood. To address this knowledge gap, we conduct a comprehensive empirical study that investigates the role of labels in GitHub issue prioritization, examines the influence of various issue features on prioritization, and assesses the performance of different ranking algorithms based on these impactful features. Our study, conducted on a dataset comprising data from over 1.5 million issues across diverse GitHub projects, provides valuable insights for issue handling in open source platforms and offers guidance for future research in this domain. Specifically, the study reveals the limited effectiveness of labels in issue prioritization, highlights the significance of certain issue features in the prioritization process, and compares the performance of various ranking algorithms for issue prioritization to support issue handlers. Yingying He, Wenhua Yang 0001, Minxue Pan, Yasir Hussain, Yu Zhou 0010 |
ASE | 5 |
| 2023 | Enhancing Code Completion with Implicit FeedbackabstractCode completion has become an important feature of today’s integrated development environments (IDEs). This task involves predicting the next code token(s) based on its contextual information within the code. However, most existing code completion approaches do not consider users’ feedback during the completion process. In this paper, we propose a framework, EHOPE (Enhance Code Completion with Implicit Feedback)), which exploits LSTM(Long Short-Term Memory) and pre-trained model BERT(Bidirectional Encoder Representation from Transformers) to enhance the performance of token-level code completion. By leveraging users’ feedback information, we train an LSTM model to supplement the recommendation list. In addition, we re-rank the list of recommendations using the pre-trained model BERT, which is fine-tuned with feedback information. Existing token-level code completion tools can be plugged into EHOPE. We choose two representative code completion approaches from different categories: one based on statistical methods and the other based on deep learning. These approaches serve as baselines to showcase the performance improvements of EHOPE, evaluated using Hit@k (Top-k) and MRR(Mean Reciprocal Rank) metrics. Empirical experiments show that the recommendation performance steadily and substantially improves as the feedback data increases compared with the baselines. Haonan Jin, Yu Zhou 0010, Yasir Hussain |
QRS | 2 |
| 2023 | Git Merge Conflict Resolution Leveraging Strategy Classification and LLMabstractIn the realm of collaborative software development, version control systems (VCS) like Git play an indispensable role, enabling concurrent development and facilitating seamless integration of disparate code contributions. Despite these benefits, merge conflicts resulting from simultaneous changes to identical code lines often pose significant challenges to the integration process. Addressing this challenge, our paper introduces a novel two-stage approach, termed as CHATMERGE, for resolving Git merge conflicts. CHATMERGE pioneers a unique strategy that employs machine learning to initially predict resolution strategies, and subsequently leverages a large language model, ChatGPT, to create resolutions for conflicts that necessitate complex resolution strategies. A series of comprehensive experiments validate CHATMERGE’s efficacy, demonstrating its impressive alignment with historical manual resolutions and its superior performance relative to existing, publicly accessible tools. The paper further explores the influence of various classification algorithms and the prompt construction process for ChatGPT, providing further insights into the merge conflict resolution process. Moreover, to foster continued advancements in this area, CHATMERGE, along with its associated training and testing datasets, is made publicly available, offering a valuable resource for both developers and researchers. This work, therefore, provides both an innovative solution to merge conflict resolution and a strong foundation for future explorations in this domain. Chaochao Shen, Wenhua Yang 0001, Minxue Pan, Yu Zhou 0010 |
QRS | 4 |
| 2023 | Context-aware API recommendation using tensor factorization
Yu Zhou 0010, Yongchao Wang 0003, Tingting Han 0001, Taolue Chen 0001 |
Sci. China Inf. Sci. | 1 |
| 2023 | A syntax-guided multi-task learning approach for Turducken-style code generation
Guang Yang 0019, Yu Zhou 0010, Xiang Chen 0005, Xiangyu Zhang 0005, Tingting Han 0001, Taolue Chen 0001 |
Empir. Softw. Eng. | 2 |
| 2023 | Git command recommendations using crowd-sourced knowledge
Haitao Jia, Wenhua Yang 0001, Chaochao Shen, Minxue Pan, Yu Zhou 0010 |
Inf. Softw. Technol. | 5 |
| 2023 | Boosting source code suggestion with self-supervised Transformer Gated Highway
Yasir Hussain, Yu Zhou 0010, Senzhang Wang |
J. Syst. Softw. | 3 |
| 2023 | ExploitGen: Template-augmented exploit code generation based on CodeBERT
Guang Yang 0019, Yu Zhou 0010, Xiang Chen 0005, Xiangyu Zhang 0005, Tingting Han 0001, Taolue Chen 0001 |
J. Syst. Softw. | 2 |
| 2023 | Ensure: Towards Reliable Control of Cyber-Physical Systems Under UncertaintyabstractCyber-physical systems (CPSs) are complex ensembles of physical and cyber components that cooperate to offer dynamic and adaptive functionalities. Uncertainty can arise from a plethora of sources in the entangled components, ranging from the unreliable perception, the nondeterministic action effects, to even the changes in the environment. Existing controlling approaches, such as those using Markov decision process, have limited ability in handling uncertainty. To address the challenge, in this article, we novelly propose using partially observable Markov decision processes (POMDPs) to model CPS under uncertainty and show that common types of uncertainties can be modeled by partial observations and nondeterministic actions over probabilistic distributions. With POMDPs, strategies that can optimally control CPS are synthesized. We further propose a strategywise verification method, which resolves the difficult problem of verifying the entire POMDP, to offer reliable controlling strategies. Experiments on two representative cases of CPS show promising results compared with existing approaches. Wenhua Yang 0001, Chang Xu 0001, Minxue Pan, Yu Zhou 0010 |
IEEE Trans. Reliab. | 4 |
| 2022 | Test Reuse based on Adaptive Semantic Matching across Android Mobile ApplicationsabstractAutomatic test generation can help verify and develop the behavior of mobile applications. Test reuse based on semantic similarities between applications of the same category has been utilized to reduce the manual effort of Graphical User Interface (GUI) testing. However, most of the existing studies fail to solve the semantic problem of event matching, which leads to the failure of test reuse. To overcome this challenge, we propose TRASM (Test Reuse based on Adaptive Semantic Matching), a test reuse approach based on adaptive strategies to find a better event matching across android mobile applications. TRASM first performs GUI events deduplication on the initial test set obtained from test generation, and then employs an adaptive strategy to find better event matching, which enables reusing the existing test. Preliminary experiments with comparison to baseline methods on 15 applications demonstrate that TRASM can improve the precision of GUI event matching while reducing the failure of test reuse and the running time required for test reuse. Yu Zhou 0010, Tingting Han 0001, Taolue Chen 0001 |
QRS | 2 |
| 2022 | Exploring the Impact of Balanced and Imbalanced Learning in Source Code SuggestionabstractStudies have confirmed the robust performance of machine learning classifiers for various source code modeling tasks. In general, machine learning approaches are incapable of handling imbalanced datasets, since they are sensitive to the choice of diverse classes. Therefore, these approaches may lean towards the classes with a large percentage of observations. In this work, we investigate and explore the impact of balanced and imbalanced learning on source code suggestion task otherwise known as code completion, covering a large number of imbalanced classes. We further explore the impact of vocabulary size on modeling performance. First, we provide the essentials to formulate the problem of source code suggestion as a classification task and investigate the level of imbalanced classes. Second, we train the four most adapted neural language models as a baseline to assess the modeling performance. Third, we impose two diverse class balancing techniques, TomekLinks and AllKNN, to balance the datasets and evaluate their impact on the modeling performance. Finally, we trained these models with a weighted imbalanced learning approach and compared the performance with balanced learning approaches. Additionally, we train models by varying the vocabulary size to study their impact. In total, we trained 230 models on 10 real-world software projects and extensively evaluated these models with widely used performance metrics such as Precision, Recall, FScore, mean reciprocal rank (MRR), and Receiver operating characteristics (ROC). Additionally, we employed ANOVA statistical analysis to study the statistical significance and differences between these approaches. This study has demonstrated that the modeling performance decreases during balanced model training, whereas the weighted imbalance training produces comparable results and is more efficient in terms of time cost. Additionally, this study exhibits that a large size of vocabulary does not necessarily improve the modeling performance when out-of-vocabulary predictions are disregarded. Yasir Hussain, Yu Zhou 0010, Izhar Ahmed Khan |
Int. J. Softw. Eng. Knowl. Eng. | 3 |
| 2022 | Sequence-Aware API Recommendation Based on Collaborative FilteringabstractAPI recommendation is crucial to improve programmers’ productivity. A lot of work has been proposed to improve the accuracy of API recommendations. In the existing work, many metrics, such as Precision, Recall, and MAP are used to evaluate the accuracy of the recommendation. These metrics can well reflect the ability to distinguish useful APIs from the candidate set, but they cannot evaluate the ability to determine the priority of useful APIs with each other. The priority between related APIs directly determines whether the recommended results are practical for developers. From this perspective, inspired by the sequence-aware recommendation, this paper constructs an API recommendation method with sequence awareness and designs new metrics to evaluate the method’s ability to determine the priority of useful APIs. The experimental results show that, compared with the baseline, the proposed method not only achieves better results on the common widely-used metrics but also outperforms the baseline method concerning the newly proposed sequence metrics. Yongchao Wang 0003, Yu Zhou 0010, Taolue Chen 0001, Wenhua Yang 0001 |
Int. J. Softw. Eng. Knowl. Eng. | 2 |
| 2022 | Meaningful Update and Repair of Markov Decision Processes for Self-Adaptive Systems
Wenhua Yang 0001, Minxue Pan, Yu Zhou 0010 |
J. Comput. Sci. Technol. | 3 |
| 2022 | Automatic source code summarization with graph attention networksabstractSource code summarization aims to generate concise descriptions for code snippets in a natural language, thereby facilitates program comprehension and software maintenance. In this paper, we propose a novel approach– GSCS –to automatically generate summaries for Java methods, which leverages both semantic and structural information of the code snippets. To this end, GSCS utilizes Graph Attention Networks to process the tokenized abstract syntax tree of the program, which employ a multi-head attention mechanism to learn node features in diverse representation sub-spaces, and aggregate features by assigning different weights to its neighbor nodes. GSCS further harnesses an additional RNN-based sequence model to obtain the semantic features and optimizes the structure by combining its output with a transformed embedding layer. We evaluate our approach on two widely-adopted Java datasets; the experiment results confirm that GSCS outperforms the state-of-the-art baselines. Yu Zhou 0010, Juanjuan Shen, Wenhua Yang 0001, Tingting Han 0001, Taolue Chen 0001 |
J. Syst. Softw. | 1 |
| 2022 | Do Developers Really Know How to Use Git Commands? A Large-scale Study Using Stack OverflowabstractGit, a cross-platform and open source distributed version control tool, provides strong support for non-linear development and is capable of handling everything from small to large projects with speed and efficiency. It has become an indispensable tool for millions of software developers and is the de facto standard of version control in software development nowadays. However, despite its widespread use, developers still frequently face difficulties when using various Git commands to manage projects and collaborate. To better help developers use Git, it is necessary to understand the issues and difficulties that they may encounter when using Git. Unfortunately, this problem has not yet been comprehensively studied. To fill this knowledge gap, in this article, we conduct a large-scale study on Stack Overflow, a popular Q&A forum for developers. We extracted and analyzed 80,370 relevant questions from Stack Overflow, and reported the increasing popularity of the Git command questions. By analyzing the questions, we identified the Git commands that are frequently asked and those that are associated with difficult questions on Stack Overflow to help understand the difficulties developers may encounter when using Git commands. In addition, we conducted a survey to understand how developers learn Git commands in practice, showing that self-learning is the primary learning approach. These findings provide a range of actionable implications for researchers, educators, and developers. Wenhua Yang 0001, Minxue Pan, Chang Xu 0001, Yu Zhou 0010 |
ACM Trans. Softw. Eng. Methodol. | 5 |
| 2022 | Adversarial Robustness of Deep Code Comment GenerationabstractDeep neural networks (DNNs) have shown remarkable performance in a variety of domains such as computer vision, speech recognition, and natural language processing. Recently they also have been applied to various software engineering tasks, typically involving processing source code. DNNs are well-known to be vulnerable to adversarial examples, i.e., fabricated inputs that could lead to various misbehaviors of the DNN model while being perceived as benign by humans. In this paper, we focus on the code comment generation task in software engineering and study the robustness issue of the DNNs when they are applied to this task. We propose ACCENT (Adversarial Code Comment gENeraTor) , an identifier substitution approach to craft adversarial code snippets, which are syntactically correct and semantically close to the original code snippet, but may mislead the DNNs to produce completely irrelevant code comments. In order to improve the robustness, ACCENT also incorporates a novel training method, which can be applied to existing code comment generation models. We conduct comprehensive experiments to evaluate our approach by attacking the mainstream encoder-decoder architectures on two large-scale publicly available datasets. The results show that ACCENT efficiently produces stable attacks with functionality-preserving adversarial examples, and the generated examples have better transferability compared with the baselines. We also confirm, via experiments, the effectiveness in improving model robustness with our training method. Yu Zhou 0010, Juanjuan Shen, Tingting Han 0001, Taolue Chen 0001, Harald C. Gall |
ACM Trans. Softw. Eng. Methodol. | 1 |
| 2022 | Boosting API Recommendation With Implicit FeedbackabstractDevelopers often need to use appropriate APIs to program efficiently, but it is usually a difficult task to identify the exact one they need from a vast list of candidates. To ease the burden, a multitude of API recommendation approaches have been proposed. However, most of the currently available API recommenders do not support the effective integration of user feedback into the recommendation loop. In this paper, we propose a framework, BRAID (BoostingRecommendAtion withImplicit FeeDback), which leverages learning-to-rank and active learning techniques to boost recommendation performance. By exploiting user feedback information, we train a learning-to-rank model to re-rank the recommendation results. In addition, we speed up the feedback learning process with active learning. Existing query-based API recommendation approaches can be plugged into BRAID. We select three state-of-the-art API recommendation approaches as baselines to demonstrate the performance enhancement of BRAID measured by Hit@k (Top-k), MAP, and MRR. Empirical experiments show that, with acceptable overheads, the recommendation performance improves steadily and substantially with the increasing percentage of feedback data, comparing with the baselines. Yu Zhou 0010, Xinying Yang, Taolue Chen 0001, Xiaoxing Ma, Harald C. Gall |
IEEE Trans. Software Eng. | 1 |
| 2021 | Evaluating Code Summarization with Improved Correlation with Human AssessmentabstractCode summarization aims to automatically generate functionality descriptions of code snippets. Faithful metrics are needed to measure to which degree the machine generated summaries capture the semantics of the code snippets. Most commonly used metrics in code summarization, such as BLEU -4, METEOR, and ROUGE-L, originate from machine translation and text summarization, and have constantly been found to be inconsistent with human assessment. In this paper, we propose a novel evaluation metric, Consensus-based Code Summarization Evaluation (CCSE), which assigns different semantic weights to the n-grams of the summary. We also provide an algorithm to match the n-gram pairs from the reference and candidate based on the similarities. To validate the effectiveness of our proposed metric, we collect summary pairs from two public Java datasets and calculate the correlation coefficients between CCSE and the human evaluations. The experiment results show that, compared with BLEU-4, METEOR, and ROUGE-L, CCSE is more consistent with the scores assessed by human developers. Juanjuan Shen, Yu Zhou 0010, Yongchao Wang 0003, Xiang Chen 0005, Tingting Han 0001, Taolue Chen 0001 |
QRS | 2 |
| 2021 | Hybrid Collaborative Filtering-Based API RecommendationabstractAutomatic API recommendations can liberate software developers from labor-intensive programming tasks. Collaborative filtering (CF) techniques, which have been proved to be superior to other classic techniques, are widely used in recommendation tasks such as music, book, and goods recommendations, but are rarely used in the recommendation of APIs. In this paper, we employ the hybrid of CF techniques to build an API recommendation system. More precisely, We treat the API recommendation task as an item recommendation problem, where method declarations are regarded as users, API calls are regarded as items. First, we use the memory-based CF technique to find the most similar projects, collect the most similar declarations, and take API calls used by the considered declarations together to generate a rating matrix. Next, we use the model-based CF technique to complete the missing values in the rating matrix, then a ranked list of APIs is generated based on the completed rating matrix and sent to the developers as a recommendation result. Experimental results show that compared with the state-of-the-art work, the proposed approach can achieve better performance in terms of a comprehensive set of metrics, such as Success Rate, Precision, Recall, MRR, and NDCG for the top-1, top-3 and top-5 recommended APIs. Yongchao Wang 0003, Yu Zhou 0010, Taolue Chen 0001, Wenhua Yang 0001 |
QRS | 2 |
| 2021 | BRAID: an API recommender supporting implicit user feedbackabstractEfficient application programming interface (API) recommendation is one of the most desired features of modern integrated development environments. A multitude of API recommendation approaches have been proposed. However, most of the currently available API recommenders do not support the effective integration of user feedback into the recommendation loop. In this paper, we present BRAID (Boosting RecommendAtion with Implicit FeeDback), a tool which leverages user feedback, and employs learning-to-rank and active learning techniques to boost recommendation performance. The implementation is based on the VSCode plugin architecture, which provides an integrated user interface. Essentially, BRAID is a general framework which can accommodate existing query-based API recommendation approaches as components. Comparative experiments with strong baselines demonstrate the efficacy of the tool. A video demonstrating the usage of BRAID can be found at https://youtu.be/naD0guvl8sE. Yu Zhou 0010, Haonan Jin, Xinying Yang, Taolue Chen 0001, Krishna Narasimhan, Harald C. Gall |
ESEC/SIGSOFT FSE | 1 |
| 2021 | SPASC: Strategy-proof auction mechanism with cost and QoS incentive for service compositionabstractAbstract In cloud computing, service composition provides an appealing paradigm to compose existing single services into a powerful workflow. The critical issues in service composition is that service providers may lie about the service's cost and QoS for more profits. However, existing studies only address the issue of services' untruthful cost, none of the studies consider both the issue of untruthful cost and untruthful QoS. Thus, it is necessary to design an incentive mechanism to motivate service providers to offer services with the truthful cost and truthful QoS. To address the above challenging issues, we propose the strategy‐proof auction mechanism for service composition (SPASC), which can determine the winners and dynamically calculate the price of services. To the best of our knowledge, this is the first study to design an incentive mechanism to motivate service providers to offer services with the truthful cost and truthful QoS in this field. Furthermore, we propose an auction algorithm to implement the SPASC. Both theoretical proof and the extensively experimental results validate that SPASC achieves the truthfulness and individual rationality. At the same time, the experimental results also prove that this mechanism can motivate service providers to offer services with the truthful cost and truthful QoS. Yao Xia, Yonglong Zhang 0001, Shangguang Wang, Yu Zhou 0010 |
Concurr. Comput. Pract. Exp. | 6 |
| 2021 | Improving source code suggestion with code embedding and enhanced convolutional long short-term memoryabstractAbstract Source code suggestion is the utmost helpful feature in the integrated development environments that helps to quicken software development by suggesting the next possible source code tokens. The source code contains useful semantic information but is ignored or not utilised to its full potential by existing approaches. To improve the performance of source code suggestion, the authors propose a deep semantic net (DeepSN) that makes use of semantic information of the source code. First, DeepSN uses an enhanced hierarchical convolutional neural network combined with code‐embedding to automatically extract the top‐notch features of the source code and to learn useful semantic information. Next, the source code's long and short‐term context dependencies are captured by using long short‐term memory. We extensively evaluated the proposed approach with three baselines on ten real‐world projects and the results are suggesting that the proposed approach surpasses state‐of‐the‐art approaches. On average, DeepSN achieves 7.6% higher accuracy than the best baseline. Yasir Hussain, Yu Zhou 0010 |
IET Softw. | 3 |
| 2021 | Personalized API RecommendationsabstractApplication Programming Interfaces (APIs) play an important role in modern software development. Developers interact with APIs on a daily basis and thus need to learn and memorize those APIs suitable for implementing the required functions. This can be a burden even for experienced developers since there exists a mass of available APIs. API recommendation techniques focus on assisting developers in selecting suitable APIs. However, existing API recommendation techniques have not taken the developers personal characteristics into account. As a result, they cannot provide developers with personalized API recommendation services. Meanwhile, they lack the support for self-defined APIs in the recommendation. To this end, we aim to propose a personalized API recommendation method that considers developers’ differences. Our API recommendation method is based on statistical language. We propose a model structure that combines the N-gram model and the long short-term memory (LSTM) neural network and train predictive models using API invoking sequences extracted from GitHub code repositories. A general language model trained on all sorts of code data is first acquired, based on which two personalized language models that recommend personalized library APIs and self-defined APIs are trained using the code data of the developer who needs personalized services. We evaluate our personalized API recommendation method on real-world developers, and the experimental results show that our approach achieves better accuracy in recommending both library APIs and self-defined APIs compared with the state-of-the-art. The experimental results also confirm the effectiveness of our hybrid model structure and the choice of the LSTM’s size. Wenhua Yang 0001, Yu Zhou 0010 |
Int. J. Softw. Eng. Knowl. Eng. | 2 |
| 2021 | Speeding Up VM Startup by Cooperative VM Image CachingabstractVirtual machine (VM) management is at the core of virtualized cloud data centers. Among others, how to reduce the startup delay of VMs is a key issue for improving user experience and resource utility. In this paper, we study this issue by jointly considering VM placement and VM image caching. We formulate the joint placement problem and design several joint algorithms, including both online and offline algorithms, to speed up VM startup. In our design, we adopt the cooperative caching approach, where image cache copies are shared among physical machines (PMs) so as to reduce image retrieval time. The key point of our algorithms lies in how to appropriately place VM image cache among PMs so as to speed up VM startup as much as possible. The proposed algorithms are evaluated by extensive simulations via SimGrid. The results show that our algorithms can achieve shorter startup delay in most cases, compared with existing ones. Kai Niu 0004, Weigang Wu, Keqin Li 0001, Yu Zhou 0010 |
IEEE Trans. Cloud Comput. | 5 |
| 2021 | User Review-Based Change File Localization for Mobile ApplicationsabstractIn the current mobile app development, novel and emerging DevOps practices (e.g., Continuous Delivery, Integration, and user feedback analysis) and tools are becoming more widespread. For instance, the integration of user feedback (provided in the form of user reviews) in the software release cycle represents a valuable asset for the maintenance and evolution of mobile apps. To fully make use of these assets, it is highly desirable for developers to establish semantic links between the user reviews and the software artefacts to be changed (e.g., source code and documentation), and thus to localize the potential files to change for addressing the user feedback. In this paper, we proposeRISING(ReviewIntegration via claSsification, clusterIng, and linkiNG), an automated approach to support the continuous integration of user feedback via classification, clustering, and linking of user reviews.RISINGleverages domain-specific constraint information and semi-supervised learning to group user reviews into multiple fine-grained clusters concerning similar users’ requests. Then, by combining the textual information from both commit messages and source code, it automatically localizes potential change files to accommodate the users’ requests. Our empirical studies demonstrate that the proposed approach outperforms the state-of-the-art baseline work in terms of clustering and localization accuracy, and thus produces more reliable results. Yu Zhou 0010, Yanqi Su, Taolue Chen 0001, Harald C. Gall, Sebastiano Panichella |
IEEE Trans. Software Eng. | 1 |
| 2020 | Towards continues code recommendation and implementation system: An Initial FrameworkabstractIn the current era, the auto and reliable recommendation system plays a significant role in human life. The code recommender systems are being used in various source code databases to recommend the most suitable source code to the user. While code recommendation, the code analysis concerning 'code quality' and 'code implementation' is important to recommend the most reliable code by considering the objective of the user. The ultimate aim of this research work is to propose a code recommendation and implementation model using the characteristics of DevOps that assist in extracting, analyzing, implementing, and updating the recommender system continuously. The current study presents an initial framework of the proposed code recommender model. The design of the model is based on the data collected through literature review and by conducting an empirical study with experts. We believe that the proposed model will assist the researchers and practitioners to recommend the most secure and suitable source code according to their requirement. Muhammad Azeem Akbar, Yu Zhou 0010, Yasir Hussain |
EASE | 3 |
| 2020 | Adaptive Code Completion with Meta-learningabstractSince human-written programs have useful local regularities, the ability to adapt to unseen, local context is an important challenge that successful models of source code must overcome. However, the current source code models mostly learn a common code pattern from large scale open-source codebases, which cannot make use of the localness nor satisfy developers’ personal preferences. Consequently, fast learning and adapting to unseen code patterns from limited developers’ code can provide new insights into source code completion. In this work, we train a base code model that is best able to learn semantic and structural information from context to improve predictions of unseen local tokens and propose an adaptive code model leveraging meta-learning techniques. We demonstrate highly improved performance in experiments on a large scale Java GitHub corpus compared with baselines. Liyu Fang, Yu Zhou 0010, Taolue Chen 0001 |
Internetware | 3 |
| 2020 | ASPDup: AST-Sequence-based Progressive Duplicate Code Detection Tool for Onsite Programming CodeabstractDuplicate code is an example of bad smells, which are usually been refactored after the detection to improve the quality of programs. Locate the duplicate code at the programming phase may reduce the cost of maintenance, but the challenge is it need to detect duplicate code between an incomplete code fragment with complete files, which the existing tools are hard to be applied to this scenario. In this paper, we propose an AST-sequence-based duplicate code detection approach for onsite programming code. The abstract syntax tree (AST) is extracted from source code and then is transformed into an encoded sequence. A local sequence alignment algorithm is used to find highly similar subsequences. After the post-processing, similar regions will be found between two code fragments according to the subsequences. We have developed a prototype tool as a plugin for Visual Studio Code. Experimental results indicate that our approach is effective in finding highly similar regions between cross-granularity code fragments, which can facilitate duplicate code detection for incomplete onsite programming code. Yaoshen Yu, Yu Zhou 0010, Weiwei Li 0001, Yichao Shao |
Internetware | 3 |
| 2020 | Training Deep Code Comment Generation Models via Data AugmentationabstractWith the development of deep neural networks (DNNs) and the publicly available source code repositories, deep code comment generation models have demonstrated reasonable performance on test datasets. However, it has been confirmed in computer vision (CV) and natural language processing (NLP) that DNNs are vulnerable to adversarial examples. In this paper, we investigate how to maintain the performance of the models against these perturbed samples. We propose a simple, but effective, method to improve the robustness by training the model via data augmentation. We conduct experiments to evaluate our approach on two mainstream sequence-sequence (seq2seq) architectures which are based on the LSTM and the Transformer with a large-scale publicly available dataset. The experimental results demonstrate that our method can efficiently improve the capability of different models to defend the perturbed samples. Yu Zhou 0010, Tingting Han 0001, Taolue Chen 0001 |
Internetware | 2 |
| 2020 | Probabilistic analysis of QoS-aware service composition with explicit environment modelsabstractIn service composition, quality‐of‐service (QoS) represents a crucial indicator for the policy adoption. Existing composition strategies rarely address the influence of the environment, which may influence QoS and thus lead to sub‐optimal composition policies in a dynamic environment. In this study, a model‐based service composition approach is proposed. Given the user request, it is possible to first find a set of matching abstract web services (AWSs), and then pull relevant concrete web services (CWSs) based on the AWSs. The set of CWSs can be modelled as a Markov decision process (MDP). In addition, the authors model the environment as a fully probabilistic system, capturing changes of environment probabilistically. The environment model can be further composed of the MDP from the service models, obtaining a monolithic MDP. They demonstrate how the probabilistic verification techniques can be used to find the optimal service selection strategy against their QoS and the environment change. A distinguishing feature of their approach is that the QoS, as well as the dynamic of environment change, is made parametric so that the formal analysis is adaptive to the environment which is of paramount importance for autonomous and self‐adaptive systems. Examples and experiments confirm the feasibility of their approach. Yu Zhou 0010, Tingting Han 0001, Taolue Chen 0001, Shiqi Zhou |
IET Softw. | 1 |
| 2020 | Deep Transfer Learning for Source Code ModelingabstractIn recent years, deep learning models have shown great potential in source code modeling and analysis. Generally, deep learning-based approaches are problem-specific and data-hungry. A challenging issue of these approaches is that they require training from scratch for a different related problem. In this work, we propose a transfer learning-based approach that significantly improves the performance of deep learning-based source code models. In contrast to traditional learning paradigms, transfer learning can transfer the knowledge learned in solving one problem into another related problem. First, we present two recurrent neural network-based models RNN and GRU for the purpose of transfer learning in the domain of source code modeling. Next, via transfer learning, these pre-trained (RNN and GRU) models are used as feature extractors. Then, these extracted features are combined into attention learner for different downstream tasks. The attention learner leverages from the learned knowledge of pre-trained models and fine-tunes them for a specific downstream task. We evaluate the performance of the proposed approach with extensive experiments with the source code suggestion task. The results indicate that the proposed approach outperforms the state-of-the-art models in terms of accuracy, precision, recall and F-measure without training the models from scratch. Yasir Hussain, Yu Zhou 0010, Senzhang Wang |
Int. J. Softw. Eng. Knowl. Eng. | 3 |
| 2020 | CodeGRU: Context-aware deep learning with gated recurrent unit for source code modeling
Yasir Hussain, Yu Zhou 0010, Senzhang Wang |
Inf. Softw. Technol. | 3 |
| 2020 | Developer portraying: A quick approach to understanding developers on OSS platforms
Wenhua Yang 0001, Minxue Pan, Yu Zhou 0010 |
Inf. Softw. Technol. | 3 |
| 2020 | Cast shadow detection based on the YCbCr color space and topological cuts
Quan Shao, Yu Zhou 0010, Hongji Dong |
J. Supercomput. | 3 |
| 2020 | Automatic Detection and Repair Recommendation of Directive Defects in Java API DocumentationabstractApplication Programming Interfaces (APIs) represent key tools for software developers to build complex software systems. However, several studies have revealed that even major API providers tend to have incomplete or inconsistent API documentation. This can severely hamper the API comprehension and, as a consequence, the quality of the software built on them. In this paper, we propose DRONE (Detect and Repair of dOcumentatioN dEfects), a framework to automatically detect and repair defects from API documents by leveraging techniques from program analysis, natural language processing, and constraint solving. Specifically, we target at the directives of API documents, which are related to parameter constraints and exception handling declarations. Furthermore, in presence of defects, we also provide a prototypical repair recommendation system. We evaluate our approach on parts of the well-documented APIs of JDK 1.8 APIs (including javaFX) and Android 7.0 (level 24). Across the two empirical studies, our approach can detect API defects with an average F-measure of 79.9, 71.7, and 81.4 percent, respectively. The API repairing capability has also been evaluated on the generated recommendations in a further experiment. User judgments indicate that the constraint information is addressed correctly and concisely in the rendered directives. Yu Zhou 0010, Changzhi Wang, Taolue Chen 0001, Sebastiano Panichella, Harald C. Gall |
IEEE Trans. Software Eng. | 1 |
| 2019 | SENSORY: Leveraging Code Statement Sequence Information for Code Snippets RecommendationabstractSoftware developers often have to implement unfamiliar programming tasks. When faced with these problems, developers often search online for code snippets as references to learn how to solve the unfamiliar tasks. In recent years, some researchers propose several approaches to use programming context to recommend code snippets. Most of these approaches use information retrieval based techniques and treat code snippets as a set of tokens. However, in code, the smallest meaningful unit is code statement, in general, the line of code. Since these studies did not consider this issue, there is still room for improvement in the code snippets recommendation. In this paper, we propose a code Statement sEquence iNformation baSed cOde snippets Recommendation sYstem (SENSORY). Different from existing token based approaches, SENSORY performs code snippets recommendation at code statement granularity. It uses the Burrows Wheeler Transform algorithm to search relevant code snippets, and uses the structure information to re-rank the results. To evaluate the effectiveness of our proposed method, we construct a code database with 1000000 real world code snippets which contain more than 15000000 lines of code. The experimental results show that SENSORY outperforms the two strong baseline work in terms of precision and NDCG. Lei Ai, Weiwei Li 0001, Yu Zhou 0010, Yaoshen Yu |
COMPSAC (1) | 4 |
| 2019 | Augmenting Java method comments generation with context information based on neural networks
Yu Zhou 0010, Wenhua Yang 0001, Taolue Chen 0001 |
J. Syst. Softw. | 1 |
| 2018 | Coalition Formation Game for Task Allocation in the Social NetworkabstractCoalition formation is an important research issue in the field of multi-agent, which can be widely applied in task allocation. This paper is different from traditional social task allocation problem. We propose that a mobile agent is assigned to each subtask that is decomposed by a complex task. Mobility refers to the ability of each agent to move to individuals with relevant professional capability. In this work, we model cooperation among mobile agents through coalition formation game in which mobile agents are graph-constrained and workers are in the social network. We propose a simple and distributed algorithm for the mobile agents who self-organize into independent disjoint coalitions. Compared with a non-cooperative approach where each mobile agent is self-interested to minimize its own operation cost, mobile agents decide to form disjoint coalitions to reduce the total operation cost. In addition, we prove the convergence of the algorithm. Simulation results show that, in different cases, coalition formation presents a performance improvement. Yu Zhou 0010, Yonglong Zhang 0001, Bin Li 0006 |
CSCWD | 1 |
| 2018 | Probabilistic verification of hierarchical leader election protocol in dynamic systems
Yu Zhou 0010, Nvqi Zhou, Tingting Han 0001, Jiayi Gu, Weigang Wu |
Frontiers Comput. Sci. | 1 |
| 2018 | Privacy-aware cloud service selection approach based on P-Spec policy models and privacy sensitivities
Yunfei Meng, Yu Zhou 0010, Changbo Ke |
Future Gener. Comput. Syst. | 3 |
| 2018 | Weighted Bayesian Runtime Monitor: A Novel QoS Monitoring Approach Sensitive to Environmental FactorsabstractHow to assure Quality of Service (QoS) of the third-party services is very important for the SOA. Effective monitoring technique towards QoS, which is an important measurement for third-party service quality, is necessary to ensure quality of Web service. Current monitoring approaches do not consider the influences of environment factors such as the position of server, user usage, and the load at runtime. Ignoring these influences, which do exist among the monitoring process, may cause existing monitoring approaches producing unpredictable monitoring results. In order to overcome this limitation, this paper proposes a novel Web Service QoS (WS-Qos) monitoring approach sensitive to environmental factors called weighted Bayesian Runtime Monitor (wBSRM) based on weighted naïve Bayesian classifiers and Term Frequency-Inverse Document Frequency (TF-IDF) algorithm. wBSRM constructs weighted naïve Bayesian classifier by learning a part of samples to classify the monitoring results. The results meeting QoS standard are classified as [Formula: see text] and the one that does not meet is classified as [Formula: see text]. Classifier can also output ratio between posterior probability of [Formula: see text] and [Formula: see text], and consequently the analysis can lead to three monitoring results including [Formula: see text], [Formula: see text] or inconclusive. A set of dedicated experiments are conducted to validate wBSRM. The experiments are based on a public dataset and a simulated dataset under the given standard. The experimental results demonstrate that wBSRM is better than previous approaches. Pengcheng Zhang 0001, Huiying Jin, Hareton K. N. Leung, Wei Song 0003, Yu Zhou 0010 |
Int. J. Softw. Eng. Knowl. Eng. | 6 |
| 2017 | Analyzing APIs documentation and code to detect directive defectsabstractApplication Programming Interface (API) documents represent one of the most important references for API users. However, it is frequently reported that the documentation is inconsistent with the source code and deviates from the API itself. Such inconsistencies in the documents inevitably confuse the API users hampering considerably their API comprehension and the quality of software built from such APIs. In this paper, we propose an automated approach to detect defects of API documents by leveraging techniques from program comprehension and natural language processing. Particularly, we focus on the directives of the API documents which are related to parameter constraints and exception throwing declarations. A first-order logic based constraint solver is employed to detect such defects based on the obtained analysis results. We evaluate our approach on parts of well documented JDK 1.8 APIs. Experiment results show that, out of around 2000 API usage constraints, our approach can detect 1158 defective document directives, with a precision rate of 81.6%, and a recall rate of 82.0%, which demonstrates its practical feasibility. Yu Zhou 0010, Ruihang Gu, Taolue Chen 0001, Sebastiano Panichella, Harald C. Gall |
ICSE | 1 |
| 2017 | Consensus in Smart Computing SystemsabstractA smart computing system is usually composed of smart mobile nodes, such as mobile phones and/or sensor nodes. In this paper, we study the consensus problem in a smart computing system, which has many applications in smart computing, such as smart grid. Due to mobility and failures, smart computing nodes may join and leave a system from time to time. Such dynamicity in node set of a smart computing system brings new challenges in consensus protocol design. A process newly joining the system may miss messages sent out before the joining, which will cause existing consensus algorithms blocked forever and cannot terminate. Process leave may cause the value of previous decision lost, which will make existing consensus algorithms decide on multiple values and violate the agreement property. To address such challenges, we firstly define necessary dynamicity model to constrain the change of process set, and then design a dynamic consensus algorithm which can handle process join and leave effectively via two novel mechanisms. The first mechanism lets old processes send redeeming messages to new processes, while the second one lets processes jump to higher rounds under some specific scenarios. The correctness of our proposed algorithm is rigorously proved, in terms of termination, agreement and validity. Zhiwei Yang 0004, Weigang Wu, Huaguan Li, Yu Zhou 0010 |
SMARTCOMP | 4 |
| 2017 | Augmenting Bug Localization with Part-of-Speech and InvocationabstractBug localization represents one of the most expensive, as well as time-consuming, activities during software maintenance and evolution. To alleviate the workload of developers, numerous methods have been proposed to automate this process and narrow down the scope of reviewing buggy files. In this paper, we present a novel buggy source-file localization approach, using the information from both the bug reports and the source files. We leverage the part-of-speech features of bug reports and the invocation relationship among source files. We also integrate an adaptive technique to further optimize the performance of the approach. The adaptive technique discriminates Top 1 and Top N recommendations for a given bug report and consists of two modules. One module is to maximize the accuracy of the first recommended file, and the other one aims at improving the accuracy of the fixed defect file list. We evaluate our approach on six large-scale open source projects, i.e. ASpectJ, Eclipse, SWT, Zxing, Birt and Tomcat. Compared to the previous work, empirical results show that our approach can improve the overall prediction performance in all of these cases. Particularly, in terms of the Top 1 recommendation accuracy, our approach achieves an enhancement from 22.73% to 39.86% for ASpectJ, from 24.36% to 30.76% for Eclipse, from 31.63% to 46.94% for SWT, from 40% to 55% for ZXing, from 7.97% to 21.99% for Birt, and from 33.37% to 38.90% for Tomcat. Yu Zhou 0010, Yanxiang Tong, Taolue Chen 0001 |
Int. J. Softw. Eng. Knowl. Eng. | 1 |
| 2016 | Model based verification of dynamically evolvable service oriented systems
Yu Zhou 0010, Jidong Ge, Pengcheng Zhang 0001, Weigang Wu |
Sci. China Inf. Sci. | 1 |
| 2016 | Combining text mining and data mining for bug report classificationabstractBug reports represent an important information source for software construction. Misclassification of these reports inevitably introduces bias. Manual examinations can help reduce the noise, but bring a heavy burden for developers instead. In this paper, we propose a multi-stage approach by combining both text mining and data mining techniques to automate the prediction process. The first stage leverages text mining techniques to analyze the summary parts of bug reports and classifies them into three levels of probability. The extracted features and some other structured features of bug reports are then fed into the machine learner in the second stage. Data grafting techniques are employed to bridge the two stages. Comparative experiments with previous studies on the same data—three large-scale open-source projects—consistently achieve a reasonable enhancement (from 77.4% to 81.7%, 76.1% to 81.6%, and 87.4% to 93.7%, respectively) over their best results in terms of overall performance. Additional comparative empirical experiments on other seven popular open-source systems confirm the findings. Moreover, based on the data obtained, we also empirically studied the impact relation between the underlying classifiers and various other properties of the combined model. A prototypical recommender system has been developed to demonstrate the applicability of our approach. Copyright © 2016 John Wiley & Sons, Ltd. Yu Zhou 0010, Yanxiang Tong, Ruihang Gu, Harald C. Gall |
J. Softw. Evol. Process. | 1 |
| 2015 | A Novel QoS Monitoring Approach Sensitive to Environmental FactorsabstractThe quality of service-oriented system relies heavily on the third-party service. Such reliance would result in many uncertainties, in consideration of the complex and changeable network environment. Hence, effective runtime monitoring technique is required by service-oriented system. Several monitoring approaches have been proposed. However, all of these approaches do not consider the influences of environmental factors such as the position of server and users, and the load at runtime. Ignoring these influences, which exist among monitoring process, may cause wrong monitoring results. In order to solve this problem, this paper proposes a novel QoS monitoring approach sensitive to environmental factors called wBSRM (weighted Bayesian Runtime Monitoring) based on weighted naive Bayesian and TF-IDF (Term Frequency-Inverse Document Frequency). The proposed approach measures influence of environmental factor by TF-IDF algorithm and then constructs weighted naïve Bayesian classifier by learning part of samples to classify monitoring results. Experiments are conducted based on both public network data set and randomly generated data set. The experimental results demonstrate that our approach is better than previous approaches. Pengcheng Zhang 0001, Hareton K. N. Leung, Wei Song 0003, Yu Zhou 0010 |
ICWS | 5 |
| 2015 | Towards A Novel Approach for Defect Localization Based on Part-of-Speech and InvocationabstractGiven a corpus of bug reports, software developers must read various descriptive sentences in order to identify corresponding buggy source files which potentially result in the defects. This process itself represents one of the most expensive, as well as time-consuming, activities during software maintenance and evolution. To alleviate the workload of developers, many methods have been proposed to automate this process and narrow down the scope of reviewing buggy files. In this paper, we present a novel buggy source file localization approach, leveraging both a part-of-speech based weighting strategy and the invocation relationship among source files. We also integrate an adaptive technique to strengthen the optimization of the performance. The adaptive technique consists of two modules. One is to maximize the accuracy of the first recommended file, and the other aims at improving the accuracy of the fixed defect file list. We evaluate our approach on three large-scale open source projects, i.e., ASpectJ, Eclipse, and SWT. Compared with the baseline work, our approach can improve 17.13%, 6.29% and 3.15% on top 1, top 5 and top 10 respectively for ASpectJ, 6.40%, 4.94% and 4.39% on top 1, top 5 and top 10 respectively for Eclipse, and 15.31%, 8.16% and 5.10% on top 1, top 5 and top 10 respectively for SWT. Yanxiang Tong, Yu Zhou 0010, Lisheng Fang, Taolue Chen 0001 |
Internetware | 2 |
| 2015 | Verifying specifications with associated attributes in graph transformation systems
Yu Zhou 0010, Yankai Huang, Ou Wei |
Frontiers Comput. Sci. | 1 |
| 2014 | Hierarchical Eventual Leader Election for Dynamic Systems
Huaguan Li, Weigang Wu, Yu Zhou 0010 |
ICA3PP (1) | 3 |
| 2014 | Combining Text Mining and Data Mining for Bug Report ClassificationabstractMisclassification of bug reports inevitably sacrifices the performance of bug prediction models. Manual examinations can help reduce the noise but bring a heavy burden for developers instead. In this paper, we propose a hybrid approach by combining both text mining and data mining techniques of bug report data to automate the prediction process. The first stage leverages text mining techniques to analyze the summary parts of bug reports and classifies them into three levels of probability. The extracted features and some other structured features of bug reports are then fed into the machine learner in the second stage. Data grafting techniques are employed to bridge the two stages. Comparative experiments with previous studies on the same data -- three large-scale open source projects -- consistently achieve a reasonable enhancement (from 77.4% to 81.7%, 73.9% to 80.2% and 87.4% to 93.7%, respectively) over their best results in terms of overall performance. Additional comparative empirical experiments on other two popular open source repositories confirm the findings and demonstrate the benefits of our approach. Yu Zhou 0010, Yanxiang Tong, Ruihang Gu, Harald C. Gall |
ICSME | 1 |
| 2014 | Hierarchical timed automata based verification of dynamic evolution process in open environmentsabstractThe paper proposes a novel approach based on the hierarchical timed automata to verify the consistency of dynamic evolution process. Different from traditional approaches, it investigates the problem from the behavioral perspective and examines the procedures before, during and after the evolution process. Furthermore, our approach can support the direct modeling of temporal aspects, as well as the hierarchical structures. A flattening algorithm is presented to facilitate the automated verification using the mainstream timed automata based model checker --UPPAAL. A motivating example is discussed and demonstrates the feasibility of our approach. Yu Zhou 0010, Jidong Ge, Pengcheng Zhang 0001 |
ICSSP | 1 |
| 2013 | Towards a Formal Semantics for UML/MARTE State Machines Based on Hierarchical Timed Automata
Yu Zhou 0010, Luciano Baresi, Matteo G. Rossi |
J. Comput. Sci. Technol. | 1 |
| 2009 | Model-Driven Automatic Generation of Verified BPEL Code for Web Service CompositionabstractService composition, which provides a more effective way to combine several single services into a composite service, is a kind of software reuse techniques. However, one of the most important problems is how to perform service composition correctly and effectively so as to produce high-quality source codes for describing the resulted composite service. In this paper, we propose a model-driven method to solve this problem, where UML 2.0 sequence diagrams are extended to model the composition of Web services, extended statecharts are synthesized from sequence diagrams, then the statecharts are further transferred to the input language of a model checker for behavior consistency checking, and finally verified BPEL codes can be generated from improved sequence diagrams. Case studies have been performed to demonstrate the whole process and illustrate the significance of our approach. Bixin Li, Yu Zhou 0010, Jun Pang 0001 |
APSEC | 2 |
| 2008 | Data-Enriched Modeling and Verification of WS-CDL Based on UML ModelsabstractThe Web Services Choreography Description Language (WS-CDL) is a specification developed by the W3C that can be viewed as a blueprint for the development of end-point services. Considering that it is the W3C candidate recommendation for web service choreography, it is worth providing a systematic approach for its modeling, analysis and verification. The Unified Modeling Language (UML) is the de facto industry standard for modeling. Applying UML to model WS-CDL is obviously a promising solution to bring together academics and practitioners in through a unique standard language. This paper proposes to use different UML diagrams to model WS-CDL. Given the UML specification of WS-CDL, we then provide a systematic way of formally analyzing and verifying WS-CDL. Pengcheng Zhang 0001, Bixin Li, Henry Muccini, Yu Zhou 0010, Mingjie Sun |
ICWS | 4 |
| 2008 | Multi-mode interaction middleware for software services
XianPing Tao, Xiaoxing Ma, Jian Lu 0001, Ping Yu 0004, Yu Zhou 0010 |
Sci. China Ser. F Inf. Sci. | 5 |
| 2007 | A Formal Model for Web Service Composition and Its Application AnalysisabstractThe formal description of Web service is the basis for analyzing and verifying the Web service composition. In this article, a simple pattern-oriented mathematical model for Web service composition is introduced according to following steps: firstly, single service model is formally defined; secondly, several kinds of interaction logics between services are discussed and the composition pattern is presented, the realization of the interaction logics are given at the same time; thirdly, the definition of Web service composition model and the algorithms are presented; finally, a running example is discussed based on our model. The model can express the interactive logic relationships between messages well and it can also be used to simulate the interaction between services via message passing. Bixin Li, Yu Zhou 0010, Xufang Gong |
APSCC | 2 |
| 2007 | Universal Adaptor: A Novel Approach to Supporting Multi-protocol Service Discovery in Pervasive Computing
Joanna Siebert, Jiannong Cao 0001, Yu Zhou 0010, Vaskar Raychoudhury |
EUC | 3 |
| 2007 | Constructing Self-Adaptive Systems with Polymorphic Software Architecture
Xiaoxing Ma, Yu Zhou 0010, Ping Yu 0004, Jian Lu 0001 |
SEKE | 2 |