Reuse of Off-the-Shelf Components in C2-Style Architectures
Abstract
Reuse of large-grain software components offers the potential for significant savings in application development cost and time.Successful comuonent reuse and substitutability depends both on qualities of the &mponents reused as well as the sofiware context in which the reuse is attempted.Disciplined approaches to the structure and design of software applications offers the potential of providing a hospitable setting for such reuse+ We present the results of a series of exercises designed to determine how well "offthe-shelf" components could be reused in applications designed in accordance with the C2 software architectural style.The exercises involved the reuse of two user-interface constraint solvers, two graphics toolkits, a World Wide Web browser, and a persistent object manager.A subset of these components was used to construct numemus variations of a single application (thus an application family).The exercises also included construction of a simple development environment for locating and downloading a component off the Web and incorporating it into an application.The paper summarizes the style rules that facilitate reuse and presents the results from the exercises.The exercises were successful in a variety of dimensions; one conclusion is that the C2 style offers significant reuse potential to application developers.At the same time, wider trials and additional tool support are needed' Index Terms -software reuse, architectural styles, messagebased architectures, component-based development, graphical user interfaces (GUI).