Tesis:

Impacto de la instrumentación en los experimentos de Ingeniería del Software : aplicación a experimentos de Test-Driven Development


  • Autor: UYAGUARI UYAGUARI, Fernando Manuel

  • Título: Impacto de la instrumentación en los experimentos de Ingeniería del Software : aplicación a experimentos de Test-Driven Development

  • Fecha: 2017

  • Materia: Sin materia definida

  • Escuela: E.T.S DE INGENIEROS INFORMÁTICOS

  • Departamentos: LENGUAJES Y SISTEMAS INFORMATICOS E INGENIERIA DE SOFTWARE

  • Acceso electrónico: http://oa.upm.es/47988/

  • Director/a 1º: DIESTE TUBIO, Oscar
  • Director/a 2º: VEGAS HERNÁNDEZ, Sira

  • Resumen: La experimentación se ha venido aplicando desde hace varias décadas como método de investigación en Ingeniería del Software. El incremento en la realización de experimentos ha sido notable en los últimos años. Sin embargo, hay ciertos aspectos relativos al proceso experimental que han sido poco estudiados y posiblemente estén afectando la validez de los resultados experimentales. En particular la operacionalización, que pertenece a la fase de diseño experimental, apenas ha sido tratada. La operacionalización es el proceso por el cual los constructos que se desean estudiar, tanto en lo relativo a las variables dependientes como independientes, son asignados a métricas y factores medibles. Con frecuencia, la medición no es directa, sino que requiere de métodos de medición complejos, donde intervienen muchos elementos, tales como instrumentos, medidores y manipulaciones o intervenciones sobre las muestras a medir. Existen evidencias de que ciertos elementos de los métodos de medición (por ejemplo, los casos de prueba usados en la medición de muchos experimentos en TDD) producen resultados experimentales que no son consistentes entre sí. El objetivo de esta Tesis es determinar qué componentes de los métodos de medición pueden influir en los resultados experimentales, y cuál es el origen de dichas variaciones. Para realizar este estudio, se trabajó con una familia de experimentos en TDD realizados tanto en industria como en academia, dentro del proyecto FiDiPro ESEIL. La investigación se ha enfocado en tres elementos de los métodos de medida: Casos de prueba, medidores y tipos de intervención. Para realizar la investigación. se realizaron múltiples mediciones utilizando distintos casos de prueba, medidores y tipos de intervención. Las mediciones fueron posteriormente comparadas utilizando métodos provenientes de la ingeniería, como ISO 5725, las ciencias biomédicas, como es el caso de los diagramas Bland-Altman, y el Coeficiente de Correlación Intraclase, proveniente de la psicología. Nuestros resultados muestran que la utilización de una u otra suite de casos de prueba modifica de forma sustancial los resultados de los análisis estadísticos de los experimentos. En contrapartida, los medidores y los tipos de intervención no influyen fuertemente en los resultados experimentales. El aporte de esta Tesis es proporcionar visibilidad en la fase de operacionalización, poniendo a disposición de los experimentadores recomendaciones sobre ciertos aspectos de los métodos de medida que permitirán obtener resultados más precisos en los experimentos de Ingeniería del Software. ----------ABSTRACT---------- Experimentation has been applied for several decades as a research method in Software Engineering. The increased number of conducted experiments has been remarkable in recent years. However, there are aspects related to the experimental process that have been seldom studied and may be affecting the validity of experimental results. In particular, operationalization, which belongs to the design phase, has scarcely been addressed. Operationalization is the process where the constructs to be studied, both in terms of dependent and independent variables, are assigned to metrics and measurable factors. Measurement is often not direct but requires complex measurement methods, involving many elements, such as instruments, measurers and manipulations or interventions on the samples to be measured. There is evidence that certain elements of measurement methods (e.g. test cases used in the measurement of many TDD experiments) yield experimental results that are not consistent with each other. The objective of this Thesis is to determine which components of measurement methods may influence experimental results and what the origin of these variations may be. For this study we worked with a family of TDD experiments conducted both in industry and academia, within the FiDiPro ESEIL project. The research has focused on three elements of measurement methods: test cases, measurers and types of intervention. Measurements were subsequently compared using engineering methods as ISO 5275, methods applied in biomedical sciences such as Bland-Altman diagrams, and the Intraclass Correlation Coeficient from psychology. Our results show that the use of one or an other test cases substantially modifies the results of the experiment’s statistical analysis. In contrast, measurers and types of intervention do not strongly influence experimental results. The contribution of this thesis is to provide visibility about the operational phase, making available recommendations on certain aspects of measurement methods that experimenters may take into account to obtain more accurate experimental results in Software Engineering.