Funding: NSF CCF-1909085: Test-Centric Architecture Modeling
This research bridges the gap between software architecture and testing to amplify benefits to both ends. The goal is to develop a family of new architectural modeling and analysis techniques that centered on testing.
Funding: NSF CCF-1652149: Testing Evolving Complex Software Systems
The goal of this research is to create a novel regression testing framework that can be applied to real-world complex software systems, focusing on the hardware dependence and concurrent control characteristics, throughout their lifetimes.
Funding: NSF CCF-1464032: An Automated Framework to Debug System-level Concurrency Faults
This research provides a fully automated framewok for reproducing and diagnosing system-level (inter-process) concurency failures using only default logs collected from the field. It does not require code instrumentation on the production system or rely on the assumption of the availability of multiple failing executions.
This research provides a family of techniques to detect faults in embedded system applications due to incorrect interactions among software, hardware, and environment.
This research provides an automated framework that allows engineers to effectively analyze performance-influence configuration options, detect performance bugs in highly-configurable software systems, and adjust configuration options to achieve higher long-term performance gains.
This research provides a novel approach, RecDroid, targeted at Android apps, that can automatically analyze bug reports and generate test scripts that will reproduce app crashes. This is the first work on reproducing app crashes directly from the natural language description of bug reports.