Skip to main content

Über dieses Buch

This volume is a record of the Workshop on User Interface Management Systems and Environments held at INESC, Lisbon, Portugal, between 4 and 6 June 1990. The main impetus for the workshop came from the Graphics and Interaction in ESPRIT Technical Interest Group of the European Community ESPRIT Programme. The Graphics and Interac­ tion in ESPRIT Technical Interest Group arose from a meeting of researchers held in Brussels in May 1988, which identified a number of technical areas of common interest across a significant number of ESPRIT I and ESPRIT II projects. It was recognized that there was a need to share information on such activities between projects, to disseminate results from the projects to the world at large, and for projects to be aware of related activities elsewhere in the world. The need for a Technical Interest Group was confirmed at a meeting held during ESPRIT Technical Week in November 1989, attended by over 50 representatives from ESPRIT projects and the Commission of the European Communities. Information exchange sessions were organized during the EUROGRAPHICS '89 confer­ ence, with the intention of disseminating information from ESPRIT projects to the wider research and development community, both in Europe and beyond.



Invited Presentations, Discussions and Conclusions


Invited Presentations

Chapter 1. Critique of the Seeheim Model

The Seeheim Model will be discussed under the three headings:
what is the Seeheim Model;
critique of the Model;
critique of the divergencies from the Model.
Paul J. W. ten Hagen

Chapter 2. The Reference Model of Computer Graphics

This chapter discusses the Reference Model for Computer Graphics being developed within the ISO/IEC committee on Computer Graphics (ISO/IEC JTC1/SC24) and explores some relationships to User Interface Management Systems. The history of the development is presented first, as there are interesting parallels with the development of models for UIMS.
Giorgio Faconti

Chapter 3. The Architectural Bases of Design Re-use

The architecture problem for interactive systems is a hard problem. Objective, rational and well-informed analysis of interactive architectures is rare. This is not all due to sloppy thinking. Much of it is due to the many obstacles to progress in the area of software for interactive systems. The topic is inherently slippery, because it is hard to get a grip with either our hands or our feet. The minute we think we have a grasp of the main issues, new technologies rain down on us and wash away the islands of firm ground on which we are standing. Part of the problem has undoubtedly been a lack of appropriate standards. The GKS standard took a conservative approach to interactive input (Rosenthal et al. 1982), and the PHIGS standard (Shuey et al. 1986) has added no significant developments for interaction2.
Gilbert Cockton

Working Group Discussions

Chapter 4. Concepts, Methods, Methodologies Working Group

Paul ten Hagen opened the session on Monday afternoon by saying that the Working Group should concentrate on looking at existing concepts, methods and methodologies and see how we can develop ideas from these. Six papers were to be presented and the authors should concentrate on answering the two questions:
Which design techniques, toolkits, environments, UIMS are currently in use?
Who uses them, how and for what?
The presentations should concentrate on the relationship of their work to the aims of the Working Group.
P. J. W. ten Hagen, L. Bass, N. V. Carlsen, G. Cockton, G. Faconti, R. Gimnich, J. Grollmann, R. Guedj, E. Hollnagel, F. R. A. Hopgood, J. Lee, M. Martinez, F. Neelamkavil, F. Shevlin, D. Soede, B. Villalobos

Chapter 5. Current Practice Working Group

Dominique Morin opened the Working Group on Monday afternoon, saying that there were six papers for persentation and two lists of question as a starting point for discussion. The two key questions presented to the Working Group were:
Which techniques qre currently used and why?
Who uses them, how and for what?
D. Morin, J. Bangratz, R. Castaleiro, D. A. Duce, D. Ehmke, C. C. Hayball, P. Johnson, L. van Klarenbosch, E. Le Thieis, P. H. Munch, P. Sturm, D. Svanaes, S. Wilson

Chapter 6. Multi-media and Visual Programming

Papers by Bordegoni, Larsson, Grant, Herrmann, Spenke, Gomes and Howell were present to this Group and to the participants in the Working Group on Toolkits, Environments and the Object Oriented Paradigm (see Chapter 7) in common. Then the groups divided to work in parallel.
A. Kilgour, M. Bordegoni, U. Cugini, W. Doster, N. Guimaraes, G. Howell, W. Huebner, L. Larsson

Chapter 7. Toolkits, Environments and the Object Oriented Paradigm

The Working Group defined a target family of applications, Graphical Direct Manipulation Human Computer Interaction Systems.
M. Gomes, B. David, P. Grant, M. Herrmann, R. Hill, K. Molander, M. Spenke, P. Townsend

Workshop Conclusions

Chapter 8. Conclusions

The result of the Workshop was a set of general conclusions and some pointers for future research. The conclusions detailed below received general support across the Working Groups, which had achieved striking convergence on a number of issues.
David A. Duce, M. Rui Gomes, F. Robert A. Hopgood, John R. Lee

Concepts, Models and Methodologies


Chapter 9. Some Comments on the Future of User Interface Tools

The goal of this paper is to point at some of the more important deficiencies of current user interface tools. Our point of view is an industrial one. Therefore, many of the requirements to user interface tools formulated in this paper are results from experience made with customers and real use of such tools. Let us mention already here the most eminent deficiency we currently see: the missing experience with the application of user interface tools, in contrast to the large number of tools that have been developed thus far. Also, it needs to be observed that workstations in office environments are not the only field where user interfaces exist. In detail we discuss the following areas: Al-inspired techniques, multi-media dialog, the evaluation of user interface and distributed computing.
Joachim Grollman, Christoph Rumpf

Chapter 10. Modelling User Interface Software

Though a considerable effort has been spent on designing environments for the development of user interfaces no consensus has been reached on how to construct these. We feel that the lack of a common terminology has been one of the hurdles. Therefore we suggest a user interface model taxonomy could be a step towards agreeing on such a terminology.
Second, we present a model of user interface software according to this taxonomy. This model is employed by a UIMS currently being developed at the department It attempts to meet the requirements posed by the state of the art direct manipulation user interfaces and prepares for the requirements of future user interface designs. The model uses a hybrid of the existing user interface software abstractions and incorporates new approaches to the application interface model and the interaction model.
Niels Vejrup Carlsen, Niels Jørgen Christensen

Chapter 11. GMENUS: An Ada Concurrent User Interface Management System

This paper presents a concurrent User Interface Management System (UIMS) developed in Ada. Application and UIMS modules are constructed as Ada tasks, providing high flexibility and independence of control and communication. Several dialogues can be simultaneously maintained on different windows.
The dialogue model is based on state-transition diagrams which we have extended with behaviour properties. By using these properties sophisticated interaction techniques can be built. They also provide another level of concurrency inside a dialogue, thus allowing several states to be active at the same time.
Separation between user interface and application is enforced by means of linkage modules, called Application Dialogue Managers.
Margarita Martínez, Bonifacio Villalobos, Pedro de Miguel

Chapter 12. Usability Engineering and User Interface Management

Development environments for planning, designing, implementing, and testing user interfaces from a usability point of view become of growing importance. This paper outlines some anticipated cornerstones of a user interface development environment incorporating cognitive aspects. An estimate of realistic progress in the near future is given on the basis of a sample current software development process. One significant problem area deals with elaborating usability test methods and related tools for current user interface technology, focusing on direct-manipulation interfaces. As an example, the aims and present status of the Software Ergonomics project at IBM Germany’s Heidelberg Scientific Center are presented.
Rainer Gimnich

Chapter 13. Designing the Next Generation of UIMS

Some new suggestions are made relating to the structure of User Interface Management Systems (UIMS) which may be beneficial in enhancing their functionality, both with respect to the User Interface (UI) developer, and the eventual UI end-user. Advantages to the developer stem from improved specification facilities that may be provided with the new UIMS architecture, while the end-user can benefit from easier to use UIs with better response times. An explanation of UIMS model hierarchies is given, and different types of UI separation: Physical, Logical, and Virtual, are introduced. The advantages of Virtual Separation and the requirements introduced by it are outlined. The specification of the UI is discussed in relation to the new concepts involved. These issues have an impact on the architecture of the Interactive Application created with the UIMS, this is discussed along with some ideas for UI code generation.
Fergal Shevlin, Francis Neelamkavil

Chapter 14. Intelligent Interfaces and UIMS

This position paper draws attention to some fairly abstract issues concerning the relationship between the notion of a User Interface Management System (UIMS) and the requirements of advanced intelligent interfaces for Knowledge Based Systems (KBS). It addresses possible future human-computer interaction (HCI) systems, especially those integrating both natural language (NL) and graphical interaction. Interfaces like these are likely to become increasingly important, and we should be prepared to take them into account sooner rather than later. Of course, such issues will for some time remain relatively peripheral, outside the “mainstream” of interface research; but this is no excuse for ignoring them, and many of the problems are closely related to mainstream problems.
John Lee

15. Assembling a User Interface out of Communication Processes

The motivation for our interest in the workshop lies in the fact that we plan to build a new, second generation User Interface Management System (UIMS). In this paper it is our aim to indicate the direction we take. The central concept in our UIMS is concurrent processes and the semantics of their communication, described as transactions among these processes. This presumably offers an effective basis for describing user interfaces.
P. J. W. ten Hagen, D. Soede

Current Practice


Chapter 16. IUICE — An Interactive User Interface Construction Environment

An interactive environment for the development of graphical user interfaces (IUICE) is presented. The environment provides an event-based language which allows an interactive and graphical specification of user interface applications. IUICE applications consist of methods which have event inputs and event outputs and are connected together by so-called event streams. Additional graphical support for event propagation and parent-child relations is provided for all methods that have graphical responses as side-effects to the receipt of events on one of their inputs. Methods which have been created or modified by the programmer, are compiled and linked dynamically to the IUICE environment at execution time. The IUICE system is intended for the development of prototypes as well as fully specified graphical applications. A first prototype implementation of IUICE and further applications which are planned to be developed within the environment are also discussed.
Peter Sturm

Chapter 17. Dialogue Specification for Knowledge Based Systems

The computer science community has for a long time advocated the separation of the user interface from the application logic as an important principle in system development. This principle led to the birth of the Seeheim model [Pfaff, 1985] which splits interactive software into three components: the application interface, the dialogue controller and the presentation (display). Refer to figure 1 below for a diagrammatic representation of the Seeheim model. In this model, the notion of an explicit dialogue controller supports the top-down decomposition of the application task to the level of a detailed interaction specification which is independent of the detailed design of both the user interface and the application logic. Dialogue description languages based on state transition networks have been traditionally used to implement the dialogue component in the run-time system. The SET product from P.A. Consultants [Jeanes,1989] provides a good example of the use of this approach.
Clive Hayball

Chapter 18. SYSECA’s Experience in UIMS for Industrial Applications

This paper describes our experience in the domain of graphical user interfaces (UI, GUI) in multiwindowing environment. This experience was gained on applied research projects and on product developments in the Computer Integrated Manufacturing (CIM) area. The results are a UI development methodology based on a UI specification model called the Linguistic Model, adialogue specification technique extending ATNs to event driven GUI, and the RAID system composed of the Navigator and Explorer tools.
Jacqui Bangratz, Eric Le Thieis

Chapter 19. The Growth of a MOSAIC

MOSAIC is an object oriented UIMS and design environment for MS-DOS PCs. It has been in use for about five years, mostly in Scandinavia. In this paper we try to sum up the user feedback and draw some conclusions. We found that most PASCAL/C programmers initially had great problems seeing a design as a collection of interacting objects. It made them feel less “in control”. We consequently recommend to teach the programmers object oriented design before letting them implement large systems. The non-programmers often used the MOSAIC user interface editor to its limits, and in ways unintended by the tool designers. An easy-to-use, closed and consistent world of simple building blocks seems to give user interface designers the necessary security to be able to be creative and productive.
Dag Svanœs, Asbjørn Thomassen

Chapter 20. A Framework for Integrating UIMS and User Task Models in the Design of User Interfaces

This paper describes work towards the development of a framework for relating User Interface Management System (UIMS) architectural models and User Task Models (UTMs). The aim of the framework is to enable us to position features of user interface models and features of user task models in a common space. As a preliminary to the framework, we review recent work in both fields and identify the elements of user tasks and user interfaces (as reflected by UIMS architectures). We then propose an initial version of a framework to integrate the two forms of model.
Peter Johnson, Kieron Drake, Stephanie Wilson

21. PROMETHEUS: A System for Programming Graphical User Interfaces

This paper describes Prometheus, a system for programming graphical user interfaces. It starts with the description of the projects and their goals, which resulted in Prometheus predecessors. Experiences with them and reasons for combining them to Prometheus are reported. The Prometheus concepts windows, frames, frame contents, control and dialogue management are described.
Dierk Ehmke

Visual Programming, Multi-Media and UI Generators


Chapter 22. An Environment for User Interface Development Based on the ATN and Petri Nets Notations

This paper presents two UIMS prototypes: GIGA (Generatore di Interfacce Grafico ed Automatico) and GIGA+ which provide an environment for defining and handling different types of man-machine dialogue.
Both tools are based on the user interface Seeheim model and the System Builder approach which splits user interface construction in two phases: specification and automatic code generation. In order to support the user interface designer during these activities graphic and easy-to-use modules have been developed.
Main emphasis has been put on the Dialogue Control component. Different notations have been adopted: ATN (Augmented Transition Network) notation to support sequential dialogue in GIGA and Petri Nets notation to support multi-threaded dialogues in GIGA+.
Even if either GIGA or GIGA+ are based on the same philosophy, different architectural solutions have been adopted: at source code generation level (interpreter vs compiler) and at run time execution level (single process vs multi-processes).
The tools have been implemented in Unix and X-Window environment.
M. Bordegoni, U. Cugini, M. Motta, C. Rizzi

Chapter 23. Creating Interaction Primitives

During the use of our User Interface Management System (UIMS) TeleUSE1 we have recognized a strong need for creating new interaction objects. We want to avoid requiring general-purpose programming skill of the designer, which is done today. If the designer can use a direct manipulative editor most of the time, and sometimes supply relations textually, we have reached that goal. A constraint solver with an intuitive interface is proposed as the solution to this problem.
Leif Larsson

Toolkits, Environments and the OO Paradigm


Chapter 24. The Composite Object User Interface Architecture

In order to provide effective support for the development of direct manipulation interfaces, the Tube project proposes an alternative to the widely discussed linguistic and Seeheim models. The alternative structure, called the Composite Object Architecture (COA), is based on the concept of User Interface Object.
The architecture of the Tube environment has been described in (Hill and Herrmann 89), the methodological basis of the Composite Object Architecture is discussed in (Herrmann and Hill 89.b) and as reported in (Kuntz and Melchert 89 a, b and c) the implementation of a graphical direct manipulation interface to a KBMS has been based on the COA.
The purpose of this paper is to describe the principles of the COA, to illustrate it on a non trivial example and to make its advantages explicit.
Ralph D. Hill, Marc Herrmann

Chapter 25. An Overview of GINA — the Generic Interactive Application

GINA is an object-oriented application framework written in CommonLisp and CLOS. It is based on an interface between CommonLisp and the OSF/Motif software. The generic interactive application is executable and has a complete graphical user interface, but lacks any application-specific behaviour. New applications are created by defining subclasses of GINA classes and adding or overriding methods. The standard functionality of a typical application is already implemented in GINA. Only the differences to the standard application have to be coded. For example, commands for opening, closing, saving and creating new documents are already available in GINA. The programmer only has to write a method to translate the document contents into a stream of characters and vice versa.
Motif widgets are encapsulated in CLOS objects. Instantiating an object implicitly creates a widget within OSF/Motif. Graphic output and direct manipulation with individual graphical feedback are also supported.
The combination of framework concepts, the flexible Motif toolkit, and the interactive Lisp environment leads to an extremely powerful user interface development environment (UIDE). There is already a dozen demo applications including a Finder to start applications and documents, a simple text editor and a simple graphic editor, each consisting of only a few pages of code. Even the first version of an interface builder, which treats Motif widgets like MacDraw objects, could be completed within a few days. The interface builder is not just a demo, but an important component of our UIDE: The resources of each widget can be modified by a dialog box, and Lisp code to be used in connection with GINA can be generated.
A version of GINA for C++ is currently under development.
Michael Spenke, Christian Beilken

Chapter 26. The Use of OPEN LOOK/Motif GUI Standards for Applications in Control System Design

The emergence of powerful graphics workstations has brought about the possibility of implementing sophisticated graphics based user interfaces (GUI’s). In this paper we discuss aspects of the design and specification of a generic graphical user interface for control systems design and the emerging standards for user interface implementation that underlie it, with special reference to the OPEN LOOK and Motif standards. The use of these interface standards in future design environments should enable the rapid development of novel design methods and at the same time enforce a consistent ‘look and feel’ across applications. We discuss the problems faced by the implementor in developing applications for different interface standards and also comment on the effects these different GUI standards have on the user’s view.1
H. A. Barker, M. Chen, P. W. Grant, C. P. Jobling, A. Parkman, P. Townsend

Chapter 27. The OO-AGES Model — An Overview

The Object Oriented Paradigm is proving to be the best approach for the creation of Interactive Graphical Applications. Up to now several Object Oriented Interactive Graphic Applications were developed but no global Model has been presented.
Mario Rui Gomes, João Carlos Lourenço Fernandes


Weitere Informationen