CAREER: Advancing Neural Testing and Debugging of Software
University Of Illinois At Urbana-Champaign, Urbana IL
Investigators
Abstract
Software is an integral part of every life, from cell phones in everyone's pocket to autonomous cars that have already driven millions of miles to embedded software enabling smart home appliances. Developers are prone to making mistakes and introducing bugs to the software, making automated software validation techniques essential to ensure delivering reliable software. Software testing is the activity of finding and fixing software bugs is an important activity for software developers. With the advent of Artificial Intelligence (AI) and the potential power of Machine Learning (ML) in understanding and predicting bug patterns in code, software testing and debugging are gradually moving towards learning-based techniques, i.e., neural testing and debugging of software. This research project will address fundamental challenges in automated software testing and debugging by leveraging AI, and will develop new insights for semantically robust and interpretable neural testing and debugging. Combining theory building, empirical data-driven research, and tool building, this research aims to (1) design semantically robust neural models of code and develop systematic approaches for high-quality dataset generation, (2) develop several techniques to construct deep test oracles for functional and non-functional testing, and (3) design interpretation techniques for extracting and reusing the knowledge of neural models to unify testing and debugging. These overarching ideas can make software testing and debugging smarter and faster, significantly impacting how researchers and practitioners improve software quality. This award reflects NSF's statutory mission and has been deemed worthy of support through evaluation using the Foundation's intellectual merit and broader impacts review criteria.
View original record on NSF Award Search →