The impact of Software Testing education on code reliability: An empirical assessment

Citation data:

Journal of Systems and Software, ISSN: 0164-1212, Vol: 137, Page: 497-511

Publication Year:
2018
Captures 27
Readers 27
Social Media 90
Shares, Likes & Comments 60
Tweets 30
DOI:
10.1016/j.jss.2017.02.042
Author(s):
Otávio Augusto Lazzarini Lemos; Fábio Fagundes Silveira; Fabiano Cutigi Ferrari; Alessandro Garcia
Publisher(s):
Elsevier BV
Tags:
Computer Science
Most Recent Tweet View All Tweets
article description
Software Testing (ST) is an indispensable part of software development. Proper testing education is thus of paramount importance. Indeed, the mere exposition to ST knowledge might have an impact on programming skills. In particular, it can encourage the production of more correct - and thus reliable - code. Although this is intuitive, to the best of our knowledge, there are no studies about such effects. Concerned with this, we have conducted two investigations related to ST education: (1) a large experiment with students to evaluate the possible impact of ST knowledge on the production of reliable code; and (2) a survey with professors that teach introductory programming courses to evaluate their level of ST knowledge. Our study involved 60 senior-level computer science students, 8 auxiliary functions with 92 test cases, a total of 248 implementations, and 53 professors of diverse subfields that completed our survey. The investigation with students shows that ST knowledge can improve code reliability in terms of correctness in as much as 20%, on average. On the other hand, the survey with professors reveals that, in general, university instructors tend to lack the same knowledge that would help students increase their programming skills toward more reliable code.