Abstract

Background: Replication is a recurrent issue in empirical software engineering (ESE). Although it is a foundation of science, replication is hard to execute despite the many supporting tools meant to facilitate reproducibility. For example, in an experiment, which is the most used method in ESE, the number of replications is not enough compared to other sciences. Objective: In this study, we aim to identify tools that maximize reproducibility in software engineering experiments and how they are applied. Methods: We performed a Systematic Mapping Study and complementary strategies to analyze replication from three concerns (communication, knowledge management, and motivation). We analyzed more than 2,600 studies to get 40 primary studies, using a qualitative analytical tool (Atlas.ti) to create semantic maps for synthesizing our results. Result: We found that tools and practices depend on the experiment domain. Human-oriented experiments tend to use an informal mechanism that is costly and time-consuming. On the other hand, technology-oriented experiments are automated, domain-centric, and specialized so they require a learning process and are not transferable to other domains. Conclusion: Tools and practices still lack acceptation and usability among the ESE research community. Therefore, reproducibility is mostly relegated to internal replication, at which time and costs can be assumed within research groups. A focus on new alternatives should be considered to broaden replication.

Highlights

  • Since empirical research has taken an essential role in the field of software engineering (SE), replication of results has become a challenging topic [1]

  • Fonseca C.: Resources for Reproducibility of Experiments in empirical software engineering (ESE): Topics Derived From a Secondary Study FIGURE 4

  • In this research, we analyzed the reproducibility of experiments in software engineering from a fresh perspective

Read more

Summary

Introduction

Since empirical research has taken an essential role in the field of software engineering (SE), replication of results has become a challenging topic [1]. Replication is a recurrent issue in empirical software engineering (ESE) It is a foundation of science, replication is hard to execute despite the many supporting tools meant to facilitate reproducibility. Objective: In this study, we aim to identify tools that maximize reproducibility in software engineering experiments and how they are applied. Many researchers agree it is necessary to share as much information from the original study as possible to achieve the highest degree of reproducibility. This information must cover more than just raw data [2], [5], [10]. We believe that procedures and times used in training and executions should be detailed, as well as the practical and methodological considerations that affect the decisions made during the experiment execution [14]

Objectives
Methods
Results
Conclusion
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call