2002 Forum Home

Program

  • Keynote
  • Posters and Demos
  • Registration

    Accommodations

    Directions

    For Posters and Demonstrators

    For External Advisory Committee (EAC)

    ISR Home

     


    Poster: SoftFlow: Visualizing the Evolution of Static Dependency Graphs

    Student: Jennifer Bevan

    Advisor: E. James Whitehead

    Abstract: This research promotes system understanding by providing an intuitive visualization of unstable regions within a software package. These unstable regions are defined by program segments that have changed together multiple times, as archived by the software configuration management repository (SCM repository). Highly unstable regions are expected at interfaces and in data modules that are not designed and implemented with a consideration of expected requirement changes. The knowledge of the existence and location of such regions can promote proactive refactoring of the system.

    Current research in static software analysis and software evolution is merged with an existing hyperbolic 3D visualization technique as the framework for this research. A time-series of dependence graphs is created using the source code from the SCM repository, any one of which can be displayed as a hyperbolic 3D graph embedded within a sphere. The visualization layout manager, which uses a semantically meaningful spanning tree as a guide, causes dependence-related subgraphs to be placed within a conic region in the sphere. The visualization for identifying unstable regions uses a seismology-based paradigm. Subgraph nodes can be projected onto the surface of the sphere and grouped into "continents", such that modular systems will show distinct continents while nonmodular systems will show many separate islands. Each change checked into the repository can be considered as an "earthquake", and nodes involved in the change can be connected on the surface as a "fault line". The brightness of a fault line can be increased with each additional change, thereby leading the user to quickly distinguish regions of severe instability from those with only occasional changes.

    Future work involves implementing the surface visualization, studying which types of dependence graphs work best for subgraph grouping, and further specifying the type of data to be shown in the detail visualization for a single fault line. Eventually, metrics related to earthquake magnitude, depth, and type can be described. Methods of normalizing per-user checkin patterns should also be investigated, as should filtering the visualized data based on user, time interval, or user-specified attributes.

     



    Home | About ISR | News | Research | Events | People | Sponsors | Sponsorship | Email List | Directions | Contact Info | Other Links | Site Map


    UC Institute for Software Research
    ICS 2, Building 304
    University of California, Irvine
    Irvine, CA 92697-3425
    Send comments to isr@uci.edu