Rekha Pic


I have graduated from Rutgers University, and started working at Intel Labs, Hillsboro, Oregon. I defended my PhD thesis titled Preventing and Diagnosing Software Upgrade Failures in Oct 2011 under the guidance of Ricardo Bianchini.


Rutgers University - Piscataway, NJ

PhD, Computer Science (2004-2011).

Sardar Vallabhbhai National Institute of Technology (erstwhile SVRCET)- Surat, India

Bachelor of Engineering, Computer Engineering (1996-2000).

Publications and Patents

Better Malware Ground Truth: Techniques for Weighting Anti-Virus Vendor Labels
A. Kantchelian, M. C. Tschantz, S. Afroz, B. Miller, V. Shankar, R. Bachwani, A. D. Joseph, J. D. Tygar
To appear in ACM Workshop on Artificial Intelligence and Security (AISec) 2015, November 2015.

Adversarial Active Learning
B. Miller, A. Kantchelian, S. Afroz, R. Bachwani, E. Dauber, L. Huang, M. C. Tschantz, A. D. Joseph, J. D. Tygar
ACM Workshop on Artificial Intelligence and Security (AISec) 2014, November 2014.

R.Bachwani, O.Crameri, R. Bianchini, W.Zwaenepoel
Appears in the Journal of Systems and Software, May 2014.

R.Bachwani, O.Crameri, R. Bianchini, W.Zwaenepoel
Appears in 2012 Workshop On Managing Systems Automatically and Dynamically (MAD'12).

R.Bachwani, O.Crameri, R. Bianchini, D.Kostic, W.Zwaenepoel
Proceedings of IEEE International Conference on Software Maintenance (ICSM'11).

O. Crameri, R. Bachwani, T. Brecht, R. Bianchini, D. Kostic, and W.Zwaenepoel
Technical report, 2009.

R. Bachwani, L. Gryz, R. Bianchini, and C. Dubnicki
Proceedings of the International Symposium on Reliable Distributed Systems (SRDS'08).

F. Oliveira, K. Nagaraja, R. Bachwani, R. Bianchini, R. P. Martin, and T. Nguyen
Proceedings of the USENIX Annual Technical Conference (Usenix ATC'06).


Improving Reliability of Distributed Storage System with MinI policy
R.Bachwani, L.Gryz, R.Bianchini, C.Dubnicki, US Patent 2009/0265360 filed on March 4, 2009.


My research interests are in the area of reliability and manageability of operating systems and distribtued systems. At Intel, I work on the Systems Security area.

Software Upgrade Management

Modern software systems are complex and comprise many interacting and dependent components. Frequent upgrades are required to fix bugs, patch security vulnerabilities, and add or remove features. Unfortunately, many upgrades either fail or produce undesired behavior resulting in service disruption, user dissatisfaction, and/or monetary loss. To make matters worse, when upgrades fail or misbehave, developers are given limited (and often unstructured) information to pinpoint and correct the problems. As part of this project, we have build two systems to improve the management of software upgrades. Both systems rely on environment information and dynamic execution data collected from users who have previously upgraded the software.

The first (called Mojave) is an upgrade recommendation system that informs a user who intends to upgrade the software about whether the upgrade is likely to succeed. Regardless of Mojave's recommendation, if the user decides to upgrade and it fails, our second system (called Sahara) comes into play.

Sahara is a failed upgrade debugging system that identifies a small subset of routines that are likely to contain the root cause of the failure. We evaluate both systems using several real upgrade failures with widely used software. Our results demonstrate that our systems are very accurate in predicting upgrade failures and identifying the likely culprits for upgrade failures.

Storage Reliability

The focus of this project was to improve reliability of large distributed storage systems by using better reliability metrics and more efficient policies for recovering from hardware failures. We proposed a new metric, Normalcy Deviation Score (NDS), for dynamically quantifying the reliability status of the storage system, and MinI (Minimum Intersection), a novel recovery scheduling policy that improves reliability by efficiently reconstructing data after a failure. We evaluated NDS and MinI for three popular data allocation schemes using a simulation of a distributed storage system based on erasure-codes.

Available Cluster-based Servers

The aim of this project was to validate database administrator actions before they are propagated to the online system. The validation infrastructure detects major classes of operator mistakes, before they are exposed to the end-user. We designed and implemented the validation infrastructure for RUBiS, a multi-tier auction service using network virtualization and C-JDBC (Cluster JDBC).

Rekha Bachwani:— rbachwan[at]