What Every Information Systems Developer Should Know About Hypertext

Michael Bieber
Institute for Integrated Systems Research, New Jersey Institute of Technology
University Heights - Newark, New Jersey 07102 - USA
telephone: (201) 596-2681 - facsimile: (201) 596-5777
electronic mail: bieber@cis.njit.edu
WWW URL: http://hertz.njit.edu/~bieber/bieber.html

My goal in writing this piece is to convince system developers to incorporate hypertext concepts in their design process and hypertext features in their applications. Why hypertext(1)? Why system developers? Why discuss the design process separate from the actual product?

The concept of hypertext grows from a simple but fundamental idea: information is interrelated. The associative link, which so often characterizes hypertext, embodies this idea by connecting any two pieces of information somehow related. The sophistication - and potential - of hypertext lies in applying the idea, i.e., in identifying relationships, items to relate, and how users should access them.

1. What characterizes a useful relationship?

Assume the user selects an item of interest in a computer display. Each of the following six relationships gives the user access to some aspect of that item, which he or she may not have ordinarily.

2. Which items should have these relationships?

Taking a "user knows best" viewpoint prescribes making every object on the computer screen selectable - data values, calculation results, labels, titles, report text, entire documents, and so forth - and therefore a candidate for annotation and other relationships. Furthermore, users could access meta-level relationships: every relationship listed above could apply to its own type and to every other. For example, team members should be able to annotate each others' annotations. Users - especially developers within a hypertext-supported development environment - should be able to annotate a structural relationship or see which processes are interrelated. Similarly, they should have access to all occurrences of any relationship in the system.

Providing such information supports the goal of many organizations to empower lower-level employees with decision making capabilities. On the other hand, in certain domains developers may deem such access irrelevant or even distracting to the user's task, possibly slowing down time-critical operations. Thus, while a hypertext analysis helps developers think about an application more broadly, in the end the developer must decide which additional information is (in)appropriate.

3. How should users access these relationships and the items they associate?

The user typically selects an item on the computer screen to follow its link or chooses from a list of available links. (One may have to rank, filter or layer links if their magnitude overwhelms the user.) If a link's purpose or destination is not intuitive, its author or the system builder should label it in some way. Hypertext access includes navigational, annotation and view-oriented features. Navigation transports the user among information items. Its features include browsing (following a relationship's link), backtracking, query based on content, and query based on interrelationships. Annotation includes comments, bookmarks (hot list items) and user-declared links. View-oriented features enable navigation through local and global overviews, and along recommended paths and guided tours of interrelated items. An analyst, for example, could prepare an annotated guided tour to explain a completed analysis or other process.

Two important consequences for systems development follow from the hypertext concept. First, we can define hypertext both as the science of relationships and as a technology for information access and relationship management (2). Second, a hypertext philosophy or vantage point emerges for thinking about applications.

The traditional design methodologies of functional decomposition and data flow analysis help us think about a system in terms of its processes and how information passes through it. An object-oriented viewpoint considers the system in terms of its components and component hierarchies, and the operations one can apply to each. A hypertext philosophy helps us think about a system in terms of the relationships among its elements and processes, focusing on how users gain access to them. A hypertext analysis could supplement the developer's standard design methodology, broadening the scope of objects and relationships a system encompasses. In addition, hypertext functionality could supplement the system's feature set.

One even could use hypertext to integrate independent applications for interrelated tasks. Consider the query "how many trucks travel on which routes between Newark and Philadelphia?" The freight databases currently available only contain commodity flows among regions in tons per item. To answer, the analyst normally would extract truck tonnage information from a series of these databases, use an analysis program to convert tonnage to numbers of trucks based on a commodity density analysis, use a second route mapping analysis program, and generate the final report for display on a word processor. A hypertext engine could manage the task for the analyst (as a process relationship), passing appropriate outputs of one application as inputs to the next. At any point, for any component, the user could see the six relationships discussed earlier, including for example, how a particular datum is processed in each of the independent applications.

Lastly, one can evaluate an information system from a hypertext viewpoint. For every object visible on the screen, can the user easily gain access to all related information? Can the user clearly "see" how the information is related and under what context? Do the relationship and context remain clear once the user views the related information? Do the users of a hypertext-enhanced system understand the system, its components and its results, and have confidence in these?

With the increased consciousness of hypertext which the World-Wide Web has brought, developers and the organizations for whom they work have never been more open to considering their computer applications in a new light. Yet few guidelines exist for assisting developers in providing access, i.e., in deciding what to link. In addition, the major hypertext delivery vehicle today, the World-Wide Web, provides only rudimentary support for hypertext functionality. Developers must represent all types of interrelationships and construct all advanced hypertext functionality (e.g., guided tours) from scratch using one simple anchor type and single-step forward browsing. And thus, while hypertext as a concept has made major contributions to the fields of collaboration, technical communications and literature, and while both outstanding research-oriented and commercially-available hypertext environments exist, the mainstream information systems development and software engineering fields, for the most part, have not taken advantage of hypertext concepts.

I strongly encourage systems analysts and developers to consider their applications from a hypertext vantage point. Hypertext relationships and functionality give users a greater feeling of control within an application, and a greater understanding of its domain, components and results. A hypertext analysis should play a part in the design of every application with user interaction, and hypertext access should supplement many application feature sets.

References

1) M. Bieber and C. Kacmar, "Designing Hypertext Support for Computational Applications", Communications of the ACM 38(8), 1995, 99-107.

2) M. Bieber and S. O. Kimbrough, "On Generalizing the Concept of Hypertext", Management Information Systems Quarterly 16(1), 1992, 77-93.

3) M. Bieber, "Automating Hypermedia for Decision Support", Hypermedia 4(2), 1992, 83-110.

4) T. Isakowitz, E. Stohr and P. Balasubramanian, "RMM: A Methodology for Structuring Hypermedia Design", Communications of the ACM 38(8), 1995, 34-44.


1 Note that the term hypermedia nominally applies hypertext concepts to multiple media. Many treat the terms as synonymous.

2 This follows from the innovative work in hypermedia design done by Tomas Isakowitz at New York University. Institute for Integrated Systems Research - Technical Report #95-30


This paper appears in the Proceedings of the Second International Workshop on Incorporating Hypertext Functionality into Software Systems, held in conjunction with the ACM Hypertext '96 conference, Washington, U.S.A.