Evaluation of XIS-Reverse, a Model-Driven Reverse Engineering Approach for Legacy Information Systems

  • André ReisEmail author
  • Alberto Rodrigues da Silva
Conference paper
Part of the Communications in Computer and Information Science book series (CCIS, volume 880)


Companies have been struggling to manage and maintain their legacy information systems because upgrading said systems has been a complex challenge. Many times, requirements changes are difficult to be properly managed, leading to legacy information system requirements deterioration. To overcome or reduce such problems we propose the XIS-Reverse, a software reverse engineering approach. XIS-Reverse is a model-driven reverse engineering approach that takes database artefacts and user preferences as input, and generates high-level models and specifications of these legacy information systems. This paper presents the evaluation of XIS-Reverse using two real-world information systems, provides an assessment of its interoperability with an existent framework and discusses its main challenges and benefits.


Model-driven engineering Model-driven reverse engineering Model-driven reengineering Database Legacy system 


  1. 1.
    Garcia, J.M.E.: Requirements change management based on web usage mining. Ph.D. thesis, University of Porto (2016)Google Scholar
  2. 2.
    Chikofsky, E.J., Cross, J.H.: Reverse engineering and design recovery: a taxonomy. IEEE Softw. 7(1), 13–17 (1990)CrossRefGoogle Scholar
  3. 3.
    Bruneliere, H., Cabot, J., Dupé, G., Madiot, F.: MoDisco: a model driven reverse engineering framework. Inf. Softw. Technol. 56(8), 1012–1032 (2014)CrossRefGoogle Scholar
  4. 4.
    Canfora, G., Di Penta, M., Cerulo, L.: Achievements and challenges in software reverse engineering. Commun. ACM 54(4), 142–151 (2011)CrossRefGoogle Scholar
  5. 5.
    Ruiz, F., et al.: An approach for model-driven data reengineering. Ph.D. dissertation, University of Murcia (2016)Google Scholar
  6. 6.
    da Silva, A.R.: Model-driven engineering: a survey supported by the unified conceptual model. Comput. Lang. Syst. Struct. 43, 139–155 (2015)Google Scholar
  7. 7.
    Reis, A., da Silva, A.R.: XIS-Reverse: a model-driven reverse engineering approach for legacy information systems. In: Proceedings of the 5th International Conference on Model- Driven Engineering and Software Development, MODELSWARD, vol. 1, pp. 196–207 (2017)Google Scholar
  8. 8.
    Seixas, J.: The XIS-web technology: a model-driven development approach for responsive web applications. M.Sc. dissertation, Instituto Superior Técnico, University of Lisbon (2016)Google Scholar
  9. 9.
    Baskerville, R.L.: Investigating information systems with action research. Commun. AIS 2(3es), 4 (1999)Google Scholar
  10. 10.
    da Silva, A.R., Saraiva, J., Silva, R., Martins, C.: XIS-UML profile for extreme modeling interactive systems. In: 2007 Fourth International Workshop on Model-Based Methodologies for Pervasive and Embedded Software, MOMPES 2007, pp. 55–66. IEEE (2007)Google Scholar
  11. 11.
    Ribeiro, A., da Silva, A.R.: XIS-mobile: a DSL for mobile applications. In: 29th Annual ACM Symposium on Applied Computing, pp. 1316–1323. ACM (2014)Google Scholar
  12. 12.
    Ribeiro, A., da Silva, A.R.: Evaluation of XIS-Mobile, a domain specific language for mobile application development. J. Softw. Eng. Appl. 7(11), 906 (2014)CrossRefGoogle Scholar
  13. 13.
    Filipe, P., Ribeiro, A., da Silva, A.R.: XIS-CMS: towards a model-driven approach for developing platform-independent CMS-specific modules. In: MODELSWARD. SCITEPRESS (2016)Google Scholar
  14. 14.
    Caramujo, J., da Silva, A.R.: Analyzing privacy policies based on a privacy-aware profile: the facebook and linkedin case studies. In: 2015 IEEE 17th Conference on Business Informatics (CBI), vol. 1, pp. 77–84. IEEE (2015)Google Scholar
  15. 15.
    da Silva, A.R.: Linguistic patterns and styles for requirements specification: the RSL/business-level language. In: Proceedings of the European Conference on Pattern Languages of Programs. ACM (2017)Google Scholar
  16. 16.
    da Silva, A.R., Saraiva, J., Ferreira, D., Silva, R., Videira, C.: Integration of RE and MDE paradigms: the ProjectIT approach and tools. IET Softw. 1(6), 294–314 (2007)CrossRefGoogle Scholar
  17. 17.
    Pinto, M.A.P.: Gestão de Projectos com Processos Ágeis. M.Sc. dissertation, Instituto Superior Técnico, University of Lisbon (2010)Google Scholar
  18. 18.
    Martins, P.V., da Silva, A.R.: ProjectIT-enterprise: a software process improvement framework. In: Industrial Proceedings of the 17th EuroSPI Conference, pp. 257–266 (2010)Google Scholar
  19. 19.
    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 (2008)Google Scholar
  20. 20.
    Díaz, O., Puente, G., Izquierdo, J.L.C., Molina, J.G.: Harvesting models from web 2.0 databases. Softw. Syst. Model. 12(1), 15–34 (2013)CrossRefGoogle Scholar
  21. 21.
    Hainaut, J.-L., et al.: Database evolution: the DB-MAIN approach. In: Loucopoulos, P. (ed.) ER 1994. LNCS, vol. 881, pp. 112–131. Springer, Heidelberg (1994). Scholar
  22. 22.
    Alalfi, M.H., Cordy, J.R., Dean, T.R.: SQL2XMI: reverse engineering of UML-ER diagrams from relational database schemas. In: 15th Working Conference on Reverse Engineering, pp. 187–191. IEEE (2008)Google Scholar
  23. 23.
    Premerlani, W.J., Blaha, M.R.: An approach for reverse engineering of relational databases. In: 1993 Proceedings of Working Conference on Reverse Engineering, pp. 151–160. IEEE (1993)Google Scholar
  24. 24.
    Chiang, R.H., Barron, T.M., Storey, V.C.: Reverse engineering of relational databases: extraction of an EER model from a relational database. Data Knowl. Eng. 12(2), 107–142 (1994)CrossRefGoogle Scholar
  25. 25.
    Pannurat, N., Kerdprasop, N., Kerdprasop, K.: Database reverse engineering based on association rule mining. arXiv preprint arXiv:1004.3272 (2010)
  26. 26.
    Ramdoyal, R., Cleve, A., Hainaut, J.-L.: Reverse engineering user interfaces for interactive database conceptual analysis. In: Pernici, B. (ed.) CAiSE 2010. LNCS, vol. 6051, pp. 332–347. Springer, Heidelberg (2010). Scholar
  27. 27.
    Petit, J.-M., Kouloumdjian, J., Boulicaut, J.-F., Toumani, F.: Using queries to improve database reverse engineering. In: Loucopoulos, P. (ed.) ER 1994. LNCS, vol. 881, pp. 369–386. Springer, Heidelberg (1994). Scholar
  28. 28.
    Di Lucca, G.A., Fasolino, A.R., De Carlini, U.: Recovering class diagrams from data-intensive legacy systems. In: 2000 Proceedings of the International Conference on Software Maintenance, pp. 52–63. IEEE (2000)Google Scholar
  29. 29.
    Cleve, A., Meurisse, J.-R., Hainaut, J.-L.: Database semantics recovery through analysis of dynamic SQL statements. In: Spaccapietra, S. (ed.) Journal on Data Semantics XV. LNCS, vol. 6720, pp. 130–157. Springer, Heidelberg (2011). Scholar
  30. 30.
    Cleve, A., Noughi, N., Hainaut, J.-L.: Dynamic program analysis for database reverse engineering. In: Lämmel, R., Saraiva, J., Visser, J. (eds.) GTTSE 2011. LNCS, vol. 7680, pp. 297–321. Springer, Heidelberg (2013). Scholar
  31. 31.
    Polo, M., García-Rodríguez, I., Piattini, M.: An MDA-based approach for database re-engineering. J. Softw. Maint. Evol.: Res. Pract. 19(6), 383–417 (2007)CrossRefGoogle Scholar

Copyright information

© Springer International Publishing AG, part of Springer Nature 2018

Authors and Affiliations

  1. 1.INESC-ID, Instituto Superior TécnicoUniversidade de LisboaLisbonPortugal

Personalised recommendations