Designing Domain Architectures for Model-Driven Engineering

  • Daniel Lucredio UFSCar / Yeungnam University
  • Renata P. M. Fortes USP
  • Eduardo S. Almeida UFBA
  • Silvio L. Meira CESAR-Recife

Resumo


Model-Driven Engineering (MDE) can leverage domain engineering by offering support to complex variability and automatic implementation. However, little attention is given to the process of designing a domain architecture that is well suited to MDE techniques such as domain-specific languages and software transformations. A domain-specific software architecture is normally developed based on a few selected and important requirements, called architectural drivers. This paper presents three types of architectural drivers that can be used to build a software architecture that can take full advantage of the benefits of MDE. It also presents some patterns that can be used to help in the architectural design. An evaluation is also presented, showing that, when used together in a model-driven domain engineering project, these drivers and patterns can lead to some benefits in terms of reusability and complexity, but that in some cases there are drawbacks that need to be considered in a trade-off analysis.
Palavras-chave: DSL, Driver circuits, Generators, Computer architecture, Production facilities, Software architecture, Concrete, model-driven engineering, domain engineering, architectural drivers, patterns, domain-specific languages, code generation
Publicado
27/09/2010
LUCREDIO, Daniel; FORTES, Renata P. M.; ALMEIDA, Eduardo S.; MEIRA, Silvio L.. Designing Domain Architectures for Model-Driven Engineering. In: SIMPÓSIO BRASILEIRO DE COMPONENTES, ARQUITETURAS E REUTILIZAÇÃO DE SOFTWARE (SBCARS), 4. , 2010, Salvador/BA. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2010 . p. 100-109.