INGENIERÍA INVERSA PARA EL MANTENIMIENTO DEL SOFTWARE: UNA REVISIÓN SISTEMÁTICA DE LITERATURA

Main Article Content

Raúl Antonio Aguilar Vera
José de la Rosa Baeza Pérez
Julio Cesar Díaz Mendoza
Antonio Armando Aguileta Güemez

Abstract

Reverse engineering covers a wide range of software life cycle activities starting with the existing implementation, recovering, or recreating the design and deciphering the requirements implemented in the system. The objective of this article is to present a state of the art on Reverse Engineering techniques used in the context of software maintenance. For this purpose, a Systematic Literature Review was carried out, in which 47 primary studies from 4 databases, published in this century, were analyzed. Research questions were raised regarding the distribution of publications throughout this century and, about the type of maintenance on which they focus; Likewise, the techniques and metrics reported for reverse engineering processes in maintenance activities were analyzed. A significant increase (just over 200 %) could be observed in the second decade of this century compared to the first. On the other hand, it was observed that perfective maintenance is the one in which the most techni ques were identified, although the majority are static. From the analysis of the selected studies, a total of 22 types of reengineering techniques used for software maintenance/evolution tasks were identified, reporting a set of eight types of metrics used to evaluate the quality of reengineering processes in the evolution of the software.


How to Cite
Aguilar Vera, R. A., Baeza Pérez, J. de la R., Díaz Mendoza, J. C. ., & Aguileta Güemez, A. A. (2024). INGENIERÍA INVERSA PARA EL MANTENIMIENTO DEL SOFTWARE: UNA REVISIÓN SISTEMÁTICA DE LITERATURA. Revista Ingenierías Universidad De Medellín, 23(44). https://doi.org/10.22395/rium.v23n44a2

Article Details

References

P. Bourque & R. Dupuis (2004). Swebok. IEEE Computer society.

P. Bourque & R. Fairley (2014). Guide to the Software Engineering Body of Knowledge (SWEBOK V3.0). IEEE Computer Society.

M. Piattini, J. Villalba, F. Ruiz, T. Bastanchury, M. Polo, M. Martínez & C. Nistal (2000). Mantenimiento del Software. Modelos, técnicas y métodos para la gestión del cambio. Ed. Alfaomega & Ra-Ma.

Lehman, M. M., & Ramil, J. F. (2003). Software evolution'Background, theory, practice. Information Processing Letters, 88(1-2), 33-44.

Lehman, M. M., Ramil, J. F., Wernick, P. D., Perry, D. E., & Turski, W. M. (1997). Metrics and laws of software evolution-the nineties view. In Proceedings Fourth International Software Metrics Symposium. 20-32. IEEE.

E. Chikofsky & J. Cross (1990). Reverse engineering and design recovery: A taxonomy. IEEE software, 7(1), 13-17.

M. Genero, J. Cruz-Lemus y M. Piattini (2014) Métodos de Investigación en Ingeniería de Software, Ed. Ra-Ma.

B. Kitchenham & S. Charters (2007). Guidelines for performing systematic literature reviews in software engineering.

C. Wohlin (2014). Guidelines for snowballing in systematic literature studies and a replication in software engineering. Proceedings of the 18th ICE & A in SE.

C. Raibulet, F. Fontana & M. Zanoni (2017) Model-driven reverse engineering approaches: A systematic literature review. Ieee Access, 5, 14516-14542.

M. Hasbi, E. Budiardjo & W. Wibowo (2018). Reverse engineering in software product line-a systematic literature review. In Proceedings of the 2018 2nd International Conference on Computer Science and Artificial Intelligence. 174-179.

T. Dybå & T. Dingsøyr (2008). Empirical studies of agile software development: A systematic review. Information and software technology, 50(9-10), 833-859.

J. Baeza & R. Aguilar (2022) Quality Assessment for Selected Primary Studies in a Systematic Literature Review: A Case Study. Proceedings of the 2022 Mexican International Conference on Computer Science (ENC). Xalapa, Veracruz, México. DOI: 10.1109/ENC56672.2022.9882921

Author Biographies

Raúl Antonio Aguilar Vera, Universidad Autónoma de Yucatán

Academic Body of Software Engineering for Education -

José de la Rosa Baeza Pérez, Autonomous University of Yucatan

Faculty of Mathematics

Julio Cesar Díaz Mendoza, Autonomous University of Yucatan

Academic Body of Software Engineering for Education

Antonio Armando Aguileta Güemez, Autonomous University of Yucatan

Academic Body of Software Engineering for Education

Most read articles by the same author(s)