Skip to main content
Log in

Fostering good coding practices through individual feedback and gamification: an industrial case study

  • Published:
Empirical Software Engineering Aims and scope Submit manuscript

Abstract

Code quality is a constant challenge faced by today’s software industry. To ensure that developers follow good coding practices, a variety of program analysis and test coverage tools are routinely deployed. However, these tools often fail to engage and change the practices of developers when applied to legacy systems as they output a huge number of warnings, quickly overwhelming the developers. In this article, we explore how individual feedback and gamification can motivate developers to pay more attention to good coding practices. To that extent, we implemented these two concepts in a tool that we deployed at two large companies where we conducted a case study. We find out that individual feedback is essential for motivating developers. We also find that gamification can be useful but has to be used with caution as it can frustrate some developers. Finally, we reflect on some lessons learned during our case studies, and conclude that the promising approach of our tool needs to be supported by longitudinal studies as well as comparative studies.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Listing 1
Listing 2
Fig. 4
Fig. 5
Fig. 6

Similar content being viewed by others

Notes

  1. http://www.sonarqube.org/

  2. https://github.com/jacoco/jacoco

  3. A quality gate is defined by a threshold that drives the quality metrics. For instance, 85% of code coverage. When set, developers have no choice other than respecting the threshold.

  4. http://eslint.org/

  5. https://github.com/thechiselgroup/GamifyTechDebtData

  6. Themis does not create any code coverage action for test code, which explains why there is no such action in TestCustomer.js.

  7. http://promyze.com/themis

References

Download references

Acknowledgements

We thank our research participants and Cassandra Petrachenko for improving our paper.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Matthieu Foucault.

Additional information

Communicated by: Martin Robillard

Publisher’s note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Foucault, M., Blanc, X., Falleri, JR. et al. Fostering good coding practices through individual feedback and gamification: an industrial case study. Empir Software Eng 24, 3731–3754 (2019). https://doi.org/10.1007/s10664-019-09719-4

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10664-019-09719-4

Keywords

Navigation