[PRL] PhD Thesis Defense: Mark A. Foltz, Thursday August 14, 10:00 am

Mitchell Wand wand at ccs.neu.edu
Fri Aug 1 16:08:07 EDT 2003


fwiw...  --Mitch 

------- start of forwarded message (RFC 934 encapsulation) -------
Mime-Version: 1.0 (Apple Message framework v552)
Content-Type: text/plain; charset=US-ASCII; format=flowed
Content-Transfer-Encoding: 7bit
Return-Path: <mfoltz at ai.mit.edu>
Delivered-To: wand at ccs.neu.edu
From: "mark a. foltz" <mfoltz at ai.mit.edu>
To: Mark Foltz <mfoltz at ai.mit.edu>
Subject: PhD Thesis Defense:  Mark A. Foltz, Thursday August 14, 10:00 am
Date: Fri, 1 Aug 2003 14:52:03 -0400


      *** THESIS DEFENSE *** *** THESIS DEFENSE *** *** THESIS DEFENSE 
***

                                 Mark A. Foltz
                                   MIT CSAIL

                         Thursday, August 14, 10:00 am
                          NE43, Eighth Floor Playroom

              Dr. Jones: A Software Design Explorer's Crystal Ball


Most of software design is redesign.  Redesign in the normal course of
design happens when the software becomes difficult to maintain and the
problem it is intended to solve has changed.  Although software
redesign is necessary, frequent, and pervasive, there is a dearth of
tools that help programmers do it.  Instead, programmers primarily use
pen and paper, away from the computer where tools could help the most.
To address this shortcoming, I have developed Dr.  Jones, a redesign
assistant for Java programs.

Dr. Jones diagrams the class structure of a Java program and allows
the programmer to modify that design by applying refactorings.
Refactorings are localized patterns of structural change intended to
improve a program's design, without changing its observable behavior.
With Dr. Jones, the programmer can explore the design space of the
program, inspect future designs as visual diagrams, and get design
assistance to guide his refactoring choices.

As the programmer explores designs, Dr. Jones explicitly maps the
design space he traverses. This map lets him revisit any prior design
and branch to explore an alternative design path, without having to
explicitly manage versions of the program.

Dr. Jones is distinguished from other refactoring tools by separating
the tasks of developing an improved design through design exploration,
from transforming the source code to execute design changes.  It
does so by deriving and using an abstract representation of the
program that captures the essential information needed for design
exploration, while omitting its source-level details.  Dr. Jones also
characterizes refactorings in a novel manner particularly suited for
interactive design exploration.  Twenty-two such refactorings are
incorporated into the Dr. Jones prototype.

This research also contributes user interface techniques for software
design exploration, including multiple-level-of detail rendering for
software design diagrams, and a dialogue management interface for Dr.
Jones' design assistance.


Thesis Committee: Randy Davis, Supervisor
                   Daniel Jackson, Reader
                   Howie Shrobe, Reader
------- end -------


More information about the PRL mailing list