HCI Bibliography Home | HCI Journals | About TOG | Journal Info | TOG Journal Volumes | Detailed Records | RefWorks | EndNote | Hide Abstracts
TOG Tables of Contents: 05060708091011

ACM Transactions on Graphics 5

Editors:R. Daniel Bergeron
Dates:1986
Volume:5
Publisher:ACM
Standard No:ISSN 0730-0301; T 385 A23
Papers:15
Links:Table of Contents
  1. TOG 1986 Volume 5 Issue 1
  2. TOG 1986 Volume 5 Issue 2
  3. TOG 1986 Volume 5 Issue 3
  4. TOG 1986 Volume 5 Issue 4

TOG 1986 Volume 5 Issue 1

Research Contributions

Boolean Operations of 2-Manifolds through Vertex Neighborhood Classification BIB 1-29
  Martti Mantyla
An Experimental Evaluation of Computer Graphics Imagery BIB 30-50
  Gary W. Meyer; Holly E. Rushmeier; Michael F. Cohen; Donald P. Greenberg; Kenneth E. Torrance
Stochastic Sampling in Computer Graphics BIB 51-72
  Robert L. Cook

TOG 1986 Volume 5 Issue 2

Editorial

Guest Editor's Introduction: Special Issue on User Interface Software BIBA 75-78
  James Foley
Designing and implementing high-quality graphic user-computer interfaces has been a challenging, labor-intensive process: consequently, many contemporary interactive graphics systems lack the accoutrements required of easy-to-learn, fast-to-use interfaces. There are several reasons for the relative dearth of high-quality user interfaces. First, the computational resources of memory, processor cycles, and high bandwidth between computer and display that such interfaces require have until recently been too expensive. Furthermore, we are only beginning to understand what constitutes a good user interface and the management processes required to create such interfaces. Finally, and central to this special issue, there has been an insufficient software foundation upon which to build the interfaces. Too many wheels have had to be reinvented, so that the people resources remaining after the wheels were created have sufficed to build only bicycles and wagons, rather than motorcycles and cars. User interface software can eliminate the need to build yet another wheel, by providing higher level user interface abstractions for the applications programmer.

Research Contributions

The X Window System BIBAK 79-109
  Robert W. Scheifler; Jim Gettys
An overview of the X Window System is presented, focusing on the system substrate and the low-level facilities provided to build applications and to manage the desktop. The system provides high-performance, high-level, device-independent graphics. A hierarchy of resizable, overlapping windows allows a wide variety of application and user interfaces to be built easily. Network-transparent access to the display provides an important degree of functional separation, without significantly affecting performance, which is crucial to building applications for a distributed environment. To a reasonable extent, desktop management can be custom-tailored to individual environments, without modifying the base system and typically without affecting applications.
Keywords: Computer-communication networks, Network protocols, Protocol architecture, Computer-communication networks, Distributed systems, Distributed applications, Operating systems, Communication management, Network communication, Terminal management, Models and principles, User/machine systems, Human factors, Computer graphics, Graphics systems, Distributed/network graphics, Computer graphics, Graphics utilities, Graphics packages, Software support, Computer graphics, Methodology and techniques, Device independence, Interaction techniques, Design, Experimentation, Human factors, Standardization, Virtual terminals, Window managers, Window systems
Automating the Design of Graphical Presentations of Relational Information BIBAK 110-141
  Jock Mackinlay
The goal of the research described in this paper is to develop an application-independent presentation tool that automatically designs effective graphical presentations (such as bar charts, scatter plots, and connected graphs) of relational information. Two problems are raised by this goal: The codification of graphic design criteria in a form that can be used by the presentation tool, and the generation of a wide variety of designs so that the presentation tool can accommodate a wide variety of information. The approach described in this paper is based on the view that graphical presentations are sentences of graphical languages. The graphic design issues are codified as expressiveness and effectiveness criteria for graphical languages. Expressiveness criteria determine whether a graphical language can express the desired information. Effectiveness criteria determine whether a graphical language exploits the capabilities of the output medium and the human visual system. A wide variety of designs can be systematically generated by using a composition algebra that composes a small set of primitive graphical languages. Artificial intelligence techniques are used to implement a prototype presentation tool called APT (A Presentation Tool), which is based on the composition algebra and the graphic design criteria.
Keywords: Software engineering, Tools and techniques, User interfaces, Models and principles, User/machine systems, Human information processing, Information storage and retrieval, Systems and software, Artificial intelligence, Applications and expert systems, Computer graphics, Methodology and techniques, Device independence, Ergonomics, Algorithms, Design, Human factors, Languages, Theory, Automatic generation, Composition algebra, Effectiveness, Expressiveness, Graphic design, Information presentation, Presentation tool, User interface
An Object-Oriented Approach to Graphical Interfaces BIBAK 142-172
  Paul S. Barth
An object-oriented system for building graphical interfaces to programs is discussed. The system, called GROW, facilitates the process of creating interfaces that are highly interactive (including direct manipulation and animation), rich in layout structure, and effectively reusable across applications. These properties are achieved through three techniques: object-based graphics with taxonomic inheritance, interobject relationships such as composition and graphical dependency, and separation of the interface and application. Experience with interfaces for several applications has provided insights on the effectiveness of these techniques. First, object-oriented programming yields significant leverage on specializing and reusing interfaces. Second, layout constraints (such as maintaining the connectivity of a graph) can be managed with simple data dependencies among the attributes of the graphical objects. Finally, separating the interface and application is essential to reusing interface components. This paper describes the techniques in detail, gives examples of interfaces built with GROW, and summarizes experiences using GROW with a variety of applications.
Keywords: Programming languages, Language classifications, Extensible languages, Computer graphics, Graphics utilities, Software support, Computer graphics, Methodology and techniques, Languages, Languages, Graphical constraints, Graphical interfaces, Object-oriented graphics, Software reusability

TOG 1986 Volume 5 Issue 3

Editorial

Guest Editor's Introduction: Special Issue on User Interface Software BIBA 176-178
  James Foley
Designing and implementing high-quality graphic user-computer interfaces has been a challenging, labor-intensive process: consequently, many contemporary interactive graphics systems lack the accoutrements required of easy-to-learn, fast-to-use interfaces. There are several reasons for the relative dearth of high-quality user interfaces. First, the computational resources of memory, processor cycles, and high bandwidth between computer and display that such interfaces require have until recently been too expensive. Furthermore, we are only beginning to understand what constitutes a good user interface and the management processes required to create such interfaces. Finally, and central to this special issue, there has been an insufficient software foundation upon which to build the interfaces. Too many wheels have had to be reinvented, so that the people resources remaining after the wheels were created have sufficed to build only bicycles and wagons, rather than motorcycles and cars. User interface software can eliminate the need to build yet another wheel, by providing higher level user interface abstractions for the applications programmer.

Research Contributions

Supporting Concurrency, Communication, and Synchronization in Human-Computer Interaction -- The Sassafras UIMS BIBAK 179-210
  Ralph D. Hill
Sassafras is a prototype User Interface Management System (UIMS) specifically designed to support a wide range of user interface styles. In particular, it supports the implementation of user interfaces where the user is free to manipulate multiple input devices and perform several (possibly related) tasks concurrently. These interfaces can be compactly represented and efficiently implemented without violating any of the rules of well-structured programming. Sassafras also supports elaborate run-time communication and synchronization among the modules that make up the user interface. This is needed to implement user interfaces that have context-sensitive defaults, and it simplifies recovery from semantic errors.
   Sassafras is based on a new language for specifying the syntax of human-computer dialogues known as Event-Response Language (ERL) and a new run-time structure and communication mechanism for UIMSs known as the Local Event Broadcast Method (LEBM). Both ERL and LEBM are described in detail, and implementation techniques are presented. The effectiveness of Sassafras is demonstrated by describing two interfaces that have been implemented with Sassafras.
Keywords: Computer graphics, Methodology and techniques, Languages, Interaction techniques, Information systems, User/machine systems, Human factors, Software engineering, Tools and techniques, User interfaces, Human factors, Concurrency, Message passing, User interface management systems, User interfaces
Rooms: The Use of Multiple Virtual Workspaces to Reduce Space Contention in a Window-Based Graphical User Interface BIBAK 211-243
  D. Austin, Jr. Henderson; Stuart K. Card
A key constraint on the effectiveness of window-based human-computer interfaces is that the display screen is too small for many applications. This results in "window thrashing," in which the user must expend considerable effort to keep desired windows visible. Rooms is a window manager that overcomes small screen size by exploiting the statistics of window access, dividing the user's workspace into a suite of virtual workspaces with transitions among them. Mechanisms are described for solving the problems of navigation and simultaneous access to separated information that arise from multiple workspaces.
Keywords: Operating systems, Storage management, Virtual memory, Models and principles, User/machine systems, Human factors, Human information processing, Computer graphics, Methodology and technique, Ergonomics, Interaction techniques, Design, Human factors, Theory, Bounded locality interval, Desktop, Locality set, Project views, Resource contention, Rooms, Virtual workspace windows, Window manager, Working set

Practice and Experience

A Survey of Three Dialogue Models BIBAK 244-275
  Mark Green
A dialogue model is an abstract model that is used to describe the structure of the dialogue between a user and an interactive computer system. Dialogue models form the basis of the notations that are used in user interface management systems (UIMS). In this paper three classes of dialogue models are investigated. These classes are transition networks, grammars, and events. Formal definitions of all three models are presented, along with algorithms for converting the notations into an executable form. It is shown that the event model has the greatest descriptive power. Efficient algorithms for converting from the transition diagram and grammar models to the event model are presented. The implications of these results for the design and implementation of UIMSs are also discussed.
Keywords: Software engineering, Tools and techniques, User interfaces, Computation by abstract devices, Models of computation, Automata, Computer graphics, Methodology and techniques, Languages, Algorithms, Design, Human factors, Theory, Dialogue models, Human-computer interaction, User interface management

TOG 1986 Volume 5 Issue 4

Editorial

Guest Editor's Introduction: Special Issue on User Interface Software BIBA 279-282
  James Foley
Designing and implementing high-quality graphic user-computer interfaces has been a challenging, labor-intensive process: consequently, many contemporary interactive graphics systems lack the accoutrements required of easy-to-learn, fast-to-use interfaces. There are several reasons for the relative dearth of high-quality user interfaces. First, the computational resources of memory, processor cycles, and high bandwidth between computer and display that such interfaces require have until recently been too expensive. Furthermore, we are only beginning to understand what constitutes a good user interface and the management processes required to create such interfaces. Finally, and central to this special issue, there has been an insufficient software foundation upon which to build the interfaces. Too many wheels have had to be reinvented, so that the people resources remaining after the wheels were created have sufficed to build only bicycles and wagons, rather than motorcycles and cars. User interface software can eliminate the need to build yet another wheel, by providing higher level user interface abstractions for the applications programmer.

Research Contributions

A Specification Language for Direct-Manipulation User Interfaces BIBAK 283-317
  Robert J. K. Jacob
A direct-manipulation user interface presents a set of visual representations on a display and a repertoire of manipulations that can be performed on any of them. Such representations might include screen buttons, scroll bars, spreadsheet cells, or flowchart boxes. Interaction techniques of this kind were first seen in interactive graphics systems; they are now proving effective in user interfaces for applications that are not inherently graphical. Although they are often easy to learn and use, these interfaces are also typically difficult to specify and program clearly.
   Examination of direct-manipulation interfaces reveals that they have a coroutine-like structure and, despite their surface appearance, a peculiar, highly moded dialogue. This paper introduces a specification technique for direct-manipulation interfaces based on these observations. In it, each locus of dialogue is described as a separate object with a single-thread state diagram, which can be suspended and resumed, but retains state. The objects are then combined to define the overall user interface as a set of coroutines, rather than inappropriately as a single highly regular state transition diagram. An inheritance mechanism for the interaction objects is provided to avoid repetitiveness in the specifications. A prototype implementation of a user-interface management system based on this approach is described, and example specifications are given.
Keywords: Software engineering, Tools and techniques, User interfaces, Logics and meanings of programs, Specifying and verifying and reasoning about programs, Specification techniques, Models and principles, User/machine systems, Human factors, Design, Human factors, Languages, Direct manipulation, Specification language, State transition diagram, User-interface management system (UIMS)
MIKE: The Menu Interaction Kontrol Environment BIBAK 318-344
  Dan R., Jr. Olsen
A User Interface Management System (UIMS) called MIKE that does not use the syntactic specifications found in most UIMSs is described. Instead, MIKE provides a default syntax that is automatically generated from the definition of the semantic commands that the interaction is to support. The default syntax is refined using an interface editor that allows modification of the presentation of the interface. It is shown how active pictures can be created by adding action expressions to the viewports of MIKE's windowing system. The implications of MIKE's command-based dialogue description are discussed in terms of extensible interfaces, device and dialogue-style independence, and system support functions.
Keywords: Software engineering, Design, Methodologies, Software engineering, Miscellaneous, Rapid prototyping, Computer graphics, Methodology and techniques, Interaction techniques, Design, Human factors, Dialogue design tools, Human-computer interfaces, User interface management systems

Practice and Experience

Constraint-Based Tools for Building User Interfaces BIBAK 345-374
  Alan Borning; Robert Duisberg
A constraint describes a relation that must be maintained. Constraints provide a useful mechanism to aid in the construction of interactive graphical user interfaces. They can be used to maintain consistency between data and a view of the data, to maintain consistency among multiple views, to specify layout, and to specify relations between events and responses for describing animations of interactive systems and event-driven simulations. Object-oriented techniques for constraint representation and satisfaction are presented, and a range of examples that demonstrate the practical use of static and temporal constraints for such purposes is presented. These examples include animations of algorithms and physics simulations, and constructing user-interface elements such as file browsers, views onto statistical data, and an interactive monitor or a simulated operating system.
Keywords: Software engineering, Tools and techniques, User interfaces, Software engineering, Miscellaneous, Rapid prototyping, Programming languages, Language classifications, Nonprocedural languages, Computer graphics, Methodology and techniques, Languages, Algorithms, Languages, Animation, Consistency of multiple views, Constraints, Constraint satisfaction, Graphical programming, Object-oriented programming, Temporal constraints, User-interface management systems, User interfaces