Designing and implementing a user interface (UI) is among the costliest tasks in developing interactive software systems. As a result, much work is being done in the area of User Interface Management Systems (UIMSs). These systems make it easier to develop complex user interfaces more quickly because specification of user interface dialogs is at a closer level to that at which UI designers express themselves. This paper describes the generic structure of a UIMS and several examples of previous work in the field. Many UIMSs are implemented as explicit state machines that use conventional state transition diagrams or state metaphors to specify dialogs. The rest of this paper describes the design and implementation of Statemaster, an event-driven UIMS based on statecharts. Statecharts are a hierarchical extension of state diagrams well suited for describing complex reactive systems with a compact, visual notation. These diagrams are directly implemented by Statemaster with an object-oriented architecture in the C++ programming language. Statemaster has been found to be general enough to implement a wide range of user interface dialogs. It can be used as a prototyping tool for UI development, and it is efficient enough to be used as the final, target-intent implementation.

Library of Congress Subject Headings

Interactive computer systems--Design; Human-computer interaction; Computer software--Development; Computer graphics

Publication Date


Document Type


Department, Program, or Center

Computer Science (GCCIS)


Biles, John

Advisor/Committee Member

Hengst, Acco

Advisor/Committee Member

Anderson, Peter


Note: imported from RIT’s Digital Media Library running on DSpace to RIT Scholar Works. Physical copy available through RIT's The Wallace Library at: QA76.9.I58 W445 1989


RIT – Main Campus