Effectiveness of Explaining a Program to Others in Finding Its Bugs - Nakamura, Toshihiro; Monden, Akito; Sasakura, Mariko; Uwano, Hidetake (IEEE/ACIS International Conference on Software Engineering, Artificial Intelligence, Networking and Parallel/Distributed Computing (Online), 2021)
Explaining a program to others helps get others to find bugs and for the explainer him/herself to find bugs. However, to the best of our knowledge, there is no quantitative evidence that explaining a program to others helps the explainer find bugs. This study aims to show quantitatively, using an experimental evaluation, that the explainer himself can find new bugs by explaining the program to others. In the experiment, subjects first review a program that contains many bugs and try to find as many bugs as possible. Next, they are required to explain the program aloud to others. We see if they notice any new bugs themselves during the explanation. As a result of the experiment, five out of the six subjects could find new bugs when explaining the program to others. According to the questionnaire to the subjects, the subjects who find many bugs feel that they can understand the program better by explaining it to others.