Software tools that support the design and development of interactive computing systems are an exciting possibility. The potential pay-off is great: user interface management systems, for example, promise not only to speed the process of specifying, implementing and maintaining user interface code, but also to guide the content of the user interfaces they support. As for any tool intended for human use, however, the success of software design tools will hinge on a thorough understanding of the problems they seek to address—design as it is practiced in the real world. © 1988, ACM. All rights reserved.