Automatic Analysis of Concurrent Software

The Automatic Analysis of Concurrent Software project focuses on improving software testing and analysis techniques for concurrent software by using source code analysis and testing combined with genetic algorithms, machine learning and other search-based techniques. 

Current sub-projects include:

Automatic Repair of Concurrency Bugs

  • ARC – a tool to automatically repair concurrency bugs in Java.
  • CORE – an automatic bug repair tool for concurrent Java programs. Utilizes Java PathFinder (JPF) model checker.

Automatic Fault Localization of Concurrency Bugs

  • SyncDebugger -an automatic bug localization tool for concurrent Java programs.

Automatic Exploration of Thread Interleavings during Concurrency Testing

  • Eclipticon – a concurrency testing plugin for Java projects in Eclipse.
  • SyncTest – a unit testing tool for multithreaded Java programs. Available as a command-line tool or an Eclipse plugin.