CMSC838B: Zoomable User Interfaces

Nizar Habash

Summary and Analysis

Multitrees: Enriching and Reusing Hierarchical Structure

George Furnas and Jeff Zacks

 

Summary of Contributions

Motivation

The work presented in this paper is motivated by two factors, a theoretical question and a practical need. The theoretical motivation is the interest in finding structures on the structure spectrum from trees (limited choice of structure and high viewability/navigability) to general graphs (open structure and limited viewability and navigability) that balance the advantages and disadvantages of trees and graphs. The second motivation is the practical problem of the reuse of hierarchical structures. This issue arose when Bellcore was assembling documentation in a large online information resource. The problem was that a fixed structure was not suitable for all users and that the scale of the aggregate structure was too big to view and navigate through efficiently.

The Proposed Solution

The proposed solution is a data structure called a multitree. This is a directed acyclic graph that has large substructures that are trees (although not a tree itself, the descendants of any node form a tree). Multitrees allow for different abstraction in structuring (more than a tree but less than a general graph) and are relatively easy to navigate and view (more than a graph and less than a tree). A multitree also addresses the second motivation by allowing fragments of the already existing tree to be reused and organized in other trees. The fact that any node in a multitree can have multiple parents allows the content of the node to participate in different contexts. This issue of one-content/multiple-contexts is a central concept to multitrees. The availability of multiple contexts allows for more abstractions on information, the ability to see how a node's content appears in different contexts when constructing new ones and the application of conditional inheritance (the content's display depends on the context chosen). The authors describe multitrees theoretically and explore their features. They offer two propositions. The first, defines the constraints on a DAG that makes it a multitree such as being diamond free etc. And the second proposition relates multitrees to topological trees.

Viewing and Browsing

The authors discuss three different methods of viewing multitrees: The first is a centrifugal view (one central focal node). The second is a bifocal view (2 views : a focus on content and a focus on context). And the third is a single integrated view with two focal points. Fisheye views are used in all of these methods to allow viewing the whole structure or enough of it to provide a larger context. Animation is also utilized to smooth transitions.

Problems and Solutions

The authors discuss some problems with multitrees and propose solutions for them. They first discuss the condition that multitrees be diamond-free and how to accomplish that in a real-world situation (they propose virtual duplication of nodes). Secondly, they discuss the lack of a top-down structure over the set of roots (they propose an artificial leaf node that is a descendant of all roots.) A third issue they address is the viewability of the whole structure (they propose 3D views). Fourth, they address the practicality of reusing tree fragments (they point out that some parts are more usable than others and that new trees create new contexts that are new reusable fragments themselves). And finally, the authors address the issue of constructing multitrees (they mention some manual to semi-automatic methods).

Comments

  1. The paper is very much in the Furnas style (very theoretical and lacks emphasis on applicability).
  2. The examples are clear and helpful but the text seems to wander between theoretical and practical issues without a clear goal besides exploring aspects of this new structure.
  3. The paper very graciously addresses most of what attackers of multitrees would question about them: how appropriate is this structure for general systems (databases etc.) and how complicated is their interface. Unfortunately, not many of the authors' answers provide a compelling case for using multitrees.
  4. The authors mention that they have "prototype browsers" for multitrees but they did not discuss them at all.
  5. The authors do not provide a study to support or show that multitrees are actually helpful in answering the second motivation (Bellcore's online information resource). In the paper, the authors thank 4 people for their help with testing the browsers (so 6 people total actually used these browsers?!)

Questions to the Authors

  1. What is the current status of research on multitrees? Has there been any studies to support their use?
  2. Are you exploring tools for constructing in addition to navigating multitrees?
  3. Have multitrees been used in real-world systems?

Questions

  1. Compare the three methods of viewing multitrees in terms of their compactness and navigability? Do you think multitrees can scale up well?
  2. The authors mention using a 3D interface for visualizing the whole tree. What do you think the interface would look like?
  3. Can you think of database systems that are appropriate to use with multitrees?
  4. Genealogy trees are multitrees but are also bi-multi-trees (can you think of other constrained bi-/tri-/N-multitrees?
  5. How useful can multitrees be in a home PC situation? (mom's vs. dad's organization of the file system?)