Abstract
Large technologies companies that offer software modernization and maintenance services for legacy software applications in diverse sectors such as banking, insurance, healthcare and public sector, face a significant challenge. Legacy systems were usually developed in old programming languages, often have outdated documentation and the processes used for software development were immature. Modernization and maintenance projects include tasks such as source code analysis with high effort and time costs, and an important risk of misunderstanding. In the literature, model-driven reverse engineering (MDRE) approaches promise to address these challenges successfully, but most of existing proposals are focused on a concrete technological stack. This paper aims to present the preliminary results and lessons learned when adopting MDRE in a large multinational company, providing a series of reflections and open issues to reduce the gap between academia and industry. It introduces STRATO, a corporate solution that proposes a MDRE approach focused on a high flexibility to incorporate new programming languages. It reads source code and through model-to-model transformations convert it into platform independent conceptual, persistence and business logic models. Preliminary outcomes, lessons learned and open issues concerning MDRE industry adoption are presented.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Ruiz, F.: An approach for model-driven data reengineering (Doctoral dissertation, PhD dissertation, University of Murcia) (2016)
Object Management Group, Inc. Object Management Group (2012). http://www.omg.org
Raibulet, C., Fontana, F.A., Zanoni, M.: Model-driven reverse engineering approaches: a systematic literature review. IEEE Access 5, 14516–14542 (2017)
Rugaber, S., Stirewalt, K.: Model-driven reverse engineering. IEEE Software 21(4), 45–53 (2004)
Favre, J.M.: Foundations of model (Driven)(Reverse) engineering: models-Episode I: stories of the fidus papyrus and of the solarus. In Dagstuhl Seminar Proceedings. Schloss Dagstuhl-Leibniz-Zentrum für Informatik (2005)
Object Management Group, Inc. Arquitecture Driven Modernization Task Force (2022). https://www.omg.org/adm/
Pérez-Castillo, R., de Guzmán, I.G.-R., Piattini, M.: Knowledge discovery metamodel-ISO/IEC 19506: a standard to modernize legacy systems. Comput. Stand. Interf. 33(6), 519–532 (2011)
Object Management Group, Architecture-Driven Modernization: Abstract Syntax Tree Metamodel (ASTM), OMG document number: formal/2011-01-05 (2011)
Object Management Group, Automated Source Code Maintainability Measure TM (ASCMM TM), OMG document number: formal/2016-01-01 (2016)
Object Management Group, Structured Patterns Metamodel Standard (SPMS), OMG document number: formal/2011-01-05 (2017)
Object Management Group, Structured Metrics Metamodel (SMM), OMG document number: formal/2018-03-01 (2018)
Bruneliere, H., Cabot, J., Dupé, G., Madiot, F.: Modisco: a model driven reverse engineering framework. Inf. Softw. Technol. 56(8), 1012–1032 (2014)
Tonella, P., Torchiano, M., Du Bois, B., Systä, T.: Empirical studies in reverse engineering: state of the art and future trends. Empirical Softw. Eng. 12, 551–571 (2007)
Pascal, A.: Case studies in model-driven reverse engineering. In: Proceedings of the 7th International Conference on Model-Driven Engineering and Software Development, pp. 256–263. SCITEPRESS-Science and Technology Publications, Lda (2019)
Baqais, A.A.B., Alshayeb, M.: Automatic software refactoring: a systematic literature review. Softw. Q. J. 28(2), 459–502 (2020)
Pawlak, R., Monperrus, M., Petitprez, N., Noguera, C., Seinturier, L.: Spoon: a library for implementing analyses and transformations of java source code. Softw. Pract. Experience 46(9), 1155–1179 (2016)
coAST coala Abstract Syntax Tree https://github.com/coala/coAST
Izquierdo, J.L.C., Cuadrado, J.S., Molina, J.G.: Gra2MoL: a domain specific transformation language for bridging grammarware to modelware in software modernization. In: Workshop on Model-Driven Software Evolution, pp. 1–8 (2008)
Iung, A., et al.: Systematic mapping study on domain-specific language development tools. Empirical Softw. Eng. 25(5), 4205–4249 (2020). https://doi.org/10.1007/s10664-020-09872-1
Maróti, M., et al.: Next generation (meta) modeling: web-and cloud-based collaborative tool infrastructure. MPM@ MoDELS 1237, 41–60 (2014)
AToMPM: a tool for multi-paradigm modeling. (n.d.). https://atompm.github.io/
Pyro: a collaborative, meta-model-driven, Web-based and graphical modeling environment. (n.d.). https://pyro.scce.info/
Eclipse foundation. (n.d.). Eclipse modeling framework in cloud. https://www.eclipse.org/emfcloud/
Eclipse foundation. (n.d.). Sirius web. https://www.eclipse.org/sirius/sirius-web.html
Eclipse foundation. (n.d.). Graphical language server platform for building web-based diagram editors. https://github.com/eclipse-glsp/glsp
Theia - cloud and desktop IDE platform. (n.d.). https://theia-ide.org/
Glaser, P.L.: Developing sprotty-based modeling tools for VS code (2022)
Object management group, Meta object facility (MOF) Core specification, version 2.5.1. OMG document number: formal/2019-10-01 (2016)
Parr, T.: The definitive ANTLR 4 reference. In: The Definitive ANTLR 4 Reference, pp. 1–326 (2013)
ISIS/Vanderbilt university, WebGME Documentation, Release 1.0.0 (2022)
Campbell, G.A., Papapetrou, P.: SonarQube in action. Manning Publications Co, Shelter Island (2013)
OpenAPI initiative, OpenAPI specification v3.1.0 (2021). https://spec.openapis.org/oas/v3.0.1
OpenAPI initiative, OpenAPI tools (2022). https://openapi.tools/
Juristo, N., Moreno, A.M.: Basics of Software Engineering Experimentation. Springer Science & Business Media (2013)
Acknowledgements
This work was supported in part by Centro para el Desarrollo Tecnológico Industrial (CDTI) under Grant IDI-20210948 (STRATO, nuevaS herramienTas para la modeRnizAción de sisTemas heredadOs).
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
García-Borgoñón, L., Barcelona, M.A., Egea, A.J., Reyes, G., Sainz-de-la-maza, A., González-Uzabal, A. (2023). Lessons Learned in Model-Based Reverse Engineering of Large Legacy Systems. In: Indulska, M., Reinhartz-Berger, I., Cetina, C., Pastor, O. (eds) Advanced Information Systems Engineering. CAiSE 2023. Lecture Notes in Computer Science, vol 13901. Springer, Cham. https://doi.org/10.1007/978-3-031-34560-9_20
Download citation
DOI: https://doi.org/10.1007/978-3-031-34560-9_20
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-34559-3
Online ISBN: 978-3-031-34560-9
eBook Packages: Computer ScienceComputer Science (R0)