Advertisement

A Domain Specific Language for Extracting Models in Software Modernization

Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5562)

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.

Keywords

Syntax Tree Model Extraction Concrete Syntax Abstract Syntax Tree Query Operation 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Architecture-Driven Modernization Roadmap. OMG (2006)Google Scholar
  2. 2.
    ADM Task Force: Knowledge discovery meta-model (kdm). OMG (2007)Google Scholar
  3. 3.
  4. 4.
    van Deursen, A., Visser, E., Warmer, J.: Model-driven software evolution: A research agenda. In: Workshop on Model-Driven Software Evolution (2007)Google Scholar
  5. 5.
    ADM Task Force: Architecture-driven modernization scenarios. OMG (2006)Google Scholar
  6. 6.
    Klint, P., Lämmel, R., Verhoef, C.: Toward an engineering discipline for grammarware. ACM Transactions on Software Engineering Methodology 14(3), 331–380 (2005)CrossRefGoogle Scholar
  7. 7.
    Efftinge, S.: openarchitectureware 4.1 xtext language reference (2006), http://www.eclipse.org/gmt/oaw/doc/4.1/r80xtextReference.pdf
  8. 8.
    Wimmer, M., Kramler, G.: Bridging grammarware and modelware. In: Bruel, J.-M. (ed.) MoDELS 2005. LNCS, vol. 3844, pp. 159–168. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  9. 9.
  10. 10.
  11. 11.
    Jouault, F., Kurtev, I.: Transforming models with atl (2005)Google Scholar
  12. 12.
    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)CrossRefGoogle Scholar
  13. 13.
    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)Google Scholar
  14. 14.
    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)Google Scholar
  15. 15.
    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)Google Scholar
  16. 16.
    Migrating Visual Basic Applications to VB.NET using the NewCode extension for Microsoft Visual Studio. Newcode (2008)Google Scholar
  17. 17.
    JDT Eclipse project, http://www.eclipse.org/jdt
  18. 18.
    GMT Eclipse project, http://www.eclipse.org/gmt
  19. 19.
    OpenArchitectureWare toolkit, http://www.openarchitectureware.org
  20. 20.
    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)Google Scholar
  21. 21.
    Linda Heaton. Meta Object Facility (MOF) 2.0 Query/View/Transformation Specification. OMG (2005)Google Scholar
  22. 22.
    OCL constraint language. OMG (2006), http://www.omg.org/cgi-bin/apps/doc?formal/06-05-01.pdf
  23. 23.
    van Wijngaarden, J.: Code Generation from a Domain Specific Language, M.Sc Thesis (2003)Google Scholar
  24. 24.

Copyright information

© Springer-Verlag Berlin Heidelberg 2009

Authors and Affiliations

  1. 1.University of MurciaSpain

Personalised recommendations