TITLE: Betters Tools for Software Understanding PI: Brad A. Myers, Carnegie Mellon University

Understanding software is a prerequisite to taking any action to change it, and this remains expensive and error-prone. Research with programmers in the field has identified significant barriers to understanding. Lab and field studies of usability barriers in understanding and using APIs will result in models of how developers understand the design of the objects. These results will lead to new software tools for API exploration and understanding. Work on enabling people to better understand and fix bugs through new visualizations and interaction techniques will allow them to ask "Why" and "Why Not" questions about their code, with the answer visualizing the responsible code and dataflow. New tools will support understanding code by others during reverse engineering activities, focusing on how data and control can flow through large and complex programs. Using static analysis techniques and a new "WhatTree" visualization will allow programmers to investigate the update paths of their programs, while supporting the programmers in collecting and keeping track of facts and hypotheses about how the program operates. The results will improve programmer success and thus their overall productivity.

Agency
National Science Foundation (NSF)
Institute
Division of Computer and Communication Foundations (CCF)
Type
Standard Grant (Standard)
Application #
0811610
Program Officer
Sol J. Greenspan
Project Start
Project End
Budget Start
2008-07-01
Budget End
2012-06-30
Support Year
Fiscal Year
2008
Total Cost
$316,000
Indirect Cost
Name
Carnegie-Mellon University
Department
Type
DUNS #
City
Pittsburgh
State
PA
Country
United States
Zip Code
15213