Compositional Transformation of Software Connectors

Bridget Spitznagel

May 2004

CMU-CS-04-128

Thesis committee:

David Garlan, Chair
Phil Koopman
Mary Shaw
Martin Griss, UC Santa Cruz

Abstract

Increasingly, complex software systems are being constructed as compositions of reusable software components. One critical issue for such constructions is the design and implementation of the interaction mechanisms, or connectors, that permit the various software components to work together properly. Complex systems also often have extra-functional requirements which these connectors must satisfy.

It is not always possible to find an existing connector that satisfies the requirements of the system, and at present it is time-consuming and difficult to create new kinds of connectors. A principled, compositional means of systematically constructing connectors is needed.

In this thesis I describe a new approach in which a basic connector type (such as RPC or data streams) can be augmented with selected adaptations or enhancements to produce a more complex connector type. I characterize a small set of structural transformations that can be applied compositionally to basic connector types to arrive at a wide variety of useful complex connector types. I give formal semantics for these transformations and demonstrate that it is possible to semi-automatically generate implementations of instances of the new connector types. I explore and evaluate this idea in the context of dependability, using transformations to increase the reliability of existing component interaction mechanisms.

Thesis summary

This 15-page summary (Postscript) was posted with the thesis defense announcement.

The thesis document

Available here in the original Postscript or converted to PDF. Click and enjoy.


Bridget Spitznagel
Last modified: Wed May 19 17:26:31 EDT 2004