posted on 1981-01-01, 00:00authored byDavid Garlan, Shang-Wen Cheng, Andrew J Kompanek
Complex software systems require expressive notations for representing
their software architectures. Two competing paths have emerged. One is to use a
specialized notation for architecture, an architecture description language (ADL).
The other is to adapt a general-purpose modeling notation, such as UML. The latter
has a number of benefits, including familiarity to developers, close mapping to implementations,
and commercial tool support. However, it remains an open question
as to how best to use object-oriented notations for architectural description, and, indeed,
whether they are sufficiently expressive, as currently defined. In this paper we
take a systematic look at these questions, examining the space of possible mappings
from ADLs into UML. Specifically, we describe (a) the principal strategies for representing
architectural structure in UML; (b) the benefits and limitations of each
strategy; and (c) aspects of architectural description that are intrinsically difficult to
model in UML using the strategies.