Demo Data from SIGIR 2026 / reviewers in the wild / expert
Xinyu Wang 0001
dblp:68/1277-1
· DBLP profile ↗
92ranked-venue papers
9as first author
30since 2021 · last 2026
0000-0002-5507-6569ORCID · conflict
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 61 · 6 first-author · 11 since 2021Artificial intelligence and machine learning · 13 · 1 first-author · 12 since 2021Databases, data management, data science and information retrieval · 11 · 1 first-author · 8 since 2021Applied, interdisciplinary, general and emerging computing · 8 · 1 first-authorGraphics, computer vision, multimedia, augmented reality and games · 5 · 5 since 2021Computer networks · 1Human-computer interaction and ubiquitous computing · 1
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Artificial intelligence
15 papers |
Graph learning · 48% Trustworthy machine learning · 23% Efficient and distributed learning · 16% | |
| Software engineering, system software, and programming languages
25 papers |
Software maintenance and evolution · 26% Empirical software engineering · 26% Software testing · 17% | |
| Databases, data mining, and information retrieval
6 papers |
Graph data management · 48% Information retrieval · 22% Data mining · 21% | |
| Network and information security
1 paper |
Systems and software security · 50% Blockchain and cryptocurrency security · 50% |
Topics — the 30 heaviest of 89, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Machine learning › Graph learning
graph neural network |
3.9 | 6 | 2025 | Efficient Distributed Graph Neural Network Training With Source Chunking and Moving Aggregation · IEEE Trans. Knowl. Data Eng. 2025 Global Attribute-Association Pattern Aggregation for Graph Fraud Detection · AAAI 2025 DGA-GNN: Dynamic Grouping Aggregation GNN for Fraud Detection · AAAI 2024 |
Empirical software engineering
mining software repositories |
2.3 | 6 | 2024 | Just-In-Time TODO-Missed Commits Detection · IEEE Trans. Software Eng. 2024 What Makes a Good TODO Comment? · ACM Trans. Softw. Eng. Methodol. 2024 Improving Automated Bug Triaging with Specialized Topic Model · IEEE Trans. Software Eng. 2017 |
Machine learning › Trustworthy machine learning
fairness |
1.9 | 3 | 2025 | Evaluating and Mitigating Linguistic Discrimination in Large Language Models: Perspectives on Safety Equity and Knowledge Equity · IJCAI 2025 Automatic Fairness Testing of Neural Classifiers Through Adversarial Sampling · IEEE Trans. Software Eng. 2022 White-box fairness testing through adversarial sampling · ICSE 2020 |
Machine learning › Efficient and distributed learning
distributed training |
1.7 | 2 | 2025 | Efficient Distributed Graph Neural Network Training With Source Chunking and Moving Aggregation · IEEE Trans. Knowl. Data Eng. 2025 Effective and Efficient Distributed Temporal Graph Learning through Hotspot Memory Sharing · Proc. VLDB Endow. 2025 |
Machine learning › Graph learning › graph anomaly detection
graph fraud detection |
1.6 | 2 | 2025 | Global Attribute-Association Pattern Aggregation for Graph Fraud Detection · AAAI 2025 DGA-GNN: Dynamic Grouping Aggregation GNN for Fraud Detection · AAAI 2024 |
Machine learning › Graph learning › graph neural network
dynamic graph neural network |
1.5 | 2 | 2025 | Effective and Efficient Distributed Temporal Graph Learning through Hotspot Memory Sharing · Proc. VLDB Endow. 2025 Temporal Aggregation and Propagation Graph Neural Networks for Dynamic Representation · IEEE Trans. Knowl. Data Eng. 2023 |
Debugging and program repair
fault localization |
1.5 | 3 | 2022 | Deep Just-In-Time Defect Localization · IEEE Trans. Software Eng. 2022 Automatic Solution Summarization for Crash Bugs · ICSE 2021 JITO: a tool for just-in-time defect identification and localization · ESEC/SIGSOFT FSE 2020 |
Software maintenance and evolution
technical debt |
1.1 | 2 | 2024 | Just-In-Time TODO-Missed Commits Detection · IEEE Trans. Software Eng. 2024 Neural Network-based Detection of Self-Admitted Technical Debt: From Performance to Explainability · ACM Trans. Softw. Eng. Methodol. 2019 |
Graph data management
dynamic graph processing |
1.0 | 1 | 2026 | FlareDTDG: Harnessing Temporal Recency for Scalable Discrete-Time Dynamic Graph Training · Proc. VLDB Endow. 2026 |
Data mining › structured data mining › graph mining
graph learning |
1.0 | 1 | 2026 | FlareDTDG: Harnessing Temporal Recency for Scalable Discrete-Time Dynamic Graph Training · Proc. VLDB Endow. 2026 |
Machine learning › Efficient and distributed learning › distributed training › communication-efficient training
communication optimization |
0.9 | 1 | 2025 | Effective and Efficient Distributed Temporal Graph Learning through Hotspot Memory Sharing · Proc. VLDB Endow. 2025 |
Machine learning › Efficient and distributed learning › distributed training › distributed DNN training
distributed graph neural network training |
0.9 | 1 | 2025 | Efficient Distributed Graph Neural Network Training With Source Chunking and Moving Aggregation · IEEE Trans. Knowl. Data Eng. 2025 |
Natural language and speech › Language models and text generation
large language model evaluation |
0.9 | 1 | 2025 | Evaluating and Mitigating Linguistic Discrimination in Large Language Models: Perspectives on Safety Equity and Knowledge Equity · IJCAI 2025 |
Natural language and speech › Language models and text generation
large language model safety |
0.9 | 1 | 2025 | Evaluating and Mitigating Linguistic Discrimination in Large Language Models: Perspectives on Safety Equity and Knowledge Equity · IJCAI 2025 |
Software maintenance and evolution › software documentation
commit message generation |
0.8 | 2 | 2021 | Context-aware Retrieval-based Deep Commit Message Generation · ACM Trans. Softw. Eng. Methodol. 2021 Neural-machine-translation-based commit message generation: how far are we? · ASE 2018 |
Graph data management › graph data model
uncertain graph |
0.8 | 1 | 2024 | Fast Query Answering by Labeling Index on Uncertain Graphs · ICDE 2024 |
Graph data management › graph query processing
uncertain graph query processing |
0.8 | 1 | 2024 | Fast Query Answering by Labeling Index on Uncertain Graphs · ICDE 2024 |
Health and well-being technologies › health monitoring
energy expenditure estimation |
0.8 | 1 | 2024 | E3V-K5: An Authentic Benchmark for Redefining Video-Based Energy Expenditure Estimation · ECCV (35) 2024 |
Blockchain and cryptocurrency security › smart contract security
vulnerability detection |
0.8 | 1 | 2024 | Vulnerability Detection via Multiple-Graph-Based Code Representation · IEEE Trans. Software Eng. 2024 |
Systems and software security
vulnerability discovery |
0.8 | 1 | 2024 | Vulnerability Detection via Multiple-Graph-Based Code Representation · IEEE Trans. Software Eng. 2024 |
Software maintenance and evolution › software documentation
code comment quality |
0.8 | 1 | 2024 | What Makes a Good TODO Comment? · ACM Trans. Softw. Eng. Methodol. 2024 |
Empirical software engineering › mining software repositories
commit analysis |
0.8 | 1 | 2024 | Just-In-Time TODO-Missed Commits Detection · IEEE Trans. Software Eng. 2024 |
Program analysis › program representation
graph-based code representation |
0.8 | 1 | 2024 | Vulnerability Detection via Multiple-Graph-Based Code Representation · IEEE Trans. Software Eng. 2024 |
Program analysis
program representation |
0.8 | 1 | 2024 | Vulnerability Detection via Multiple-Graph-Based Code Representation · IEEE Trans. Software Eng. 2024 |
Program synthesis and code generation
code generation with language models |
0.7 | 2 | 2024 | Context-aware Retrieval-based Deep Commit Message Generation · ACM Trans. Softw. Eng. Methodol. 2021 What Makes a Good TODO Comment? · ACM Trans. Softw. Eng. Methodol. 2024 |
Machine learning › Graph learning › hypergraph learning
hypergraph neural network |
0.7 | 1 | 2023 | HSDN: A High-Order Structural Semantic Disentangled Neural Network · IEEE Trans. Knowl. Data Eng. 2023 |
Machine learning › Trustworthy machine learning › fairness › fairness evaluation
fairness testing |
0.6 | 1 | 2022 | Automatic Fairness Testing of Neural Classifiers Through Adversarial Sampling · IEEE Trans. Software Eng. 2022 |
Machine learning › Graph learning › network embedding
heterogeneous graph embedding |
0.6 | 1 | 2022 | Walking With Attention: Self-Guided Walking for Heterogeneous Graph Embedding · IEEE Trans. Knowl. Data Eng. 2022 |
Machine learning › Graph learning
network embedding |
0.6 | 1 | 2022 | Walking With Attention: Self-Guided Walking for Heterogeneous Graph Embedding · IEEE Trans. Knowl. Data Eng. 2022 |
Machine learning › Graph learning › network embedding
random-walk-based embedding |
0.6 | 1 | 2022 | Walking With Attention: Self-Guided Walking for Heterogeneous Graph Embedding · IEEE Trans. Knowl. Data Eng. 2022 |
Methods — techniques the papers use, named apart from their topics
message passing · 3.3graph neural network · 3.1clustering · 2.1gradient computation · 2.0convolutional neural network · 1.9sampling · 1.7graph partitioning · 1.7program analysis · 1.5deep learning · 1.3temporal recency · 1.0similarity-based voting · 0.9metamorphic testing · 0.9historical embeddings · 0.9binning · 0.9neural machine translation · 0.8vertex cover · 0.8neural encoder · 0.8monte carlo sampling · 0.8
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2026 | RLV: LLM-based vulnerability detection by retrieving and refining contextual information
Fangcheng Qiu, Zhongxin Liu 0002, Bingde Hu, Zhengong Cai, Lingfeng Bao, Xinyu Wang 0001 |
J. Syst. Softw. | 6 |
| 2026 | FlareDTDG: Harnessing Temporal Recency for Scalable Discrete-Time Dynamic Graph Training
Rui Wang 0076, Tongya Zheng, Xinyu Wang 0001, Mingli Song, Sai Wu, Chun Chen 0001 |
Proc. VLDB Endow. | 5 |
| 2025 | Global Attribute-Association Pattern Aggregation for Graph Fraud DetectionabstractFraud is increasingly prevalent, and its patterns are frequently changing, posing challenges for fraud detection methods such as random forests and Graph Neural Networks (GNNs), which rely on bin-based and mixture features separately. The former may lose crucial graph-associated features, while the latter face incorrect feature fusion. To overcome these limitations, we propose an approach based on attribute-association pattern that leverages the distinct attribute and association patterns differentiating fraudulent from benign behaviors, to enhance fraud detection capabilities. Attribute features are adaptively split into separate bins to eliminate incorrect attribute fusion and combine association patterns through graph neighbor message passing, thereby deriving attribute-association pattern features. Using the learned attribute-association patterns, the fraud patterns between a single pattern and the patterns across the entire graph are globally aggregated. Extensive experiments comparing our approach with 24 methods on 7 datasets demonstrate that the proposed method achieves SOTA performance. Mingjiang Duan, Da He, Tongya Zheng, Lingxiang Jia, Mingli Song, Xinyu Wang 0001, Zunlei Feng |
AAAI | 6 |
| 2025 | Refactoring Deep Learning Code: a Study of Practices and Unsatisfied Tool NeedsabstractWith the rapid development of deep learning, the implementation of intricate algorithms and substantial data processing has become a standard element of deep learning projects. As a result, the code has become progressively complex as the software evolves, which is difficult to maintain and understand. Existing studies have investigated the impact of refactoring on software quality within non-deep learning software. However, the insights of code refactoring in the context of deep learning are still unclear. This study endeavors to fill this knowledge gap by empirically examining the current state of code refactoring in the deep learning realm and practitioners' views on refactoring tools. We first manually analyze the commit history of five popular and well-maintained deep learning projects (e.g., PyTorch). We mine$\mathbf{4, 4 0 1}$refactoring practices in$\mathbf{2, 4 4 5}$historical commits and measure how different types and elements of refactoring operations are distributed. We then survey 159 practitioners about their views of code refactoring in deep learning projects and their expectations of current refactoring tools. The survey result shows that refactoring research and the development of related tools in the field of deep learning are crucial for improving project maintainability and code quality, and that current refactoring tools do not adequately meet the needs of practitioners. Lastly, we provide our perspective on the future advancement of refactoring tools and offer suggestions for developers' development practices. Xing Hu 0008, Bei Wang 0010, WenXin Yao, Xin Xia 0001, Xinyu Wang 0001 |
ICSME | 6 |
| 2025 | Evaluating and Mitigating Linguistic Discrimination in Large Language Models: Perspectives on Safety Equity and Knowledge EquityabstractLarge language models (LLMs) typically provide multilingual support and demonstrate remarkable capabilities in solving tasks described in different languages. However, LLMs can exhibit linguistic discrimination due to the uneven distribution of training data across languages. That is, LLMs struggle to maintain consistency when handling the same task in different languages, compromising both safety equity and knowledge equity. In this paper, we first systematically evaluate the linguistic discrimination of LLMs from two aspects: safety and quality, using a form of metamorphic testing. The metamorphic relationship we examine is that LLMs are expected to deliver outputs with similar semantics when prompted with inputs that have the same meaning. We conduct this evaluation with two datasets based on four representative LLMs. The results show that LLMs exhibit stronger human alignment capabilities with queries in English, French, Russian, and Spanish compared to queries in Bengali, Georgian, Nepali and Maithili. Moreover, for queries in English, Danish, Czech and Slovenian, LLMs tend to produce responses with a higher quality compared to the other languages. Upon these findings, we propose LDFighter, a similarity-based voting method, to mitigate the linguistic discrimination in LLMs. We comprehensively evaluate LDFighter against a spectrum of queries including benign, harmful, and adversarial prompts. The results show that LDFighter significantly reduces jailbreak success rates and improves response quality. All code, data, and the technical appendix are publicly available at: \url{https://github.com/dgl-prc/ldfighter}. Guoliang Dong, Haoyu Wang 0017, Jun Sun 0001, Xinyu Wang 0001 |
IJCAI | 4 |
| 2025 | Quick Sense Temporal Graph Transformer with Effective Representation AugmentationabstractTemporal Graph Transformers (TGTs), which incorporates Transformer into the temporal graph learning models, are powerful tools for analyzing and predicting temporal graph data. However, most existing TGT models focus on one-hop interactions due to sequence correlation and computational complexity caused by neighborhood explosion. This limited focus on local subgraph structures restricts the representational power of current TGTs. Additionally, the introduction of higher-order structures exacerbates efficiency issues in TGTs, with the time-consuming feature processing stage often neglected, leading to low training efficiency. To address these challenges, we propose QSFormer (Quick Sense Temporal Graph TransFormer), a solution designed to enhance local sensation ability and accelerate training efficiency in TGTs. QSFormer includes a sense augmentation strategy that incorporates high-order neighbor-hoods with position-differentiated encoding and extends common neighbor. Furthermore, QSFormer implements a quick training framework for TGTs to accelerate feature processing and model convergence, including padded parallel sampling and adaptive mini-batch generation. Extensive experiments demonstrate that QSFormer consistently outperforms existing baselines, including TGTs such as DyGFormer and HOT. Notably, QSFormer surpasses these TGTs in training speed by over four and seven times, respectively. Our code is publicly available at https://github.com/Stephanie0002/QSFormer. Tongya Zheng, Rui Wang 0076, Longjiao Zhang, Xinyu Wang 0001 |
IJCNN | 6 |
| 2025 | Effective and Efficient Distributed Temporal Graph Learning through Hotspot Memory SharingabstractMemory-based temporal graph neural network (MTGNN) models are effective for predicting temporal graphs by using node memory and message-passing modules to capture temporal and structural information, respectively. However, distributed training for large graphs presents challenges such as accuracy loss and decreased efficiency due to remote features and memory transmission. Despite improvements in MTGNN system optimizations, issues like dynamic load imbalances, communication overhead, and memory staleness persist. To tackle these challenges, we introduce MemShare, a distributed MTGNN system. MemShare introduces a novel shared node memory paradigm that utilizes a small subset of shared nodes across machines and GPUs to reduce distributed communication for memory management. It incorporates techniques like shared nodes-centric graph partitioning, shared nodes-aware boundary decay sampling, and shared nodes-targeted synchronous smoothing aggregation. Experiments show that MemShare outperforms existing distributed MTGNN systems in accuracy and training efficiency. Longjiao Zhang, Rui Wang 0076, Tongya Zheng, Xinyu Wang 0001, Can Wang 0001, Mingli Song, Sai Wu, Shuibing He |
Proc. VLDB Endow. | 6 |
| 2025 | Efficient Distributed Graph Neural Network Training With Source Chunking and Moving AggregationabstractGraph neural networks (GNNs) are effective models for analyzing graph-structured data, but encounter challenges when training on large distributed graphs. Existing GNN training frameworks use sampling parallelism and historical embedding methods to support distributed training and enhance efficiency. However, these methods suffer from issues like stale historical embeddings, imbalanced communication messages, and redundant storage and computation costs. In this paper, we present Emma, a distributed GNN training framework that incorporates source node centric chunking for frequent updates of embeddings and balanced communication, as well as a moving message aggregation technique to boost training efficiency and reduce storage costs. Experimental results show that Emma significantly enhances training efficiency by reducing computation and communication overhead, leading to a notable speedup while maintaining convergence accuracy compared to state-of-the-art distributed GNN training methods. Tongya Zheng, Rui Wang 0076, Tongtian Zhu, Bingde Hu, Shuibing He, Mingli Song, Xinyu Wang 0001, Sai Wu, Chun Chen 0001 |
IEEE Trans. Knowl. Data Eng. | 8 |
| 2024 | DGA-GNN: Dynamic Grouping Aggregation GNN for Fraud DetectionabstractFraud detection has increasingly become a prominent research field due to the dramatically increased incidents of fraud. The complex connections involving thousands, or even millions of nodes, present challenges for fraud detection tasks. Many researchers have developed various graph-based methods to detect fraud from these intricate graphs. However, those methods neglect two distinct characteristics of the fraud graph: the non-additivity of certain attributes and the distinguishability of grouped messages from neighbor nodes. This paper introduces the Dynamic Grouping Aggregation Graph Neural Network (DGA-GNN) for fraud detection, which addresses these two characteristics by dynamically grouping attribute value ranges and neighbor nodes. In DGA-GNN, we initially propose the decision tree binning encoding to transform non-additive node attributes into bin vectors. This approach aligns well with the GNN’s aggregation operation and avoids nonsensical feature generation. Furthermore, we devise a feedback dynamic grouping strategy to classify graph nodes into two distinct groups and then employ a hierarchical aggregation. This method extracts more discriminative features for fraud detection tasks. Extensive experiments on five datasets suggest that our proposed method achieves a 3% ~ 16% improvement over existing SOTA methods. Code is available at https://github.com/AtwoodDuan/DGA-GNN. Mingjiang Duan, Tongya Zheng, Yang Gao 0001, Zunlei Feng, Xinyu Wang 0001 |
AAAI | 6 |
| 2024 | E3V-K5: An Authentic Benchmark for Redefining Video-Based Energy Expenditure Estimation
Shengxuming Zhang, Xinyu Wang 0001, Zunlei Feng, Mingli Song |
ECCV (35) | 4 |
| 2024 | Fast Query Answering by Labeling Index on Uncertain GraphsabstractGiven the ubiquity of Uncertain Graphs (UGs), the field of UG mining has garnered increasing attention. Among various mining tasks, query processing stands out as the most fundamental and crucial. Current methods for query answering on UGs primarily rely on Monte-Carlo sampling and heuristic approaches. However, these techniques either struggle with a significant efficiency-accuracy trade-off or lack generalization over different graphs and queries. To circumvent these limitations, this work proposes a novel index-based method for query answering on UGs. We construct a labeling index framework, which can answer queries by pre-computed and stored operators. To the best of our knowledge, this is the first index frame-work that can deal with reliability, expected reliable distance and distance-constrained reliability queries, providing lower or upper bounded query answer results. By transferring the time consuming sampling process into the offline index operator computation, the query answering only needs to traverse a limited number of operators, which accelerates the response time of query answering with several orders of magnitude. We further utilize the vertex cover and its h-hop extension to prune the index structure, thereby reducing the space complexity. Experimental results on five real-world datasets demonstrate that the proposed index framework is both effective and efficient. Qihao Shi, Jiawei Chen 0007, Can Wang 0001, Mingli Song, Xinyu Wang 0001 |
ICDE | 6 |
| 2024 | Transition Propagation Graph Neural Networks for Temporal NetworksabstractResearchers of temporal networks (e.g., social networks and transaction networks) have been interested in mining dynamic patterns of nodes from their diverse interactions. Inspired by recently powerful graph mining methods like skip-gram models and graph neural networks (GNNs), existing approaches focus on generating temporal node embeddings sequentially with nodes' sequential interactions. However, the sequential modeling of previous approaches cannot handles the transition structure between nodes' neighbors with limited memorization capacity. In detail, an effective method for the transition structures is required to both model nodes' personalized patterns adaptively and capture node dynamics accordingly. In this article, we propose a method, namely t ransition p ropagation g raph n eural n etworks (TIP-GNN), to tackle the challenges of encoding nodes' transition structures. The proposed TIP-GNN focuses on the bilevel graph structure in temporal networks: besides the explicit interaction graph, a node's sequential interactions can also be constructed as a transition graph. Based on the bilevel graph, TIP-GNN further encodes transition structures by multistep transition propagation and distills information from neighborhoods by a bilevel graph convolution. Experimental results over various temporal networks reveal the efficiency of our TIP-GNN, with at most 7.2% improvements of accuracy on temporal link prediction. Extensive ablation studies further verify the effectiveness and limitations of the transition propagation module. Our code is available at https://github.com/doujiang-zheng/TIP-GNN. Tongya Zheng, Zunlei Feng, Tianli Zhang, Yunzhi Hao, Mingli Song, Xingen Wang, Xinyu Wang 0001, Ji Zhao 0016, Chun Chen 0001 |
IEEE Trans. Neural Networks Learn. Syst. | 7 |
| 2024 | What Makes a Good TODO Comment?abstractSoftware development is a collaborative process that involves various interactions among individuals and teams. TODO comments in source code play a critical role in managing and coordinating diverse tasks during this process. However, this study finds that a large proportion of open-source project TODO comments are left unresolved or take a long time to be resolved. About 46.7% of TODO comments in open-source repositories are of low-quality (e.g., TODOs that are ambiguous, lack information, or are useless to developers). This highlights the need for better TODO practices. In this study, we investigate four aspects regarding the quality of TODO comments in open-source projects: (1) the prevalence of low-quality TODO comments; (2) the key characteristics of high-quality TODO comments; (3) how are TODO comments of different quality managed in practice; and (4) the feasibility of automatically assessing TODO comment quality. Examining 2,863 TODO comments from Top100 GitHub Java repositories, we propose criteria to identify high-quality TODO comments and provide insights into their optimal composition. We discuss the lifecycle of TODO comments with varying quality. To assist developers, we construct deep learning-based methods that show promising performance in identifying the quality of TODO comments, potentially enhancing development efficiency and code quality. Haoye Wang, Zhipeng Gao 0002, Tingting Bi, John C. Grundy, Xinyu Wang 0001, Minghui Wu 0001, Xiaohu Yang 0001 |
ACM Trans. Softw. Eng. Methodol. | 5 |
| 2024 | Vulnerability Detection via Multiple-Graph-Based Code RepresentationabstractDuring software development and maintenance, vulnerability detection is an essential part of software quality assurance. Even though many program-analysis-based and machine-learning-based approaches have been proposed to automatically detect vulnerabilities, they rely on explicit rules or patterns defined by security experts and suffer from either high false positives or high false negatives. Recently, an increasing number of studies leverage deep learning techniques, especially Graph Neural Network (GNN), to detect vulnerabilities. These approaches leverage program analysis to represent the program semantics as graphs and perform graph analysis to detect vulnerabilities. However, they suffer from two main problems: (i) Existing GNN-based techniques do not effectively learn the structural and semantic features from source code for vulnerability detection. (ii) These approaches tend to ignore fine-grained information in source code. To tackle these problems, in this paper, we propose a novel vulnerability detection approach, namedMGVD(Multiple-Graph-BasedVulnerabilityDetection), to detect vulnerable functions. To effectively learn the structural and semantic features from source code,MGVDuses three different ways to represent each function into multiple forms, i.e., two statement graphs and a sequence of tokens. Then we encode such representations to a three-channel feature matrix. The feature matrix contains the structural feature and the semantic feature of the function. And we add a weight allocation layer to distribute the weights between structural and semantic features. To overcome the second problem,MGVDconstructs each graph representation of the input function using multiple different graphs instead of a single graph. Each graph focuses on one statement in the function and its nodes denote the related statements and their fine-grained code elements. Finally,MGVDleverages CNN to identify whether this function is vulnerable based on such feature matrix. We conduct experiments on 3 vulnerability datasets with a total of 30,341 vulnerable functions and 127,931 non-vulnerable functions. The experimental results show that our method outperforms the state-of-the-art by 9.68% – 10.28% in terms of F1-score. Fangcheng Qiu, Zhongxin Liu 0002, Xing Hu 0008, Xin Xia 0001, Gang Chen 0001, Xinyu Wang 0001 |
IEEE Trans. Software Eng. | 6 |
| 2024 | Just-In-Time TODO-Missed Commits DetectionabstractTODO comments play an important role in helping developers to manage their tasks and communicate with other team members. TODO comments are often introduced by developers as a type of technical debt, such as a reminder to add/remove features or a request to optimize the code implementations. These can all be considered as notifications for developers to revisit regarding the current suboptimal solutions. TODO comments often bring short-term benefits – higher productivity or shorter development cost – and indicate attention needs to be paid for the long-term software quality. Unfortunately, due to their lack of knowledge or experience and/or the time constraints, developers sometimes may forget or even not be aware of suboptimal implementations. The loss of the TODO comments for these suboptimal solutions may hurt the software quality and reliability in the long-term. Therefore it is beneficial to remind the developers of the suboptimal solutions whenever they change the code. In this work, we refer this problem to the task of detectingTODO-missed commits, and we propose a novel approach named TDReminder(TODO commentReminder) to address the task. With the help of TDReminder, developers can identify possible missing TODO commits just-in-time when submitting a commit. Our approach has two phases: offline training and online inference. We first embed code change and commit message into contextual vector representations using two neural encoders respectively. The association between these representations is learned by our model automatically.In the online inference phase, TDReminderleverages the trained model to compute the likelihood of a commit being aTODO-missed commit. We evaluate TDReminderon datasets crawled from 10k popular Python and Java repositories in GitHub respectively. Our experimental results show that TDReminderoutperforms a set of benchmarks by a large margin inTODO-missed commitsdetection. Moreover, to better help developers use TDReminderin practice, we have incorporated Large Language Models (LLMs) with our approach to provide explainable recommendations. The user study shows that our tool can effectively inform developers not only “when” to add TODOs, but also “where” and “what” TODOs should be added, verifying the value of our tool in practical application. Haoye Wang, Zhipeng Gao 0002, Xing Hu 0008, David Lo 0001, John C. Grundy, Xinyu Wang 0001 |
IEEE Trans. Software Eng. | 6 |
| 2023 | RITA: Boost Driving Simulators with Realistic Interactive Traffic FlowabstractHigh-quality traffic flow generation is the core module in building simulators for autonomous driving. However, the majority of available simulators are incapable of replicating traffic patterns that accurately reflect the various features of real-world data while also simulating human-like reactive responses to the tested autopilot driving strategies. Taking one step forward to addressing such a problem, we propose Realistic Interactive TrAffic flow (RITA) as an integrated component of existing driving simulators to provide high-quality traffic flow for the evaluation and optimization of the tested driving strategies. RITA is developed with consideration of three key features, i.e., fidelity, diversity, and controllability, and consists of two core modules called RITABackend and RITAKit. RITABackend is built to support vehicle-wise control and provide traffic generation models from real-world datasets, while RITAKit is developed with easy-to-use interfaces for controllable traffic generation via RITABackend. We demonstrate RITA’s capacity to create diversified and high-fidelity traffic simulations in several highly interactive highway scenarios. The experimental findings demonstrate that our produced RITA traffic flows exhibit all three key features, hence enhancing the completeness of driving strategy evaluation. Moreover, we showcase the possibility for further improvement of baseline strategies through online fine-tuning with RITA traffic flows. Zhengbang Zhu, Shenyu Zhang 0001, Yuzheng Zhuang, Yuecheng Liu, Minghuan Liu, Ziqing Gong, Shixiong Kai, Qiang Gu, Bin Wang 0034, Siyuan Cheng 0012, Xinyu Wang 0001, Jianye Hao, Yong Yu 0001 |
DAI | 11 |
| 2023 | LoSS: Local Structural Separation Hypergraph Convolutional Neural NetworkabstractGraph classification is a classic problem with practical applications in many real-life scenes. Existing graph neural networks, including GCN, GAT, and GIN, are proposed to extract useful features from complex graph structures. However, most existing methods’ feature extraction and aggregation inevitably mix the useful and redundant features, which will disturb the final classification performance. In this paper, to handle the above drawback, we put forward the Local Structural Separation Hypergraph Convolutional Neural Network (LoSS) based on two discoveries: most graph classification tasks only focus on a few groups of adjacent nodes, and different categories have their specific high response bits in graph embeddings. In LoSS, we first decouple the original graph into different hypergraphs and aggregate the features in each substructure, which aims to find useful features for the final classification. Next, the low-correlation feature suppression strategy is devised to suppress the irrelevant node-level and bit-level features in the forward inference process, effectively reducing the disturbance of redundant features. Experiments on five datasets show that the proposed LoSS can effectively locate and aggregate useful hypergraph features and achieve SOTA performance compared with existing methods. Bingde Hu, Yang Gao 0001, Zunlei Feng, Mingli Song, Xinyu Wang 0001, Ying Li 0097 |
ECAI | 5 |
| 2023 | Attribution Guided Layerwise Knowledge Amalgamation from Graph Neural Networks
Yunzhi Hao, Yu Wang 0176, Shunyu Liu 0001, Tongya Zheng, Xingen Wang, Xinyu Wang 0001, Mingli Song, Wenqi Huang 0002, Chun Chen 0001 |
ICONIP (1) | 6 |
| 2023 | Heterogeneous Graph Prototypical Networks for Few-Shot Node Classification
Yunzhi Hao, Mengfan Wang, Xingen Wang, Tongya Zheng, Xinyu Wang 0001, Wenqi Huang 0002, Chun Chen 0001 |
ICONIP (8) | 5 |
| 2023 | Reinforcement learning based web crawler detection for diversity and dynamics
Yang Gao 0001, Zunlei Feng, Mingli Song, Xingen Wang, Xinyu Wang 0001, Chun Chen 0001 |
Neurocomputing | 6 |
| 2023 | HSDN: A High-Order Structural Semantic Disentangled Neural NetworkabstractGraph disentangling is a new promising direction that can help us to discover the latent patterns in the data and understand the behaviors of a graph learning model. Despite the many efforts in disentangling representation learning, few works focus on disentangling the latent factors behind a graph. Most current foci are mainly on studying node-level semantics in the graphs. Compared with node-level, the structure-level view can provide a new interpretable and in-depth insight into graph data. The study of structure-level relations enables us to reveal the high-order structural semantics in the data. To explore the complex high-order structural semantics in the data, we propose the High-order Structural Semantic Disentangled Neural Network (HSDN) to model the graph structure units and disentangle structural semantics. It's the first attempt to hypergraph disentangled networks. Unlike prior methods that disentangle factor graphs based on pair-wise relations only, we introduce hyperedges on pair-wise graphs to model structure units and disentangle the complex high-order structural semantics between different structures. Extensive experiments demonstrate that HSDN achieves state-of-the-art performances in terms of both disentangling and downstream tasks. Bingde Hu, Xingen Wang, Zunlei Feng, Jie Song 0011, Ji Zhao 0016, Mingli Song, Xinyu Wang 0001 |
IEEE Trans. Knowl. Data Eng. | 7 |
| 2023 | Temporal Aggregation and Propagation Graph Neural Networks for Dynamic RepresentationabstractTemporal graphs exhibit dynamic interactions between nodes over continuous time, whose topologies evolve with time elapsing. The whole temporal neighborhood of nodes reveals the varying preferences of nodes. However, previous works usually generate dynamic representation with limited neighbors for simplicity, which results in both inferior performance and high latency of online inference. Therefore, in this paper, we propose a novel method of temporal graph convolution with the whole neighborhood, namely Temporal Aggregation and Propagation Graph Neural Networks (TAP-GNN). Specifically, we first analyze the computational complexity of the dynamic representation problem by unfolding the temporal graph in a message-passing paradigm. The expensive complexity motivates us to design the AP (aggregation and propagation) block, which significantly reduces the repeated computation of historical neighbors. The final TAP-GNN supports online inference in the graph stream scenario, which incorporates the temporal information into node embeddings with a temporal activation function and a projection layer besides several AP blocks. Experimental results on various real-life temporal networks show that our proposed TAP-GNN outperforms existing temporal graph methods by a large margin in terms of both predictive performance and online inference latency. Tongya Zheng, Xinchao Wang, Zunlei Feng, Jie Song 0011, Yunzhi Hao, Mingli Song, Xingen Wang, Xinyu Wang 0001, Chun Chen 0001 |
IEEE Trans. Knowl. Data Eng. | 8 |
| 2022 | Repairing Adversarial Texts Through Perturbation
Guoliang Dong, Jingyi Wang 0004, Jun Sun 0001, Sudipta Chattopadhyay 0001, Xinyu Wang 0001, Jie Shi 0013, Jin Song Dong 0001 |
TASE | 5 |
| 2022 | Walking With Attention: Self-Guided Walking for Heterogeneous Graph EmbeddingabstractHeterogeneous graph embedding aims at learning low-dimensional representations from a graph featuring nodes and edges of diverse natures, and meanwhile preserving the underlying topology. Existing approaches along this line have largely relied onmeta-paths, which are by nature hand-crafted and pre-defined transition rules, so as to explore the semantics of a graph. Despite the promising results, defining meta-paths requires domain knowledge, and thus when the test distribution deviates from the priors, such methods are prone to errors. In this paper, we propose a self-learning scheme for heterogeneous graph embedding, termed as self-guided walk (SILK), that bypasses meta-paths and learns adaptive attentions for node walking. SILK assumes no prior knowledge or annotation is provided, and conducts a customized random walk to encode the contexts of the heterogeneous graph of interest. Specifically, this is achieved via maintaining a dynamically-updatedguidance matrixthat records the node-conditioned transition potentials. Experimental results on four real-world datasets demonstrate that SILK significantly outperforms state-of-the-art methods. Yunzhi Hao, Xinchao Wang, Xingen Wang, Xinyu Wang 0001, Chun Chen 0001, Mingli Song |
IEEE Trans. Knowl. Data Eng. | 4 |
| 2022 | Deep Just-In-Time Defect LocalizationabstractDuring software development and maintenance, defect localization is an essential part of software quality assurance. Even though different techniques have been proposed for defect localization, i.e., information retrieval (IR)-based techniques and spectrum-based techniques, they can only work after the defect has been exposed, which can be too late and costly to adapt to the newly introduced bugs in the daily development. To assist developers to detect bugs in time and avoid introducing them, just-in-time (JIT) bug localization techniques have been proposed, which is targeting to locate suspicious buggy code after a change commit has been submitted. In this paper, we propose a novel JIT defect localization approach, named DeepDL (Deep Learning-based defect localization), to locate defect code lines within a defect introducing change. DeepDL employs a neural language model to capture the semantics of the code lines, in this way, the naturalness of each code line can be learned and converted to a suspiciousness score. The core of our DeepDL is a deep learning-based neural language model. We train the neural language model with previous snapshots (history versions) of a project so that it can calculate the naturalness of a piece of code. In its application, for a given new code change, DeepDL automatically assigns a suspiciousness score to each code line and sorts these code lines in descending order of this score. The code lines at the top of the list are considered as potential defect locations. Our tool can assist developers efciently check buggy lines at an early stage, which is able to reduce the risk of introducing bugs in time and improve the developers condence in the reliability of their software. We conducted an extensive experiment on 14 open source Java projects with a total of 11,615 buggy changes. We evaluate the experimental results considering four evaluation metrics. The experimental results show that our method outperforms the state-of-the-art by a substantial margin. Fangcheng Qiu, Zhipeng Gao 0002, Xin Xia 0001, David Lo 0001, John C. Grundy, Xinyu Wang 0001 |
IEEE Trans. Software Eng. | 6 |
| 2022 | Automatic Fairness Testing of Neural Classifiers Through Adversarial SamplingabstractAlthough deep learning has demonstrated astonishing performance in many applications, there are still concerns about its dependability. One desirable property of deep learning applications with societal impact is fairness (i.e., non-discrimination). Unfortunately, discrimination might be intrinsically embedded into the models due to the discrimination in the training data. As a countermeasure, fairness testing systemically identifies discriminatory samples, which can be used to retrain the model and improve the model’s fairness. Existing fairness testing approaches however have two major limitations. First, they only work well on traditional machine learning models and have poor performance (e.g., effectiveness and efficiency) on deep learning models. Second, they only work on simple structured (e.g., tabular) data and are not applicable for domains such as text. In this work, we bridge the gap by proposing a scalable and effective approach for systematically searching for discriminatory samples while extending existing fairness testing approaches to address a more challenging domain, i.e., text classification. Compared with state-of-the-art methods, our approach only employs lightweight procedures like gradient computation and clustering, which is significantly more scalable and effective. Experimental results show that on average, our approach explores the search space much more effectively (9.62 and 2.38 times more than the state-of-the-art methods respectively on tabular and text datasets) and generates much more discriminatory samples (24.95 and 2.68 times) within a same reasonable time. Moreover, the retrained models reduce discrimination by 57.2 and 60.2 percent respectively on average. Peixin Zhang 0001, Jingyi Wang 0004, Jun Sun 0001, Xinyu Wang 0001, Guoliang Dong, Xingen Wang, Jin Song Dong 0001 |
IEEE Trans. Software Eng. | 4 |
| 2021 | Automatic Solution Summarization for Crash BugsabstractThe causes of software crashes can be hidden anywhere in the source code and development environment. When encountering software crashes, recurring bugs that are discussed on Q&A sites could provide developers with solutions to their crashing problems. However, it is difficult for developers to accurately search for relevant content on search engines, and developers have to spend a lot of manual effort to find the right solution from the returned results. In this paper, we present CRASOLVER, an approach that takes into account both the structural information of crash traces and the knowledge of crash-causing bugs to automatically summarize solutions from crash traces. Given a crash trace, CRASOLVER retrieves relevant questions from Q&A sites by combining a proposed position dependent similarity - based on the structural information of the crash trace - with an extra knowledge similarity, based on the knowledge from official documentation sites. After obtaining the answers to these questions from the Q&A site, CRASOLVER summarizes the final solution based on a multi-factor scoring mechanism. To evaluate our approach, we built two repositories of Java and Android exception-related questions from Stack Overflow with size of 69,478 and 33,566 questions respectively. Our user study results using 50 selected Java crash traces and 50 selected Android crash traces show that our approach significantly outperforms four baselines in terms of relevance, usefulness, and diversity. The evaluation also confirms the effectiveness of the relevant question retrieval component in our approach for crash traces. Haoye Wang, Xin Xia 0001, David Lo 0001, John C. Grundy, Xinyu Wang 0001 |
ICSE | 5 |
| 2021 | MixGCF: An Improved Training Method for Graph Neural Network-based Recommender SystemsabstractGraph neural networks (GNNs) have recently emerged as state-of-the-art collaborative filtering (CF) solution. A fundamental challenge of CF is to distill negative signals from the implicit feedback, but negative sampling in GNN-based CF has been largely unexplored. In this work, we propose to study negative sampling by leveraging both the user-item graph structure and GNNs' aggregation process. We present the MixGCF method---a general negative sampling plugin that can be directly used to train GNN-based recommender systems. In MixGCF, rather than sampling raw negatives from data, we design the hop mixing technique to synthesize hard negatives. Specifically, the idea of hop mixing is to generate the synthetic negative by aggregating embeddings from different layers of raw negatives' neighborhoods. The layer and neighborhood selection process are optimized by a theoretically-backed hard selection strategy. Extensive experiments demonstrate that by using MixGCF, state-of-the-art GNN-based recommendation models can be consistently and significantly improved, e.g., 26% for NGCF and 22% for LightGCN in terms of [email protected] Tinglin Huang 0001, Yuxiao Dong, Ming Ding 0004, Zhen Yang 0034, Wenzheng Feng, Xinyu Wang 0001, Jie Tang 0001 |
KDD | 6 |
| 2021 | Towards Repairing Neural Networks CorrectlyabstractNeural networks are increasingly applied to support decision-making in safety-critical applications (like autonomous cars, unmanned aerial vehicles, and face recognition-based authentication). While many impressive static verification techniques have been proposed to tackle the correctness problem of neural networks, existing static verification techniques still do not answer the natural question: what is the subsequent measure that one should take if the DNN is not verified? In this work, we propose a runtime repairing method to ensure the correctness of neural networks within certain input regions. Given a neural network and a safety property, we first adopt state-of-the-art static verification techniques to verify the neural networks. In the case that the verification fails, we strategically identify locations to introduce additional gates which “correct” neural network behaviors at runtime whilst keeping the modifications small. Experiment results show that our approach effectively generates neural networks which are guaranteed to satisfy the properties, whilst being consistent with the original neural network most of the time. Guoliang Dong, Jun Sun 0001, Xingen Wang, Xinyu Wang 0001 |
QRS | 4 |
| 2021 | Context-aware Retrieval-based Deep Commit Message GenerationabstractCommit messages recorded in version control systems contain valuable information for software development, maintenance, and comprehension. Unfortunately, developers often commit code with empty or poor quality commit messages. To address this issue, several studies have proposed approaches to generate commit messages from commit diffs . Recent studies make use of neural machine translation algorithms to try and translate git diffs into commit messages and have achieved some promising results. However, these learning-based methods tend to generate high-frequency words but ignore low-frequency ones. In addition, they suffer from exposure bias issues, which leads to a gap between training phase and testing phase. In this article, we propose CoRec to address the above two limitations. Specifically, we first train a context-aware encoder-decoder model that randomly selects the previous output of the decoder or the embedding vector of a ground truth word as context to make the model gradually aware of previous alignment choices. Given a diff for testing, the trained model is reused to retrieve the most similar diff from the training set. Finally, we use the retrieval diff to guide the probability distribution for the final generated vocabulary. Our method combines the advantages of both information retrieval and neural machine translation. We evaluate CoRec on a dataset from Liu et al. and a large-scale dataset crawled from 10K popular Java repositories in Github. Our experimental results show that CoRec significantly outperforms the state-of-the-art method NNGen by 19% on average in terms of BLEU. Haoye Wang, Xin Xia 0001, David Lo 0001, Qiang He 0001, Xinyu Wang 0001, John C. Grundy |
ACM Trans. Softw. Eng. Methodol. | 5 |
| 2020 | An Empirical Study on Correlation between Coverage and Robustness for Deep Neural NetworksabstractDeep neural networks (DNN) are increasingly applied in safety-critical systems, e.g., for face recognition, autonomous car control and malware detection. It is also shown that DNNs are subject to attacks such as adversarial perturbation and thus must be properly tested. Many coverage criteria for DNN since have been proposed, inspired by the success of code coverage criteria for software programs. The expectation is that if a DNN is well tested (and retrained) according to such coverage criteria, it is more likely to be robust. In this work, we conduct an empirical study to evaluate the relationship between coverage, robustness and attack/defense metrics for DNN. Our study is the largest to date and systematically done based on 100 DNN models and 25 metrics. One of our findings is that there is limited correlation between coverage and robustness, i.e., improving coverage does not help improve the robustness. Our dataset and implementation have been made available to serve as a benchmark for future studies on testing DNN. Yizhen Dong, Peixin Zhang 0001, Jingyi Wang 0004, Shuang Liu 0007, Jun Sun 0001, Jianye Hao, Xinyu Wang 0001, Jin Song Dong 0001 |
ICECCS | 7 |
| 2020 | White-box fairness testing through adversarial samplingabstractAlthough deep neural networks (DNNs) have demonstrated astonishing performance in many applications, there are still concerns on their dependability. One desirable property of DNN for applications with societal impact is fairness (i.e., non-discrimination). In this work, we propose a scalable approach for searching individual discriminatory instances of DNN. Compared with state-of-the-art methods, our approach only employs lightweight procedures like gradient computation and clustering, which makes it significantly more scalable than existing methods. Experimental results show that our approach explores the search space more effectively (9 times) and generates much more individual discriminatory instances (25 times) using much less time (half to 1/7). Peixin Zhang 0001, Jingyi Wang 0004, Jun Sun 0001, Guoliang Dong, Xinyu Wang 0001, Xingen Wang, Jin Song Dong 0001 |
ICSE | 5 |
| 2020 | Towards Interpreting Recurrent Neural Networks through Probabilistic AbstractionabstractNeural networks are becoming a popular tool for solving many real-world problems such as object recognition and machine translation, thanks to its exceptional performance as an end-to-end solution. However, neural networks are complex black-box models, which hinders humans from interpreting and consequently trusting them in making critical decisions. Towards interpreting neural networks, several approaches have been proposed to extract simple deterministic models from neural networks. The results are not encouraging (e.g., low accuracy and limited scalability), fundamentally due to the limited expressiveness of such simple models. Guoliang Dong, Jingyi Wang 0004, Jun Sun 0001, Yang Zhang 0016, Xinyu Wang 0001, Jin Song Dong 0001, Xingen Wang |
ASE | 5 |
| 2020 | JITO: a tool for just-in-time defect identification and localizationabstractIn software development and maintenance, defect localization is necessary for software quality assurance. Current defect localization techniques mainly rely on defect symptoms (e.g., bug reports or program spectrum) when the defect has been exposed. One challenge task is: can we locate buggy program prior to the appearance of the defect symptom. Such kind of localization is conducted at an early stage (e.g., when buggy program elements are being checked-in) which can be an early step of continuous quality control. Fangcheng Qiu, Meng Yan 0001, Xin Xia 0001, Xinyu Wang 0001, Yuanrui Fan, Ahmed E. Hassan, David Lo 0001 |
ESEC/SIGSOFT FSE | 4 |
| 2019 | Adversarial sample detection for deep neural network through model mutation testingabstractDeep neural networks (DNN) have been shown to be useful in a wide range of applications. However, they are also known to be vulnerable to adversarial samples. By transforming a normal sample with some carefully crafted human imperceptible perturbations, even highly accurate DNN make wrong decisions. Multiple defense mechanisms have been proposed which aim to hinder the generation of such adversarial samples. However, a recent work show that most of them are ineffective. In this work, we propose an alternative approach to detect adversarial samples at runtime. Our main observation is that adversarial samples are much more sensitive than normal samples if we impose random mutations on the DNN. We thus first propose a measure of 'sensitivity' and show empirically that normal samples and adversarial samples have distinguishable sensitivity. We then integrate statistical hypothesis testing and model mutation testing to check whether an input sample is likely to be normal or adversarial at runtime by measuring its sensitivity. We evaluated our approach on the MNIST and CIFAR10 datasets. The results show that our approach detects adversarial samples generated by state-of-the-art attacking methods efficiently and accurately. Jingyi Wang 0004, Guoliang Dong, Jun Sun 0001, Xinyu Wang 0001, Peixin Zhang 0001 |
ICSE | 4 |
| 2019 | Message from the General Chair, Program Co-Chairs, and Local ChairabstractSANER 2019, the 26th IEEE International IEEE International Conference on Software Analysis, Evolution and Reengineering. SANER is the premier research conference on the theory and practice of recovering information from existing software and systems. It explores innovative methods of extracting the many kinds of information that can be recovered from software, software engineering documents, and systems artifacts, and examines innovative ways of using this information in system renovation and program understanding. SANER 2019 has a rich and diverse program on the latest innovations and visions in software analysis, evolution and reengineering. The research track received 151 submissions, of which 2 were desk-rejected and 1 was withdrawn by the authors during the review period. The remaining 148 papers each received at least three reviews. We adopted a double-blind reviewing process to the research track based on the success of double-blind reviewing adopted last year. Following an extensive online discussion, 45 papers were accepted (5 of them being conditionally accepted in a first stage), yielding an acceptance rate of 30.4%. No specific acceptance rate was communicated as a guideline to the reviewers. The PC were free to accept any paper deemed strong and novel enough and were encouraged to look for reasons to accept papers rather than to just point out flaws. The accepted papers will be published in the official conference proceedings. Up to top 10% of accepted papers would be awarded the IEEE TCSE Distinguished Paper Awards. The award papers will be announced at the conference. As in previous years, authors of selected papers from the research track will be invited to submit extended versions of their work to a special issue of the Springer international journal of Empirical Software Engineering (EMSE). Xinyu Wang 0001, David Lo 0001, Emad Shihab, Xin Xia 0001 |
SANER | 1 |
| 2019 | Real-time intelligent big data processing: technology, platform, and applications
Tongya Zheng, Gang Chen 0001, Xinyu Wang 0001, Chun Chen 0001, Xingen Wang, Sihui Luo 0001 |
Sci. China Inf. Sci. | 3 |
| 2019 | Neural Network-based Detection of Self-Admitted Technical Debt: From Performance to ExplainabilityabstractTechnical debt is a metaphor to reflect the tradeoff software engineers make between short-term benefits and long-term stability. Self-admitted technical debt (SATD), a variant of technical debt, has been proposed to identify debt that is intentionally introduced during software development, e.g., temporary fixes and workarounds. Previous studies have leveraged human-summarized patterns (which represent n-gram phrases that can be used to identify SATD) or text-mining techniques to detect SATD in source code comments. However, several characteristics of SATD features in code comments, such as vocabulary diversity, project uniqueness, length, and semantic variations, pose a big challenge to the accuracy of pattern or traditional text-mining-based SATD detection, especially for cross-project deployment. Furthermore, although traditional text-mining-based method outperforms pattern-based method in prediction accuracy, the text features it uses are less intuitive than human-summarized patterns, which makes the prediction results hard to explain. To improve the accuracy of SATD prediction, especially for cross-project prediction, we propose a Convolutional Neural Network-- (CNN) based approach for classifying code comments as SATD or non-SATD. To improve the explainability of our model’s prediction results, we exploit the computational structure of CNNs to identify key phrases and patterns in code comments that are most relevant to SATD. We have conducted an extensive set of experiments with 62,566 code comments from 10 open-source projects and a user study with 150 comments of another three projects. Our evaluation confirms the effectiveness of different aspects of our approach and its superior performance, generalizability, adaptability, and explainability over current state-of-the-art traditional text-mining-based methods for SATD classification. Xiaoxue Ren, Zhenchang Xing, Xin Xia 0001, David Lo 0001, Xinyu Wang 0001, John C. Grundy |
ACM Trans. Softw. Eng. Methodol. | 5 |
| 2018 | Towards optimal concolic testingabstractConcolic testing integrates concrete execution (e.g., random testing) and symbolic execution for test case generation. It is shown to be more cost-effective than random testing or symbolic execution sometimes. A concolic testing strategy is a function which decides when to apply random testing or symbolic execution, and if it is the latter case, which program path to symbolically execute. Many heuristics-based strategies have been proposed. It is still an open problem what is the optimal concolic testing strategy. In this work, we make two contributions towards solving this problem. First, we show the optimal strategy can be defined based on the probability of program paths and the cost of constraint solving. The problem of identifying the optimal strategy is then reduced to a model checking problem of Markov Decision Processes with Costs. Secondly, in view of the complexity in identifying the optimal strategy, we design a greedy algorithm for approximating the optimal strategy. We conduct two sets of experiments. One is based on randomly generated models and the other is based on a set of C programs. The results show that existing heuristics have much room to improve and our greedy algorithm often outperforms existing heuristics. Xinyu Wang 0001, Jun Sun 0001, Zhenbang Chen 0001, Peixin Zhang 0001, Jingyi Wang 0004, Yun Lin 0001 |
ICSE | 1 |
| 2018 | API method recommendation without worrying about the task-API knowledge gapabstractDevelopers often need to search for appropriate APIs for their programming tasks. Although most libraries have API reference documentation, it is not easy to find appropriate APIs due to the lexical gap and knowledge gap between the natural language description of the programming task and the API description in API documentation. Here, the lexical gap refers to the fact that the same semantic meaning can be expressed by different words, and the knowledge gap refers to the fact that API documentation mainly describes API functionality and structure but lacks other types of information like concepts and purposes, which are usually the key information in the task description. In this paper, we propose an API recommendation approach named BIKER (Bi-Information source based KnowledgE Recommendation) to tackle these two gaps. To bridge the lexical gap, BIKER uses word embedding technique to calculate the similarity score between two text descriptions. Inspired by our survey findings that developers incorporate Stack Overflow posts and API documentation for bridging the knowledge gap, BIKER leverages Stack Overflow posts to extract candidate APIs for a program task, and ranks candidate APIs by considering the query’s similarity with both Stack Overflow posts and API documentation. It also summarizes supplementary information (e.g., API description, code examples in Stack Overflow posts) for each API to help developers select the APIs that are most relevant to their tasks. Our evaluation with 413 API-related questions confirms the effectiveness of BIKER for both class- and method-level API recommendation, compared with state-of-the-art baselines. Our user study with 28 Java developers further demonstrates the practicality of BIKER for API search. Xin Xia 0001, Zhenchang Xing, David Lo 0001, Xinyu Wang 0001 |
ASE | 5 |
| 2018 | Neural-machine-translation-based commit message generation: how far are we?abstractCommit messages can be regarded as the documentation of software changes. These messages describe the content and purposes of changes, hence are useful for program comprehension and software maintenance. However, due to the lack of time and direct motivation, commit messages sometimes are neglected by developers. To address this problem, Jiang et al. proposed an approach (we refer to it as NMT), which leverages a neural machine translation algorithm to automatically generate short commit messages from code. The reported performance of their approach is promising, however, they did not explore why their approach performs well. Thus, in this paper, we first perform an in-depth analysis of their experimental results. We find that (1) Most of the test diffs from which NMT can generate high-quality messages are similar to one or more training diffs at the token level. (2) About 16% of the commit messages in Jiang et al.’s dataset are noisy due to being automatically generated or due to them describing repetitive trivial changes. (3) The performance of NMT declines by a large amount after removing such noisy commit messages. In addition, NMT is complicated and time-consuming. Inspired by our first finding, we proposed a simpler and faster approach, named NNGen (Nearest Neighbor Generator), to generate concise commit messages using the nearest neighbor algorithm. Our experimental results show that NNGen is over 2,600 times faster than NMT, and outperforms NMT in terms of BLEU (an accuracy measure that is widely used to evaluate machine translation systems) by 21%. Finally, we also discuss some observations for the road ahead for automated commit message generation to inspire other researchers. Zhongxin Liu 0002, Xin Xia 0001, Ahmed E. Hassan, David Lo 0001, Zhenchang Xing, Xinyu Wang 0001 |
ASE | 6 |
| 2017 | Extracting and analyzing time-series HCI data from screen-captured task videos
Lingfeng Bao, Jing Li 0034, Zhenchang Xing, Xinyu Wang 0001, Xin Xia 0001, Bo Zhou 0010 |
Empir. Softw. Eng. | 4 |
| 2017 | Language Inclusion Checking of Timed Automata with Non-ZenonessabstractGiven a timed automaton P modeling an implementation and a timed automaton S as a specification, the problem of language inclusion checking is to decide whether the language of P is a subset of that of S. It is known to be undecidable. The problem gets more complicated if non-Zenoness is taken into consideration. A run is Zeno if it permits infinitely many actions within finite time. Otherwise it is non-Zeno. Zeno runs might present in both P and S. It is necessary to check whether a run is Zeno or not so as to avoid presenting Zeno runs as counterexamples of language inclusion checking. In this work, we propose a zone-based semi-algorithm for language inclusion checking with non-Zenoness. It is further improved with simulation reduction based on LU-simulation. Though our approach is not guaranteed to terminate, we show that it does in many cases through empirical study. Our approach has been incorporated into the PAT model checker, and applied to multiple systems to show its usefulness. Xinyu Wang 0001, Jun Sun 0001, Ting Wang 0004, Shengchao Qin |
IEEE Trans. Software Eng. | 1 |
| 2017 | Improving Automated Bug Triaging with Specialized Topic ModelabstractBug triaging refers to the process of assigning a bug to the most appropriate developer to fix. It becomes more and more difficult and complicated as the size of software and the number of developers increase. In this paper, we propose a new framework for bug triaging, which maps the words in the bug reports (i.e., the term space) to their corresponding topics (i.e., the topic space). We propose a specialized topic modeling algorithm namedmulti-feature topic model (MTM)which extends Latent Dirichlet Allocation (LDA) for bug triaging.MTMconsiders product and component information of bug reports to map the term space to the topic space. Finally, we propose an incremental learning method namedTopicMinerwhich considers the topic distribution of a new bug report to assign an appropriate fixer based on the affinity of the fixer to the topics. We pairTopicMinerwith MTM (TopicMiner$^{MTM}$). We have evaluated our solution on 5 large bug report datasets including GCC, OpenOffice, Mozilla, Netbeans, and Eclipse containing a total of 227,278 bug reports. We show thatTopicMiner$^{MTM}$can achieve top-1 and top-5 prediction accuracies of 0.4831-0.6868, and 0.7686-0.9084, respectively. We also compareTopicMiner$^{MTM}$with Bugzie, LDA-KL, SVM-LDA, LDA-Activity, and Yang et al.'s approach. The results show thatTopicMiner$^{MTM}$on average improves top-1 and top-5 prediction accuracies of Bugzie by 128.48 and 53.22 percent, LDA-KL by 262.91 and 105.97 percent, SVM-LDA by 205.89 and 110.48 percent, LDA-Activity by 377.60 and 176.32 percent, and Yang et al.'s approach by 59.88 and 13.70 percent, respectively. Xin Xia 0001, David Lo 0001, Ying Ding 0005, Jafar M. Al-Kofahi, Tien N. Nguyen, Xinyu Wang 0001 |
IEEE Trans. Software Eng. | 6 |
| 2016 | Predicting Crashing Releases of Mobile ApplicationsabstractContext: The quality of mobile applications has a vital impact on their user's experience, ratings and ultimately overall success. Given the high competition in the mobile application market, i.e., many mobile applications perform the same or similar functionality, users of mobile apps tend to be less tolerant to quality issues. Xin Xia 0001, Emad Shihab, Yasutaka Kamei, David Lo 0001, Xinyu Wang 0001 |
ESEM | 5 |
| 2016 | Improving Quality of Use Case Documents through Learning and User InteractionabstractUse cases are widely used to capture user requirements based on interactions between different roles in the system. They are mostly documented in natural language and sometimes aided with graphical illustrations in the form of use case diagrams. Use cases serve as an important means to communicate among stakeholders, requirement engineers and system engineers as they are easy to understand and are produced early in the software development process. Having high quality use cases are beneficial in many ways, e.g., in avoiding inconsistency/incompleteness in requirements, in guiding system design, in generating test cases. In this work, we propose an approach to improve the quality of use cases using techniques including natural language processing and machine learning. The central idea is to discover potential problems in use cases through active learning and human interaction and provide feedbacks in natural language. We conduct user studies with a real-world use case document. The results show that our method is helpful in improving use cases with a reasonable amount of user interaction. Shuang Liu 0007, Jun Sun 0001, Bimlesh Wadhwa, Jin Song Dong 0001, Xinyu Wang 0001 |
ICECCS | 6 |
| 2016 | Time-Aware and Sparsity-Tolerant QoS Prediction Based on Collaborative FilteringabstractQuality of Services (QoS) is an important criterion to evaluate Web services recommendation system. Due to factors including various network conditions, QoS values are dynamic and time-varying. In reality, the data is too spare to fit in with traditional time series forecasting model (e.g., ARIMA). To address this crucial challenge, this paper proposes a novel time-aware and sparsity-tolerant QoS values prediction approach based on collaborative filtering. Our approach combines limited historical QoS value with collaborative filtering method to forecast the personalized QoS values. Based on the limited data, our approach firstly forecasts user-service pairs that have historical usage experiences, and then uses CF-based method to predict personalized QoS values. Finally, we combine the results from temporal forecasting with those from CF prediction as the final forecasted QoS values. The extensive experiments show that the proposed approach efficiently improves the forecasting coverage and accuracy. Weiwei Qiu, Xinyu Wang 0001, Zibin Zheng, Xiaohu Yang 0001 |
ICWS | 3 |
| 2016 | How android app developers manage power consumption?: an empirical study by mining power management commitsabstractAs Android platform becomes more and more popular, a large amount of Android applications have been developed. When developers design and implement Android applications, power consumption management is an important factor to consider since it affects the usability of the applications. Thus, it is important to help developers adopt proper strategies to manage power consumption. Interestingly, today, there is a large number of Android application repositories made publicly available in sites such as GitHub. These repositories can be mined to help crystalize common power management activities that developers do. These in turn can be used to help other developers to perform similar tasks to improve their own Android applications. Lingfeng Bao, David Lo 0001, Xin Xia 0001, Xinyu Wang 0001, Cong Tian 0001 |
MSR | 4 |
| 2016 | Automated Bug Report Field Reassignment and Refinement PredictionabstractBug fixing is one of the most important activities in software development and maintenance. Bugs are reported, recorded, and managed in bug tracking systems such as Bugzilla. In general, a bug report contains many fields, such as product, component, severity, priority, fixer, operating system (OS), and platform, which provide important information for the bug triaging and fixing process. Our previous study finds that approximately 80% of bug reports have their fields reassigned and refined at least once, and bugs with reassigned and refined fields take more time to fix than bugs with no reassigned and refined fields. Thus, automatically predicting which bug report fields get reassigned and refined could help developers to save bug fixing time. Considering that a bug report could have multiple field reassignments and refinements (e.g., the product, component, fixer, and other fields of a bug report can get reassigned and refined), in this paper, we propose a multi-label learning algorithm to predict which bug report fields might be reassigned and refined. We note that the number of bug reports with some types of reassignment and refinement (e.g., bugs whose severity fields gets reassigned and refined) is a small proportion of the whole bug report collection, indicating the class imbalance problem. Thus, we propose imbalanced ML.KNN (Im-ML.KNN), which extends ML.KNN, one of the state-of-the-art multi-label learning algorithms, to achieve better performance. Im-ML.KNN is a composite model that combines 3 multi-label classifiers built using different types of features (i.e., meta, textual, and mixed features). We evaluate our solution on 4 large bug report datasets including OpenOffice, Netbeans, Eclipse, and Mozilla containing a total of 190,558 bug reports. We show that Im-ML.KNN can achieve an average F-measure score of 0.56-0.62. We also compare Im-ML.KNN with other state-of-art methods, such as the method proposed by Lamkanfi , ML.KNN, and HOMER-NB. The results show that Im-ML.KNN, on average, improves the average F-measure scores of Lamkanfi 's method, ML.KNN, and HOMER-NB by 119.69%, 9.11%, and 161.08%, respectively. Xin Xia 0001, David Lo 0001, Emad Shihab, Xinyu Wang 0001 |
IEEE Trans. Reliab. | 4 |
| 2016 | Collective Personalized Change Classification With Multiobjective SearchabstractMany change classification techniques have been proposed to identify defect-prone changes. These techniques consider all developers' historical change data to build a global prediction model. In practice, since developers have their own coding preferences and behavioral patterns, which causes different defect patterns, a separate change classification model for each developer can help to improve performance. Jiang, Tan, and Kim refer to this problem as personalized change classification, and they propose PCC+ to solve this problem. A software project has a number of developers; for a developer, building a prediction model not only based on his/her change data, but also on other relevant developers' change data can further improve the performance of change classification. In this paper, we propose a more accurate technique named collective personalized change classification (CPCC), which leverages a multiobjective genetic algorithm. For a project, CPCC first builds a personalized prediction model for each developer based on his/her historical data. Next, for each developer, CPCC combines these models by assigning different weights to these models with the purpose of maximizing two objective functions (i.e., F1-scores and cost effectiveness). To further improve the prediction accuracy, we propose CPCC+ by combining CPCC with PCC proposed by Jiang, Tan, and Kim To evaluate the benefits of CPCC+ and CPCC, we perform experiments on six large software projects from different communities: Eclipse JDT, Jackrabbit, Linux kernel, Lucene, PostgreSQL, and Xorg. The experiment results show that CPCC+ can discover up to 245 more bugs than PCC+ (468 versus 223 for PostgreSQL) if developers inspect the top 20% lines of code that are predicted buggy. In addition, CPCC+ can achieve F1-scores of 0.60-0.75, which are statistically significantly higher than those of PCC+ on all of the six projects. Xin Xia 0001, David Lo 0001, Xinyu Wang 0001, Xiaohu Yang 0001 |
IEEE Trans. Reliab. | 3 |
| 2016 | HYDRA: Massively Compositional Model for Cross-Project Defect PredictionabstractMost software defect prediction approaches are trained and applied on data from the same project. However, often a new project does not have enough training data. Cross-project defect prediction, which uses data from other projects to predict defects in a particular project, provides a new perspective to defect prediction. In this work, we propose a HYbrid moDel Reconstruction Approach (HYDRA) for cross-project defect prediction, which includes two phases: genetic algorithm (GA) phase and ensemble learning (EL) phase. These two phases create a massive composition of classifiers. To examine the benefits of HYDRA, we perform experiments on 29 datasets from the PROMISE repository which contains a total of 11,196 instances (i.e., Java classes) labeled as defective or clean. We experiment with logistic regression as the underlying classification algorithm of HYDRA. We compare our approach with the most recently proposed cross-project defect prediction approaches: TCA+ by Nam et al., Peters filter by Peters et al., GP by Liu et al., MO by Canfora et al., and CODEP by Panichella et al. Our results show that HYDRA achieves an average F1-score of 0.544. On average, across the 29 datasets, these results correspond to an improvement in the F1-scores of 26.22 , 34.99, 47.43, 28.61, and 30.14 percent over TCA+, Peters filter, GP, MO, and CODEP, respectively. In addition, HYDRA on average can discover 33 percent of all bugs if developers inspect the top 20 percent lines of code, which improves the best baseline approach (TCA+) by 44.41 percent. We also find that HYDRA improves the F1-score of Zero-R which predict all the instances to be defective by 5.42 percent, but improves Zero-R by 58.65 percent when inspecting the top 20 percent lines of code. In practice, Zero-R can be hard to use since it simply predicts all of the instances to be defective, and thus developers have to inspect all of the instances to find the defective ones. Moreover, we notice the improvement of HYDRA over other baseline approaches in terms of F1-score and when inspecting the top 20 percent lines of code are substantial, and in most cases the improvements are significant and have large effect sizes across the 29 datasets. Xin Xia 0001, David Lo 0001, Sinno Jialin Pan, Nachiappan Nagappan, Xinyu Wang 0001 |
IEEE Trans. Software Eng. | 5 |
| 2016 | A Spatial-Temporal QoS Prediction Approach for Time-aware Web Service RecommendationabstractDue to the popularity of service-oriented architectures for various distributed systems, an increasing number of Web services have been deployed all over the world. Recently, Web service recommendation became a hot research topic, one that aims to accurately predict the quality of functional satisfactory services for each end user. Generally, the performance of Web service changes over time due to variations of service status and network conditions. Instead of employing the conventional temporal models, we propose a novel spatial-temporal QoS prediction approach for time-aware Web service recommendation, where a sparse representation is employed to model QoS variations. Specifically, we make a zero-mean Laplace prior distribution assumption on the residuals of the QoS prediction, which corresponds to a Lasso regression problem. To effectively select the nearest neighbor for the sparse representation of temporal QoS values, the geo-location of web service is employed to reduce searching range while improving prediction accuracy. The extensive experimental results demonstrate that the proposed approach outperforms state-of-art methods with more than 10% improvement on the accuracy of temporal QoS prediction for time-aware Web service recommendation. Xinyu Wang 0001, Jianke Zhu, Zibin Zheng, Wenjie Song 0002, Yuanhong Shen, Michael R. Lyu |
ACM Trans. Web | 1 |
| 2015 | A Pattern-Based Code Transformation Approach for Cloud Application MigrationabstractTo support the migration of software applications to the cloud environment, cloud venders have proposed different migration methodologies and guidelines. Yet, most of them require human intervention, involving manually performing repetitive tasks. This paper proposes a pattern-based transformation approach for cloud application migration. The approach automatically modifies the source code of an application before the migration, to make it cloud-ready, and then transforms the source code to the target code in the cloud environment. The approach is supported by three key elements (patterns, rules and templates) and a process that systematically applies these elements. First, a pattern matching engine based on a regular expression processing technique is used to identify the parts of the source code that require modification and to extract the essential tokens from the source code for code transformation. Next, transformation rules are invoked to change the source code into the target code using a template, designed according to the target cloud environment. The proposed approach has been demonstrated on 19 open-source projects, by migrating them to Amazon Web Services. Zhengong Cai, Liping Zhao 0001, Xinyu Wang 0001, Xiaohu Yang 0001, Juntao Qin, Keting Yin |
CLOUD | 3 |
| 2015 | scvRipper: Video Scraping Tool for Modeling Developers' Behavior Using Interaction DataabstractScreen-capture tool can record a user's interaction with software and application content as a stream of screenshots which is usually stored in certain video format. Researchers have used screen-captured videos to study the programming activities that the developers carry out. In these studies, screen-captured videos had to be manually transcribed to extract software usage and application content data for the study purpose. This paper presents a computer-vision based video scraping tool (called scvRipper) that can automatically transcribe a screen-captured video into time-series interaction data according to the analyst's need. This tool can address the increasing need for automatic behavioral data collection methods in the studies of human aspects of software engineering. Lingfeng Bao, Jing Li 0034, Zhenchang Xing, Xinyu Wang 0001, Bo Zhou 0010 |
ICSE (2) | 4 |
| 2015 | Who should review this change?: Putting text and file location analyses together for more accurate recommendationsabstractSoftware code review is a process of developers inspecting new code changes made by others, to evaluate their quality and identify and fix defects, before integrating them to the main branch of a version control system. Modern Code Review (MCR), a lightweight and tool-based variant of conventional code review, is widely adopted in both open source and proprietary software projects. One challenge that impacts MCR is the assignment of appropriate developers to review a code change. Considering that there could be hundreds of potential code reviewers in a software project, picking suitable reviewers is not a straightforward task. A prior study by Thongtanunam et al. showed that the difficulty in selecting suitable reviewers may delay the review process by an average of 12 days. In this paper, to address the challenge of assigning suitable reviewers to changes, we propose a hybrid and incremental approach Tie which utilizes the advantages of both Text mIning and a filE location-based approach. To do this, Tie integrates an incremental text mining model which analyzes the textual contents in a review request, and a similarity model which measures the similarity of changed file paths and reviewed file paths. We perform a large-scale experiment on four open source projects, namely Android, OpenStack, QT, and LibreOffice, containing a total of 42,045 reviews. The experimental results show that on average Tie can achieve top-1, top-5, and top-10 accuracies, and Mean Reciprocal Rank (MRR) of 0.52, 0.79, 0.85, and 0.64 for the four projects, which improves the state-of-the-art approach RevFinder, proposed by Thongtanunam et al., by 61%, 23%, 8%, and 37%, respectively. Xin Xia 0001, David Lo 0001, Xinyu Wang 0001, Xiaohu Yang 0001 |
ICSME | 3 |
| 2015 | QoS Prediction of Web Services Based on Two-Phase K-Means ClusteringabstractQoS prediction for Web services is a hot research problem in the field of services computing. As one of the most important methods for QoS prediction, Collaborative Filtering (CF) makes prediction based on the historical QoS data contributed by similar users and services. The key issue in this process is to detect the unreliable data offered by untrustworthy users, which has attracted limited attentions so far. The utilization of unreliable data decreases the prediction accuracy greatly. In this paper, we propose a novel credibility-aware QoS prediction method (named CAP) to address this problem. Our method first employs two-phase K-means clustering to identify the untrustworthy users, which clusters QoS values for untrustworthy index calculation in the first phase and clusters users according to their index in the second phase, and then predicts the missing QoS value based on the credible clustering information. The evaluation results demonstrate that CAP provides considerable improvement on the prediction accuracy compared with other approaches and is robust against various percentages of untrustworthy users. Weiwei Qiu, Zibin Zheng, Xinyu Wang 0001, Xiaohu Yang 0001 |
ICWS | 4 |
| 2015 | Experience report: An industrial experience report on test outsourcing practicesabstractNowadays, many companies contract their testing functionalities out to third-party IT outsourcing companies. This process referred to as test outsourcing is common in the industry, yet it is rarely studied in the research community. In this paper, to bridge the gap, we performed an empirical study on test outsourcing with 10 interviewees and 140 survey respondents. We investigated various research questions such as the types, the process, and the challenges of test outsourcing, and the differences between test outsourcing and in-house testing. We found customer satisfaction, tight project schedule, and domain unfamiliarity are the top-3 challenges faced by the testers. We also found there are substantial differences between test outsourcing and in-house testing. For example, most of the test outsourcing projects focused on functional test, and rarely did unit test. Also, due to privacy policies of client companies, test outsourcing is performed mainly on the binary distributions of the projects, and rarely the testers can touch the source code. Our findings have implications for future research. For instance, as a starting point, researchers can create automated program comprehension tools which work on binary distributions of projects to help testers better design effective test cases. Xin Xia 0001, David Lo 0001, Pavneet Singh Kochhar, Zhenchang Xing, Xinyu Wang 0001, Shanping Li |
ISSRE | 5 |
| 2015 | Tracking and Analyzing Cross-Cutting Activities in Developers' Daily Work (N)abstractDevelopers use many software applications to process large amounts of diverse information in their daily work. The information is usually meaningful beyond the context of an application that manages it. However, as different applications function independently, developers have to manually track, correlate and re-find cross-cutting information across separate applications. We refer to this difficulty as information fragmentation problem. In this paper, we present ActivitySpace, an interapplication activity tracking and analysis framework for tackling information fragmentation problem in software development. ActivitySpace can monitor the developer's activity in many applications at a low enough level to obviate application-specific support while accounting for the ways by which low-level activity information can be effectively aggregated to reflect the developer's activity at higher-level of abstraction. A system prototype has been implemented on Microsoft Windows. Our preliminary user study showed that the ActivitySpace system is promising in supporting interapplication information needs in developers' daily work. Lingfeng Bao, Zhenchang Xing, Xinyu Wang 0001, Bo Zhou 0010 |
ASE | 3 |
| 2015 | ActivitySpace: A Remembrance Framework to Support Interapplication Information NeedsabstractDevelopers' daily work produces, transforms, and communicates cross-cutting information across applications, including IDEs, emails, Q&A sites, Twitter, and many others. However, these applications function independently of one another. Even though each application has their own effective information management mechanisms, cross-cutting information across separate applications creates a problem of information fragmentation, forcing developers to manually track, correlate, and re-find cross-cutting information across applications. In this paper, we present ActivitySpace, a remembrance framework that unobtrusively tracks and analyze a developer's daily work in separate applications, and provides various semantic and episodic UIs that help developers correlate and re-find cross-cutting information across applications based on information content, time and place of his/her activities. Through a user study of 8 participants, we demonstrate how ActivitySpace helps to tackle information fragmentation problem in developers' daily work. Lingfeng Bao, Deheng Ye, Zhenchang Xing, Xin Xia 0001, Xinyu Wang 0001 |
ASE | 5 |
| 2015 | Reverse engineering time-series interaction data from screen-captured videosabstractIn recent years the amount of research on human aspects of software engineering has increased. Many studies use screen-capture software (e.g., Snagit) to record developers' behavior as they work on software development tasks. The recorded task videos capture direct information about which activities the developers carry out with which content and in which applications during the task. Such behavioral data can help researchers and practitioners understand and improve software engineering practices from human perspective. However, extracting time-series interaction data (software usage and application content) from screen-captured videos requires manual transcribing and coding of videos, which is tedious and error-prone. In this paper we present a computer-vision based video scraping technique to automatically reverse-engineer time-series interaction data from screen-captured videos. We report the usefulness, effectiveness and runtime performance of our video scraping technique using a case study of the 29 hours task videos of 20 developers in the two development tasks. Lingfeng Bao, Jing Li 0034, Zhenchang Xing, Xinyu Wang 0001, Bo Zhou 0010 |
SANER | 4 |
| 2015 | Automatic, high accuracy prediction of reopened bugs
Xin Xia 0001, David Lo 0001, Emad Shihab, Xinyu Wang 0001, Bo Zhou 0010 |
Autom. Softw. Eng. | 4 |
| 2015 | ELBlocker: Predicting blocking bugs with ensemble imbalance learning
Xin Xia 0001, David Lo 0001, Emad Shihab, Xinyu Wang 0001, Xiaohu Yang 0001 |
Inf. Softw. Technol. | 4 |
| 2015 | TagCombine: Recommending Tags to Contents in Software Information Sites
Xinyu Wang 0001, Xin Xia 0001, David Lo 0001 |
J. Comput. Sci. Technol. | 1 |
| 2015 | Dual analysis for recommending developers to resolve bugsabstractAbstract Bug resolution refers to the activity that developers perform to diagnose, fix, test, and document bugs during software development and maintenance. Given a bug report, we would like to recommend the set of bug resolvers that could potentially contribute their knowledge to fix it. We refer to this problem as developer recommendation for bug resolution. In this paper, we propose a new and accurate method named DevRec for the developer recommendation problem. DevRec is a composite method that performs two kinds of analysis: bug reports based analysis (BR‐Based analysis) and developer based analysis (D‐Based analysis). We evaluate our solution on five large bug report datasets including GNU Compiler Collection, OpenOffice, Mozilla, Netbeans, and Eclipse containing a total of 107,875 bug reports. We show that DevRec could achieve recall@5 and recall@10 scores of 0.4826–0.7989, and 0.6063–0.8924, respectively. The results show that DevRec on average improves recall@5 and recall@10 scores of Bugzie by 57.55% and 39.39%, outperforms DREX by 165.38% and 89.36%, and outperforms NonTraining by 212.39% and 168.01%, respectively. Moreover, we evaluate the stableness of DevRec with different parameters, and the results show that the performance of DevRec is stable for a wide range of parameters. Copyright © 2015 John Wiley & Sons, Ltd. Xin Xia 0001, David Lo 0001, Xinyu Wang 0001, Bo Zhou 0010 |
J. Softw. Evol. Process. | 3 |
| 2015 | Network-Aware QoS Prediction for Service Composition Using GeolocationabstractQoS-aware web service composition intends to maximize the global QoS of a composite service with local and global QoS constraints while selecting the independent candidate services from different providers. With the increasing number of candidate services emerging from the Internet, the network delays often greatly affect the performance of the composite service, which are usually difficult to be collected beforehand. One remedy is to predict them for the composition. However, there are some new issues in network delay predictions for the composition, including prediction accuracy, on-demand measures to new services and runtime overhead. In this paper, we try to tackle these critical challenges by taking advantage of the geolocations of candidate services. We first describe a network-aware service composition problem. Then, we present a novel geolocation-based NQoS prediction and reprediction approach for service composition. Furthermore, a geolocation-based service selection algorithm is presented to make use of our NQoS prediction approach for the composition. We have conducted extensive experiments on the real-world data set collected from PlanetLab. Comparative experimental results demonstrate that our approach improves the prediction accuracy and predictability of the NQoS and reduces the runtime overheads in predicting the composition. Xinyu Wang 0001, Jianke Zhu, Yuanhong Shen |
IEEE Trans. Serv. Comput. | 1 |
| 2015 | A Systematic Study on Explicit-State Non-Zenoness Checking for Timed AutomataabstractZeno runs, where infinitely many actions occur within finite time, may arise in Timed Automata models. Zeno runs are not feasible in reality and must be pruned during system verification. Thus it is necessary to check whether a run is Zeno or not so as to avoid presenting Zeno runs as counterexamples during model checking. Existing approaches on non-Zenoness checking include either introducing an additional clock in the Timed Automata models or additional accepting states in the zone graphs. In addition, there are approaches proposed for alternative timed modeling languages, which could be generalized to Timed Automata. In this work, we investigate the problem of non-Zenoness checking in the context of model checking LTL properties, not only evaluating and comparing existing approaches but also proposing a new method. To have a systematic evaluation, we develop a software toolkit to support multiple non-Zenoness checking algorithms. The experimental results show the effectiveness of our newly proposed algorithm, and demonstrate the strengths and weaknesses of different approaches. Ting Wang 0004, Jun Sun 0001, Xinyu Wang 0001, Yang Liu 0003, Yuanjie Si, Jin Song Dong 0001, Xiaohu Yang 0001, Xiaohong Li 0001 |
IEEE Trans. Software Eng. | 3 |
| 2014 | Build Predictor: More Accurate Missed Dependency Prediction in Build Configuration FilesabstractSoftware build system (e.g., Make) plays an important role in compiling human-readable source code into an executable program. One feature of build system such as make-based system is that it would use a build configuration file (e.g., Make file) to record the dependencies among different target and source code files. However, sometimes important dependencies would be missed in a build configuration file, which would cause additional debugging effort to fix it. In this paper, we propose a novel algorithm named Build Predictor to mine the missed dependncies. We first analyze dependencies in a build configuration file (e.g., Make file), and establish a dependency graph which captures various dependencies in the build configuration file. Next, considering that a build configuration file is constructed based on the source code dependency relationship, we establish a code dependency graph (code graph). Build Predictor is a composite model, which combines both dependency graph and code graph, to achieve a high prediction performance. We collected 7 build configuration files from various open source projects, which are Zlib, putty, vim, Apache Portable Runtime (APR), memcached, nginx, and Tengine, to evaluate the effectiveness of our algorithm. The experiment results show that compared with the state-of-the-art link prediction algorithms used by Xia et al., our Build Predictor achieves the best performance in predicting the missed dependencies. Bo Zhou 0010, Xin Xia 0001, David Lo 0001, Xinyu Wang 0001 |
COMPSAC | 4 |
| 2014 | Automatic Defect Categorization Based on Fault Triggering ConditionsabstractDue to the complexity of software systems, defects are inevitable. Understanding the types of defects could help developers to adopt measures in current and future software releases. In practice, developers often categorize defects into various types. One common categorization is based on fault triggers of defects. Fault trigger is a set of conditions which activate a defect (i.e., Fault) and propagate the defect into a failure. In general, there are two types of defect based fault triggering conditions, Bohrbug and Mandelbug. Bohrbug refers to a bug which can be easily isolated, and its activation and error propagation is simple. Mandelbug refers to a bug whose activation and/or error propagation is complex (e.g., A time lag between the fault activation and the failure occurrence). With these category labels, developers can better perform post-mortem analysis to identify common characteristic of the defects, and design specific fault-tolerance mechanisms. However, in most software systems, these category labels are often unavailable. To address this problem, in this paper, we propose a text mining solution which categorize defects into fault trigger categories by analyzing the natural-language description of bug reports. A previous study shows that Mandelbug is more complex and needs more time to be fixed. Thus, to better identify Mandelbugs, we propose a novel Fuzzy Set based Feature Selection algorithm named USES, which selects the features (i.e., Terms) which have high ability to distinguish Mandelbugs from Bohrbugs. USES first caches a set of terms based on their fuzzy affinity scores to Bohrbug or Mandelbug. Next, it iterates many times, and in each iteration, it selects a subset of terms, and builds a classifier on these terms. USES selects the classifier and the terms which could achieve the best performance on a training data. We evaluate our solution on 4 datasets including Linux, Mysql, Apache HTTPD, and AXIS containing a total of 809 bug reports. We show that USES with naive Bayes multinomial achieves the best performance, it achieves Mandelbug F-measure scores of 0.298 - 0.615. We also compare USES with other baseline approaches. The results show that USES on average improves Mandelbug F-measure scores of the best performing baseline by 12.3%. Xin Xia 0001, David Lo 0001, Xinyu Wang 0001, Bo Zhou 0010 |
ICECCS | 3 |
| 2014 | Cross-language bug localizationabstractBug localization refers to the process of identifying source code files that contain defects from textual descriptions in bug reports. Existing bug localization techniques work on the assumption that bug reports, and identifiers and comments in source code files, are written in the same language (i.e., English). However, software users from non-English speaking countries (e.g., China) often use their native languages (e.g., Chinese) to write bug reports. For this setting, existing studies on bug localization would not work as the terms that appear in the bug reports do not appear in the source code. We refer to this problem as cross-language bug localization. In this paper, we propose a cross-language bug localization algorithm named CrosLocator, which is based on language translation. Xin Xia 0001, David Lo 0001, Xingen Wang, Chenyi Zhang 0002, Xinyu Wang 0001 |
ICPC | 5 |
| 2014 | Towards more accurate content categorization of API discussionsabstractNowadays, software developers often discuss the usage of various APIs in online forums. Automatically assigning pre-defined semantic categorizes to API discussions in these forums could help manage the data in online forums, and assist developers to search for useful information. We refer to this process as content categorization of API discussions. To solve this problem, Hou and Mo proposed the usage of naive Bayes multinomial, which is an effective classification algorithm. Bo Zhou 0010, Xin Xia 0001, David Lo 0001, Cong Tian 0001, Xinyu Wang 0001 |
ICPC | 5 |
| 2014 | Automatic early defects detection in use case documentsabstractUse cases, as the primary techniques in the user requirement analysis, have been widely adopted in the requirement engineering practice. As developed early, use cases also serve as the basis for function requirement development, system design and testing. Errors in the use cases could potentially lead to problems in the system design or implementation. It is thus highly desirable to detect errors in use cases. Automatically analyzing use case documents is challenging primarily because they are written in natural languages. In this work, we aim to achieve automatic defect detection in use case documents by leveraging on advanced parsing techniques. In our approach, we first parse the use case document using dependency parsing techniques. The parsing results of each use case are further processed to form an activity diagram. Lastly, we perform defect detection on the activity diagrams. To evaluate our approach, we have conducted experiments on 200+ real-world as well as academic use cases. The results show the effectiveness of our method. Shuang Liu 0007, Jun Sun 0001, Yang Liu 0003, Yue Zhang 0004, Bimlesh Wadhwa, Jin Song Dong 0001, Xinyu Wang 0001 |
ASE | 7 |
| 2014 | Are Timed Automata Bad for a Specification Language? Language Inclusion Checking for Timed Automata
Ting Wang 0004, Jun Sun 0001, Yang Liu 0003, Xinyu Wang 0001, Shanping Li |
TACAS | 4 |
| 2014 | Reliability-Based Design Optimization for Cloud MigrationabstractThe on-demand use, high scalability, and low maintenance cost nature of cloud computing have attracted more and more enterprises to migrate their legacy applications to the cloud environment. Although the cloud platform itself promises high reliability, ensuring high quality of service is still one of the major concerns, since the enterprise applications are usually complicated and consist of a large number of distributed components. Thus, improving the reliability of an application during cloud migration is a challenging and critical research problem. To address this problem, we propose a reliability-based optimization framework, named ROCloud, to improve the application reliability by fault tolerance. ROCloud includes two ranking algorithms. The first algorithm ranks components for the applications that all their components will be migrated to the cloud. The second algorithm ranks components for hybrid applications that only part of their components are migrated to the cloud. Both algorithms employ the application structure information as well as the historical reliability information for component ranking. Based on the ranking result, optimal fault-tolerant strategy will be selected automatically for the most significant components with respect to their predefined constraints. The experimental results show that by refactoring a small number of error-prone components and tolerating faults of the most significant components, the reliability of the application can be greatly improved. Weiwei Qiu, Zibin Zheng, Xinyu Wang 0001, Xiaohu Yang 0001, Michael R. Lyu |
IEEE Trans. Serv. Comput. | 3 |
| 2013 | Software Internationalization and Localization: An Industrial ExperienceabstractSoftware internationalization and localization are important steps in distributing and deploying software to different regions of the world. Internationalization refers to the process of reengineering a system such that it could support various languages and regions without further modification. Localization refers to the process of adapting an internationalized software for a specific language or region. Due to various reasons, many large legacy systems did not consider internationalization and localization at the early stage of development. In this paper, we present our experience on, and propose a process along with tool supports for software internationalization and localization. We reengineer a large legacy commercial financial system called PAM of State Street Corporation, which is written in C/C++, containing 30 different modules, and more than 5 millions of lines of source code. We propose a source code ranker that recovers important source code to be analyzed. Based on this code, we extract general patterns of the source code that need to be reengineered for internationalization. We divide the patterns into 2 categories: convertible patterns and suspicious patterns. To locate the source code that need to be modified, we develop an automated tool I18nLocator, that consumes these patterns and outputs the locations that match the patterns. The source codes matching the convertible patterns are automatically converted, and those matching the suspicious patterns are converted by developers considering the context of the corresponding codes. For localization, we extract hard-coded strings, translate them, and store them into resource data files. Out of the 504 thousands of lines of source code that are modified using our proposed approach, we can automatically modify 79.76% of them, saving much valuable developers' time. The quality of the resultant system is also good. The number of bugs per lines of code modified found during user acceptance test and deployment to the production environment is 0.000218 bugs/LOC. Xin Xia 0001, David Lo 0001, Xinyu Wang 0001, Bo Zhou 0010 |
ICECCS | 4 |
| 2013 | Geographic Location-Based Network-Aware QoS Prediction for Service CompositionabstractQoS-aware service composition intends to maximize the global QoS of a composite service while selecting candidate services from different providers with local and global QoS constraints. With more and more candidate services emerging from all over the world, the network delays often greatly impact the performance of the composite service, which are usually not easy to be collected before the composition. One remedy is to predict them for the composition. However, new issues occur in predicting network delay for the composition, including prediction accuracy and on-demand measures to new services, which affect the performance of network-aware composite services. To solve these critical challenges, in this paper, we take advantage of the geographic location information of candidate services. We propose a network-aware QoS (NQoS) model for the composite service. Based on that, we present a novel geographic location-based NQoS prediction approach before composition, and a NQoS re-prediction approach during the execution of the composite service. Extensive experiments are conducted on the real-world dataset collected from PlanetLab. Comparative experiment results reveal our approach facilitates to improve the prediction accuracy and predictability of the NQoS values, and increase global NQoS of the composite service while ensuring its reliability constraints. Yuanhong Shen, Jianke Zhu, Xinyu Wang 0001, Xiaohu Yang 0001, Bo Zhou 0010 |
ICWS | 3 |
| 2013 | An efficient fault-tolerant scheduling algorithm for periodic real-time tasks in heterogeneous platformsabstractFault-tolerant real-time scheduling algorithm is one of the most important means to ensure the timeliness and high availability characteristics of fault-tolerant real-time systems. Existing scheduling models for periodic real-time task in heterogeneous platforms typically require the number of processors in the systems to be determined in advance; hence prohibit the scalability and the performance of distributed systems. The algorithms based on these models also require a large number of schedubility tests which lead to long execution time. To address these problems, we propose a primary and backup replica partition based fault-tolerant scheduling algorithm (PBPFT) based on a scalable scheduling model using heterogeneity that does not have to determine the scale of the distributed system in advance. The PBPFT approach also takes advantage of backup copy overlapping and phasing delay techniques to minimize system redundancy, and adopts the processor grouping technique to simplify algorithm complexity. Comprehensive experiments are conducted, and the results validate high resource utilization and commendable performance of our proposed approach. Weiwei Qiu, Zibin Zheng, Xinyu Wang 0001, Xiaohu Yang 0001 |
ISORC | 3 |
| 2013 | Combining model checking and testing with an application to reliability prediction and distributionabstractTesting provides a probabilistic assurance of system correctness. In general, testing relies on the assumptions that the system under test is deterministic so that test cases can be sampled. However, a challenge arises when a system under test behaves non-deterministiclly in a dynamic operating environment because it will be unknown how to sample test cases. Lin Gui 0002, Jun Sun 0001, Yang Liu 0003, Yuanjie Si, Jin Song Dong 0001, Xinyu Wang 0001 |
ISSTA | 6 |
| 2013 | Tag recommendation in software information sitesabstractNowadays, software engineers use a variety of online media to search and become informed of new and interesting technologies, and to learn from and help one another. We refer to these kinds of online media which help software engineers improve their performance in software development, maintenance and test processes as software information sites. It is common to see tags in software information sites and many sites allow users to tag various objects with their own words. Users increasingly use tags to describe the most important features of their posted contents or projects. In this paper, we propose TagCombine, an automatic tag recommendation method which analyzes objects in software information sites. TagCombine has 3 different components: 1. multilabel ranking component which considers tag recommendation as a multi-label learning problem; 2. similarity based ranking component which recommends tags from similar objects; 3. tag-term based ranking component which considers the relationship between different terms and tags, and recommends tags after analyzing the terms in the objects. We evaluate TagCombine on 2 software information sites, StackOverflow and Freecode, which contain 47,668 and 39,231 text documents, respectively, and 437 and 243 tags, respectively. Experiment results show that for StackOverflow, our TagCombine achieves recall@5 and recall@10 scores of 0.5964 and 0.7239, respectively; For Freecode, it achieves recall@5 and recall@10 scores of 0.6391 and 0.7773, respectively. Moreover, averaging over StackOverflow and Freecode results, we improve TagRec proposed by Al-Kofahi et al. by 22.65% and 14.95%, and the tag recommendation method proposed by Zangerle et al. by 18.5% and 7.35% for recall@5 and recall@10 scores. Xin Xia 0001, David Lo 0001, Xinyu Wang 0001, Bo Zhou 0010 |
MSR | 3 |
| 2013 | Deriving problem frames from business process and object analysis modelsabstractAbstract While Problem Frames have become a useful approach for requirements analysis, little research has been made to explore how to derive them from a complex problem context. The purpose of this paper is to propose such an approach. The proposed approach consists of three steps to drive the development of Problem Frames. In the first step, business process models are developed to capture the behavioural view of the problem context. In the second step, object analysis models are used to capture the structural view of the problem context. Together, these two views collectively and adequately capture the early context knowledge. These two types of model will then be used in the third step to construct context diagrams and derive Problem Frames. A complex real‐world problem – equity trading problem – is used to illustrate this approach. Xinyu Wang 0001, Jie Sun 0017, Xiaohu Yang 0001, Ye Wang 0012, Shanping Li, Aleksander J. Kavs |
Expert Syst. J. Knowl. Eng. | 1 |
| 2013 | PLANT: A pattern language for transforming scenarios into requirements models
Ye Wang 0012, Liping Zhao 0001, Xinyu Wang 0001, Xiaohu Yang 0001, Sam Supakkul |
Int. J. Hum. Comput. Stud. | 3 |
| 2013 | Proqrass: a Process-Based Approach to Quality Requirements Analysis for Service SystemsabstractSatisfying quality requirements for service systems is quite crucial and challenging. However, there is a gap between quality requirements analysis and quality requirements design in service systems. In order to bridge this gap, we provide a systematic approach — ProQRASS — to model and analyze quality requirements of services based on business processes, which are frequently used to model services. ProQRASS consists of five steps: (1) constructing business process models; (2) associating quality requirements with functional requirements of services in business process models; (3) identifying potential conflicts and cooperation among quality requirements; (4) filtering out false conflicts and cooperation; (5) resolving conflicts among quality requirements. We illustrate ProQRASS through an equity trading service system. We also evaluate its capability through the comparison with other approaches and conduct a usability investigation involving industrial experts. The result shows that ProQRASS is effective and useful. Ye Wang 0012, Xiaohu Yang 0001, Xinyu Wang 0001, Aleksander J. Kavs |
Int. J. Softw. Eng. Knowl. Eng. | 3 |
| 2012 | More Anti-chain Based Refinement Checking
Ting Wang 0004, Songzheng Song, Jun Sun 0001, Yang Liu 0003, Jin Song Dong 0001, Xinyu Wang 0001, Shanping Li |
ICFEM | 6 |
| 2012 | Satisfying quality requirements in the design of a partition-based, distributed stock trading systemabstractSUMMARY Although quality requirements (QRs) have become a major drive in today's software development, there have been very few real‐world examples in the literature that demonstrate how to meet these requirements. This paper presents such an example. Specifically, the paper describes the design of a partition‐based distributed stock trading service system that satisfies a set of QRs related to resource utilization, performance, scalability and availability. The paper evaluates this design through detailed experiments and discusses some design alternatives and the lessons learned. Central to this design are a static load distribution strategy and a dynamic load balancing strategy. The first strategy is to achieve an initial balanced workload on the system's server cluster during the system initialization time, whereas the second strategy is to maintain this balanced workload throughout the system execution time. Together, these two strategies work in unison to ensure that the server resources are efficiently utilized; the user requests are processed with the required speed; the application is partitioned with sufficient room to scale; and the system is highly available. Copyright © 2011 John Wiley & Sons, Ltd. Xiaohu Yang 0001, Liping Zhao 0001, Xinyu Wang 0001, Ye Wang 0012, Jie Sun 0017, Albert Jerry Cristoforo |
Softw. Pract. Exp. | 3 |
| 2011 | Afuzzy formal concept analysis based approach for business component identificationabstractIdentifying business components is the basis of component-based software engineering. Many approaches, including cluster analysis and concept analysis, have been proposed to identify components from business models. These approaches classify business elements into a set of components by analyzing their properties. However, most of them do not consider the difference in their properties for the business elements, which may decrease the accuracy of the identification results. Furthermore, component identification by partitioning business elements cannot reflect which features are responsible for the generation of certain results. This paper deals with a new approach for component identification from business models using fuzzy formal concept analysis. First, the membership between business elements and their properties is quantified and transformed into a fuzzy formal context, from which the concept lattice is built using a refined incremental algorithm. Then the components are selected from the concepts according to the concept dispersion and distance. Finally, the effectiveness and efficiency are validated by applying our approach in the real-life cases and experiments. Zhengong Cai, Xiaohu Yang 0001, Xinyu Wang 0001, Aleksander J. Kavs |
J. Zhejiang Univ. Sci. C | 3 |
| 2010 | A QoS ontology cooperated with feature models for non-functional requirements elicitationabstractNon-functional requirements (NFRs) are often regarded as the key success factor in building high quality software. However, most of the requirements elicitation methods are centered on discovering functional requirements only. This paper presents a novel NFRs elicitation approach aiming at empowering requirements analysts with a knowledge repository that aids to the process of capturing precise NFRs during elicitation interviews. The knowledge repository is composed of two layers: the upper layer of feature models and the lower layer of the QoS ontology. The case study of the stock trading domain illustrates the relationships and cooperations of the two layers. Ting Wang 0004, Yuanjie Si, Xiao Xuan, Xinyu Wang 0001, Xiaohu Yang 0001, Shanping Li, Aleksander J. Kavs |
Internetware | 4 |
| 2010 | Minimal role mining method for Web service compositionabstractWeb service composition is a low cost and efficient way to leverage the existing resource and implementation. In current Web service composition implementations, the issue of how to define the role for a new composite Web service has been little addressed. Adjusting the access control policy for a new composite Web service always causes substantial administration overhead from the security administrator. Furthermore, the distributed nature of Web service based applications makes traditional role mining methods obsolete. In this paper, we analyze the minimal role mining problem for Web service composition, and prove that this problem is NP-complete. We propose a sub-optimal greedy algorithm based on the analysis of necessary role mapping for interoperation across multiple domains. Simulation shows the effectiveness of our algorithm, and compared to the existing methods, our algorithm has significant performance advantages. We also demonstrate the practical application of our method in a real agent based Web service system. The results show that our method could find the minimal role mapping efficiently. Jianling Sun, Xinyu Wang 0001, Yuanjie Si |
J. Zhejiang Univ. Sci. C | 3 |
| 2009 | Business process recovery for system maintenance - An empirical approachabstractUnderstanding business processes is an important step for software maintenance. The approaches for recovering business processes are mostly based on source code analysis, including static analysis and dynamic analysis. All these methods are proved to be effective in some specific situations. However, they are challenged when facing enterprise legacy systems which implement complex business processes triggered by the external actors. In this paper, we introduce a new business process recovery approach that combines the requirement reacquisition with dynamic and static program analysis methods. The approach has been applied to the maintenance of an equity trading system to prove its efficiency. Zhengong Cai, Xiaohu Yang 0001, Xinyu Wang 0001 |
ICSM | 3 |
| 2009 | Preprocessing the noise in legacy user permission assignment data for role mining - An industrial practiceabstractLittle is known about how to preprocess the noise in legacy access control data when migrating to the Role-based Access Control model. This paper presents an experience report on the noise preprocess method of the legacy access control data of several financial systems. The main goal of this project is to improve the quality of the roles obtained via role mining. Jianling Sun, Xinyu Wang 0001, Yuanjie Si |
ICSM | 3 |
| 2008 | Connectivity Based Greedy Algorithm with Multipoint Relaying for Mobile Ad Hoc NetworksabstractIt is proved that multipoint relaying (MPR) is an efficient strategy for on-the-fly broadcasting in mobile ad hoc networks . Upon receiving a flooding packet, each relaying node designated by the packet selects nodes from its neighbors for next packet relay. All the selected relaying nodes finally form a connected dominating set (CDS) for the network. However, computing a minimum size CDS is NP hard. Several existing algorithms use the idea of MPR to reduce the size of the CDS. In this paper, we observed two drawbacks in the existing algorithms and proposed a new greedy algorithm based on node connectivity. Also, a connectivity based rule based on the new greedy algorithm is proposed to reduce the CDS size of Wupsilas EMPR . Both theoretical analysis and experiment results show that the new greedy algorithm outperforms the existing broadcasting algorithms in the terms of number of relaying nodes. Yongsheng Fu, Xinyu Wang 0001, Shanping Li |
MSN | 2 |
| 2007 | Experience Report: Reengineering Standalone System into the Service-Partition Distributed EnvironmentabstractMany enterprise systems were developed in standalone model since the end of the last century. Reengineering standalone systems into distributed environment has become a critical problem, as the standalone software can not meet the requirements of the new market. Methods have been proposed on related topics based on two classical distributed solutions, the symmetrical model and the unsymmetrical model. In this paper we report the experience in reengineering a standalone financial trading system into the service-partition distributed environment, which offers distinct advantages on horizontal scalability and performance over two classical distributed solutions. Xinyu Wang 0001, Jianling Sun, Xiaohu Yang 0001 |
ICSM | 1 |
| 2006 | Reengineering standalone C++ legacy systems into the J2EE partition distributed environmentabstractMany enterprise systems are developed in C++ language and most of them are standalone. Because the standalone software can not follow the new market environment, reengineering the standalone legacy systems into distributed environment becomes a critical problem. Some methods have been proposed on related topics such as design recovery, the identification of the component, modeling the interfaces of components and components allocation. Up to now, there does not exist a reengineering process for partition distributed environment, which will offer distinct advantages on horizontal scalability and performance over normal distributed solutions. This paper presents a new process to reengineer C++ legacy systems into the J2EE partition distributed environment. The process consists of four steps: translation from C++ to Java code; extraction of components using the cluster technology; modeling component interfaces and partition of the components in J2EE distribute environment. It has been applied to a large equity-trading legacy system which has proved to be successful. Xinyu Wang 0001, Jianling Sun, Xiaohu Yang 0001, Zhijun He 0001, Srinivasa R. Maddineni |
ICSE | 1 |
| 2006 | Data Based Application Partitioning and Workload Balance in Distributed EnvironmentabstractMany application partitioning methods have been proposed based on different functional modules in distributed environment to gain efficient use of resources, improved performance and high scalability. This paper introduces popular application partitioning architectures, and presents a different partitioning method and an on-line workload balance algorithm from a new perspective: runtime data, called data based application partitioning. This architecture benefits applications with higher performance, scalability and dynamic workload balancing. A financial trading system reengineered from J2EE standalone environment into data partitioning distributed environment gives a nice proof. Xiaohu Yang 0001, Ming Mao, Xinyu Wang 0001 |
ICSEA | 3 |