Author :
Leclercq, Matthieu ; Özcan, Ali Erdem ; Quéma, Vivien ; Stefani, Jean-Bernard
Abstract :
Many architecture description languages (ADLs) have been proposed to model, analyze, configure, and deploy complex software systems. To face this diversity, extensible ADLs (or ADL interchange formats) have been proposed. These ADLs provide linguistic support for integrating various architectural aspects within the same description. Nevertheless, they do not support extensibility at the tool level, i.e. they do not provide an extensible toolset for processing ADL descriptions. In this paper, we present an extensible toolset for easing the development of architecture-based software systems. This toolset is not bound to a specific ADL, but rather uses a grammar description mechanism to accept various input languages, e.g. ADLs, interface definition languages (IDLs), domain specific languages (DSLs). Moreover, it can easily be extended to implement many different features, such as behavioral analysis, code generation, deployment, etc. Its extensibility is obtained by designing its core functionalities using fine-grained components that implement flexible design patterns. Experiments are presented to illustrate both the functionalities implemented by the toolset and the way it can be extended.
Keywords :
software architecture; software tools; ADL interchange formats; architecture description languages; architecture-based software systems; behavioral analysis; code generation; complex software systems; domain specific languages; extensible toolset; grammar description; heterogeneous architecture descriptions; interface definition languages; Architecture description languages; Computer architecture; DSL; Decoding; Domain specific languages; Fractals; Graphical user interfaces; Java; Software architecture; Software systems;