This Article 
 Bibliographic References 
 Add to: 
Software Environment Architectures and User Interface Facilities
June 1988 (vol. 14 no. 6)
pp. 697-708

The authors discuss the demands and constraints on a user interface management system for a software environment, and the relation between the architecture of the environment and the user interface management system. A model for designing user interface management systems for large extensible environments is presented. This model synthesizes several recent advances in user interfaces and specializes them to the domain of software environments. The model can be applied to a wide variety of environment contexts. A prototype implementation is described.

[1] L. J. Osterweil, "Software environment research: Directions for the next five years,"Computer, vol. 14, no. 4, pp. 35-43, 1981.
[2] Sun View Programmer's Guide, Sun Microsystems, Inc., Mountain View, CA, Feb. 1986.
[3] R. N. Taylor, D. A. Baker, F. C. Belz, B. W. Boehm, L. Clarke, D. A. Fisher, L. Osterweil, R. W. Selby, J. C. Wileden, A. L. Wolf, and M. Young, "Next generation software environments: Principles, problems, and research directions," Dep. Inform. Comput. Sci., Univ. Calif., Irvine, CA, Tech. Rep. 87-16, July 1987; also issued as Arcadia Doc. UCI-87-10, Univ. Colorado Tech. Rep. CU-CS-370- 87, Univ. Mass., Amherst, Tech. Rep. 87-63, and Incremental Systems Corp. Tech. Rep. 87-7-1.
[4] G. Enderle, "Report on the interface of the UIMS to the application," inUser Interface Management Systems ( Proc. Seeheim Workshop UIMS), G. E. Pfaff, Ed. New York: Springer-Verlag, Nov. 1983, pp. 21-29.
[5] A. I. Wasserman and P. A. Pircher,Proc. ACM SIGSOFT/SIGPLAN Symp. Practical Software Development Environments, Palo Alto, CA, Dec. 1986, pp. 131-142; see alsoSIGPLAN Notices, vol. 22, Jan. 1987.
[6] M. H. Brown and R. Sedgewick, "A system for algorithm animation,"Comput. Graphics, vol. 18, pp. 177-186, July 1984.
[7] M. Shawet al., "Descartes: A programming-language approach to interactive display interfaces," inProc. SIGPLAN '83 Symp. Program. Lang. Issues in Software Syst., June 1983, pp. 100-111.
[8] P. Szekely, "Modular Implementation of Presentations,"Proc. SIGCHI+GI 87, ACM, New York, 1987, pp. 235-240.
[9] R. M. Stallman, "EMACS: The extensible, customizable, self-documenting display editor," inProc. ACM SIGPLAN/SIGOA Symp. Text Manipulation, pp. 147-156, June 1981.
[10] V. Donzeau-Gouge, B. Lang, and B. Me'le'se, "A tool for Ada program manipulations: Mentor-Ada," inAda in Use: Proc, Ada Int. Conf., J. G. P. Barnes and G. A. Fisher, Jr., Eds., ACM and Ada-Europe, Paris, France. London: Cambridge University Press, May 1985, pp. 297-308.
[11] D. B. Garlan and P. L. Miller, "'GNOME: An introductory programming environment based on a family of structure editors," inProc. ACM SIGSOFT/SIGPLAN Software Engineering Symp. Practical Software Development Environments, Apr. 1984, pp. 65-72.
[12] B. A. Myers, "Incense: A system for displaying data structures,"Comput. Graphics, vol. 17, pp. 115-125, July 1983.
[13] D. Garlan, "Flexible unparsing in a structure editing environment," Dep. Comput. Sci., Carnegie-Mellon Univ., Tech. Rep. CMU-CS- 85-129, Apr. 1985.
[14] M. Stefik and D. G. Babrow, "Object-oriented programming: Themes and variations,"AI Mag., vol. 6, no. 4, pp. 40-62, Dec. 1985.
[15] M. J. Stefik, D. G. Bobrow, and K. M. Kahn, "Integrating access-oriented programming into a multiparadigm environment,"IEEE Software, vol. 3, pp. 10-18, Jan. 1986.
[16] D.G. Bobrow et al., "CommonLoops: Merging Lisp and Object-Oriented Programming,"Proc. ACM Conf. Object-Oriented Systems, Languages, and Applications, 1986, New York, pp. 17-29.
[17] D.A. Moon, "Object-Oriented Programming with Flavors," inProc. Object-Oriented Programming Systems, Languages, and Applications Conf., N. Meyrowitz, ed., 1986, ACM, New York, pp. 1-8; and in Special Issue ofSIGPlan Notices, Vol. 21, No. 11, Nov. 1986.
[18] D. G. Bobrow, L. G. DeMichiet, R. P. Gabriel, K. Kahn, S. E. Keene, G. Kiczales, L. Masinter, D. A. Moon, M. Stefik, and D. L. Weinreb, "Common Lisp object system specification," Draft Document, X3J13 Committee for the Common Lisp Standards effort, Apr. 1987.
[19] J. Coutaz, "Abstractions for user interface design,"Computer, vol. 18, pp. 21-34, Sept. 1985.
[20] B. W. Kernighan, "PIC--A graphics language for typesetting" Bell Lab., Murray Hill, NJ, Tech. Rep. 85, Mar. 1982.
[21] C.J. Van Wyk, "A Graphics Typesetting Language,"SIGPlan Notices(Proc. ACM SIGPlan/SIGOA Symp. Text Manipulation), June 1981, pp. 99-107.
[22] A. Borning, "The Programming Language Aspects of ThingLab, a Constraint-Oriented Simulation Laboratory."ACM Trans. Programming Languages and Systems, Vol. 3, No. 4, Oct. 1981, pp. 353-387.
[23] Adobe Systems,Postscript Language Reference Manual, Addison-Wesley, Reading, Mass., 1985.
[24] D.E. Knuth,The Texbook, Addison-Wesley, Reading, Mass., 1984.
[25] E. Anson, "The Device Model of Interaction,"Computer Graphics, July 1982, pp. 107- 114.
[26] Inside Macintosh, Apple Computer, Inc., Cupertino, CA, Mar. 1985.
[27] L. Cardelli and R. Pike, "Squeak: A language for communicating with mice,"Proc SIGGRAPH 85, ACM SIGGRAPH 19, pp. 199-204, July 1985.
[28] R. W. Scheifler and J. Gettys, "The X window system,"ACM Trans. Graphics, vol. 5, no. 2, pp. 79-109, 1986.
[29] P. Wegner, "Dimensions of Object-Based Language Design,"SIGPLAN Notices, vol. 22, no. 5, 1987, pp. 168-182.
[30] D. A. Lamb and P. N. Hilfinger, "Simulation of procedure variables using Ada tasks,"IEEE Trans. Software Eng., vol. SE-9, pp. 13- 15, Jan. 1983.
[31] O. Roubine, "Programming large and flexible systems in Ada," inAda in Use: Proc. Ada Int. Conf., I. G. P. Barnes and G. A. Fisher, Jr., Eds., ACM and Ada-Europe, Paris, France. London: Cambridge University Press, May 1985.
[32] J. L. Peterson,Petri Net Theory and the Modeling of Systems. Englewood Cliffs, NJ: Prentice-Hall, 1981.
[33] E. T. Morgan and R. R. Razouk, "Computer-aided analysis of concurrent systems," inProtocol Specification, Testing, and Verification, V. M. Diax, Ed. New York: North Holland, 1986, pp. 49-58.

Index Terms:
software environment architectures; interactive program structures; user interface management system; user interfaces; programming environments; user interfaces
M. Young, R.N. Taylor, D.B. Troup, "Software Environment Architectures and User Interface Facilities," IEEE Transactions on Software Engineering, vol. 14, no. 6, pp. 697-708, June 1988, doi:10.1109/32.6151
Usage of this product signifies your acceptance of the Terms of Use.