Ayuda
Ir al contenido

El Origen de los Errores en el Software: Un modelo para Identificar Cómo se Introducen Errores en el Software

    1. [1] Universidad Rey Juan Carlos
  • Localización: Actas de las XXV Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2021): [Málaga, 22 al 24 de septiembre de 2021] / coord. por Rafael Capilla Sevilla, Maider Azanza Sese, Miguel Rodríguez Luaces, M. M. Roldán García, Dolores Burgueño Caballero, José Raúl Romero Salguero, José Antonio Parejo Maestre, José Francisco Chicano García, Marcela Genero, Óscar Díaz García, José González Enríquez, María Carmen Penades Gramage; Silvia Mara Abrahao Gonzales (col.), 2021
  • Idioma: español
  • Texto completo no disponible (Saber más ...)
  • Resumen
    • A la hora de identificar el origen de los errores en el software, muchos estudios asumen que +ACI-el error fue introducido en las líneas de código que se modificaron para solucionarlo+ACI. Sin embargo, esta suposición no siempre se cumple, ya que al menos en algunos casos esas líneas que se modificaron no fueron las causantes. As+AO0 pasa, por ejemplo, cuando el error es debido a un cambio en una API externa. La falta de evidencia empírica hace imposible evaluar la importancia de estos casos y, por lo tanto, en qu+AOk medida la suposición que comentábamos anteriormente es válida. Para avanzar en esta dirección y comprender mejor cómo nacen los errores, proponemos un modelo de definición de criterios para identificar cuándo un sistema de software en evolución presenta un error. Este modelo, basado en la idea de prueba perfecta, permite reconocer si se ha introducido un error al cambiar el software. Además, estudiamos los criterios del modelo analizando cuidadosamente cómo se introdujeron 116 errores en dos proyectos de software libre. El análisis manual ha ayudado a clasificar la causa de los errores y ha permitido crear manualmente dos conjuntos de datos con cambios que introducen errores y con errores que no fueron introducidos por ningún cambio en el código fuente. Finalmente, usamos estos conjuntos de datos para evaluar el rendimiento de cuatro algoritmos existentes basados en SZZ para detectar los cambios que introducen errores. Hemos descubierto que los algoritmos basados en SZZ no son muy precisos, especialmente cuando se encuentran múltiples confirmaciones+ADs el F-Score varía de 0,44 a 0,77, mientras que el porcentaje de verdaderos positivos no supera el 63+ACU. Nuestros resultados muestran evidencia empírica de que la suposición predominante, +AGAAYA-un error fue introducido por las líneas de código que se modificaron para solucionarlo'', es solo un caso de cómo se introducen errores en un sistema de software. Hemos podido comprobar que encontrar qu+AOk introdujo un error no es trivial: los desarrolladores pueden introducir errores en el código, pero también pueden aparecer errores independientemente del código. Por lo tanto, necesitamos seguir investigando para una mejor comprensión del origen de los errores en los proyectos de software que pueda ayudar a mejorar las pruebas de integración del diseño y a diseñar otros procedimientos que hagan que el desarrollo de software sea más robusto.


Fundación Dialnet

Dialnet Plus

  • Más información sobre Dialnet Plus

Opciones de compartir

Opciones de entorno