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.
- 2006. Eclipse Acceleo Project. http://www.eclipse.org/acceleo/. (2006). Accessed: 2018-04-28.Google Scholar
- 2006. Eclipse ATL Project. https://projects.eclipse.org/projects/modeling.mmt.atl. (2006). Accessed: 2017-11-01.Google Scholar
- 2013. Eclipse Epsilon Project. http://www.eclipse.org/epsilon/. (2013). Accessed: 2018-04-28.Google Scholar
- 2018. ADM Vendor Directory Listing. https://www.omg.org/adm/vendor/list.htm. (2018). Accessed: 2018-04-28.Google Scholar
- 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 Scholar
- Keith Bennett. 1995. Legacy Systems: Coping with Success. IEEE Softw. 12, 1 (Jan. 1995), 19--23. Google ScholarDigital Library
- 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 ScholarDigital Library
- Javier Canovas and Jesus Molina. 2010. An architecture-driven modernization tool for calculating metrics. IEEE software 27, 4 (2010), 37--43. Google ScholarDigital Library
- 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 Scholar
- 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 ScholarCross Ref
- 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 ScholarDigital Library
- Object Management Group. 2009. Architecture-Driven Modernization Standards Roadmap. https://www.omg.org/adm/ADMTF%20Roadmap.pdf. (2009). Accessed: 2018-01-15.Google Scholar
- 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 ScholarDigital Library
- 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 Scholar
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- 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 Scholar
- 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 Scholar
- 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 Scholar
- 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 ScholarCross Ref
- Harry M Sneed. 2005. Estimating the costs of a reengineering project. In Reverse Engineering, 12th Working Conference on. IEEE. Google ScholarDigital Library
- 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 Scholar
- 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 ScholarDigital Library
- 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 ScholarDigital Library
- Christian Wagner. 2014. Model-Driven Software Migration: A Methodology (1 ed.). Springer Vieweg. Google ScholarDigital Library
- 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 ScholarDigital Library
- Christian Wulf, Sören Frey, and Wilhelm Hasselbring. 2012. A Three-Phase Approach to Efficiently Transform C# into KDM. (2012).Google Scholar
Index Terms
An Approach for Creating KDM2PSM Transformation Engines in ADM Context: The RUTE-K2J Case
Recommendations
A process for creating KDM2PSM transformation engines
AbstractArchitecture-Driven Modernization (ADM) is a special kind of reengineering that employs models along the process. The main ADM metamodel is the Knowledge Discovery Metamodel (KDM), which is a platform-independent metamodel able to represent ...
Disciplined Approach for Transformation CIM to PIM in MDA
MODELSWARD 2015: Proceedings of the 3rd International Conference on Model-Driven Engineering and Software DevelopmentThis paper suggested a disciplined approach to mastered transformation of CIM level to PIM level in accordance with the MDA approach. Our suggestion is founded on creating good CIM level through well-selected rules, allowing us to achieve rich models ...
Mapping Approach for Model Transformation of MDA Based on XMI/XML Platform
ETCS '09: Proceedings of the 2009 First International Workshop on Education Technology and Computer Science - Volume 02Model Driven Architecture (MDA), which takes platform independent modeling and platform specific transforming as its core technologies, is a software development method and standards system using modeling newly issued by OMG. It analyzes the basic ...
Comments