Traceable and information-preserving composition of architectural models

A structural view is a base view for describing software architectures. A structural view typically comprises several structural models that highlight particular aspects of the software. From our experience, managing the dependencies between structural models is a challenging, yet crucial task for maintaining consistency of an architectural description. In this paper, we focus on the composition of structural models and managing dependencies between models in such a composition. We formally define three basic relations between structural models and a composition operator that enables integration of several structural models based on these relations. We elaborate on several information preserving properties of the composition operator, including traceability, consistency, and completeness. The relations and composition operator have been integrated in the xADL language and the AchStudio tool. We use excerpts of a distributed video-on-demand system designed with the tool as an illustrative case.

[1]  Standard Glossary of Software Engineering Terminology , 1990 .

[2]  David Garlan,et al.  Documenting software architectures: views and beyond , 2002, 25th International Conference on Software Engineering, 2003. Proceedings..

[3]  Mohamed Mancona Kandé,et al.  A concern-oriented approach to software architecture , 2003 .

[4]  Colin Atkinson,et al.  Aspect-Oriented Development with Stratified Frameworks , 2003, IEEE Softw..

[5]  Barry Boehm,et al.  Heterogeneous view integration and its automation , 2000 .

[6]  Hartmut Ehrig,et al.  Consistent Integration of Models Based on Views of Visual Languages , 2008, FASE.

[7]  Danny Weyns,et al.  Characterizing Relations between Architectural Views , 2008, ECSA.

[8]  Danny Weyns,et al.  Decentralized control of automatic guided vehicles: applying multi-agent systems in practice , 2008, OOPSLA Companion.

[9]  Elisa Baniassad,et al.  Aspect-Oriented Analysis and Design , 2005 .

[10]  Tom Holvoet,et al.  View composition in multiagent architectures , 2008, Int. J. Agent Oriented Softw. Eng..

[11]  Bradley R. Schmerl,et al.  Differencing and merging of architectural views , 2006, 21st IEEE/ACM International Conference on Automated Software Engineering (ASE'06).

[12]  Richard N. Taylor,et al.  A comprehensive approach for the development of modular software architecture description languages , 2005, TSEM.

[13]  Nenad Medvidovic,et al.  A Formal Approach to Heterogeneous Software Modeling , 2000, FASE.

[14]  Danny Weyns,et al.  On ADLs and tool support for documenting view-based architectural descriptions , 2008 .

[15]  Danny Weyns,et al.  Applying the ATAM to an Architecture for Decentralized Control of a Transportation System , 2006, QoSA.

[16]  Stanley M. Sutton,et al.  N degrees of separation: multi-dimensional separation of concerns , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).