Home   Inte
rnet   Security       Virtual Machine   Vir
tual Memory   Processes   

GUI

UI Home

GUIHome

GUI Great Ideas

GUIDemo


Software Tools and Architectures

User Interface Management System and Toolkits:


There are software libraries and tools that support creating interfaces by writing code. The first User Interface Management System (UIMS) was William Newman's Reaction Handler created at Imperial College, London (1966-67 ). Most of the early work was done at universities. The term "UIMS" was coined by David Kasik at Boeing (1982). Early window managers such as Smalltalk (1974) and InterLisp, both from Xerox PARC, came with a few widgets, such as popup menus and scrollbars. The Xerox Star (1981) was the first commercial system to have a large collection of widgets. The Apple Macintosh (1984) was the first to actively promote its toolkit for use by other developers to enforce a consistent interface. An early C++ toolkit was InterViews, developed at Stanford (1988).

Interface Builders:

These are interactive tools that allow interfaces composed of widgets such as buttons, menus and scrollbars to be placed using a mouse. The Steamer project at BBN (1979-85) demonstrated many of the ideas later incorporated into interface builders and was probably the first object-oriented graphics system. Trillium was developed at Xerox PARC in 1981. Another early interface builder was the MenuLay system developed by Bill Buxton at the University of Toronto (1983). The Macintosh (1984) included a "Resource Editor" which allowed widgets to be placed and edited. Jean-Marie Hullot created "SOS Interface" in Lisp for the Macintosh while working at INRIA (1984) which was the first modern "interface builder." Hullot built this into a commercial product in 1986 and then went to work for NeXT and created the NeXT Interface Builder (1988), which popularized this type of tool. Now there are literally hundreds of commercial interface builders.

Component Architectures:

The idea of creating interfaces by connecting separately written components was first demonstrated in the Andrew project by Carnegie Mellon University's Information Technology Center (1983). It is now being widely popularized by Microsoft's OLE and Apple's OpenDoc architectures.