Reification, Polymorphism and Reuse:
Three Principles for Designing Visual Interfaces

Michel Beaudouin-Lafon and Wendy E. Mackay

University of Aarhus
Dept of Computer Science
Aabogade 34
8200 Aarhus N - Denmark,

Proc. Advanced Visual Interfaces, AVI 2000,
Palermo (Italy), 24-26 May 2000, ACM Press, 2000, p. 102-109.


This paper presents three design principles to support the development of large-scale applications and take advantage of recent research in new interaction techniques: Reification turns concepts into first class objects, polymorphism permits commands to be applied to objects of different types, and reuse makes both user input and system output accessible for later use. We show that the power of these principles lies in their combination. Reification creates new objects that can be acted upon by a small set of polymorphic commands, creating more opportunities for reuse. The result is a simpler yet more powerful interface.

To validate these principles, we describe their application in the redesign of a complex interface for editing and simulating Coloured Petri Nets. The cpn2000 interface integrates floating palettes, toolglasses and marking menus in a consistent manner with a new metaphor for managing the workspace. It challenges traditional ideas about user interfaces, getting rid of pull-down menus, scrollbars, and even selection, while providing the same or greater functionality. Preliminary tests with users show that they find the new system both easier to use and more efficient.

Keywords: Design principles, reification, polymorphism, reuse, interaction model, direct manipulation, instrumental interaction.

PDF file (295 Kb) - ACM DL citation page

© 2000, Association for Computing Machinery

Permission to make digital or hard copies of all or part of this work for personal or classroon use is granted without fee provided that copies are not made or distributed for profit or commercial advantage, and that copies bear this notice and the full citation on the first page. To copy otherwise, to republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee.

See also: CHI 2000 paper on Instrumental Interaction

See also: DIS 2000 paper on Design process

See also: UIST 2000 paper on Architecture and implementation

See also: PN 2000 paper for a summary of the CPN2000 project