Observatorio de I+D+i UPM

Memorias de investigación
Artículos en revistas:
Findings from a multi-method study on test-driven development
Año:2017
Áreas de investigación
  • Ciencias de la computación y tecnología informática
Datos
Descripción
Context: Test-driven development (TDD) is an iterative software development practice where unit tests are defined before production code. A number of quantitative empirical investigations have been conducted about this practice. The results are contrasting and inconclusive. In addition, previous studies fail to analyze the values, beliefs, and assumptions that inform and shape TDD. Objective: We present a study designed, and conducted to understand the values, beliefs, and assumptions about TDD. Participants were novice and professional software developers. Method: We conducted an ethnographically-informed study with 14 novice software developers, i.e., graduate students in Computer Science at the University of Basilicata, and six professional software developers (with one to 10 years work experience). The participants worked on the implementation of a new feature for an existing software written in Java. We immersed ourselves in the context of our study. We collected qualitative information by means of audio recordings, contemporaneous field notes, and other kinds of artifacts. We collected quantitative data from the integrated development environment to support or refute the ethnography results. Results: The main insights of our study can be summarized as follows: (i) refactoring (one of the phases of TDD) is not performed as often as the process requires and it is considered less important than other phases, (ii) the most important phase is implementation, (iii) unit tests are almost never up-to-date, and (iv) participants first build in their mind a sort of model of the source code to be implemented and only then write test cases. The analysis of the quantitative data supported the following qualitative findings: (i), (iii), and (iv). Conclusions: Developers write quick-and-dirty production code to pass the tests, do not update their tests often, and ignore refactoring.
Internacional
Si
JCR del ISI
Si
Título de la revista
Information And Software Technology
ISSN
0950-5849
Factor de impacto JCR
2,694
Información de impacto
Volumen
89
DOI
10.1016/j.infsof.2017.03.010
Número de revista
Desde la página
64
Hasta la página
77
Mes
SEPTIEMBRE
Ranking
16/106
Esta actividad pertenece a memorias de investigación
Participantes
  • Autor: Simone Romano (University of Basilicata)
  • Autor: Davide Fucci (University of Oulu)
  • Autor: Giuseppe Scanniello (University of Basilicata)
  • Autor: Burak Turhan (University of Oulu)
  • Autor: Natalia Juristo Juzgado (UPM)
Grupos de investigación, Departamentos, Centros e Institutos de I+D+i relacionados
  • Creador: Grupo de Investigación: Ingeniería del Software
S2i 2021 Observatorio de investigación @ UPM con la colaboración del Consejo Social UPM
Cofinanciación del MINECO en el marco del Programa INNCIDE 2011 (OTR-2011-0236)
Cofinanciación del MINECO en el marco del Programa INNPACTO (IPT-020000-2010-22)