A comprehensive approach for the development of modular software architecture description languages

被引:78
作者
Dashofy, EM [1 ]
Van der Hoek, A [1 ]
Taylor, RN [1 ]
机构
[1] Univ Calif Irvine, Inst Software Res, Irvine, CA 92697 USA
关键词
design; languages; architecture description languages; XML; xADL; 2.0; ArchStudio; 3;
D O I
10.1145/1061254.1061258
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Research over the past decade has revealed that modeling software architecture at the level of components and connectors is useful in a growing variety of contexts. This has led to the development of a plethora of notations for representing software architectures, each focusing on different aspects of the systems being modeled. In general, these notations have been developed without regard to reuse or extension. This makes the effort in adapting an existing notation to a new purpose commensurate with developing a new notation from scratch. To address this problem, we have developed an approach that allows for the rapid construction of new architecture description languages (ADLs). Our approach is unique because it encapsulates ADL features in modules that are composed to form ADLs. We achieve this by leveraging the extension mechanisms provided by XML and XML schemas. We have defined a set of generic, reusable ADL modules called xADL 2.0, useful as an ADL by itself, but also extensible to support new applications and domains. To support this extensibility, we have developed a set of reflective syntax-based tools that adapt to language changes automatically, as well as several semantically-aware tools that provide support for advanced features of xADL 2.0. We demonstrate the effectiveness, scalability, and flexibility of our approach through a diverse set of experiences. First, our approach has been applied in industrial contexts, modeling software architectures for aircraft software and spacecraft systems. Second, we show how xADL 2.0 can be extended to support the modeling features found in two different representations for modeling product-line architectures. Finally, we show how our infrastructure has been used to support its own development. The technical contribution of our infrastructure is augmented by several research contributions: the first decomposition of an architecture description language into modules, insights about how to develop new language modules and a process for integrating them, and insights about the roles of different kinds of tools in a modular ADL-based infrastructure.
引用
收藏
页码:199 / 245
页数:47
相关论文
共 71 条
[1]  
*AIR COMB COMM PUB, 2000, FACT SHEET E 3 SENTR
[2]  
Aldrich J, 2002, ICSE 2002: PROCEEDINGS OF THE 24TH INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING, P187, DOI 10.1109/ICSE.2002.1007967
[3]  
Allen R., 1997, ACM Transactions on Software Engineering and Methodology, V6, P213, DOI 10.1145/258077.258078
[4]  
ALTHEIM M, 2001, MODULARIZATIN XHTML
[5]  
ALTOVA GMPH, 2003, XML SPY WEBS
[6]  
*APACH GROUP, 2003, CRIMSON
[7]  
ATTALI I, 2001, P INT C COMP CONSTR
[8]  
Berndt Thomas, 1998, WEB ARCH EXT LANG, P10
[9]   Domain-specific software architectures for guidance, navigation and control [J].
Binns, P ;
Englehart, M ;
Jackson, M ;
Vestal, S .
INTERNATIONAL JOURNAL OF SOFTWARE ENGINEERING AND KNOWLEDGE ENGINEERING, 1996, 6 (02) :201-227
[10]  
BOOCH G, 1999, UML ARCHITECTURAL TE