ANNOUNCING DRUID VERSION 2.0

Druid - Programming by Demonstration of GUIs

The Druid User Interface Management System (UIMS) is a software development tool that assists the developer in the design and creation of Graphical User Interfaces (GUIs) for applications using the X11 window system and the OSF/Motif 1.1/1.2 toolkit. Druid provides a highly-interactive and graphical environment for creating GUIs with components such as menus, buttons, panels and scales. The developer customizes interface components by using direct-manipulation techniques and specifies interactive behaviors by demonstration to design the GUI. Druid automatically generates the code for the GUI. In addition, a built-in rule-based design assistant helps the developer create professional quality GUIs.

HIGHLIGHTS

DESCRIPTION The Druid user interface management system is a software development tool that assists the developer in designing graphical user interfaces (GUIs) for applications and automatically generates the UIL and C or C++ code for the user interface. The developer directly manipulates user interface components (menus, buttons, panels, scales etc) to design the layout of the GUI and then specifies interactive command sequences by using programming by demonstration. Based on this specification, Druid automatically generates the code for the interface. Druid manages the user interface code and enables the developer to rapidly develop and easily modify the user interface. Druid is based on the X window system Version 11 Release 4/5 and OSF/Motif Version 1.1/1.2. In addition to supporting all of the OSF/Motif widgets, Druid provides graphical editors for creating new colors, for browsing through and selecting bitmaps, and for browsing through the available fonts.

Druid actively helps the developer in creating attractive looking user interfaces. As the developer adds new widgets in the interface, Druid's rule-based design assistant guesses the new widget's relation to other widgets in the interface. These relations include various types of alignments, sizings, centerings, and attachments among widgets in the interface. Once the developer confirms Druid's guess, it automatically executes the guessed relation. The overall impact of this ability is that the developer can quickly and easily create attractive interfaces.

In Druid, interactive behaviors (command sequences) are specified through programming by demonstration. Having created the layout of the GUI, the developer demonstrates to Druid how the end-user might interact with the GUI and how the GUI should respond to user interactions. Druid watches this demonstration and automatically generates code that implements the demonstrated behavior.

Druid further facilitates exploration in interface design by allowing the intertwining of layout and behavior specifications. The developer is allowed to switch back and forth between specifications; one specification does not have to be finished before the other can be started. If during the demonstration of a behavior, the developer needs a widget that has not been created, he or she can add the required widget and continue the behavior specification.

Druid comes with a hypertext style help system which runs as a separate program. This help system links all of the OSF/Motif manual pages to each other so that the developer can easily go from one manual page to other related manual pages. The help system can be used stand-alone or with the Druid interface builder. When used with the interface builder, the two systems communicate with each other through the X-Windows ICCCM (Inter Client Communication Conventions Manual) protocol. The developer need not devote any workstation resource to the help system if help is not required. The help system can be started as and when help is required, allowing the developer to make best use of available computing resources.

Druid generates optimized UIL (User Interface Language) and C or C++ programs. UIL is a standard language for describing OSF/Motif user interfaces. The code generated by Druid can be compiled and linked with any C or C++ application. Druid generated code is not tied to any proprietary run-time library or environment. The developer is free to take and compile the Druid generated code in any environment that has the compatible X and Motif libraries.

For further information contact:


Dr. Gurminder Singh
Institute of Systems Science
National University of Singapore
Heng Mui Keng Terrace
Kent Ridge
Singapore 0511.

Email: druid-info@iss.nus.sg
Phone: (65)772-3651
FAX: (65)774-4998
TLX ISSNUS RS39988

Druid is a product of the Institute of Systems Science, NUS, Singapore. d is a product of the Institute of Systems Science, NUS, Singapore. X Window System is a trademark of the Massachusetts Institute of Technology.