VLDB 2026 Research / reviewers in the wild / expert
Berk Çirisci
dblp:217/2770
· DBLP profile ↗
8ranked-venue papers
5as first author
5since 2021 · last 2025
0000-0003-4261-090XORCID · reported
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 8 · 5 first-author · 5 since 2021Systems, architecture and hardware · 1 · 1 since 2021Theory of computation · 1 · 1 first-author
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2025 | UTFix: Change Aware Unit Test Repairing using LLMabstractSoftware updates, including bug repair and feature additions, are frequent in modern applications but they often leave test suites outdated, resulting in undetected bugs and increased chances of system failures. A recent study by Meta revealed that 14%-22% of software failures stem from outdated tests that fail to reflect changes in the codebase. This highlights the need to keep tests in sync with code changes to ensure software reliability. In this paper, we present UTFix , a novel approach for repairing unit tests when their corresponding focal methods undergo changes. UTFix addresses two critical issues: assertion failure and reduced code coverage caused by changes in the focal method. Our approach leverages language models to repair unit tests by providing contextual information such as static code slices, dynamic code slices, and failure messages. We evaluate UTFix on our generated synthetic benchmark (Syn-Bench), and real-world benchmark. In our experiment, UTFix successfully repaired 89.2% of assertion failures and achieved 100% code coverage for 96 tests out of 369 unit tests. On the real-world benchmarks, UTFix repaired 60% of assertion failures while achieving 100% code coverage for 19 out of 30 unit tests. To the best of our knowledge, this is the first comprehensive study focused on unit test in evolving Python projects. Our contributions include the development of UTFix , the creation of Syn-Bench and real-world benchmarks, and the demonstration of the effectiveness of LLM-based methods in addressing unit test failures due to software evolution. Shanto Rahman, Sachit Kuhar, Berk Çirisci, Pranav Garg 0001, Shiqi Wang 0002, Xiaofei Ma 0001, Anoop Deoras, Baishakhi Ray |
Proc. ACM Program. Lang. | 3 |
| 2024 | CSSTs: A Dynamic Data Structure for Partial Orders in Concurrent Execution AnalysisabstractDynamic analyses are a standard approach to analyzing and testing concurrent programs. Such techniques observe program traces σ and analyze them to infer the presence or absence of bugs. At its core, each analysis maintains a partial order P that represents order dependencies between the events of σ. Naturally, the scalability of the analysis largely depends on maintaining P efficiently. The standard data structure for this task has thus far been Vector Clocks. These, however, are slow for analyses that follow a non-streaming style, costing O(n) time for inserting (and propagating) each new ordering in P, where n is the size of σ, while they cannot handle the deletion of existing orderings. Hünkar Can Tunç, Ameya Prashant Deshmukh, Berk Çirisci, Constantin Enea, Andreas Pavlogiannis |
ASPLOS (3) | 3 |
| 2024 | Understanding Developer-Analyzer Interactions in Code ReviewsabstractStatic code analyzers are now a common part of the codereview process. These automated tools integrate into the code review process by commenting on code changes and suggesting improvements, in the same way as human reviewers. The comments made by static analyzers often trigger a conversation between developers to align on if and how the issue should be fixed. Because developers rarely give feedback directly to the tool, understanding the sentiment and intent in the conversation triggered by the tool comments can be used to measure the usefulness of the static analyzer. Martin Schäf, Berk Çirisci, Linghui Luo, Muhammad Numair Mansur, Omer Tripp, Daniel Sanchez, Qiang Zhou 0009, Muhammad Bilal Zafar |
ASE | 2 |
| 2023 | Quorum Tree Abstractions of Consensus ProtocolsabstractAbstract Distributed algorithms solving agreement problems like consensus or state machine replication are essential components of modern fault-tolerant distributed services. They are also notoriously hard to understand and reason about. Their complexity stems from the different assumptions on the environment they operate with, i.e., process or network link failures, Byzantine failures etc. In this paper, we propose a novel abstract representation of the dynamics of such protocols which focuses on quorums of responses (votes) to a request (proposal) that form during a run of the protocol. We show that focusing on such quorums, a run of a protocol can be viewed as working over a tree structure where different branches represent different possible outcomes of the protocol, the goal being to stabilize on the choice of a fixed branch. This abstraction resembles the description of recent protocols used in Blockchain infrastructures, e.g., the protocol supporting Bitcoin or Hotstuff. We show that this abstraction supports reasoning about the safety of various algorithms, e.g., Paxos, PBFT, Raft, and HotStuff, in a uniform way. In general, it provides a novel induction based argument for proving that such protocols are safe. Berk Çirisci, Constantin Enea, Suha Orhun Mutluergil |
ESOP | 1 |
| 2023 | A Pragmatic Approach to Stateful Partial Order Reduction
Berk Çirisci, Constantin Enea, Azadeh Farzan, Suha Orhun Mutluergil |
VMCAI | 1 |
| 2020 | Root Causing Linearizability ViolationsabstractLinearizability is the de facto correctness criterion for concurrent data type implementations. Violation of linearizability is witnessed by an error trace in which the outputs of individual operations do not match those of a sequential execution of the same operations. Extensive work has been done in discovering linearizability violations, but little work has been done in trying to provide useful hints to the programmer when a violation is discovered by a tester tool. In this paper, we propose an approach that identifies the root causes of linearizability errors in the form of code blocks whose atomicity is required to restore linearizability. The key insight of this paper is that the problem can be reduced to a simpler algorithmic problem of identifying minimal root causes of conflict serializability violation in an error trace combined with a heuristic for identifying which of these are more likely to be the true root cause of non-linearizability. We propose theoretical results outlining this reduction, and an algorithm to solve the simpler problem. We have implemented our approach and carried out several experiments on realistic concurrent data types demonstrating its efficiency. Berk Çirisci, Constantin Enea, Azadeh Farzan, Suha Orhun Mutluergil |
CAV (1) | 1 |
| 2019 | Using Synchronizing Heuristics to Construct Homing SequencesabstractComputing a shortest synchronizing sequence of an automaton is an NP-Hard problem.There are well-known heuristics to find short synchronizing sequences.Finding a shortest homing sequence is also an NP-Hard problem.Unlike existing heuristics to find synchronizing sequences, homing heuristics are not widely studied.In this paper, we discover a relation between synchronizing and homing sequences by creating an automaton called homing automaton.By applying synchronizing heuristics on this automaton we get short homing sequences.Furthermore, we adapt some of the synchronizing heuristics to construct homing sequences. Berk Çirisci, M. Yusa Emek, Ege Sorguç, Kamer Kaya, Hüsnü Yenigün |
MODELSWARD | 1 |
| 2018 | Using Structure of Automata for Faster Synchronizing HeuristicsabstractThe problem of finding a synchronizing sequence for an automaton is an interesting problem studied widely in the literature. Finding a shortest synchronizing sequence is an NP-Hard problem. Therefore, there are heuristics to find short synchronizing sequences. Some heuristics work fast but produce long synchronizing sequences, whereas some heuristics work slow but produce relatively shorter synchronizing sequences. In this paper we propose a method for using these heuristics by considering the connectedness of automata. Applying the proposed approach of using these heuristics make the heuristics work faster than their original versions, without sacrificing the quality of the synchronizing sequences. Berk Çirisci, Muhammed Kerem Kahraman, Cagri Uluc Yildirimoglu, Kamer Kaya, Hüsnü Yenigün |
MODELSWARD | 1 |