I am proud to release all of the software that accompanies my publications. Unless otherwise specified on the project page, all of my software is released under an MIT license. Below is a listing of those projects:

  • A very large dataset of flaky tests, A dataset of flaky tests gathered by re-running test suites 10,000 times (Currently unpublished)
  • JVM test isolation benchmark, A suite for measuring the performance overhead of test isolation in different Java build systems (ISSTA 2020)
  • RIVULET, A tool for detecting code injection vulnerabilities in Java code (ICSE 2020)
  • Flaky Mutation Testing, A fork of Pit that tolerates flaky tests, and results from our experimental studies (ISSTA 2019)
  • Parikshan, Live debugging using containers (ASE 2018)
  • Coverage Study, Infrastructure and dataset for large-scale code coverage collection (ASE 2018)
  • CROCHET, Lightweight checkpoint/rollback in the JVM (ECOOP 2018)
  • DeFlaker, Flaky test detector for Java (ICSE 2018)
  • PRADET, Test dependency detector for Java (ICST 2018)
  • DyCLINK, Behavioral clone detector for Java using link analysis (FSE 2016)
  • HitoshiIO, Functional clone detector for Java (ICPC 2016)
  • DataDepDetector, Java test dependency detector – NOT the tool used in my ElectricTest paper (due to IP ownership), but a prototype ¬†that does mostly the same thing (FSE 2015)
  • Synapse, Cross-database replication for micro service apps (EuroSys 2015)
  • Phosphor, Dynamic taint tracking for Java (OOPSLA 2014)
  • Pebbles, Fine-grained system-wide taint tracking on Android (OSDI 2014)
  • VMVM, Test Isolation for Java (ICSE 2014)
  • ChroniclerJ, Record-replay in Java (ICSE 2013)

Other research-related software that does not directly tie to a publication:

I also try to contribute back to open source projects where I can through patches and pull requests. So far, I have had a pull request merged into Maven’s testing framework, Surefire.

I also occasionally blog about the crazy things that the JVM does on my Java blog, http://www.jvm.wtf.

If you have any questions about these or any other of my projects, please email me directly. I am interested in making sure that these projects can continue to be used and built upon by other researchers and practitioners.