Propuesta para Medir las Buenas Prácticas de Programación en la Calidad del Software Desarrollado por los Estudiantes de Ingeniería en Sistemas Computacionales
Proposal for Measuring Programming best Practices Regarding the Quality of Software Developed by Computer Systems Engineering Students
DOI:
https://doi.org/10.65011/prismaods.v5.i4.339Palabras clave:
buenas prácticas de programación, calidad del software, educación en ingeniería, métricas de código, ingeniería en sistemas computacionalesResumen
En las aulas donde se enseña a programar sucede algo curioso: casi todos los planes de estudio insisten en que el estudiante debe “aplicar buenas prácticas de programación”, pero muy pocos programas educativos dicen cómo se comprueba que eso realmente ocurrió. El docente termina evaluando lo que ve (si el programa corre, si entrega el resultado esperado), y deja fuera lo que no se ve a simple vista: si el código es legible, si está documentado, si otra persona podría darle mantenimiento sin sufrir. Este artículo de revisión bibliográfica reúne lo que la literatura especializada dice sobre la relación entre buenas prácticas de programación y calidad del software, con énfasis en el contexto de la formación de ingenieros en sistemas computacionales en instituciones como el Tecnológico Nacional de México (TecNM). A partir de esa revisión se plantea una propuesta de instrumento de medición, organizada en cinco dimensiones (legibilidad y estilo, modularidad y diseño, pruebas, documentación y control de versiones, y mantenibilidad medida con métricas objetivas), pensada para integrarse a la evaluación de proyectos en las asignaturas de programación y de ingeniería de software. La propuesta no busca sustituir el criterio del profesor, sino darle un lenguaje común y datos verificables para justificar sus decisiones de evaluación y para que el estudiante entienda, con evidencia, en qué está fallando.
Descargas
Referencias
ACM, & IEEE Computer Society. (2020). Computing Curricula 2020: Paradigms for global computing education. Association for Computing Machinery; IEEE Computer Society. https://doi.org/10.1145/3456287
AlOmar, E. A., AlOmar, S. A., & Mkaouer, M. W. (2023). On the use of static analysis to engage students with software quality improvement: An experience with PMD. En 2023 IEEE/ACM 45th International Conference on Software Engineering: Software Engineering Education and Training (ICSE-SEET) (pp. 179–191). IEEE. https://doi.org/10.1109/icse-seet58685.2023.00023
Biggs, J., & Tang, C. (2011). Teaching for quality learning at university (4.ª ed.). Open University Press.
Callejas Cuervo, M., Alarcón Aldana, A. C., & Álvarez-Carreño, A. M. (2017). Modelos de calidad del software, un estado del arte. Entramado, 13(1), 236–250. https://doi.org/10.18041/entramado.2017v13n1.25125
Delgado-Pérez, P., & Medina-Bulo, I. (2017). Análisis automático del código en prácticas de programación en orientación a objetos. En Actas del I Congreso Internacional de Innovación Docente e Investigación en Educación Superior (pp. 61–71). Adaya Press. https://doi.org/10.58909/ad17102678
Fernandez-Gauna, B., Rojo, N., & Graña, M. (2023). Automatic feedback and assessment of team-coding assignments in a DevOps context. International Journal of Educational Technology in Higher Education, 20(1), Artículo 64. https://doi.org/10.1186/s41239-023-00386-6
Ferreira, A., Brito, M. A., & Lima, J. de. (2024). Software quality in an automotive project: Continuous inspection. International Journal of Automotive Technology, 25, 1–12. https://doi.org/10.1007/s12239-024-00132-5
Gomes, P. H. de A., Garcia, R. E., Spadon, G., Eler, D. M., Olivete, C., & Correia, R. C. M. (2017). Teaching software quality via source code inspection tool. En 2017 IEEE Frontiers in Education Conference (FIE) (pp. 1–8). IEEE. https://doi.org/10.1109/fie.2017.8190658
Horváth, M., Pietriková, E., & Gurbáľ, F. (2025). Personalized learning analytics through static code analysis in Computer Science Education. Acta Informatica Pragensia, 15(1), 54–71. https://doi.org/10.18267/j.aip.283
International Organization for Standardization. (2011). Systems and software engineering — Systems and software Quality Requirements and Evaluation (SQuaRE) — System and software quality models (ISO/IEC Estándar N.º 25010:2011). https://www.iso.org/standard/35733.html
Jiménez-Toledo, J. A., Collazos, C., & Revelo-Sánchez, O. (2019). Consideraciones en los procesos de enseñanza-aprendizaje para un primer curso de programación de computadores: una revisión sistemática de la literatura. TecnoLógicas, 22(edición especial), 83–117. https://doi.org/10.22430/22565337.1520
Kaszab, P., & Cserép, M. (2023). Detecting programming flaws in student submissions with static source code analysis. Studia Universitatis Babeș-Bolyai Informatica, 68(1), 37–54. https://doi.org/10.24193/subbi.2023.1.03
Krusche, S., von Frankenberg, N., Reimer, L. M., & Bruegge, B. (2020). An interactive learning method to engage students in modeling. En Proceedings of the 42nd International Conference on Software Engineering: Software Engineering Education and Training (pp. 12–22). Association for Computing Machinery. https://doi.org/10.1145/3377814.3381702
McCabe, T. J. (1976). A complexity measure. IEEE Transactions on Software Engineering, SE-2(4), 308–320. https://doi.org/10.1109/TSE.1976.233837
Messer, M., Brown, N. C. C., Kölling, M., & Shi, M. (2024). Automated grading and feedback tools for programming education: A systematic review. ACM Transactions on Computing Education, 24(1), 1–35. https://doi.org/10.1145/3636515
Molnar, A.-J., Motogna, S., & Cristina, V. (2020). Using static analysis tools to assist student project evaluation. En Proceedings of the 13th International Conference on Computer Supported Education (pp. 7–12). Association for Computing Machinery. https://doi.org/10.1145/3412453.3423195
Nikolić, D., Stefanović, D., Nikolić, M., Dakić, D., Stefanović, M., & Koprivica, S. (2024). Uncovering determinants of code quality in education via static code analysis. IEEE Access, 12, 102450–102462. https://doi.org/10.1109/access.2024.3426299
Niño Membrillo, Y. E., Morales Salgado, M. G. R., Vázquez Reyes, S., & Sánchez Rinza, B. (2020). Mejores prácticas y criterios de calidad en el proceso de desarrollo de código en los cursos de programación en la enseñanza superior. Revista Tecnología, Ciencia y Educación, (17), 97–126.
Pérez, J. R. P., Fernández, D. R., & González-Rodríguez, M. (2004). ¿Es posible la eliminación de los errores de los programas? En Informática educativa: Nuevos retos (p. 99). Universidad de Oviedo. https://dialnet.unirioja.es/servlet/articulo?codigo=6795510
Pressman, R. S., & Maxim, B. R. (2020). Software engineering: A practitioner's approach (9.ª ed.). McGraw-Hill Education.
Sommerville, I. (2020). Engineering software products: An introduction to modern software engineering. Pearson.
Soraluz Soraluz, A. E., Valles Coral, M. Á., & Lévano Rodríguez, D. (2021). Desarrollo guiado por comportamiento: Buenas prácticas para la calidad de software. Ingeniería y Desarrollo, 39(1), 190–204. https://doi.org/10.14482/inde.39.1.620.101
Tecnológico Nacional de México. (2023). Programa educativo de Ingeniería en Sistemas Computacionales: Perfil de egreso y competencias específicas. Tecnológico Nacional de México.
Trinidad, P., Resinas, M., Segura, S., & Ruiz-Cortés, A. (2012). Evaluación y seguimiento de trabajos en equipo de desarrollo de software a través de la calidad del código fuente. UPCommons Institutional Repository (Universitat Politècnica de Catalunya). https://hdl.handle.net/2099/15038
Villalta, A., & Carvallo, J. P. (2015). Modelos de calidad de software: Una revisión sistemática de la literatura. Maskana, 6(1), 107–117. https://doi.org/10.18537/mskn.06.01.09
Williams, J., Kane, D., & Cappuccini-Ansfield, G. (2008). Student satisfaction surveys: The value of taking a historical perspective. Quality in Higher Education, 14(2), 135–155. https://doi.org/10.1080/13538320802278347
Publicado
Número
Sección
Licencia
Derechos de autor 2026 Sindya Yadira Castillo Ortiz, Lydia Cuevas Bracamontes, Enrique Mena Salgado, José Carlos Díaz García, María del Carmen Urióstegui Peralta (Autor/a)

Esta obra está bajo una licencia internacional Creative Commons Atribución 4.0.
Todo el contenido de Prisma ODS se publica bajo la Licencia Creative Commons Atribución 4.0 Internacional (CC BY 4.0).
Los autores conservan los derechos de autor y otorgan a la revista el derecho de primera publicación.
Se permite la libre copia, distribución, adaptación y reutilización del contenido para cualquier fin legal,
siempre que se otorgue la atribución adecuada a los autores y a la fuente original.
Más información en: https://creativecommons.org/licenses/by/4.0/
















