Date: Thu, 21 Nov 1996 22:14:44 GMT Server: Apache/1.1.1 Content-type: text/html Content-length: 10059 Last-modified: Tue, 29 Oct 1996 21:32:25 GMT Dean Jerding Home Page
[Georgia Tech][GVU][People][Search]



Dean Jerding


Dean Jerding is a Ph.D. student in the Graphics, Visualization, and Usability Center of the College of Computing at Georgia Tech.


Notice: Graduating, Seeking Employment

I plan to be graduating with my Ph.D. in the spring of 1997. I have begun my job search and am interested in a position in the software industry:

Seeking a company with which I can apply technical expertise, management knowledge, and leadership skills in an innovative technology and product development environment driven by identified or expected customer needs.

RESUME (PostScript)


Academic Background

Dean graduated from the University of Virginia in 1992 with a degree in Electrical Engineering. He then entered the Computer Science Ph.D. program here at Georgia Tech in the fall of 1992. Along the way toward his Ph.D., Dean received his M.S. in Computer Science in 1996. Dean has passed his qualifying exams, and has proposed a thesis topic:

Visualizing Patterns of Interaction in the Execution of Object-Oriented Programs

The dynamic behavior of object-oriented programs is difficult to design, implement, and modify. Understanding the interactions between classes and objects is necessary to create efficient designs and make safe modifications. This thesis work seeks to identify, visualize, and analyze recurring patterns of interaction in object-oriented program executions as a means for understanding and examining dynamic behavior. Support is directed toward design recovery, validation, and reengineering tasks, such as comparing existing design or mental model specifications with design-level specifications reverse engineered from the implementation.

Dean spent the summer of 1995 as an intern in the Software Production Research Department of (formerly) AT&T's Bell Laboratories in Naperville, IL and is currently doing part-time consulting for Scientific-Atlanta, Inc. Dean hopes to graduate in March 1997 and is looking forward to taking a job in industry (no more of this academic !#&*).


Research Interests

Dean is a member of the software visualization research group. Specifically, he is focused on visualizing object-oriented software. His other interests include information visualization, object-oriented software engineering, user-interface design, and human computer interaction. Below are some highlights of Dean's research.

Visualizing Object-Oriented Software

The object-oriented approach to program design has made a significant impact on the way software is developed and maintained. Programmers have adopted the object-oriented approach in order to take advantage of better data abstraction and encapsulation, reuse through inheritance, and polymorphism.

This work seeks to help software developers, testers, and maintainers understand the dynamics of object-oriented systems. While many OO design techniques begin with static object modeling, it is the dynamics of the object interactions that are most important to how a program operates. Of course, these interactions are the most difficult part of the system to design and understand. Additionally, these aspects of a system are often less documented than their more static counterparts. My approach is to use visualization to convey information to programmers about their systems that is not available through static analysis and dynamic profiling.

The key to my approach is the use of patterns of interaction between entities in the system as abstractions which bridge the gulf of abstraction between a program's design and its implementation. The first step in the process is to gather static information about a system, and then generate trace files which record system behavior. By analyzing the behavior, patterns of interaction can be uncovered. Using various filtering and abstraction techniques, the high-level behavior can be extracted from the low-level patterns. Graphical visualizations are used to present this information to programmers, and allow them to control the filtering and abstraction process. The abstract behavior can then be compared with design level information, such as execution scenarios, dynamic state models, or architectural models. The support is thus directed toward design recovery and validation tasks.

The technical report, "Visualizing Message Patterns in Object-Oriented Program Executions", describes our initial efforts to extract and visualize patterns of messages in OO systems.

History

In late 1993, Dean built the first prototype view for visualizing the execution of C++ programs. It is based on work done in the GROOVE system, and contains a simple view of the inheritance hierarchy and message passing in an executing program.

The second generation prototype supports multiple views of a program and its execution. A technical report is available describing this framework, "Using Visualization to Foster Object-Oriented Program Understanding".

Pertinent references include:

Jerding, Dean F., John T. Stasko, and Thomas Ball, "Visualizing Message Patterns in Object-Oriented Program Executions", Graphics, Visualization, and Usability Center, Georgia Institute of Technology, Atlanta, GA, Technical Report GIT-GVU-96-15, May 1996.

Jerding, Dean F. and Stasko, John T., "The Information Mural: A Technique for Displaying and Navigating Large Information Spaces", Proceedings of the IEEE Symposium on Information Visualization, Atlanta, GA, October 1995, p. 43-50.

Jerding, Dean F. and Stasko, John T., "Using Visualization to Foster Object-Oriented Program Understanding", Graphics, Visualization, and Usability Center, Georgia Institute of Technology, Atlanta, GA, Technical Report GIT-GVU-94-33, July 1994.


Visualizing Large Information Spaces

Information visualizations must allow users to browse information spaces and focus quickly on items of interest. Navigational techniques which utilize some representation of the entire information space provide context to support more detailed information views. However, the limited number of pixels on the screen makes it difficult to completely display large information spaces. The Information Mural is a two-dimensional, reduced representation of an entire information space that fits entirely within a display window or screen. The mural creates a miniature version of the information space using visual attributes such as grayscale shading, intensity, color, and pixel size, along with anti-aliased compression techniques. Information murals can be used as stand-alone visualizations or in global navigational views.

This technique evolved from research in visualizing the execution of large object-oriented programs (see above). Information murals of various information including text files, stock market data, sunspot data, river flow data, and geographic site locations have been created.

See the technical report below for details. A draft of the report is available on-line. Sample code of a data viewer using the mural technique is also available, just contact me.

Pertinent references include:

Jerding, Dean F. and Stasko, John T., "The Information Mural: Increasing Information Bandwidth in Visualizations", Graphics, Visualization, and Usability Center, Georgia Institute of Technology, Atlanta, GA, Technical Report GIT-GVU-96-25, October 1996.

Jerding, Dean F. and Stasko, John T., "Using Information Murals in Visualization Applications", Proceedings of the Symposium on User Interface Software and Technology (Demonstration), Pittsburgh, PA, November 1995, p.73-74.

Jerding, Dean F. and Stasko, John T., "The Information Mural: A Technique for Displaying and Navigating Large Information Spaces", Proceedings of the IEEE Symposium on Information Visualization, Atlanta, GA, October 1995, p. 43-50.


Contact Information

Graphics, Visualization, and Usability Center
College of Computing
801 Atlantic Drive
Georgia Institute of Technology
Atlanta, Georgia 30332-0280
office: (404)894-9761
email: dfj@cc.gatech.edu