JUCS - Journal of Universal Computer Science 32(4): 584-614, doi: 10.3897/jucs.147241
Use of Software Engineering methodological support for developing machine learning-based software: A Systematic Mapping Study
expand article infoMirna Muñoz, Gabriel Garcia-Mireles§, Jezreel Mejia, Yadira Quiñonez|, Gloria Gasca-Hurtado, Adriana Peña#
‡ Centro de Investigación en Matemáticas A.C., Unidad Zacatecas, Zacatecas, Mexico§ Universidad de Sonora, Hermosillo, Mexico| Universidad Autónoma de Sinaloa, Mazatlán, Mexico¶ Universidad de Medellín, Medellín, Colombia# Universidad de Guadalajara, Guadalajara, Mexico
Open Access
Abstract
Advances in Artificial Intelligence (AI), particularly through Machine Learning (ML) and Deep Learning (DL), have enabled innovative solutions in industries including automotive, healthcare, and transportation. These technologies address complex problems by leveraging data at large scale for decision making. Nonetheless, their widespread adoption has also exposed critical technical challenges that can impact system performance in real world environments. Software Engineering (SE), a foundational discipline in Computer Science, provides methodological support to oversee the complete software development lifecycle, encompassing planning, design, implementation, testing, and maintenance. This renders SE relevant for developing reliable and maintainable systems based on AI. This paper conducts a Systematic Mapping Study (SMS) that analyzes 89 Primary Studies (PS) to investigate the current state of methodological support for SE in software development based on ML. Our findings reveal significant gaps in how SE practices are integrated into ML projects, with most research focusing narrowly on testing activities and overlooking other critical development stages. The study identifies core challenges and proposes recommendations organized according to the four dimensions of SE: process, product, project, and people. The results highlight the pressing need to refine and expand SE methodological support to address the distinct requirements of systems driven by AI, thereby enhancing reliability, maintainability, and ethical accountability in software development based on ML.
Keywords
Artificial Intelligence, Machine Learning based Software, Software Engineering, Systematic Mapping Study
login to comment