EDBT 2026 Demo / reviewers in the wild / expert
Feng Zhang 0001
dblp:48/1294-1
· DBLP profile ↗
17ranked-venue papers
8as first author
2since 2021 · last 2024
0000-0001-9805-395XORCID · conflict
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 16 · 8 first-author · 1 since 2021Databases, data management, data science and information retrieval · 2 · 1 first-author · 1 since 2021
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.
| Software engineering, system software, and programming languages
4 papers |
Empirical software engineering · 74% Software maintenance and evolution · 26% | |
| Databases, data mining, and information retrieval
2 papers |
Distributed and cloud data management · 70% Information retrieval · 30% |
Topics — the 9 heaviest of 10, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Empirical software engineering › mining software repositories
defect prediction |
0.5 | 2 | 2017 | The Use of Summation to Aggregate Software Metrics Hinders the Performance of Defect Prediction Models · IEEE Trans. Software Eng. 2017 Cross-project defect prediction using a connectivity-based unsupervised classifier · ICSE 2016 |
Empirical software engineering › mining software repositories › app store mining
app review analysis |
0.5 | 1 | 2021 | Too Many User-Reviews! What Should App Developers Look at First? · IEEE Trans. Software Eng. 2021 |
Empirical software engineering
mining software repositories |
0.5 | 1 | 2021 | Too Many User-Reviews! What Should App Developers Look at First? · IEEE Trans. Software Eng. 2021 |
Software maintenance and evolution › software configuration management
software release management |
0.5 | 1 | 2021 | Too Many User-Reviews! What Should App Developers Look at First? · IEEE Trans. Software Eng. 2021 |
Information retrieval › query reformulation
query expansion |
0.3 | 1 | 2018 | Expanding Queries for Code Search Using Semantically Related API Class-names · IEEE Trans. Software Eng. 2018 |
Software maintenance and evolution
code search |
0.3 | 1 | 2018 | Expanding Queries for Code Search Using Semantically Related API Class-names · IEEE Trans. Software Eng. 2018 |
Empirical software engineering › mining software repositories › defect prediction
defect prediction models |
0.3 | 1 | 2017 | The Use of Summation to Aggregate Software Metrics Hinders the Performance of Defect Prediction Models · IEEE Trans. Software Eng. 2017 |
Empirical software engineering › mining software repositories › defect prediction
cross-project defect prediction |
0.2 | 1 | 2016 | Cross-project defect prediction using a connectivity-based unsupervised classifier · ICSE 2016 |
Empirical software engineering › mining software repositories › defect prediction
unsupervised defect prediction |
0.2 | 1 | 2016 | Cross-project defect prediction using a connectivity-based unsupervised classifier · ICSE 2016 |
Methods — techniques the papers use, named apart from their topics
dynamic graph construction and execution · 0.8semantic relatedness of identifiers · 0.7topic modeling · 0.5empirical study · 0.5statistical analysis · 0.3correlation analysis · 0.3connectivity-based clustering · 0.2
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2024 | Xorbits: Automating Operator Tiling for Distributed Data ScienceabstractData science pipelines commonly utilize dataframe and array operations for tasks such as data preprocessing, analysis, and machine learning. The most popular tools for these tasks are pandas and NumPy. However, these tools are limited to executing on a single node, making them unsuitable for processing large-scale data. Several systems have attempted to distribute data science applications to clusters while maintaining interfaces similar to single-node libraries, enabling data scientists to scale their workloads without significant effort. However, existing systems often struggle with processing large datasets due to Out-of-Memory (OOM) problems caused by poor data partitioning. To overcome these challenges, we develop Xorbits, a high-performance, scalable data science framework specifically designed to distribute data science workloads across clusters while retaining familiar APIs. The key differentiator of Xorbits is its ability to dynamically switch between graph construction and graph execution. Xorbits has been successfully deployed in production environments with up to 5k CPU cores. Its applications span various domains, including user behavior analysis and recommendation systems in the e-commerce sector, as well as credit assessment and risk management in the finance industry. Users can easily scale their data science workloads by simply changing the import line of their pandas and NumPy code. Our experiments demonstrate that Xorbits can effectively process very large datasets without encountering OOM or data-skewing problems. Over the fastest state-of-the-art solutions, Xorbits achieves an impressive 2.66 × speedup on average. In terms of API coverage, Xorbits attains a compatibility rate of 96.7%, surpassing the fastest framework by an impressive margin of 60 percentage points. Xorbits is available at https://github.com/xorbitsai/xorbits. Weizheng Lu, Kaisheng He, Xuye Qin, Xia Liao, Feng Zhang 0001, Yueguo Chen, Xiaoyong Du 0001 |
ICDE | 8 |
| 2021 | Too Many User-Reviews! What Should App Developers Look at First?abstractDue to the rapid growth in the number of mobile applications (apps) in the past few years, succeeding in mobile app markets has become ruthless. Online app markets, such as Google Play Store, let users rate apps on a five-star scale and leave feedback. Given the importance of high star-ratings to the success of an app, it is crucial to help developers find the key topics of user-reviews that are significantly related to star-ratings of a given category. Having considered the key topics of user-reviews, app developers can narrow down their effort to the user-reviews that matter to be addressed for receiving higher star-ratings. We study 4,193,549 user-reviews of 623 Android apps that were collected from Google Play Store in ten different categories. The results show that few key topics commonly exist across categories, and each category has a specific set of key topics. We also evaluated the identified key topics with respect to the changes that are made to each version of the apps for 19 months. We observed, for 77 percent of the apps, considering the key topics in the next versions shares a significant relationship with increases in star-ratings. Ehsan Noei, Feng Zhang 0001, Ying Zou 0001 |
IEEE Trans. Software Eng. | 2 |
| 2019 | An empirical study on the issue reports with questions raised during the issue resolving process
Daniel Alencar da Costa, Feng Zhang 0001, Ying Zou 0001 |
Empir. Softw. Eng. | 3 |
| 2019 | An empirical study on the teams structures in social coding using GitHub projects
Mariam El Mezouar, Feng Zhang 0001, Ying Zou 0001 |
Empir. Softw. Eng. | 2 |
| 2019 | Towards prioritizing user-related issue reports of mobile applications
Ehsan Noei, Feng Zhang 0001, Shaohua Wang 0002, Ying Zou 0001 |
Empir. Softw. Eng. | 2 |
| 2018 | Are tweets useful in the bug fixing process? An empirical study on Firefox and Chrome
Mariam El Mezouar, Feng Zhang 0001, Ying Zou 0001 |
Empir. Softw. Eng. | 2 |
| 2018 | Expanding Queries for Code Search Using Semantically Related API Class-namesabstractWhen encountering unfamiliar programming tasks (e.g., connecting to a database), there is a need to seek potential working code examples. Instead of using code search engines, software developers usually post related programming questions on online Q&A forums (e.g., Stack Overflow). One possible reason is that existing code search engines would return effective code examples only if a query contains identifiers (e.g., class or method names). In other words, existing code search engines do not handle natural-language queries well (e.g., a description of a programming task). However, developers may not know the appropriate identifiers at the time of the search. As the demand of searching code examples is increasing, it is of significant interest to enhance code search engines. We conjecture that expanding natural-language queries with their semantically related identifiers has a great potential to enhance code search engines. In this paper, we propose an automated approach to find identifiers (in particular API class-names) that are semantically related to a given natural-language query. We evaluate the effectiveness of our approach using 74 queries on a corpus of 23,677,216 code snippets that are extracted from 24,666 open source Java projects. The results show that our approach can effectively recommend semantically related API class-names to expand the original natural-language queries. For instance, our approach successfully retrieves relevant code examples in the top 10 retrieved results for 76 percent of 74 queries, while it is 36 percent when using the original natural-language query; and the median rank of the first relevant code example is increased from 22 to 7. Feng Zhang 0001, Iman Keivanloo, Ying Zou 0001 |
IEEE Trans. Software Eng. | 1 |
| 2017 | Data Transformation in Cross-project Defect Prediction
Feng Zhang 0001, Iman Keivanloo, Ying Zou 0001 |
Empir. Softw. Eng. | 1 |
| 2017 | The Use of Summation to Aggregate Software Metrics Hinders the Performance of Defect Prediction ModelsabstractDefect prediction models help software organizations to anticipate where defects will appear in the future. When training a defect prediction model, historical defect data is often mined from a Version Control System (VCS, e.g., Subversion), which records software changes at the file-level. Software metrics, on the other hand, are often calculated at the class- or method-level (e.g., McCabe's Cyclomatic Complexity). To address the disagreement in granularity, the class- and method-level software metrics are aggregated to file-level, often using summation (i.e., McCabe of a file is the sum of the McCabe of all methods within the file). A recent study shows that summation significantly inflates the correlation between lines of code (Sloc) and cyclomatic complexity (Cc) in Java projects. While there are many other aggregation schemes (e.g., central tendency, dispersion), they have remained unexplored in the scope of defect prediction. In this study, we set out to investigate how different aggregation schemes impact defect prediction models. Through an analysis of 11 aggregation schemes using data collected from 255 open source projects, we find that: (1) aggregation schemes can significantly alter correlations among metrics, as well as the correlations between metrics and the defect count; (2) when constructing models to predict defect proneness, applying only the summation scheme (i.e., the most commonly used aggregation scheme in the literature) only achieves the best performance (the best among the 12 studied configurations) in 11 percent of the studied projects, while applying all of the studied aggregation schemes achieves the best performance in 40 percent of the studied projects; (3) when constructing models to predict defect rank or count, either applying only the summation or applying all of the studied aggregation schemes achieves similar performance, with both achieving the closest to the best performance more often than the other studied aggregation schemes; and (4) when constructing models for effort-aware defect prediction, the mean or median aggregation schemes yield performance values that are significantly closer to the best performance than any of the other studied aggregation schemes. Broadly speaking, the performance of defect prediction models are often underestimated due to our community's tendency to only use the summation aggregation scheme. Given the potential benefit of applying additional aggregation schemes, we advise that future defect prediction models should explore a variety of aggregation schemes. Feng Zhang 0001, Ahmed E. Hassan, Shane McIntosh, Ying Zou 0001 |
IEEE Trans. Software Eng. | 1 |
| 2016 | How Are Discussions Associated with Bug Reworking?: An Empirical Study on Open Source ProjectsabstractBackground: Bug fixing is one major activity in software maintenance to solve unexpected errors or crashes of software systems. However, a bug fix can also be incomplete and even introduce new bugs. In such cases, extra effort is needed to rework the bug fix. The reworking requires to inspect the problem again, and perform the code change and verification when necessary. Discussions throughout the bug fixing process are important to clarify the reported problem and reach a solution. Aims: In this paper, we explore how discussions during the initial bug fix period (i.e., before the bug reworking occurs) associate with future bug reworking. We focus on two types of "reworked bug fixes": 1) the initial bug fix made in a re-opened bug report; and 2) the initially submitted patch if multiple patches are submitted for a single bug report. Method: We perform a case study using five open source projects (i.e., Linux, Firefox, PDE, Ant and HTTP). The discussions are studied from six perspectives (i.e., duration, number of comments, dispersion, frequency, number of developers and experience of developers). Furthermore, we extract topics of discussions using Latent Dirichlet Allocation (LDA). Results: We find that the occurrence of bug reworking is associated with various perspectives of discussions. Moreover, discussions on some topics (e.g., code inspection and code testing) can decrease the frequency of bug reworking. Conclusions: The discussions during the initial bug fix period may serve as an early indicator of what bug fixes are more likely to be reworked. Yu Zhao 0041, Feng Zhang 0001, Emad Shihab, Ying Zou 0001, Ahmed E. Hassan |
ESEM | 2 |
| 2016 | Cross-project defect prediction using a connectivity-based unsupervised classifierabstractDefect prediction on projects with limited historical data has attracted great interest from both researchers and practitioners. Cross-project defect prediction has been the main area of progress by reusing classifiers from other projects. However, existing approaches require some degree of homogeneity (e.g., a similar distribution of metric values) between the training projects and the target project. Satisfying the homogeneity requirement often requires significant effort (currently a very active area of research). Feng Zhang 0001, Quan Zheng 0001, Ying Zou 0001, Ahmed E. Hassan |
ICSE | 1 |
| 2016 | What Do Client Developers Concern When Using Web APIs? An Empirical Study on Developer Forums and Stack OverflowabstractPopularity of service-oriented computing makes more and more companies and organizations provide their services through Web Application Program Interfaces (Web APIs). The Web APIs are considered to offer a convenient way to integrate web services to client applications. However, the integration process is often challenging. For example, updated Web APIs may be no longer compatible with the current version of client applications, thus break the client applications. To help the integration process, it is of significant interest to understand the challenges that are encountered by client developers. Developer forums and Stack Overflow are commonly used by client developers to seek help from fellow peers. In this paper, we mine both developer forums and Stack Overflow to find the common challenges encountered by client developers. We perform an empirical study on 32 Web APIs with a total of 92,471 discussions. To extract topics from all discussions, we apply a topic modeling technique called Latent Dirichlet Allocation (LDA). The results show that on average five dominant topics can cover at least 50% of questions regarding each Web API. We further investigate how topics evolve across Web APIs, and find five patterns. As a summary, our findings highlight a list of dominant concerns and persistent concerns for each Web API that Web API providers should pay more attention to. Pradeep K. Venkatesh, Shaohua Wang 0002, Feng Zhang 0001, Ying Zou 0001, Ahmed E. Hassan |
ICWS | 3 |
| 2016 | Towards building a universal defect prediction model with rank transformed predictors
Feng Zhang 0001, Audris Mockus, Iman Keivanloo, Ying Zou 0001 |
Empir. Softw. Eng. | 1 |
| 2015 | Threshold-free code clone detection for a large-scale heterogeneous Java repositoryabstractCode clones are unavoidable entities in software ecosystems. A variety of clone-detection algorithms are available for finding code clones. For Type-3 clone detection at method granularity (i.e., similar methods with changes in statements), dissimilarity threshold is one of the possible configuration parameters. Existing approaches use a single threshold to detect Type-3 clones across a repository. However, our study shows that to detect Type-3 clones at method granularity on a large-scale heterogeneous repository, multiple thresholds are often required. We find that the performance of clone detection improves if selecting different thresholds for various groups of clones in a heterogeneous repository (i.e., various applications). In this paper, we propose a threshold-free approach to detect Type-3 clones at method granularity across a large number of applications. Our approach uses an unsupervised learning algorithm, i.e., k-means, to determine true and false clones. We use a clone benchmark with 330,840 tagged clones from 24,824 open source Java projects for our study. We observe that our approach improves the performance significantly by 12% in terms of F-measure. Furthermore, our threshold-free approach eliminates the concern of practitioners about possible misconfiguration of Type-3 clone detection tools. Iman Keivanloo, Feng Zhang 0001, Ying Zou 0001 |
SANER | 2 |
| 2014 | Towards building a universal defect prediction modelabstractTo predict files with defects, a suitable prediction model must be built for a software project from either itself (within-project) or other projects (cross-project). A universal defect prediction model that is built from the entire set of diverse projects would relieve the need for building models for an individual project. A universal model could also be interpreted as a basic relationship between software metrics and defects. However, the variations in the distribution of predictors pose a formidable obstacle to build a universal model. Such variations exist among projects with different context factors (e.g., size and programming language). To overcome this challenge, we propose context-aware rank transformations for predictors. We cluster projects based on the similarity of the distribution of 26 predictors, and derive the rank transformations using quantiles of predictors for a cluster. We then fit the universal model on the transformed data of 1,398 open source projects hosted on SourceForge and GoogleCode. Adding context factors to the universal model improves the predictive power. The universal model obtains prediction performance comparable to the within-project models and yields similar results when applied on five external projects (one Apache and four Eclipse projects). These results suggest that a universal defect prediction model may be an achievable goal. Feng Zhang 0001, Audris Mockus, Iman Keivanloo, Ying Zou 0001 |
MSR | 1 |
| 2014 | An empirical study of the effect of file editing patterns on software qualityabstractABSTRACT Developers might follow different file editing patterns when handling change requests. Existing research has warned the community about the potential negative impacts of some file editing patterns on software quality. However, very few studies have provided quantitative evidence to support these claims. In this paper, we propose four metrics to identify four file editing patterns: concurrent editing pattern, parallel editing pattern, extended editing pattern, and interrupted editing pattern. Our empirical study on three open source projects shows that 90% (i.e. 1935 out of 2140) of files exhibit at least one file editing pattern. More specifically (1) files that are edited concurrently by many developers are 1.8 times more likely to experience future bugs than files that are not concurrently edited; (2) files edited in parallel with too many other files by the same developer are 2.9 times more likely to exhibit future bugs than files individually edited; (3) files edited over an extended period of time are 1.9 times more likely to experience future bugs than other files; and (4) files edited with long interruptions have 2.0 times more future bugs than other files. We also observe that the likelihood of future bugs in files experiencing all the four file editing patterns is 3.9 times higher than in files that are never involved in any of the four patterns. We further investigate factors impacting the occurrence of these file editing patterns along three dimensions: the ownership of files, the type of change requests in which the files were involved, and the initial code quality of the files. Results show that a file with a major owner is 0.6 times less likely to exhibit the concurrent editing pattern than files without major owners. Files with bad code quality (e.g. high McCabe's complexity, high coupling between objects, and lack of cohesion) are more likely to experience the four editing patterns. By ensuring a clear ownership and improving code quality, the negative impact of the four patterns could be reduced. Overall, our findings could be used by software development teams to warn developers about risky file editing patterns. Copyright © 2014 John Wiley & Sons, Ltd. Feng Zhang 0001, Foutse Khomh, Ying Zou 0001, Ahmed E. Hassan |
J. Softw. Evol. Process. | 1 |
| 2013 | How Does Context Affect the Distribution of Software Maintainability Metrics?abstractSoftware metrics have many uses, e.g., defect prediction, effort estimation, and benchmarking an organization against peers and industry standards. In all these cases, metrics may depend on the context, such as the programming language. Here we aim to investigate if the distributions of commonly used metrics do, in fact, vary with six context factors: application domain, programming language, age, lifespan, the number of changes, and the number of downloads. For this preliminary study we select 320 nontrivial software systems from Source Forge. These software systems are randomly sampled from nine popular application domains of Source Forge. We calculate 39 metrics commonly used to assess software maintainability for each software system and use Kruskal Wallis test and Mann-Whitney U test to determine if there are significant differences among the distributions with respect to each of the six context factors. We use Cliff's delta to measure the magnitude of the differences and find that all six context factors affect the distribution of 20 metrics and the programming language factor affects 35 metrics. We also briefly discuss how each context factor may affect the distribution of metric values. We expect our results to help software benchmarking and other software engineering methods that rely on these commonly used metrics to be tailored to a particular context. Feng Zhang 0001, Audris Mockus, Ying Zou 0001, Foutse Khomh, Ahmed E. Hassan |
ICSM | 1 |