N. Medvidovic et Rn. Taylor, A classification and comparison framework for software architecture description languages, IEEE SOFT E, 26(1), 2000, pp. 70-93
Software architectures shift the focus of developers from lines-of-code to
coarser-grained architectural elements and their overall interconnection st
ructure. Architecture description languages (ADLs) have been proposed as mo
deling notations to support architecture-based development. There is, howev
er, little consensus in the research community on what is an ADL, what aspe
cts of an architecture should be modeled in an ADL, and which of several po
ssible ADLs is best suited for a particular problem. Furthermore, the disti
nction is rarely made between ADLs on one hand and formal specification, mo
dule interconnection, simulation, and programming languages on the other. T
his paper attempts to provide an answer to these questions. It motivates an
d presents a definition and a classification framework for ADLs. The utilit
y of the definition is demonstrated by using it to differentiate ADLs from
other modeling notations. The framework is used to classify and compare sev
eral existing ADLs, enabling us, in the process, to identify key properties
of ADLs. The comparison highlights areas where existing ADLs provide exten
sive support and those in which they are deficient, suggesting a research a
genda for the future.