Software Engineering & Analysis Lab

    Today's software is large and complex, with systems consisting of millions of lines of code. New developers to a software project face significant challenges in locating code related to their maintenance tasks of fixing bugs or adding new features. Developers can simply be assigned a bug and told to fix it---even when they have no idea where to begin. In fact, research has shown that a developer typically spends more time locating and understanding code during maintenance than modifying it. We can significantly reduce the cost of software maintenance by reducing the time and effort to find and understand the code relevant to a software maintenance task.

    To help solve these problems, the Software Engineering & Analysis Lab investigates a number of diverse research areas:
    • reducing software maintenance costs through building intuitive software engineering and program comprehension tools, including
      • source code search
      • bug localization
      • extracting verb and direct object information from software artifacts
    • facilitating interactions among scientists, citizens, and policy makers in the field of sustainability

    Want to know more? See Dr. Hill's invited talk at Microsoft Research:

    Related Workshops: