next up previous
Next: References Up: Specific Research Activities at Previous: References (Mary Shaw)  

David Garlan

Good architectural design has always been a major factor in determining the success of a complex software system. However, while there are many useful compositional paradigms (pipelines, layered systems, client-server organizations etc.), they are typically understood only in an idiomatic way and applied in an ad hoc fashion. Consequently, software system designers have been unable to fully exploit commonalities in system architectures, make principled choices among design alternatives, or teach their craft to others. To address these issues my research has three complementary areas:

  1. Architectural Specification and Analysis: A stumbling block to effective architectural design is our current inability to characterize software architectures precisely and to reason about their properties. I am attacking this problem by developing formal models of software architectures to (a) provide precise, abstract characterizations of their properties and their dimensions of specialization, and (b) support architecture-based analysis. First, with my students I have developed an architectural specification language, called Wright [Allen and Garlan 97]. This work focuses on the treatment of connectors as first class semantic entities, which can be analyzed for consistency and completeness. Second, I have developed a formal basis for specification of common idioms and patterns of architectural composition - or architectural styles. This work is concerned with both formal characterization of specific styles and also a general framework for such specification [Abowd et al. 95]. Of particular interest are architectural styles based on event broadcast, a common structuring mechanism for composable systems. Recently Wright has been applied successfully to the ``High Level Architecture for Distributed Simulations'' an architectural standard proposed for the composition of heterogeneous simulations.

  2. Tools, Environments, and Architectural Interchange: Given precise models of software architectures it becomes possible to support architectural design with new tools and environments. Over the past five years we have developed a tool, called Aesop, which permits the rapid construction of style-specific (or domain-specific) architectural design environments [Garlan et al. 94]. Aesop provides an open, extensible framework for architectural design and analysis, which can be tailored to exploit specific architectural styles through specialized analyses, code generation, visualizations, and component-based reuse. Currently we are extending this environment to permit incremental specification and enforcement of architectural constraints.

    A stumbling block for architecture-based design and analysis is our current inability to combine capabilities provided by different Architectural Description Languages (ADLs) and their supporting toolsets. The problem arises, in part, because each ADL uses its own idiosyncratic representations for architectures. In an effort to find ways to share architectural designs between different tools, I am participating as one of the lead designers in the definition of an architectural interchange language called ACME [D. Garlan et al. 97]. The language attempts to capture the shared core of most ADLs, while providing an open annotation framework to support ADL-specific descriptive capabilities. We are also developing tools and language processing infrastructure to simplify the both the translation of ADLs into ACME, as well as the development of ACME-based analysis tools.

  3. Education of Software Architects: Mary Shaw and I have developed material for courses in software architectures. One aspect of this is a full semester course for upper level undergraduates and masters students [Garlan et al. 92]. A second aspect is the creation of materials for tutorials on software architecture and on formal description and analysis of architectures. A third aspect is a book on software architecture, recently published by Prentice Hall [Shaw and Garlan 96].


next up previous
Next: References Up: Specific Research Activities at Previous: References (Mary Shaw)

TOM Conversion
Tue Aug 26 09:51:37 EDT 1997