Abstract
A user interface software tool helps developers design and implement the user interface. Research on past tools has had enormous impact on today's developers—virtually all applications today are built using some form of user interface tool. In this article, we consider cases of both success and failure in past user interface tools. From these cases we extract a set of themes which can serve as lessons for future work. Using these themes, past tools can be characterized by what aspects of the user interface they addressed, their threshold and ceiling, what path of least resistance they offer, how predictable they are to use, and whether they addressed a target that became irrelevant. We believe the lessons of these past themes are particularly important now, because increasingly rapid technological changes are likely to significantly change user interfaces. We are at the dawn of an era where user interfaces are about to break out of the “desktop” box where they have been stuck for the past 15 years. The next millenium will open with an increasing diversity of user interface on an increasing diversity of computerized devices. These devices include hand-held personal digital assistants (PDAs), cell phones, pages, computerized pens, computerized notepads, and various kinds of desk and wall size-computers, as well as devices in everyday objects (such as mounted on refridgerators, or even embedded in truck tires). The increased connectivity of computers, initially evidenced by the World Wide Web, but spreading also with technologies such as personal-area networks, will also have a profound effect on the user interface to computers. Another important force will be recognition-based user interfaces, especially speech, and camera-based vision systems. Other changes we see are an increasing need for 3D and end-user customization, programming, and scripting. All of these changes will require significant support from the underlying user interface sofware tools.
- BmR, E. A., STONE, M. C., PmR, K., BUXTON, W., AND DEROSE, T. D. 1993. Toolglass and magic lenses: The see-through interface. In Proceedings of the ACM Conference on Computer Graphics (SIGGRAPH '93, Anaheim, CA, Aug. 1-6, 1993), M. C. Whitton, Ed. ACM Press, New York, NY, 73-80.]] Google Scholar
- BORNING, A. 1981. The programming langauge aspects of ThingLab, a constraint-oriented simulation laboratory. ACM Trans. Program. Lang. Syst. 3, 4 (Oct.), 353-387.]] Google Scholar
- BUXTON, W., LAMB, M. R., SHERMAN, D., AND SmTH, K. C. 1983. Towards a comprehensive user interface management system. In Proceedings of the ACM Conference on Computer Graphics (SIGGRAPH '83, Detroit, MI, July25-29), P. Tanner, Ed. ACM, New York, NY, 35-42.]] Google Scholar
- DEY, A. K., ABOWD, G. D., AND WOOD, A. 1998. CyberDesk: A framework for providing self-integrating context-aware services. In Proceedings of the 1998 international conference on Intelligent User Interfaces (IUI '98, San Francisco, CA, Jan. 6-9, 1998), L. G. Terveen, P. Johnson, and J. Mark, Eds. ACM Press, New York, NY, 47-54.]] Google Scholar
- ENGELBART, D. C. AND ENGLISH, W. K. 1988. A research center for augmenting human intellect. In Computer-Supported Cooperative Work: A Book of Readings, I. Greif, Ed. Morgan Kaufmann Publishers Inc., San Francisco, CA, 81-105. The original publication of this item appeared in 1964.]] Google Scholar
- ENGLISH, W. K., ENGELBART, D. C., AND BERMAN, M. L. 1967. Display selection techniques for text manipulation. IEEE Trans. Hum. Factors Elec. HFE-8, 1.]]Google Scholar
- GREEN, M. 1985. The University of Alberta User Interface Management System. In Proceedings of the ACM Conference on Computer Graphics (SIGGRAPH '85, San Francisco, CA), ACM, New York, NY, 205-213.]] Google Scholar
- H~RTSEN, J., NAGHSHINEH, B., INO~E, J., JOERESSEN, O., AND ALLEN, W. 1998. Bluetooth: Vision, goals, and architecture. Mobile Comput. Commun. Rev. 2, 4, 38-45.]]Google Scholar
- HAYES, P. J., SZEKELY, P. A., AND LERNER, R.A. 1985. Design alternatives for user interface management systems based on experience with COUSIN. In Proceedings of the ACM Conference on Human Factors in Computing Systems (CHI '85, San Francisco, CA, Apr. 14-18), ACM, New York, NY, 169-175.]] Google Scholar
- HENDERSON, D. A., JR. 1986. The Trillium user interface design environment. In Proceedings of the ACM Conference on Human Factors in Computing Systems (CHI '86, Boston, MA, Apr. 13-17), M. Mantei and P. Orbeton, Eds. ACM Press, New York, NY, 221-227.]] Google Scholar
- HENDERSON, D. A. AND CARD, S. 1986. Rooms: The use of multiple virtual workspaces to reduce space contention in a window-based graphical user interface. ACM Trans. Graph. 5, 3 (July 1986), 211-243.]] Google Scholar
- HmL, R. D. 1986. Supporting concurrency, communication, and synchronization in humancomputer interaction--the Sassafras UIMS. ACM Trans. Graph. 5, 3 (July 1986), 179-210.]] Google Scholar
- HILL, R. D., BRINCK, T., ROHALL, S. L., PATTERSON, J. F., AND WILNER, W. 1994. The Rendezvous architecture and language for constructing multiuser applications. ACM Trans. Comput. Hum. Interact. 1, 2 (June 1994), 81-125.]] Google Scholar
- HUDSON, S. E. AND KING, R. 1986. A generator of direct manipulation office systems. ACM Trans. Inf. Syst. 4, 2 (Apr. 1986), 132-163.]] Google Scholar
- HUDSON, S. E. AND SMITH, I. 1997. Supporting dynamic downloadable appearances in an extensible user interface toolkit. In Proceedings of the l Oth Annual ACM Symposium on User Interface Software and Technology (UIST '97, Banff, Alberta, Canada, Oct. 14-17), G. Robertson and C. Schmandt, Eds. ACM Press, New York, NY, 159-168.]] Google Scholar
- JACOB, R. J. K. 1986. A specification language for direct-manipulation user interfaces. ACM Trans. Graph. 5, 4 (Oct. 1986), 283-317. http://www.eecs.tufts.eduFjacob/papers/tog.txt; h ttp ://www. eecs. tufts, ed uFj a co b/p ape rs/to g. ps.]] Google Scholar
- KASIK, D.J. 1982. A user interface management system. Comput. Graph. 16, 3, 99-106.]] Google Scholar
- KAY, A. 1969. The reactive engine. Ph.D. Dissertation. Electrical Engineering and Computer Science, University of Utah, UT.]] Google Scholar
- KIERAS, D. E., WOOD, S. D., ABOTEL, K., AND HORNOF, A. 1995. GLEAN: A computer-based tool for rapid GOMS model usability evaluation of user interface designs. In Proceedings of the 8th ACM Symposium on User Interface and Software Technology (UIST '95, Pittsburgh, PA, Nov 14-17), G. Robertson, Ed. ACM Press, New York, NY, 91-100.]] Google Scholar
- KOVED, L. AND SHNEIDERMAN, B. 1986. Embedded menus: Selecting items in context. Commun. ACM 29, 4 (Apr. 1986), 312-318.]] Google Scholar
- KRAMER, A. 1994. Translucent patches--dissolving windows. In Proceedings of the 7th Annual ACM Symposium on User Interface Software and Technology (UIST '94, Marina del Rey, CA, Nov. 2-4), P. Szekely, Ed. ACM Press, New York, NY, 121-130.]] Google Scholar
- LASKY, M. S., MCCRACKEN, H., AND BIELSKI, V. 1998. Just how helpful are handhelds?. CNN Interact. 9809, 09 (Sept 9).]]Google Scholar
- LUTZ, M. 1996. Programming Python. O'Reilly & Associates, Inc., Sebastopol, CA.]] Google Scholar
- MCCORMACK, J. AND ASENTE, P. 1988. An overview of the X toolkit. In Proceedings of the ACM SIGGRAPH Symposium on User Interface Software and Technology (UIST '88, Banff, Alberta, Canada), ACM, New York, NY, 46-55.]] Google Scholar
- MEYER, B., SIT, R. A., SPAULDING, V. A., MEAD, S. E., AND WALKER, N. 1997. Age group differences in World Wide Web navigation. In Adjunct Proceedings of the ACM Conference on Human Factors in Computing Systems, Extended Abstracts (CHI '97, Atlanta, GA, Mar. 22-27), S. Permberton, Ed. ACM Press, New York, NY, 295-296.]] Google Scholar
- MYERS, B.A. 1995. User interface software tools. ACM Trans. Comput. Hum. Interact. 2, 1 (Mar. 1995), 64-103.]] Google Scholar
- MYERS, B.A. 1998. A brief history of human-computer interaction technology, interactions 5, 2, 44-54.]] Google Scholar
- MYERS, B. A., GIUSE, D. A., DANNENBERG, R. B., KOSBIE, D. S., PERVIN, E., MICKISH, A., ZANDEN, B. V., AND MARCHAL, P. 1990. Garnet: Comprehensive support for graphical, highly interactive user interfaces. IEEE Computer 23, 11 (Nov. 1990), 71-85.]] Google Scholar
- MYERS, B. A., SMITH, D. C., AND HORN, B. 1992. Report of the "End-User Programming" working group. In Languages for Developing User Interfaces, B. A. Myers, Ed. A. K. Peters, Ltd., Wellesley, MA, 343-366.]] Google Scholar
- MYERS, B., HOLLAN, J., CRUZ, I., BRYSON, S., BULTERMAN, D., CATARCI, T., CITRIN, W., GLINERT, E., GRUDIN, J., AND IOANNIDIS, Y. 1996. Strategic directions in human-computer interaction. ACM Comput. Surv. 28, 4, 794-809. Also available via http://www.cs.cmu.edu/ -bam/nsfworkshop/hcireport.html.]] Google Scholar
- MYERS, B. A., MCDANIEL, R. G., MILLER, R. C., FERRENCY, A. S., FAULRING, A., KYLE, B. D., MICKISH, A., KLIMOVITSKI, A., AND DOANE, P. 1997. The Amulet environment: New models for effective user interface software development. IEEE Trans. Softw. Eng. 23, 6, 347-365.]] Google Scholar
- MYERS, B. A., STIEL, H., AND GARGIULO, R. 1998. Collaboration using multiple PDAs connected to a PC. In Proceedings of the 1998 ACM Conference on Computer-Supported Cooperative Work (CSCW '98, Seattle, WA, Nov. 14-18), S. Poltrock and J. Grudin, Eds. ACM Press, New York, NY, 285-294.]] Google Scholar
- NEWMAN, W. M. 1968. A system for interactive graphical programming. In Proceedings of the Spring Joint Computer Conference, AFIPS Press, Arlington, VA, 47-54.]]Google Scholar
- NmLSEN, J. 1993. Usability Engineering. Academic Press Prof., Inc., San Diego, CA.]] Google Scholar
- NIELSEN, J. 1995. Multimedia and Hypertext: The Internet and Beyond. Academic Press Prof., Inc., San Diego, CA.]] Google Scholar
- OLSEN, D. R. 1986. MIKE: The menu interaction kontrol environment. ACM Trans. Graph. 5, 4 (Oct. 1986), 318-344.]] Google Scholar
- OLSEN, D. R., JR. AND DEMPSEY, E. P. 1983. Syngraph: A graphical user interface generator. In Proceedings of the ACM Conference on Computer Graphics (SIGGRAPH '83, Detroit, MI, July25-29), P. Tanner, Ed. ACM, New York, NY, 43-50.]] Google Scholar
- OLSEN, D. R. AND HALVERSEN, B.W. 1988. Interface usage measurements in a user interface management system. In Proceedings of the ACM SIGGRAPH Symposium on User Interface Software (UIST '88, Alberta, Canada, Oct. 17-19, 1988), M. Green, Ed. ACM Press, New York, NY, 102-108.]] Google Scholar
- OLSEN, D. R., JR., FOLEY, J., HUDSON, S., MmLER, J., AND MYERS, B. 1993. Research directions for user interface software tools. Behav. Inf. Tech. 12, 2, 80-97.]]Google Scholar
- OUSTERHOUT, J. K. 1991. An Xll toolkit based on the Tcl language. In Proceedings on 1991 Winter USENIX Conference, USENIX Assoc., Berkeley, CA, 105-115.]]Google Scholar
- PALAY, A. J., HANSEN, W., KAZAR, M., SHERMAN, M., WADLOW, M., NEUENDORFFER, T., STERN, Z., BADER, M., AND PETERS, T. 1988. The Andrew toolkit: An overview. In Proceedings on Winter 1988 Usenix Technical Conference, USENIX Assoc., Berkeley, CA, 9-21.]]Google Scholar
- PAUSCH, R., CONWAY, M., AND DELINE, R. 1992. Lessons learned from SUIT, the simple user interface toolkit. ACM Trans. Inf. Syst. 10, 4 (Oct.), 320-344.]] Google Scholar
- PAUSCH, R., BURNETTE, T., CAPEHART, A., CONWAY, M., COSGROVE, D., DELINE, R., DURBIN, J., GOSSWEILER, R., VIOGA, S., AND WHITE, J. 1995. Alice: A rapid prototying system for 3D graphics. IEEE Comput. Graph. Appl. 15, 3 (May), 8-11.]]Google Scholar
- PIER, K. AND LANDAY, J. 1992. Issues for location-independent interfaces. Tech. Rep. ISTL92-4. Xerox PARC, Palo Alto, CA. Available at http://www'cs'berkeley'eduFlanday/ research/publications/LII.ps.]]Google Scholar
- ROSE, C. AND HACKER, B. 1986. Inside Macintosh. Addison-Wesley Longman Publ. Co., Inc., Reading, MA.]] Google Scholar
- ROSEMAN, M. AND GREENBERG, S. 1996. Building real-time groupware with GroupKit, a groupware toolkit. ACM Trans. Comput. Hum. Interact. 3, 1, 66-106.]] Google Scholar
- ROSENBERG, J., ASENTE, P., LINTON, M., AND PALAY, A. 1990. X toolkits: The lessons learned. In Proceedings of the 3rd Annual ACM SIGGRAPH Symposium on User Interface Software and Technology (UIST '90, Snowbird, UT, Oct. 3-5, 1990), S. E. Hudson, Ed. ACM Press, New York, NY, 108-111.]] Google Scholar
- ROSENTHAL, D. S. H. 1987. A simple Xll client program, or, how hard can it really be to write "Hello World". In Proceedings of USENIX, USENIX Assoc., Berkeley, CA, 229-233.]]Google Scholar
- RUmNE, D. 1991. Specifying gestures by example. SIGGRAPH Comput. Graph. 25, 4 (July 1991), 329-337.]] Google Scholar
- SCHULERT, A. J., ROGERS, G. T., AND HAMmTON, J. A. 1985. ADM-A dialogue manager. In Proceedings of the ACM Conference on Human Factors in Computing Systems (CHI '85, San Francisco, CA, Apr. 14-18), ACM, New York, NY, 177-183.]] Google Scholar
- SHNEIDERMAN, B. 1983. Direct manipulation: A step beyond programming languages. IEEE Computer 16, 8, 57-69.]]Google Scholar
- STREITZ, N. A., GEIBLER, J., HOLMER, T., KONOMI, S. I., M LLER-TOMFELDE, C., REISCHL, W., REXROTH, P., SEITZ, P., AND STEINMETZ, R. 1999. i-Land: An interactive landscape for creativity and innovation. In Proceedings of the ACM Conference on Human Factors in Computing Systems (CHI '99, Pittsburgh, PA, May), ACM Press, New York, NY, 120-127.]] Google Scholar
- SUHM, B., MYERS, B., AND WAIBEL, A. 1996. Designing interactive error recovery methods for speech interfaces. In Proceedings of the CHI'96 Workshop on Designing the User Interface for Speech Recognition Applications, ACM Press, New York, NY.]] Google Scholar
- SUKAVIRIYA, P. N., FOLEY, J. D., AND GRIFFITH, T. 1993. A second generation user interface design environment: The model and the runtime architecture. In Proceedings of the ACM Conference on Human Factors in Computing (INTERCHI '93, Amsterdam, The Netherlands, Apr. 24-29), S. Ashlund, A. Henderson, E. Hollnagel, K. Mullet, and T. White, Eds. ACM Press, New York, NY, 375-382.]] Google Scholar
- SUTHERLAND, I. E. 1963. Sketchpad: A man-machine graphical communication system. In AFIPS Conference Proceedings, 329-346.]]Google Scholar
- SZEKELY, P., LUO, P., AND NECHES, R. 1993. Beyond interface builders: Model-based interface tools. In Proceedings of the ACM Conference on Human Factors in Computing (INTERCHI '93, Amsterdam, The Netherlands, Apr. 24-29), S. Ashlund, A. Henderson, E. Hollnagel, K. Mullet, and T. White, Eds. ACM Press, New York, NY, 383-390.]] Google Scholar
- TEITELMAN, W. 1979. A display oriented programmer's assistant. Int. J. Man-Mach. Stud. 11, 2, 157-187. Also Xerox PARC Technical Report CSL-77-3.]]Google Scholar
- TESLER, L. 1981. The Smalltalk environment. BYTE 6, 8, 90-147.]]Google Scholar
- THOMAS, J. J. 1983. Graphical input interaction techniques (GIIT) workshop summary. In Proceedings of the ACM Conference on Computer Graphics (SIGGRAPH '83, Detroit, MI, July25-29), P. Tanner, Ed. ACM, New York, NY, 5-30.]] Google Scholar
- TOBIAS, C. L. 1987. Computers and the elderly: A review of the literature and directions for future research age research on skill acquisition. In Proceedings of the Human Factors Society 31st Annual Meeting, 866-870.]]Google Scholar
- VANDER ZANDEN, B. T. 1989. Constraint grammars--A new model for specifying graphical applications. In Proceedings of the ACM Conference on Human Factors in Computing Systems (CHI '89, Austin, TX, Apr. 30-May 4), ACM, New York, NY, 325-330.]] Google Scholar
- VANDER ZANDEN, B. AND MYERS, B.A. 1990. Automatic, look-and-feel independent dialog creation for graphical user interfaces. In Proceedings of the ACM Conference on Human Factors in Computing Systems: Empowering People (CHI '90, Seattle, WA, Apr. 1-5), J. C. Chew and J. Whiteside, Eds. ACM Press, New York, NY, 27-34.]] Google Scholar
- WALL, L. AND SCHWARTZ, R. L. 1991. Programming Perl. 1st ed. O'Reilly & Associates, Inc., Sebastopol, CA.]] Google Scholar
- WASSERMAN, A. I. AND SHEWMAKE, D. T. 1982. Rapid prototyping of interactive information systems. SIGSOFT Softw. Eng. Notes 7, 5, 171-180.]] Google Scholar
- WEISER, M. 1993. Some computer science issues in ubiquitous computing. Commun. ACM 36, 7 (July), 75-84.]] Google Scholar
- WEISER, M. AND BROWN, J. S. 1996. The coming age of calm technology. Available via http://www.ubiq.com/hypertext/weiser/acmfuture2endnote.htm.]]Google Scholar
- WIECHA, C., BENNETT, W., BOIES, S., GOULD, J., AND GREENE, S. 1990. ITS: A tool for rapidly developing interactive applications. ACM Trans. Inf. Syst. 8, 3 (July), 204-236.]] Google Scholar
- WINOGRAD, T. 1998. A human-centered interaction architecture. Working paper for the Interactive Workspaces Project. Stanford University, Stanford, CA. http://graphics.stanford. EDU/projects/iwork/.]]Google Scholar
- WORDEN, A., WALKER, N., BHARAT, K., AND HUDSON, S. 1997. Making computers easier for older adults to use: area cursors and sticky icons. In Proceedings of the ACM Conference on Human Factors in Computing Systems (CHI '97, Atlanta, GA, Mar. 22-27), S. Pemberton, Ed. ACM Press, New York, NY, 266-271.]] Google Scholar
Index Terms
- Past, present, and future of user interface software tools
Recommendations
User interface software tools
Almost as long as there have been user interfaces, there have been special software systems and tools to help design and implement the user interface software. Many of these tools have demonstrated significant productivity gains for programmers, and ...
The amulet user interface development environment: special interest group meeting
CHI EA '97: CHI '97 Extended Abstracts on Human Factors in Computing SystemsThe User Interface Software Group at CMU is investigating ways to make the design, prototyping, and implementation of user interfaces substantially easier. Unlike other user interface development environments that deal only with widgets like menus, ...
The future of user interface design tools
CHI EA '05: CHI '05 Extended Abstracts on Human Factors in Computing SystemsThis workshop aims to gather researchers in the field of user interface design tools to identify important themes for the next decade of research. These tools aid in the design and development of interactive systems: they include interface builders, ...
Comments