Despite the growing importance of multimedia applications, we still know relatively little about how to specify, design, and maintain this class of complex applications in a systematic manner. The concept of software architecture has recently emerged as a way to improve our ability to effectively construct and maintain large-scale complex software systems. Under this new paradigm, software engineers are able to do evolutionary design of complex systems through architecture specification, design rationale capture, architecture validation and verification, and architecture transformation. Several architecture description languages (ADLs), such as Wright, Rapide, UniCon, ACME, etc. have been proposed to support the architecture development under this new software paradigm. Although current ADLs more or less support certain features of object-oriented design approach, few of them are purely based on object-oriented paradigm. In this paper, we present an architecture description language — OOADL (Object-Oriented Architecture Description Language) to facilitate the architecture specification of multimedia software systems. This language takes object-oriented paradigm as its backbone, and provides formal semantics for modeling architectures of software systems. It also aims at other goals such as, support for hierarchical refinement, support for reuse of architecture styles, support for analysis, and support for exception handling. We also introduce the default architecture style which brings the features of extensibility and re-usability into the language. Finally, we use OOADL to construct part of the architecture framework of a multimedia system to illustrate the usage and modeling capability of OOADL.
[1]
Mary Shaw,et al.
Abstractions for Software Architecture and Tools to Support Them
,
1995,
IEEE Trans. Software Eng..
[2]
J. Michael Spivey,et al.
The Z notation - a reference manual
,
1992,
Prentice Hall International Series in Computer Science.
[3]
Mary Shaw,et al.
Software architecture - perspectives on an emerging discipline
,
1996
.
[4]
Richard N. Taylor,et al.
Formal Modeling of Software Architectures at Multiple Levels of Abstraction
,
1996
.
[5]
David Garlan.
An Introduction to the Aesop System
,
1995
.
[6]
Jeff Magee,et al.
Dynamic structure in software architectures
,
1996,
SIGSOFT '96.
[7]
Hung-Chin Jang,et al.
A Hybrid Knowledge Representation as a Basis of Requirement Specification and Specification Analysis
,
1992,
IEEE Trans. Software Eng..
[8]
Walter Mann,et al.
Correction to "Specification and Analysis of System Architecture Using Rapide"
,
1995,
IEEE Trans. Software Eng..
[9]
David C. Luckham,et al.
An Event-Based Architecture Definition Language
,
1995,
IEEE Trans. Software Eng..
[10]
Paul C. Clements,et al.
A survey of architecture description languages
,
1996,
Proceedings of the 8th International Workshop on Software Specification and Design.
[11]
Alan Liu,et al.
Knowledge-Based Software Architectures: Acquisition, Specification, and Verification
,
1999,
IEEE Trans. Knowl. Data Eng..