skip to main content
10.1145/3267183.3267193acmotherconferencesArticle/Chapter ViewAbstractPublication PagessbcarsConference Proceedingsconference-collections
research-article

An Approach for Creating KDM2PSM Transformation Engines in ADM Context: The RUTE-K2J Case

Published:17 September 2018Publication History

ABSTRACT

Architecture-Driven Modernization (ADM) is a type of software reenginering that employs standard metamodels along the process and deals with the whole system architecture. The main metamodel is the Knowledge-Discovery Metamodel (KDM), which is language, platform independent and it is able to represent several aspects of a software system. Although there is much research effort in the reverse engineering phase of ADM, little have been published around the forward engineering one; mainly on the generation of Platform-Specific Models (PSM) from KDM. This phase is essential as it belongs to the final part of the horseshoe cycle, completing the reengineering process. However, the lack of research and the absence of tooling support hinders the industrial adoption of ADM. Therefore, in this paper we propose an approach to support engineers in creating Transformation Engines (TE) from KDM to any other PSM. This approach was emerged from the experience in creating a TE called RUTE-K2J, which aims at generating Java Model from KDM. The transformation rules of RUTE-K2J were tested considering sets of common code structures that normally appears when modernizing systems. The test cases have shown the transformation rules were able to generate correctly 92% of the source code that was submitted to the transformation.

References

  1. 2006. Eclipse Acceleo Project. http://www.eclipse.org/acceleo/. (2006). Accessed: 2018-04-28.Google ScholarGoogle Scholar
  2. 2006. Eclipse ATL Project. https://projects.eclipse.org/projects/modeling.mmt.atl. (2006). Accessed: 2017-11-01.Google ScholarGoogle Scholar
  3. 2013. Eclipse Epsilon Project. http://www.eclipse.org/epsilon/. (2013). Accessed: 2018-04-28.Google ScholarGoogle Scholar
  4. 2018. ADM Vendor Directory Listing. https://www.omg.org/adm/vendor/list.htm. (2018). Accessed: 2018-04-28.Google ScholarGoogle Scholar
  5. Franck Barbier, Gaëtan Deltombe, Olivier Parisy, and Kamal Youbi. 2011. Model driven reverse engineering: Increasing legacy technology independence. In Second India Workshop on Reverse Engineering, Vol. 125. 126--139.Google ScholarGoogle Scholar
  6. Keith Bennett. 1995. Legacy Systems: Coping with Success. IEEE Softw. 12, 1 (Jan. 1995), 19--23. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Hugo Bruneliere, Jordi Cabot, Frédéric Jouault, and Frédéric Madiot. 2010. MoDisco: a generic and extensible framework for model driven reverse engineering. In Proceedings of the IEEE/ACM international conference on Automated software engineering. ACM, 173--174. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Javier Canovas and Jesus Molina. 2010. An architecture-driven modernization tool for calculating metrics. IEEE software 27, 4 (2010), 37--43. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Javier Luis Cánovas Izquierdo and Jesús García Molina. 2009. A Domain Specific Language for Extracting Models in Software Modernization. Springer Berlin Heidelberg, Berlin, Heidelberg, 82--97.Google ScholarGoogle Scholar
  10. Rafael S Durelli, Daniel SM Santibáñez, Márcio E Delamaro, and Valter Vieira de Camargo. 2014. Towards a refactoring catalogue for knowledge discovery metamodel. In Information Reuse and Integration (IRI), 2014 IEEE 15th International Conference on. IEEE, 569--576.Google ScholarGoogle ScholarCross RefCross Ref
  11. Robert France and Bernhard Rumpe. 2007. Model-driven Development of Complex Software: A Research Roadmap. In 2007 Future of Software Engineering (FOSE '07). IEEE Computer Society, Washington, DC, USA, 37--54. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. Object Management Group. 2009. Architecture-Driven Modernization Standards Roadmap. https://www.omg.org/adm/ADMTF%20Roadmap.pdf. (2009). Accessed: 2018-01-15.Google ScholarGoogle Scholar
  13. Eirini Kalliamvakou, Georgios Gousios, Kelly Blincoe, Leif Singer, Daniel M. German, and Daniela Damian. 2014. The Promises and Perils of Mining GitHub. In Proceedings of the 11th Working Conference on Mining Software Repositoriesa (MSR). ACM, 92--101. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. André de Souza Landi, Fernando Chagas, Bruno Marinho Santos, Renato Silva Costa, Rafael Durelli, Ricardo Terra, and Valter Viera de Camargo. 2017. Supporting the Specification and Serialization of Planned Architectures in Architecture-Driven Modernization Context. In 2017 IEEE 41st Annual Computer Software and Applications Conference (COMPSAC). IEEE, 327--336.Google ScholarGoogle Scholar
  15. Tom Mens and Pieter Van Gorp. 2006. A Taxonomy of Model Transformation. Electronic Notes in Theoretical Computer Science 152, Supplement C (2006), 125--142. Proceedings of the International Workshop on Graph and Model Transformation (GraMoT 2005). Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Jorge Moratalla, Valeria de Castro, Marcos López Sanz, and Esperanza Marcos. 2012. A Gap-Analysis-Based Framework for Evolution and Modernization: Modernization of Domain Management at Red. es. In SRII Global Conference (SRII), 2012 Annual. IEEE, 343--352. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Ricardo Perez-Castillo, Ignacio Garcia-Rodriguez de Guzman, Orlando Avila-Garcia, and Mario Piattini. 2009. On the Use of ADM to Contextualize Data on Legacy Source Code for Software Modernization. In Proceedings of the 2009 16th Working Conference on Reverse Engineering (WCRE '09). IEEE Computer Society, Washington, DC, USA, 128--132. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Ricardo Pérez-Castillo, Ignacio García Rodríguez de Guzmán, Rafael Gómez-Cornejo, Maria Fernandez-Ropero, and Mario Piattini. 2013. ANDRIU. A Technique for Migrating Graphical User Interfaces to Android (S).. In SEKE. 516--519.Google ScholarGoogle Scholar
  19. Ricardo Pérez-Castillo, Ignacio García-Rodríguez de Guzmán, and Mario Piattini. 2010. Implementing Business Process Recovery Patterns through QVT Transformations. Springer Berlin Heidelberg, Berlin, Heidelberg, 168--183.Google ScholarGoogle Scholar
  20. Roberto Rodríguez-Echeverría, José María Conejero, Pedro J. Clemente, Juan C. Preciado, and Fernando Sánchez-Figueroa. 2012. Modernization of Legacy Web Applications into Rich Internet Applications. Springer Berlin Heidelberg, Berlin, Heidelberg, 236--250.Google ScholarGoogle Scholar
  21. Daniel San Martín Santibáñez, Rafael Serapilha Durelli, and Valter Vieira de Camargo. 2015. A combined approach for concern identification in KDM models. Journal of the Brazilian Computer Society 21, 1 (2015), 10.Google ScholarGoogle ScholarCross RefCross Ref
  22. Harry M Sneed. 2005. Estimating the costs of a reengineering project. In Reverse Engineering, 12th Working Conference on. IEEE. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Feliu Trias, Valeria de Castro, Marcos López-Sanz, and Esperanza Marcos. 2014. A Toolkit for ADM-based Migration: Moving from PHP Code to KDM Model in the Context of CMS-based Web Applications. (2014).Google ScholarGoogle Scholar
  24. Feliu Trias, Valeria de Castro, Marcos Lopez-Sanz, and Esperanza Marcos. 2015. Migrating Traditional Web Applications to CMS-based Web Applications. Electron. Notes Theor. Comput. Sci. 314, C (June 2015), 23--44. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Olegas Vasilecas and Kestutis Normantas. 2011. Deriving business rules from the models of existing information systems. In Proceedings of the 12th International Conference on Computer Systems and Technologies. ACM, 95--100. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Christian Wagner. 2014. Model-Driven Software Migration: A Methodology (1 ed.). Springer Vieweg. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Claes Wohlin, Per Runeson, Martin Höst, Magnus Ohlsson, Björn Regnell, and Anders Wesslén. 2012. Experimentation in software engineering. Springer Science & Business Media. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Christian Wulf, Sören Frey, and Wilhelm Hasselbring. 2012. A Three-Phase Approach to Efficiently Transform C# into KDM. (2012).Google ScholarGoogle Scholar

Index Terms

  1. An Approach for Creating KDM2PSM Transformation Engines in ADM Context: The RUTE-K2J Case

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in
    • Published in

      cover image ACM Other conferences
      SBCARS '18: Proceedings of the VII Brazilian Symposium on Software Components, Architectures, and Reuse
      September 2018
      123 pages
      ISBN:9781450365543
      DOI:10.1145/3267183
      • Program Chair:
      • Ingrid Nunes

      Copyright © 2018 ACM

      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 17 September 2018

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • research-article
      • Research
      • Refereed limited

      Acceptance Rates

      SBCARS '18 Paper Acceptance Rate11of40submissions,28%Overall Acceptance Rate23of79submissions,29%

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader