Abstract
Model-Driven Engineering techniques can be used both to create new software and to modernize existing software systems. Model-Driven Software Modernization requires a first step for the extraction of models. Most modernization scenarios involve dealing with the GPL source code of the existing system. Techniques and tools providing efficient means to extract models from source code are therefore needed.
In this paper, we analyze the difficulties encountered when using the existing approaches and we propose a language, called Gra2MoL, which is especially tailored to address the problem of model extraction. This provides a powerful query language for concrete syntax trees, and mappings between source grammar elements and target metamodel elements are expressed by rules similar to those found in model transformation languages. Moreover, the approach also allows reusing existing grammars.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Architecture-Driven Modernization Roadmap. OMG (2006)
ADM Task Force: Knowledge discovery meta-model (kdm). OMG (2007)
MoDisco, http://www.eclipse.org/gmt/modisco/
van Deursen, A., Visser, E., Warmer, J.: Model-driven software evolution: A research agenda. In: Workshop on Model-Driven Software Evolution (2007)
ADM Task Force: Architecture-driven modernization scenarios. OMG (2006)
Klint, P., Lämmel, R., Verhoef, C.: Toward an engineering discipline for grammarware. ACM Transactions on Software Engineering Methodology 14(3), 331–380 (2005)
Efftinge, S.: openarchitectureware 4.1 xtext language reference (2006), http://www.eclipse.org/gmt/oaw/doc/4.1/r80xtextReference.pdf
Wimmer, M., Kramler, G.: Bridging grammarware and modelware. In: Bruel, J.-M. (ed.) MoDELS 2005. LNCS, vol. 3844, pp. 159–168. Springer, Heidelberg (2006)
Stratego/XT, http://strategoxt.org/
TXL, http://www.txl.ca/
Jouault, F., Kurtev, I.: Transforming models with atl (2005)
Cuadrado, J.S., Molina, J.G., Tortosa, M.M.: Rubytl: A practical, extensible transformation language. In: Rensink, A., Warmer, J. (eds.) ECMDA-FA 2006. LNCS, vol. 4066, pp. 158–172. Springer, Heidelberg (2006)
Jouault, F., Bézivin, J., Kurtev, I.: TCS: a dsl for the specification of textual concrete syntaxes in model engineering. In: GPCE, pp. 249–254 (2006)
van Wijngaarden, J., Visser, E.: Program transformation mechanics. a classification of mechanisms for program transformation with a survey of existing transformation systems, Department of Information and Computing Sciences, Utrecht University, Tech. Rep. UU-CS-2003-048 (2003)
Andrade, L.F., Gouveia, J., Antunes, M., El-Ramly, M., Koutsoukos, G.: Forms2Net - Migrating Oracle Forms to Microsoft .NET. In: GTTSE, pp. 261–277 (2006)
Migrating Visual Basic Applications to VB.NET using the NewCode extension for Microsoft Visual Studio. Newcode (2008)
JDT Eclipse project, http://www.eclipse.org/jdt
GMT Eclipse project, http://www.eclipse.org/gmt
OpenArchitectureWare toolkit, http://www.openarchitectureware.org
Kunert, A.: Semi-automatic generation of metamodels and models from grammars and programs. In: Fifth Intl. Workshop on Graph Transformation and Visual Modeling Techniques, E. N. in Theorical Computer Science, vol. 211, pp. 111–119 (2008)
Linda Heaton. Meta Object Facility (MOF) 2.0 Query/View/Transformation Specification. OMG (2005)
OCL constraint language. OMG (2006), http://www.omg.org/cgi-bin/apps/doc?formal/06-05-01.pdf
van Wijngaarden, J.: Code Generation from a Domain Specific Language, M.Sc Thesis (2003)
Xpath, http://www.w3.org/TR/xpath
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2009 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Cánovas Izquierdo, J.L., Molina, J.G. (2009). A Domain Specific Language for Extracting Models in Software Modernization. In: Paige, R.F., Hartman, A., Rensink, A. (eds) Model Driven Architecture - Foundations and Applications. ECMDA-FA 2009. Lecture Notes in Computer Science, vol 5562. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-02674-4_7
Download citation
DOI: https://doi.org/10.1007/978-3-642-02674-4_7
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-02673-7
Online ISBN: 978-3-642-02674-4
eBook Packages: Computer ScienceComputer Science (R0)