Providing Architectural Languages and Tools Interoperability through Model Transformation Technologies
Issue No.01 - January/February (2010 vol.36)
Ivano Malavolta , University of L'Aquila, L'Aquila
Henry Muccini , University of L'Aquila, L'Aquila
Patrizio Pelliccione , University of L'Aquila, L'Aquila
Damien Andrew Tamburri , University of L'Aquila, L'Aquila
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/TSE.2009.51
Many architectural languages have been proposed in the last 15 years, each one with the chief aim of becoming the ideal language for specifying software architectures. What is evident nowadays, instead, is that architectural languages are defined by stakeholder concerns. Capturing all such concerns within a single, narrowly focused notation is impossible. At the same time, it is also impractical to define and use a “universal” notation, such as UML. As a result, many domain-specific notations for architectural modeling have been proposed, each one focusing on a specific application domain, analysis type, or modeling environment. As a drawback, a proliferation of languages exists, each one with its own specific notation, tools, and domain specificity. No effective interoperability is possible to date. Therefore, if a software architect has to model a concern not supported by his own language/tool, he has to manually transform (and, eventually, keep aligned) the available architectural specification into the required language/tool. This paper presents DUALLy, an automated framework that allows architectural languages and tools interoperability. Given a number of architectural languages and tools, they can all interoperate thanks to automated model transformation techniques. DUALLy is implemented as an Eclipse plugin. Putting it in practice, we apply the DUALLy approach to the Darwin/FSP ADL and to a UML2.0 profile for software architectures. By making use of an industrial complex system, we transform a UML software architecture specification in Darwin/FSP, make some verifications by using LTSA, and reflect changes required by the verifications back to the UML specification.
Software architectures, interoperability, domain-specific architectures, design tools and techniques, model transformations.
Ivano Malavolta, Henry Muccini, Patrizio Pelliccione, Damien Andrew Tamburri, "Providing Architectural Languages and Tools Interoperability through Model Transformation Technologies", IEEE Transactions on Software Engineering, vol.36, no. 1, pp. 119-140, January/February 2010, doi:10.1109/TSE.2009.51