Adoption-Centric
Software Engineering

Home

Background

ACSE v1.0 Projects




The ACRE SVG Visualization Engine (ASVE)

Jon Pipitone, University of Toronto, Canada
Holger Kienle, University of Victoria, Canada

Contents

What is ASVE?

  • A graph visualization engine for exploring and annotating software artifacts
  • Built exclusively with SVG and ECMAScrip
  • Embeddable into "host" applications such as Web browsers and office tools (e.g. PowerPoint, Excel, Word)
  • A live document component
  • A client for the ACRE Persistence Engine

Why SVG?

Scalable Vector Graphics (SVG) is an XML grammar for Web graphics from the W3C. Advantages of SVG over other image formats are:

  • infinite zooming with crisp edges (i.e., no "jaggies")
  • embeddable in office applications, web pages, and XML documents
  • (open source) viewers for common platforms
  • XML-based format that is non-proprietary, human-readable, and searchable
  • wide selection of tools available to edit and transform (XSLT, XQuery, etc.)
  • small file sizes for high resolution graphics easy manipulation through standard APIs, such as the DOM API

What makes ASVE a good ACRE tool?

  • Embeddable
    Since ASVE is built using pure SVG it can easily be embedded into project documentation: PowerPoint for presentations, HTML pages for on-line browsing, Word documents for hard-copy documentation, and XML documents for further post-processing.
  • Live and Interoperable
    ASVE can act as a lightweight, platform independent client of the ACRE Persistance Engine. Regardless of the "hosting" application, ASVE can alway connect to its data in the ACSE repository.
  • Rich Knowledge Store
    With ASVE, a single file encapsulates a snapshot of a Rigi reverse engineering view along with all the graph manipulation functionality needed for further exploration (see "ASVE Architecture"

ASVE Architecture

Illustration of the ASVE architecture.

ASVE in Internet Explorer

The illustration below shows a Rigi view (a call-graph of a ray-tracer application) in ASVE. Here, ASVE is "hosted" by your browser. You can can filter, rearrange, layout, annotate, display attributes, and change the visual characteristics of nodes and arcs in order to better understand the architecture of the software system. Let's go and explore the system.