around a series of styles. The idea of styles comes
from the concept of pattern in high-level
programming languages. The Perry and Wolf (Perry
and Wolf, 1992) methodology is built around the
idea that software systems can be represented as a
triple {Element, Rule, Rationale}. During the first
part of the 1990s software architecture formalization
focused on individual systems or styles. Examples
include the formalization of pipe-filter style
(Luckham, Vera, and Meldal, 1995), event systems
Error! Reference source not found.) and object-
composition standard (Garlan and Notkin, 2001).
Therefore, the cost of development using such
formalization actually increases. Second, there are
no corresponding tools to support the formalization
and because they develop the semantics of a style
from scratch, there is no direct means of
characterizing a specific system configuration.
First-generation ADLs focus more on the
modeling of architecture elements. The modeling is
based on the gross structure proposed by Shaw and
Garland, where an ADL describes the architecture in
terms of component, connector and the way they are
composed with each other. Components can be
described with specification and implementation. So
do connectors. Components are the loci of
computation and state. Each component has an
interface specified with component type and the
player. Player is called an interface point in this
paper. Connectors are the loci of relations among
components. They mediate interactions. Each
connector has a protocol specification which is the
interface of the connector provided to components or
other connectors. The protocol includes rules about
the types of interface, assurances about properties of
the interaction, rules about the order in which things
happen, and commitments about the interaction.
As seen in Figure 1, ADLs such as UniCon,
Wright, ACME, Rapide, SRI SADL, C2 ADL and
MetaH belong to the first-generation ADLs. UniCon
was developed around 1995 by a CMU group lead
by Mary Shaw. It is in UniCon where the
aforementioned gross structure of architecture
language was proposed. UniCon is a consequence of
Mary Shaw’s research on architecture styles.
UniCon, implements the pipe and filters architecture
style, real-time scheduling architecture, and global
data access architecture. Wright focused on the
concept of explicit connector types, on the use of
automated checking of architectural properties.
Rapide’s original goal was to build large-scale
distributed multi-language systems. Rapide adopts
an event-based execution model of distributed time-
sensitive systems. This model is called the "timed
poset model." Posets provide the most detailed
formal basis to date for constructing early life cycle
prototyping tools, and later life cycle tools for
correctness and performance analysis of distributed
time-sensitive systems.
Compared with other first-generation ADLs,
Structural Architecture Description Language
(SADL) is relatively new. Its research mainly
focuses on the architecture styles and architecture
refinement patterns. The focus of MetaH
(Honeywell MetaH Website) is to build reliable,
real-time multiprocessor avionics system
architectures. ACME was proposed to provide a
structural framework for characterizing
architectures, together with annotation facilities for
additional ADL-specific information.
Most of the second-generation ADLs derived
from a specific first-generation ADL. For example,
on the base of MetaH, Honeywell Inc. developed
AADL; CMU and University of California at Irvine
united and created xADL 2.0 based on ACME and
C2 SADL research; ADML is an XML improved
version of ACME. Most of second generation ADLs
have a relatively complete tools support (Bass,
Clements, Kazman, 2003). They are more
extensible, such as xADL 2.0, and focus on handling
dynamic architectures, e.g., ArchWare.
3 FIVE ARCHITECTURE
DESCRIPTION LANGUAGES
In our comparative review of ADLs, we selected two
ADLs from the first-generation and three ADLS
from the second generation for this comparison.
They are: Rapide, SADL, xADL 2.0, AADL and
ArchWare. Among the second-generation ADLs, we
selected xADL 2.0, derived from xArch. Since
AADL inherited most of the characteristics of
MetaH, there is no need to include ACME, C2
SADL and MetaH in our comparison. Also, from the
aforementioned history we know that UniCon,
Wright, Aesop and ACME were all generated by the
CMU research group, and are therefore similar to
each other. Most of their characteristics are inherited
by the second generation ADLs such as xADL 2.0
and AADL. On the other hand, our other selections,
namely Rapide and SADL were developed
independently and are different from the ADLs
developed at CMU.
COMPARISON OF FIVE ARCHITECTURE DESCRIPTION LANGUAGES ON DESIGN FOCUS, SECURITY AND
STYLE
271