skip to main content
article
Free Access

Past, present, and future of user interface software tools

Published:01 March 2000Publication History
Skip Abstract Section

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.

References

  1. 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 ScholarGoogle Scholar
  2. 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 ScholarGoogle Scholar
  3. 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 ScholarGoogle Scholar
  4. 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 ScholarGoogle Scholar
  5. 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 ScholarGoogle Scholar
  6. 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 ScholarGoogle Scholar
  7. 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 ScholarGoogle Scholar
  8. 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 ScholarGoogle Scholar
  9. 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 ScholarGoogle Scholar
  10. 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 ScholarGoogle Scholar
  11. 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 ScholarGoogle Scholar
  12. 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 ScholarGoogle Scholar
  13. 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 ScholarGoogle Scholar
  14. 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 ScholarGoogle Scholar
  15. 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 ScholarGoogle Scholar
  16. 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 ScholarGoogle Scholar
  17. KASIK, D.J. 1982. A user interface management system. Comput. Graph. 16, 3, 99-106.]] Google ScholarGoogle Scholar
  18. KAY, A. 1969. The reactive engine. Ph.D. Dissertation. Electrical Engineering and Computer Science, University of Utah, UT.]] Google ScholarGoogle Scholar
  19. 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 ScholarGoogle Scholar
  20. KOVED, L. AND SHNEIDERMAN, B. 1986. Embedded menus: Selecting items in context. Commun. ACM 29, 4 (Apr. 1986), 312-318.]] Google ScholarGoogle Scholar
  21. 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 ScholarGoogle Scholar
  22. LASKY, M. S., MCCRACKEN, H., AND BIELSKI, V. 1998. Just how helpful are handhelds?. CNN Interact. 9809, 09 (Sept 9).]]Google ScholarGoogle Scholar
  23. LUTZ, M. 1996. Programming Python. O'Reilly & Associates, Inc., Sebastopol, CA.]] Google ScholarGoogle Scholar
  24. 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 ScholarGoogle Scholar
  25. 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 ScholarGoogle Scholar
  26. MYERS, B.A. 1995. User interface software tools. ACM Trans. Comput. Hum. Interact. 2, 1 (Mar. 1995), 64-103.]] Google ScholarGoogle Scholar
  27. MYERS, B.A. 1998. A brief history of human-computer interaction technology, interactions 5, 2, 44-54.]] Google ScholarGoogle Scholar
  28. 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 ScholarGoogle Scholar
  29. 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 ScholarGoogle Scholar
  30. 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 ScholarGoogle Scholar
  31. 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 ScholarGoogle Scholar
  32. 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 ScholarGoogle Scholar
  33. 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 ScholarGoogle Scholar
  34. NmLSEN, J. 1993. Usability Engineering. Academic Press Prof., Inc., San Diego, CA.]] Google ScholarGoogle Scholar
  35. NIELSEN, J. 1995. Multimedia and Hypertext: The Internet and Beyond. Academic Press Prof., Inc., San Diego, CA.]] Google ScholarGoogle Scholar
  36. OLSEN, D. R. 1986. MIKE: The menu interaction kontrol environment. ACM Trans. Graph. 5, 4 (Oct. 1986), 318-344.]] Google ScholarGoogle Scholar
  37. 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 ScholarGoogle Scholar
  38. 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 ScholarGoogle Scholar
  39. 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 ScholarGoogle Scholar
  40. 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 ScholarGoogle Scholar
  41. 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 ScholarGoogle Scholar
  42. 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 ScholarGoogle Scholar
  43. 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 ScholarGoogle Scholar
  44. 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 ScholarGoogle Scholar
  45. ROSE, C. AND HACKER, B. 1986. Inside Macintosh. Addison-Wesley Longman Publ. Co., Inc., Reading, MA.]] Google ScholarGoogle Scholar
  46. 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 ScholarGoogle Scholar
  47. 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 ScholarGoogle Scholar
  48. 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 ScholarGoogle Scholar
  49. RUmNE, D. 1991. Specifying gestures by example. SIGGRAPH Comput. Graph. 25, 4 (July 1991), 329-337.]] Google ScholarGoogle Scholar
  50. 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 ScholarGoogle Scholar
  51. SHNEIDERMAN, B. 1983. Direct manipulation: A step beyond programming languages. IEEE Computer 16, 8, 57-69.]]Google ScholarGoogle Scholar
  52. 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 ScholarGoogle Scholar
  53. 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 ScholarGoogle Scholar
  54. 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 ScholarGoogle Scholar
  55. SUTHERLAND, I. E. 1963. Sketchpad: A man-machine graphical communication system. In AFIPS Conference Proceedings, 329-346.]]Google ScholarGoogle Scholar
  56. 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 ScholarGoogle Scholar
  57. 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 ScholarGoogle Scholar
  58. TESLER, L. 1981. The Smalltalk environment. BYTE 6, 8, 90-147.]]Google ScholarGoogle Scholar
  59. 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 ScholarGoogle Scholar
  60. 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 ScholarGoogle Scholar
  61. 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 ScholarGoogle Scholar
  62. 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 ScholarGoogle Scholar
  63. WALL, L. AND SCHWARTZ, R. L. 1991. Programming Perl. 1st ed. O'Reilly & Associates, Inc., Sebastopol, CA.]] Google ScholarGoogle Scholar
  64. WASSERMAN, A. I. AND SHEWMAKE, D. T. 1982. Rapid prototyping of interactive information systems. SIGSOFT Softw. Eng. Notes 7, 5, 171-180.]] Google ScholarGoogle Scholar
  65. WEISER, M. 1993. Some computer science issues in ubiquitous computing. Commun. ACM 36, 7 (July), 75-84.]] Google ScholarGoogle Scholar
  66. WEISER, M. AND BROWN, J. S. 1996. The coming age of calm technology. Available via http://www.ubiq.com/hypertext/weiser/acmfuture2endnote.htm.]]Google ScholarGoogle Scholar
  67. 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 ScholarGoogle Scholar
  68. 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 ScholarGoogle Scholar
  69. 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 ScholarGoogle Scholar

Index Terms

  1. Past, present, and future of user interface software tools

          Recommendations

          Reviews

          Ben Shneiderman

          These three authors were key participants in the remarkable success story of user interface software tools. While some branches of software engineering were struggling to get 10 percent increases in programmer productivity, user interface tools often produced 1000 percent speedups. The magic was to standardize on the right set of window strategies, supported by toolkits that contained a library of appropriate widgets. Other success stories were event and scripting languages, interactive graphic editing tools, and object-oriented programming. The final piece of magic was hypertext systems with authoring tools that enabled large numbers of users to create high-production-value content. The cleverest part of the paper is the list of themes for evaluating these successful tools and explaining why others failed. The authors even go so far as to honestly criticize their own early work. I particularly liked the analysis of problems with systems that had a low threshold of entry (easy to learn), but too low a ceiling of capability, as well as those where the threshold of entry was too high. Another favorite point is the emphasis on predictable systems that programmers could understand. The list of themes serves well in analyzing scenarios for the future: computers as commodity, ubiquitous, 3-D, and customizable. I am surprised by the authors' optimism about recognition-based interfaces, considering their appropriate concern about predictability. I caught only one important slip: the Xerox STAR is listed with the Macintosh OS and Windows as having overlapping windows.

          Access critical reviews of Computing literature here

          Become a reviewer for Computing Reviews.

          Comments

          Login options

          Check if you have access through your login credentials or your institution to get full access on this article.

          Sign in

          Full Access

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader