Demo Data from EDBT 2026 / reviewers in the wild / expert
Patrick Kreutzer
dblp:180/1924
· DBLP profile ↗
5ranked-venue papers
3as first author
1since 2021 · last 2021
—ORCID · none
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 5 · 3 first-author · 1 since 2021Databases, data management, data science and information retrieval · 2 · 1 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
1 paper |
Software maintenance and evolution · 100% |
Topics — the 2 heaviest of 2, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Software maintenance and evolution › recommendation system for software engineering
change recommendation |
0.3 | 1 | 2017 | More accurate recommendations for method-level changes · ESEC/SIGSOFT FSE 2017 |
Software maintenance and evolution › code change analysis
change pattern mining |
0.1 | 1 | 2017 | More accurate recommendations for method-level changes · ESEC/SIGSOFT FSE 2017 |
Methods — techniques the papers use, named apart from their topics
pattern learning · 0.3code search · 0.3
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2021 | Test Case Reduction: A Framework, Benchmark, and Comparative StudyabstractGiven a program that triggers a bug in a compiler (or other kind of language processor), the goal of test case reduction is to cut away all code that is irrelevant for the bug, i.e., to generate a smaller program that still induces the bug. Research has proposed several language-agnostic reduction techniques that automatically reduce bug-inducing programs in arbitrary programming languages, but there is no large-scale, conclusive evaluation of these algorithms yet. Furthermore, the development of new algorithms is hampered by the unavailability of comparable implementations of previous techniques and of diverse test programs that trigger different bugs in real compilers. To close these gaps and to foster future research in this area, this paper makes three contributions: (1) A framework that includes efficient, fine-tuned implementations of 6 state-of-the-art reducers, (2) a diverse benchmark that comprises 321 fuzzer-generated programs in two programming languages that trigger 110 different bugs in real compilers, and (3) a comparative study that builds upon our framework and benchmark and compares the reduction techniques w.r.t. their effectiveness and efficiency. Our results show that there is no reduction technique yet that performs best across all test cases and languages. Our framework and benchmark are available online and we provide the necessary scripts and tools to replicate our study. Patrick Kreutzer, Tom Kunze, Michael Philippsen |
ICSME | 1 |
| 2020 | Language-Agnostic Generation of Compilable Test ProgramsabstractTesting is an integral part of the development of compilers and other language processors. To automatically create large sets of test programs, random program generators, or fuzzers, have emerged. Unfortunately, existing approaches are either language-specific (and thus require a rewrite for each language) or may generate programs that violate rules of the respective programming language (which limits their usefulness). This work introduces *Smith, a language-agnostic framework for the generation of valid, compilable test programs. It takes as input an abstract attribute grammar that specifies the syntactic and semantic rules of a programming language. It then creates test programs that satisfy all these rules. By aggressively pruning the search space and keeping the construction as local as possible, *Smith can generate huge, complex test programs in short time. We present four case studies covering four real-world programming languages (C, Lua, SQL, and SMT-LIB 2) to show that *Smith is both efficient and effective, while being flexible enough to support programming languages that differ considerably. We found bugs in all four case studies. For example, *Smith detected 165 different crashes in older versions of GCC and LLVM. *Smith and the language grammars are available online. Patrick Kreutzer, Stefan Kraus, Michael Philippsen |
ICST | 1 |
| 2019 | SeSaMe: a data set of semantically similar Java methodsabstractIn the past, techniques for detecting similarly behaving code fragments were often only evaluated with small, artificial oracles or with code originating from programming competitions. Such code fragments differ largely from production codes. To enable more realistic evaluations, this paper presents SeSaMe, a data set of method pairs that are classified according to their semantic similarity. We applied text similarity measures on JavaDoc comments mined from 11 open source repositories and manually classified a selection of 857 pairs. Marius Kamp, Patrick Kreutzer, Michael Philippsen |
MSR | 2 |
| 2017 | More accurate recommendations for method-level changesabstractDuring the life span of large software projects, developers often apply the same code changes to different code locations in slight variations. Since the application of these changes to all locations is time-consuming and error-prone, tools exist that learn change patterns from input examples, search for possible pattern applications, and generate corresponding recommendations. In many cases, the generated recommendations are syntactically or semantically wrong due to code movements in the input examples. Thus, they are of low accuracy and developers cannot directly copy them into their projects without adjustments. Georg Dotzler, Marius Kamp, Patrick Kreutzer, Michael Philippsen |
ESEC/SIGSOFT FSE | 3 |
| 2016 | Automatic clustering of code changesabstractSeveral research tools and projects require groups of similar code changes as input. Examples are recommendation and bug finding tools that can provide valuable information to developers based on such data. With the help of similar code changes they can simplify the application of bug fixes and code changes to multiple locations in a project. But despite their benefit, the practical value of existing tools is limited, as users need to manually specify the input data, i.e., the groups of similar code changes. Patrick Kreutzer, Georg Dotzler, Matthias Ring, Björn M. Eskofier, Michael Philippsen |
MSR | 1 |