next up previous
Next: Transformation Systems as Up: WISR'93: 6th Annual Previous: Reuse Tools Survey

Language Issues for Generic Code Architectures

Larry Latour, University of Maine, Orono
larry@gandalf.umcs.maine.edu
Ira Baxter, Schlumberger
baxter@austin.slcs.slb.com

An important idea for reuse of design is:

Generic Architecture: a system of components with rules specifying consistent compositions.

Such architectures can be used to implement instance systems by choosing compatible components, and combining them by using the composition mechanism implied by the rule structures. These architectures are especially useful when supported by tools to manage the selection and composition of components.

The working group met with the initial intention of determining sets of features and mechanisms useful for constructing systems from generic architectures. Discussion led the group to examine several real systems built by some of the group participants, with the hopes that identifiable concepts would emerge. Further examination suggested that the composition mechanisms themselves were crucial, and therefore interesting to examine in detail. The results of this examination appear in the sequel in the discussion on refinements.

The systems considered were:

Sinapse:
Generates numerical solvers for partial differential equations [Kant91].

Predator (P++):
Database system generator [Batory92] (language incorporating composition principles [Batory93]).

RESOLVE(/Ada):
Language and discipline for describing and reusing software architectures [RESOLVE93,WOZ91,Murali93] (for Ada components [Hollingsworth92]).

Details as to the operation of these systems is deferred to the references. Implementors of these systems were present in the working group so that hypotheses about system mechanisms could be formulated and verified.





Larry Latour
Mon Aug 21 17:23:03 EDT 1995