EDBT 2026 Demo / reviewers in the wild / expert
Nicholas DiGiuseppe
dblp:97/5106
· DBLP profile ↗
7ranked-venue papers
7as first author
0since 2021 · last 2015
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 7 · 7 first-author
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 |
Debugging and program repair · 89% Empirical software engineering · 11% |
Topics — the 6 heaviest of 7, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Debugging and program repair
fault localization |
0.4 | 3 | 2013 | Automatically describing software faults · ESEC/SIGSOFT FSE 2013 Semantic fault diagnosis: automatic natural-language fault descriptions · SIGSOFT FSE 2012 On the influence of multiple faults on coverage-based fault localization · ISSTA 2011 |
Debugging and program repair › human factors in debugging
fault comprehension |
0.3 | 2 | 2013 | Automatically describing software faults · ESEC/SIGSOFT FSE 2013 Semantic fault diagnosis: automatic natural-language fault descriptions · SIGSOFT FSE 2012 |
Debugging and program repair › failure analysis
failure clustering |
0.1 | 1 | 2012 | Concept-based failure clustering · SIGSOFT FSE 2012 |
Empirical software engineering › software engineering research methodology
empirical study |
0.1 | 1 | 2011 | On the influence of multiple faults on coverage-based fault localization · ISSTA 2011 |
Debugging and program repair › fault localization
spectrum-based fault localization |
0.1 | 1 | 2011 | On the influence of multiple faults on coverage-based fault localization · ISSTA 2011 |
Debugging and program repair › fault localization
statistical debugging |
0.0 | 1 | 2011 | On the influence of multiple faults on coverage-based fault localization · ISSTA 2011 |
Methods — techniques the papers use, named apart from their topics
dynamic analysis · 0.3source-code mining · 0.2natural language generation · 0.2lexicographic analysis · 0.1latent semantic analysis · 0.1control flow analysis · 0.1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2015 | Fault density, fault types, and spectra-based fault localization
Nicholas DiGiuseppe, James A. Jones |
Empir. Softw. Eng. | 1 |
| 2013 | Automatically describing software faultsabstractA developers ability to successfully debug a fault is directly related to their ability to comprehend the fault. Notwithstanding improvements in software-maintenance automation, this fault comprehension task remains largely manual and time consuming. I propose an automated approach to describe software faults, thus ameliorating comprehension and reducing manual effort. My approach leverages dynamic analysis, fault localization, and source-code mining to produce a succinct, natural-language fault summary. Nicholas DiGiuseppe |
ESEC/SIGSOFT FSE | 1 |
| 2012 | Software Behavior and Failure Clustering: An Empirical Study of Fault CausalityabstractTo cluster executions that exhibit faulty behavior by the faults that cause them, researchers have proposed using internal execution events, such as statement profiles, to (1) measure execution similarities, (2) categorize executions based on those similarity results, and (3) suggest the resulting categories as sets of executions exhibiting uniform fault behavior. However, due to a paucity of evidence correlating profiles and output behavior, researchers employ multiple simplifying assumptions in order to justify such approaches. In this paper we present an empirical study of profile correlation with output behavior, and we reexamine the suitability of such simplifying assumptions. We examine over 4 billion test-case outputs and execution profiles from multiple programs with over 9000 versions. Our data provides evidence that with current techniques many executions should be omitted from the clustering analysis to provide clusters that each represent a single fault. In addition, our data reveals the previously undocumented effects of multiple faults on failures, which has implications for techniques' ability (and inability) to properly cluster. Our results suggest directions for the improvement of future failure-clustering techniques that better account for software-fault behavior. Nicholas DiGiuseppe, James A. Jones |
ICST | 1 |
| 2012 | Semantic fault diagnosis: automatic natural-language fault descriptionsabstractBefore a fault can be fixed, it first must be understood. However, understanding why a system fails is often a difficult and time consuming process. While current automated-debugging techniques provide assistance in knowing where a fault is, developers are left unaided in understanding what a fault is, and why the system is failing. We present Semantic Fault Diagnosis (SFD), a technique that leverages lexicographic and dynamic information to automatically capture natural-language fault descriptors. SFD utilizes class names, method names, variable expressions, developer comments, and keywords from the source code to describe a fault. SFD can be used immediately after observing a failing execution and requires no input from developers or bug reports. In addition we present motivating examples and results from a SFD prototype to serve as a proof of concept. Nicholas DiGiuseppe, James A. Jones |
SIGSOFT FSE | 1 |
| 2012 | Concept-based failure clusteringabstractWhen attempting to determine the number and set of execution failures that are caused by particular faults, developers must perform an arduous task of investigating and diagnosing each individual failure. Researchers proposed failure-clustering techniques to automatically categorize failures, with the intention of isolating each culpable fault. The current techniques utilize dynamic control flow to characterize each failure to then cluster them. These existing techniques, however, are blind to the intent or purpose of each execution, other than what can be inferred by the control-flow profile. We hypothesize that semantically rich execution information can aid clustering effectiveness by categorizing failures according to which functionality they exhibit in the software. This paper presents a novel clustering method that utilizes latent-semantic-analysis techniques to categorize each failure by the semantic concepts that are expressed in the executed source code. We present an experiment comparing this new technique to traditional control-flow-based clustering. The results of the experiment showed that the semantic-concept clustering was more precise in the number of clusters produced than the traditional approach, without sacrificing cluster accuracy. Nicholas DiGiuseppe, James A. Jones |
SIGSOFT FSE | 1 |
| 2011 | Fault interaction and its repercussionsabstractMultiple faults in a program can interact to form new behaviors in a program that would not be realized if the program were to contain the individual faults. This paper presents an in-depth study of the effects of the interaction of faults within a program. Many researchers attempt to ameliorate the effects of faulty programs. Unfortunately, such researchers are left to rely upon intuition about fault behavior due to the paucity of formalized studies of faults and their behavior. In an attempt to advance the understanding of faults and their behavior, we conducted a study of fault interaction across six subjects with more than 65,000 multiple-fault versions. The results of our study show four significant types of interaction, with one type - faults obscuring the effects of other faults - as the most prevalent type. The prevalence of obscuring faults' effects has an adverse effect on many automated software-engineering techniques, such as regression-testing, fault-localization, and fault-clustering techniques. Given that software commonly contains more than a single fault, these results have implications for developers and researchers alike by informing them of expected complications, which in many instances are opposite to intuition. Nicholas DiGiuseppe, James A. Jones |
ICSM | 1 |
| 2011 | On the influence of multiple faults on coverage-based fault localizationabstractThis paper presents an empirical study on the effects of the quantity of faults on statistical, coverage-based fault localization techniques. The former belief was that the effectiveness of fault-localization techniques was inversely proportional to the quantity of faults. In an attempt to verify these beliefs, we conducted a study on three programs varying in size on more than 13,000 multiple-fault versions. We found that the influence of multiple faults (1) was not as great as expected, (2) created a negligible effect on the effectiveness of the fault localization, and (3) was often even complimentary to the fault-localization effectiveness. In general, even in the presence of many faults, at least one fault was found by the fault-localization technique with high effectiveness. We also found that some faults were localizable regardless of the presence of other faults, whereas other faults' ability to be found by these techniques varied greatly in the presence of other faults. Because almost all real-world software contains multiple faults, these results impact the use of statistical fault-localization techniques and provide a greater understanding of their potential in practice. Nicholas DiGiuseppe, James A. Jones |
ISSTA | 1 |