VLDB 2026 Research / reviewers in the wild / expert
Rahul Kumar 0002
dblp:92/5081-2
· DBLP profile ↗
15ranked-venue papers
2as first author
1since 2021 · last 2021
—ORCID · conflict
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 11 · 2 first-author · 1 since 2021Theory of computation · 4 · 1 first-authorSystems, architecture and hardware · 2Computer networks · 2Artificial intelligence and machine learning · 1Databases, data management, data science and information retrieval · 1Applied, interdisciplinary, general and emerging 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.
| Software engineering, system software, and programming languages
9 papers |
Software maintenance and evolution · 41% Software testing · 23% Debugging and program repair · 12% | |
| Computer architecture, parallel and distributed computing, and storage systems
4 papers |
Distributed systems · 72% Cloud and datacenter computing · 28% |
Topics — the 21 heaviest of 25, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Software testing
regression testing |
0.5 | 1 | 2021 | Data-driven test selection at scale · ESEC/SIGSOFT FSE 2021 |
Software testing › regression testing
test selection |
0.5 | 1 | 2021 | Data-driven test selection at scale · ESEC/SIGSOFT FSE 2021 |
Empirical software engineering › mining software repositories › version history analysis
co-change analysis |
0.4 | 1 | 2020 | Rex: Preventing Bugs and Misconfiguration in Large Services Using Correlated Change Analysis · NSDI 2020 |
Software maintenance and evolution
code change analysis |
0.4 | 1 | 2020 | Rex: Preventing Bugs and Misconfiguration in Large Services Using Correlated Change Analysis · NSDI 2020 |
Software maintenance and evolution › software configuration
misconfiguration detection |
0.4 | 1 | 2020 | Rex: Preventing Bugs and Misconfiguration in Large Services Using Correlated Change Analysis · NSDI 2020 |
Software maintenance and evolution
software configuration management |
0.4 | 1 | 2020 | Rex: Preventing Bugs and Misconfiguration in Large Services Using Correlated Change Analysis · NSDI 2020 |
Software maintenance and evolution
code review |
0.4 | 1 | 2019 | WhoDo: automating reviewer suggestions at scale · ESEC/SIGSOFT FSE 2019 |
Debugging and program repair
fault localization |
0.4 | 1 | 2019 | Orca: Differential Bug Localization in Large-Scale Services · USENIX ATC 2019 |
Software maintenance and evolution › code review
reviewer recommendation |
0.4 | 1 | 2019 | WhoDo: automating reviewer suggestions at scale · ESEC/SIGSOFT FSE 2019 |
Software testing › test optimization
test case reduction |
0.4 | 1 | 2019 | FastLane: test minimization for rapidly deployed large-scale online services · ICSE 2019 |
Debugging and program repair › fault localization
bug localization |
0.3 | 1 | 2018 | Orca: Differential Bug Localization in Large-Scale Services · OSDI 2018 |
Program analysis
static analysis |
0.2 | 2 | 2013 | The economics of static analysis tools · ESEC/SIGSOFT FSE 2013 The Static Driver Verifier Research Platform · CAV 2010 |
Data mining
anomaly detection |
0.2 | 1 | 2014 | Adtributor: Revenue Debugging in Advertising Systems · NSDI 2014 |
Empirical software engineering › software economics
software cost modeling |
0.2 | 1 | 2013 | The economics of static analysis tools · ESEC/SIGSOFT FSE 2013 |
Program analysis › static analysis
static analysis tools |
0.2 | 1 | 2013 | The economics of static analysis tools · ESEC/SIGSOFT FSE 2013 |
Software maintenance and evolution › release engineering
continuous integration |
0.1 | 1 | 2021 | Data-driven test selection at scale · ESEC/SIGSOFT FSE 2021 |
Program analysis › static analysis
interprocedural analysis |
0.1 | 1 | 2012 | Parallelizing top-down interprocedural analyses · PLDI 2012 |
Program analysis › static analysis
modular analysis |
0.1 | 1 | 2012 | Parallelizing top-down interprocedural analyses · PLDI 2012 |
Software maintenance and evolution › release engineering
continuous integration and deployment |
0.1 | 1 | 2019 | FastLane: test minimization for rapidly deployed large-scale online services · ICSE 2019 |
Distributed systems
fault tolerance |
0.1 | 1 | 2014 | Adtributor: Revenue Debugging in Advertising Systems · NSDI 2014 |
Program verification › model checking
software model checking |
0.0 | 1 | 2012 | Parallelizing top-down interprocedural analyses · PLDI 2012 |
Methods — techniques the papers use, named apart from their topics
machine learning · 0.8commit log analysis · 0.8test selection models · 0.5recommender systems · 0.4attribution analysis · 0.4empirical model · 0.2case study · 0.2top-down analysis · 0.1parallelization · 0.1bottom-up analysis · 0.1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2021 | Data-driven test selection at scaleabstractLarge-scale services depend on Continuous Integration/Continuous Deployment (CI/CD) processes to maintain their agility and code-quality. Change-based testing plays an important role in finding bugs, but testing after every change is prohibitively expensive at a scale where thousands of changes are committed every hour. Test selection models deal with this issue by running a subset of tests for every change. Sonu Mehta, Farima Farmahinifarahani, Ranjita Bhagwan, Suraj Guptha, Sina Jafari, Rahul Kumar 0002, Vaibhav Saini, Anirudh Santhiar |
ESEC/SIGSOFT FSE | 6 |
| 2020 | Angelic Checking within Static Driver Verifier: Towards high-precision defects without (modeling) costabstractMicrosoft's Static Driver Verifier (SDV) pioneered the use of software model checking for ensuring that device drivers correctly use operating system (OS) APIs.However, the verification methodology has been difficult to extend in order to support either (a) new classes of drivers for which SDV does not already have a harness and stubs, or (b) memory-corruption properties.Any attempt to apply SDV out-of-the-box results in either false alarms due to the lack of environment modeling, or scalability issues when finding deeply nested bugs in the presence of a very large number of memory accesses.In this paper, we describe our experience designing and shipping a new class of checks known as angelic checks through SDV with the aid of angelic verification (AV) [1] technology, over a period of 4 years.AV pairs a precise inter-procedural assertion checker with automatic inference of likely specifications for the environment.AV helps compensate for the lack of environment modeling and regains scalability by making it possible to find deeply nested bugs, even for complex memorycorruption properties.These new rules have together found over a hundred confirmed defects during internal deployment at Microsoft, including several previously unknown high-impact potential security vulnerabilities.AV considerably increases the reach of SDV, both in terms of drivers as well as rules that it can support effectively. Shuvendu K. Lahiri, Akash Lal, Sridhar Gopinath, Alexander Nutz, Vladimir Levin, Rahul Kumar 0002, Nate Deisinger, Jakob Lichtenberg, Chetan Bansal |
FMCAD | 6 |
| 2020 | Rex: Preventing Bugs and Misconfiguration in Large Services Using Correlated Change Analysis
Sonu Mehta, Ranjita Bhagwan, Rahul Kumar 0002, Chetan Bansal, Chandra Shekhar Maddila, Balasubramanyan Ashok, Sumit Asthana, Christian Bird |
NSDI | 3 |
| 2019 | FastLane: test minimization for rapidly deployed large-scale online servicesabstractToday, we depend on numerous large-scale services for basic operations such as email. These services, built on the basis of Continuous Integration/Continuous Deployment (CI/CD) processes, are extremely dynamic: developers continuously commit code and introduce new features, functionality and fixes. Hundreds of commits may enter the code-base in a single day. Therefore one of the most time-critical, yet resource-intensive tasks towards ensuring code-quality is effectively testing such large code-bases. This paper presents FastLane, a system that performs data-driven test minimization. FastLane uses light-weight machine-learning models built upon a rich history of test and commit logs to predict test outcomes. Tests for which we predict outcomes need not be explicitly run, thereby saving us precious test-time and resources. Our evaluation on a large-scale email and collaboration platform service shows that our techniques can save 18.04%, i.e., almost a fifth of test-time while obtaining a test outcome accuracy of 99.99%. Adithya Abraham Philip, Ranjita Bhagwan, Rahul Kumar 0002, Chandra Shekhar Maddila, Nachiappan Nagappan |
ICSE | 3 |
| 2019 | WhoDo: automating reviewer suggestions at scaleabstractToday's software development is distributed and involves continuous changes for new features and yet, their development cycle has to be fast and agile. An important component of enabling this agility is selecting the right reviewers for every code-change - the smallest unit of the development cycle. Modern tool-based code review is proven to be an effective way to achieve appropriate code review of software changes. However, the selection of reviewers in these code review systems is at best manual. As software and teams scale, this poses the challenge of selecting the right reviewers, which in turn determines software quality over time. While previous work has suggested automatic approaches to code reviewer recommendations, it has been limited to retrospective analysis. We not only deploy a reviewer suggestions algorithm - WhoDo - and evaluate its effect but also incorporate load balancing as part of it to address one of its major shortcomings: of recommending experienced developers very frequently. We evaluate the effect of this hybrid recommendation + load balancing system on five repositories within Microsoft. Our results are based around various aspects of a commit and how code review affects that. We attempt to quantitatively answer questions which are supposed to play a vital role in effective code review through our data and substantiate it through qualitative feedback of partner repositories. Sumit Asthana, Rahul Kumar 0002, Ranjita Bhagwan, Christian Bird, Chetan Bansal, Chandra Shekhar Maddila, Sonu Mehta, Balasubramanyan Ashok |
ESEC/SIGSOFT FSE | 2 |
| 2019 | Orca: Differential Bug Localization in Large-Scale Services
Ranjita Bhagwan, Rahul Kumar 0002, Chandra Shekhar Maddila, Adithya Abraham Philip |
USENIX ATC | 2 |
| 2018 | Orca: Differential Bug Localization in Large-Scale Services
Ranjita Bhagwan, Rahul Kumar 0002, Chandra Shekhar Maddila, Adithya Abraham Philip |
OSDI | 2 |
| 2016 | CloudSDV Enabling Static Driver Verifier Using Microsoft Azure
Rahul Kumar 0002, Thomas Ball 0001, Jakob Lichtenberg, Nate Deisinger, Apoorv Upreti, Chetan Bansal |
IFM | 1 |
| 2014 | Online learning versus blended learning: an exploratory studyabstractDue to the recent emergence of massive open online courses (MOOCs), students and teachers are gaining unprecedented access to high-quality educational content. However, many questions remain on how best to utilize that content in a classroom environment. In this small-scale, exploratory study, we compared two ways of using a recorded video lecture. In the online learning condition, students viewed the video on a personal computer, and also viewed a follow-up tutorial (a quiz review) on the computer. In the blended learning condition, students viewed the video as a group in a classroom, and received the follow-up tutorial from a live lecturer. We randomly assigned 102 students to these conditions, and assessed learning outcomes via a series of quizzes. While we saw significant learning gains after each session conducted, we did not observe any significant differences between the online and blended learning groups. We discuss these findings as well as areas for future work. Balasubramanyan Ashok, Srinath Bala, Edward Cutrell, Naren Datha, Rahul Kumar 0002, Viraj Kumar, P. Madhusudan, Siddharth Prakash, Sriram K. Rajamani, Satish Sangameswaran, William Thies |
L@S | 6 |
| 2014 | MUX: algorithm selection for software model checkersabstractWith the growing complexity of modern day software, software model checking has become a critical technology for ensuring correctness of software. As is true with any promising technology, there are a number of tools for software model checking. However, their respective performance trade-offs are difficult to characterize accurately – making it difficult for practitioners to select a suitable tool for the task at hand. This paper proposes a technique called MUX that addresses the problem of selecting the most suitable software model checker for a given input instance. MUX performs machine learning on a repository of software verification instances. The algorithm selector, synthesized through machine learning, uses structural features from an input instance, comprising a program-property pair, at runtime and determines which tool to use. Varun Tulsian, Aditya Kanade 0001, Rahul Kumar 0002, Akash Lal, Aditya V. Nori |
MSR | 3 |
| 2014 | Adtributor: Revenue Debugging in Advertising Systems
Ranjita Bhagwan, Rahul Kumar 0002, Ramachandran Ramjee, George Varghese, Surjyakanta Mohapatra, Hemanth Manoharan, Piyush Shah |
NSDI | 2 |
| 2013 | The economics of static analysis toolsabstractStatic analysis tools have experienced a dichotomy over the span of the last decade. They have proven themselves to be useful in many domains, but at the same time have not (in general) experienced any notable concrete integration into a development environment. This is partly due to the inherent complexity of the tools themselves, as well as due to other intangible factors. Such factors usually tend to include questions about the return on investment of the tool and the value the tool provides in a development environment. In this paper, we present an empirical model for evaluating static analysis tools from the perspective of the economic value they provide. We further apply this model to a case study of the Static Driver Verier (SDV) tool that ships with the Windows Driver Kit and show the usefulness of the model and the tool. Rahul Kumar 0002, Aditya V. Nori |
ESEC/SIGSOFT FSE | 1 |
| 2012 | Parallelizing top-down interprocedural analysesabstractModularity is a central theme in any scalable program analysis. The core idea in a modular analysis is to build summaries at procedure boundaries, and use the summary of a procedure to analyze the effect of calling it at its calling context. There are two ways to perform a modular program analysis: (1) top-down and (2) bottomup. A bottom-up analysis proceeds upwards from the leaves of the call graph, and analyzes each procedure in the most general calling context and builds its summary. In contrast, a top-down analysis starts from the root of the call graph, and proceeds downward, analyzing each procedure in its calling context. Top-down analyses have several applications in verification and software model checking. However, traditionally, bottom-up analyses have been easier to scale and parallelize than top-down analyses. Aws Albarghouthi, Rahul Kumar 0002, Aditya V. Nori, Sriram K. Rajamani |
PLDI | 2 |
| 2010 | The Static Driver Verifier Research Platform
Thomas Ball 0001, Ella Bounimova, Vladimir Levin, Rahul Kumar 0002, Jakob Lichtenberg |
CAV | 4 |
| 2010 | SLAM2: Static driver verification with under 4% false alarms
Thomas Ball 0001, Ella Bounimova, Rahul Kumar 0002, Vladimir Levin |
FMCAD | 3 |