posted on 2002-04-01, 00:00authored byDavid Garlan, Dewayne Perry
A critical aspect of the design for any large software
system is its gross structure – that is, its high-level organization
of computational elements and interactions between
those elements [3, 6]. Broadly speaking, we refer to this
as the software architectural level of design. Recently software
architecture has begun to emerge as an important
field of study for software engineering practitioners and researchers.
This emergence is evidenced by a large body of
recent work in areas such as module interface languages,
domain specific architectures, architectural description languages,
formal underpinnings for architectural design, and
architectural design environments.