CS Faculty Candidate Colloquium

 

Monday                      ***Special Location and Time***
February 2
10:45 - 11:50 AM 
Kelley 1005

 

Alex Groce 
Ph.D. in CS from Carnegie Mellon University
Core Member of the Lab for Reliable Software
NASA Jet Propulsion Laboratory

Traces in Spaces: You Can Learn a Lot About a Program by Running It 

In this talk, I present a series of connected research efforts to
address one of the two fundamental problems of software testing:
selecting a limited set of traces out of the essentially unbounded set
of all traces a program can produce in its state space, in order to
increase the possibility of exposing errors. I address this problem via
random testing with feedback and backtracking program execution (model
checking) with unsound abstractions and path-based heuristics. We will
look at empirical results comparing these two methods and indicating key
factors in successful testing, and briefly consider the other
fundamental problem of testing, specifying correct behavior. Case
studies and examples in this talk are drawn from flight software
developed at the Jet Propulsion Laboratory, primarily file systems to be
used in the next Mars rover mission, the Mars Science Laboratory. 

More generally, this talk assumes that software engineering is
fundamentally concerned with computer programs, and computer programs
exist in order to be executed -- to produce traces. Testing and model
checking can be understood as methods for selecting traces that help us
understand a program, typically by demonstrating undesirable behavior.
Specification and requirements engineering can be understood as the task
of defining which traces are undesirable, and program design and
implementation can be seen as the art and science of building a program
that will produce the right traces. 

Biography

Alex Groce received his PhD in Computer Science from Carnegie Mellon
University in 2005. He is a core member of the Laboratory for Reliable
Software at NASA's Jet Propulsion Laboratory, and teaches classes on
software testing and runtime monitoring at the California Institute of
Technology. His research interests focus on software engineering,
particularly the study of program traces in the contexts of testing,
model checking, specification, fault localization, automated debugging,
learning program behavior, and program understanding and visualization.
He is the author or co-author of 6 journal publications, 22 refereed
conference or workshop papers (including an ACM SIGSOFT Distinguished
Paper at the 25th International Conference on Software Engineering), and
4 invited papers. Since July of 2008 he has incorporated his research
interests into a role as lead developer and designer for automated
testing infrastructure for the Mars Science Laboratory mission's Flight
Software Internal Test team. He has received the JPL SPOT award and
NASA's Turning Goals Into Reality Award for innovative research in model
checking and testing and its application to critical space mission
systems.

_______________________________________________
Colloquium mailing list
[email protected]
https://secure.engr.oregonstate.edu/mailman/listinfo/colloquium

Reply via email to