REVERSE ENGINEERING FOR SOFTWARE MAINTENANCE: A SYSTEMATIC REVIEW OF LITERATURE

Contenido principal del artículo

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

Resumen

La ingeniería inversa cubre una amplia gama de actividades del ciclo de vida del software comenzando con la implementación existente, recuperando o recreando el diseño y descifrando los requisitos implementados en el sistema. El objetivo de este artículo es presentar un estado del arte sobre técnicas de Ingeniería Inversa utilizadas en el contexto del mantenimiento de software. Para ello se realizó una Revisión Sistemática de la Literatura, en la que se analizaron 47 estudios primarios de 4 bases de datos, publicados en este siglo. Se plantearon interrogantes de investigación respecto de la distribución de las publicaciones a lo largo de este siglo y, sobre el tipo de mantenimiento en el que se enfocan; Asimismo, se analizaron las técnicas y métricas reportadas para los procesos de ingeniería inversa en las actividades de mantenimiento. En la segunda década de este siglo se pudo observar un aumento significativo (poco más del 200 %) en comparación con la primera. Por otro lado, se observó que el mantenimiento perfectivo es en el que más técnicas se identificaron, aunque la mayoría son estáticas. Del análisis de los estudios seleccionados se identificaron un total de 22 tipos de técnicas de reingeniería utilizadas para tareas de mantenimiento/evolución del software, reportando un conjunto de ocho tipos de métricas utilizadas para evaluar la calidad de los procesos de reingeniería en la evolución del software.

##plugins.themes.bootstrap3.displayStats.downloads##

##plugins.themes.bootstrap3.displayStats.noStats##

Detalles del artículo

Sección

Artículos

Biografía del autor/a

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, Universidad Autónoma de Yucatán

Faculty of Mathematics

Julio Cesar Díaz Mendoza, Universidad Autónoma de Yucatán

Academic Body of Software Engineering for Education

Antonio Armando Aguileta Güemez, Universidad Autónoma de Yucatán

Academic Body of Software Engineering for Education

Cómo citar

Aguilar Vera, R. A., Baeza Pérez, J. de la R., Díaz Mendoza, J. C. ., & Aguileta Güemez, A. A. (2024). REVERSE ENGINEERING FOR SOFTWARE MAINTENANCE: A SYSTEMATIC REVIEW OF LITERATURE. Revista Ingenierías Universidad De Medellín, 23(44). https://doi.org/10.22395/rium.v23n44a2

Referencias

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

Artículos más leídos del mismo autor/a