User Interface Software Tools
Developing high-quality user interfaces is becoming the critical step in bringing many different computer applications to end users. Ease of learning and speed of use typically must be combined in an attractively-designed interface which appeals to application-oriented (not computer-oriented) end users. This is a complex undertaking, requiring skills of computer scientists, application specialists, graphic designers, human factors experts, and psychologists. User interface software is the foundation upon which the interface is built. The quality of the building blocks provided by the software establishes the framework within which an interface designer works. The tools should allow the designer to quickly experiment with different design approaches, and should be accessible to the non-programmer designer. In this paper we discuss important directions in software tools for building user interfaces: Unified representation serving multiple purposes; Integration with software engineering tools; Interaction programming and by-example creation of interfaces and interface components. Most of our focus is on the first two areas.