Thursday, April 13, 2006
4:15 pm
B17 Upson Hall

Computer Science
Spring 2006

Koushik Sen
University of Illinois at Urbana-Champaign


Scalable Automated Methods for Software Reliability

Abstract: Testing with manually generated test cases is the primary technique used in industry to improve reliability of software--in fact, such testing is reported to account for over half of the typical cost of software development. I will describe Concolic Testing, an efficient approach which combines random and symbolic testing. Concolic testing enables automatic and systematic testing of large programs, avoids redundant test cases and does not generate false warnings. Experiments on real-world software show that concolic testing can be used to effectively catch generic errors such as assertion violations, memory leaks, uncaught exceptions, and segmentation faults. Combined with dynamic partial order reduction techniques, concolic testing is effective in catching concurrency bugs such as data races and deadlocks. I will describe my experience with building two concolic testing tools, CUTE for C programs and jCUTE for Java programs, and applying these tools to real-world software systems. Finally, I will provide a brief overview of my research in predictive runtime monitoring, statistical and probabilistic model checking, application of machine learning to verify infinite state systems, and probabilistic programming.

Bio : Koushik Sen is a Ph.D. student in the Computer Science Department at the University of Illinois at Urbana-Champaign, where he is advised by Professor Gul Agha. Koushik got his B.S. from Indian Institute of Technology, Kanpur, India in 1999. He subsequently worked as a software engineer and middleware architect in two startups before joining the University of Illinois at Urbana-Champaign. His paper on concolic testing won the ACM SIGSOFT Distinguished Paper Award at ESEC/FSE'05. He received the C. W. Gear Outstanding Graduate Award in 2005 for being the best graduate student and the C.L. and Jane W-S. Liu Award in 2004 for exceptional research promise from the UIUC Department of Computer Science.