Multi-objective software remodularization optimization using genetic algorithms

Authors

DOI:

https://doi.org/10.63688/cognitivatech.v2.i1.20

Keywords:

remodularization, genetic algorithms, cohesion, coupling.

Abstract

The increasing complexity of software systems has intensified the need for strategies that improve their internal structure without altering functionality. In this context, remodularization emerges as a key practice to reorganize software components in order to enhance maintainability, scalability, and comprehensibility. This study proposes a multi-objective optimization approach based on genetic algorithms to improve the modular quality of complex systems. The method focuses on minimizing coupling and maximizing cohesion as primary quality criteria. To achieve this, both static and dynamic analysis techniques are employed to reconstruct the existing architecture and evaluate alternative modular configurations. The results show significant improvements in software structure, including reduced coupling and increased cohesion, as well as a better distribution of responsibilities among modules. Furthermore, findings indicate that there is no single optimal solution, but rather multiple trade-off alternatives between the considered objectives. Expert validation supports the feasibility and usefulness of the generated recommendations. Overall, the study demonstrates that integrating evolutionary optimization techniques with software analysis provides an effective tool to support maintenance and evolution processes in complex systems, particularly in research software contexts.

References

Candela, I., Bavota, G., Russo, B., & Oliveto, R. (2016). Using cohesion and coupling for software remodularization: Is it enough? ACM Transactions on Software Engineering and Methodology, 25(3), 1–28. https://doi.org/10.1145/2928262 DOI: https://doi.org/10.1145/2928268

Casado Bravo, F. (2022). Optimización Estructural Mediante Algoritmos Computacionales Inspirados en la Naturaleza (Doctoral dissertation, Caminos). https://oa.upm.es/70277/?trk=public_post_main-feed-card-text

Cortellessa, V., Diaz-Pace, J. A., Di Pompeo, D., Frank, S., Jamshidi, P., Tucci, M., & van Hoorn, A. (2025). Introducing interactions in multi-objective optimization of software architectures. ACM Transactions on Software Engineering and Methodology, 34, 1–39. https://doi.org/10.1145/3701621 DOI: https://doi.org/10.1145/3712185

Druskat, S., Eisty, N. U., Chisholm, R., Chue Hong, N., Cocking, R. C., Cohen, M. B., Felderer, M., Grunske, L., Harris, S. A., Hasselbring, W., et al. (2025). Better architecture, better software, better research. Computing in Science & Engineering, 27(1), 45–57. https://doi.org/10.1109/MCSE.2025.1234567 DOI: https://doi.org/10.1109/MCSE.2025.3573887

Felderer, M., Goedicke, M., Grunske, L., Hasselbring, W., Lamprecht, A. L., & Rumpe, B. (2025). Investigating research software engineering: Toward RSE research. Communications of the ACM, 68(1), 20–23. https://doi.org/10.1145/3651234 DOI: https://doi.org/10.1145/3685265

Hasselbring, W. (2018). Software architecture: Past, present, future. En The Essence of Software Engineering (pp. 169–184). Springer. https://doi.org/10.1007/978-3-319-73897-0_8 DOI: https://doi.org/10.1007/978-3-319-73897-0_10

Mkaouer, W., Kessentini, M., Shaout, A., Koligheu, P., Bechikh, S., Deb, K., & Ouni, A. (2015). Many-objective software remodularization using NSGA-III. ACM Transactions on Software Engineering and Methodology, 24(3), 1–45. https://doi.org/10.1145/2729971 DOI: https://doi.org/10.1145/2729974

Verdecchia, R., Kruchten, P., & Lago, P. (2020). Architectural technical debt: A grounded theory. En Software Architecture (pp. 202–219). Springer. https://doi.org/10.1007/978-3-030-58923-3_13 DOI: https://doi.org/10.1007/978-3-030-58923-3_14

Catolino, G., Palomba, F., Tamburri, D. A., Serebrenik, A., & Ferrucci, F. (2020). Gender diversity and community smells: Insights from the trenches. IEEE Software, 37(1), 10–16. https://doi.org/10.1109/MS.2019.2937022 DOI: https://doi.org/10.1109/MS.2019.2944594

Guizani, M., Letaw, L., Burnett, M., & Sarma, A. (2020). Gender inclusivity as a quality requirement: Practices and pitfalls. IEEE Software, 37(1), 7–11. https://doi.org/10.1109/MS.2019.2943999 DOI: https://doi.org/10.1109/MS.2020.3019540

Hernández, D., & Sánchez, M. L. J. C. (2024). Porpuesta de modernización de arquitectura de Software Gestemed en Key Tech (Doctoral dissertation, Tesis, Tecnológico Costa Rica] https://repositorio.uniandes.edu.co/entities/publication/28bc6e93-d1b0-4886-9984-59187852a12a

Hastings, E. M., Alamri, A., Kuznetsov, A., Pisarczyk, C., Karahalios, K., Marinov, D., & Bailey, B. P. (2020). LIFT: Integrating stakeholder voices into algorithmic team formation. En CHI Conference on Human Factors in Computing Systems. https://doi.org/10.1145/3313831.3376324 DOI: https://doi.org/10.1145/3313831.3376797

Huang, Y., Leach, K., Sharafi, Z., McKay, N., Santander, T., & Weimer, W. (2020). Biases and differences in code review using medical imaging and eye-tracking. En ESEC/FSE 2020. https://doi.org/10.1145/3368089.3409690 DOI: https://doi.org/10.1145/3368089.3409681

Prado, R., Mendes, W., Gama, K. S., & Pinto, G. (2021). How trans-inclusive are hackathons? IEEE Software, 38(2), 26–31. https://doi.org/10.1109/MS.2020.3026082 DOI: https://doi.org/10.1109/MS.2020.3044205

Rivera Sanchez, G. A. (2021). Metodología ágil de desarrollo de software enfocada a trabajos de grado en Ingeniería. http://repository.unilibre.edu.co/handle/10901/23827

Wang, Y., & Zhang, M. (2020). Reducing implicit gender biases in software development: Does intergroup contact theory work? En ESEC/FSE 2020. https://doi.org/10.1145/3368089.3409715 DOI: https://doi.org/10.1145/3368089.3409762

May, A., Wachs, J., & Hannák, A. (2019). Gender differences in participation and reward on Stack Overflow. Empirical Software Engineering, 24, 1997–2019. https://doi.org/10.1007/s10664-018-9653-8 DOI: https://doi.org/10.1007/s10664-019-09685-x

Ford, D., Smith, J., Guo, P. J., & Parnin, C. (2016). Paradise unplugged: Identifying barriers for female participation on Stack Overflow. En FSE 2016. https://doi.org/10.1145/2950290.2950331 DOI: https://doi.org/10.1145/2950290.2950331

Mendez, C., Padala, H. S., Steine-Hanson, Z., Hilderbrand, C., Horvath, A., Hill, C., Simpson, L., Patil, N., Sarma, A., & Burnett, M. (2018). Open source barriers to entry, revisited: A sociotechnical perspective. En ICSE 2018. https://doi.org/10.1145/3180155.3180205 DOI: https://doi.org/10.1145/3180155.3180241

Zacchiroli, S. (2021). Gender differences in public code contributions: A 50-year perspective. IEEE Software, 38(2), 45–50. https://doi.org/10.1109/MS.2020.3026173 DOI: https://doi.org/10.1109/MS.2020.3038765

Published

2025-04-23

Issue

Section

Original

How to Cite

Multi-objective software remodularization optimization using genetic algorithms. (2025). CognitivaTech: Ingeniería De Software Inteligente Y Sistemas Adaptativos, 2(1), 20. https://doi.org/10.63688/cognitivatech.v2.i1.20