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:
- 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.
- 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.
- 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: References
Up: Specific Research Activities at
Previous: References (Mary Shaw)
TOM Conversion
Tue Aug 26 09:51:37 EDT 1997