Architectural mismatch stems from mismatched assumptions a reusable part makes about the system structure it is to be part of. These assumptions often conflict with the assumptions of other parts and are almost always implicit, making them extremely difficult to analyze before building the system. To illustrate how the perspective of architectural mismatch can clarify our understanding of component integration problems, we describe our experience of building a family of software design environments from existing parts. On the basis of our experience, we show how an analysis of architectural mismatch exposes some fundamental, thorny problems for software composition and suggests some possible research avenues needed to solve them.
1. D. Garlan, R. Allen, and J. Ockerbloom, "Exploiting Style in Architectural Design Environments," Proc. Sigsoft '94, ACM Press, New York, 1994, pp. 179-185.
2. S. Reiss, "Connecting Tools Using Message Passing in the Field Program Development Environment, IEEE Software, July 1990, pp. 57-66.
3. M. Linton, J. Vlissides, and P. Calder, "Composing User Interfaces with Interviews," Computer, Feb. 1989, pp. 8-24.
4. J. Vlissides, and M. Linton, "Unidraw: A Framework for Building Domain-Specific Graphical Editors," ACM Trans. Information Systems, July 1980, pp. 237-268.
5. C. Gerety, "HP SoftBench: A New Generation of Software Development Tools," Tech. Report SESD-89-25, Hewlett-Packard, Software Eng. Systems Div., Fort Collins, Co., 1989.
6. L.R. Walmer, and M.R. Thompson, "A Programmers' Guide to the Mach User Environment," tech report, School of Computer Science, Carnegie Mellon University, Pittsburgh, 1988.
7. D. Garlan, and M. Shaw, "An Introduction to Software Architecture," in Advances in Software Eng. and Knowledge Eng., V. Ambriola and G. Tortora, eds., World Scientific Publishing Co., Singapore, 1993.
8. D. Perry, and A. Wolf, "Foundations for the Study of Software Architecture," Software Eng. Notes, Oct. 1992, pp. 40-52.
9. D. Batory, et al., "Scalable Software Libraries," Proc. Sigsoft, ACM Press, New York, 1993, pp. 191-199.