Let`s Make it Fun: Gamifying and Formalizing Code Review

Naomi Unkelos-Shpigel, Irit Hadar

2016

Abstract

Code review is a highly important task in the software development lifecycle. However, some of the characteristics of code review hinder practitioners’ performance of this task. Code review is considered to be tedious and uninteresting, and includes challenging human aspects, such as collaboration among stakeholders. Despite the many concerns that need to be taken into consideration when performing code review, a comprehensive, formal definition thereof is yet to be determined. In a previous research, a set of formal guidelines for code review was presented, in the context of performing this task in a gamified environment. In this ongoing research, we explore whether the field of software engineering provides a formal definition for code review, and whether a formal definition is needed. The preliminary findings of this research indicate that while the field does provide several definitions for code review, in all that concerns the human aspect of this task, a formal definition is in order. As a response for this need, we present a framework of the task of code review toward its formalization, embedding gamification for motivation enhancement.

References

  1. Bacchelli A., and Bird C. 2013. Expectations, outcomes, and challenges of modern code review, In Proceedings of the 2013 International Conference on Software Engineering, pp. 712-721. IEEE Press.
  2. Bell, J., Sheth, S., and Kaiser, G. 2011. Secret ninja testing with HALO software engineering. In Proceedings of the 4th international workshop on Social software engineering, ACM, pp. 43-47.
  3. Deterding, S., Khaled, R., Nacke, L., and Dixon, D. 2011. Gamification: Toward a Definition. In CHI 2011 gamification Workshop Proceedings, pp.12-15.
  4. Dubois, D. J., and Tamburrelli, G. 2013. Understanding Gamification Mechanisms for Software Development. In Proceedings of the 2013 9th Joint Meeting on Foundations of Software Engineering, ACM, pp. 659- 662.
  5. Fagan, M. 1967. Design and code inspections to reduce errors in program development, IBM Systems Journal, 15(3), pp.182-211.
  6. Farchi, E., and Ur, S. 2008. Selective Homeworkless Reviews. In Software Testing, Verification, and Validation, 2008 1st International Conference on, pp. 404-413. IEEE.
  7. Hadar, I. 2013. When Intuition and Logic Clash: The Case of the Object Oriented Paradigm, Science of Computer Programming, 78, pp. 1407-1426.
  8. Marshburn, D. G., and Henry, R. M. 2013. Improving Knowledge Coordination in Early Stages Of Software Development Using Gamification. In Proceedings of The Southern Association For Information Systems Conference. Savannah, Ga, USA.
  9. Minelli, R., Mocci, A. and Lanza, M., 2015, May. Free hugs: praising developers for their actions. In Proceedings of the 37th International Conference on Software Engineering, 2, pp.555-558. IEEE press.
  10. Porter, A. A., Votta Jr, L. G., and Basili, V. R. 1995. Comparing detection methods for software requirements inspections: A replicated experiment. Software Engineering. In IEEE Transactions on, 21(6), pp. 563-575.
  11. Prause, C. R., and Jarke, M. 2015, August. Gamification for enforcing coding conventions. In Proceedings of the 2015 10th Joint Meeting on Foundations of Software Engineering. pp. 649-660. ACM.
  12. Singer, L. and Schneider, K., 2012, June. It was a bit of a race: Gamification of version control. In Games and Software Engineering (GAS), 2012 2nd International Workshop on, pp. 5-8. IEEE.
  13. Unkelos-Shpigel N. and Hadar, I. 2015. Gamifying Software Development Environments Using Cognitive Principles: The Case of Code Review. 8th International Workshop on Cooperative and Human Aspects of Software Engineering (CHASE 2015).
  14. Xie, T., Bishop, J., Horspool, R. N., Tillmann, N., and De Halleux, J.2015. CrowdSourcing code and process via code hunt. In CrowdSourcing in Software Engineering (CSI-SE), 2015 IEEE/ACM 2nd International Workshop on (pp. 15-16). IEEE.
  15. Zhang, T. Song M. and Kim, M. 2014. Critics: an interactive code review tool for searching and inspecting systematic changes. In Proceedings of the 22nd ACM SIGSOFT International Symposium on Foundations of Software Engineering, pp. 755-758, ACM.
Download


Paper Citation


in Harvard Style

Unkelos-Shpigel N. and Hadar I. (2016). Let`s Make it Fun: Gamifying and Formalizing Code Review . In Proceedings of the 11th International Conference on Evaluation of Novel Software Approaches to Software Engineering - Volume 1: COLAFORM, (ENASE 2016) ISBN 978-989-758-189-2, pages 391-395. DOI: 10.5220/0005937203910395


in Bibtex Style

@conference{colaform16,
author={Naomi Unkelos-Shpigel and Irit Hadar},
title={Let`s Make it Fun: Gamifying and Formalizing Code Review},
booktitle={Proceedings of the 11th International Conference on Evaluation of Novel Software Approaches to Software Engineering - Volume 1: COLAFORM, (ENASE 2016)},
year={2016},
pages={391-395},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0005937203910395},
isbn={978-989-758-189-2},
}


in EndNote Style

TY - CONF
JO - Proceedings of the 11th International Conference on Evaluation of Novel Software Approaches to Software Engineering - Volume 1: COLAFORM, (ENASE 2016)
TI - Let`s Make it Fun: Gamifying and Formalizing Code Review
SN - 978-989-758-189-2
AU - Unkelos-Shpigel N.
AU - Hadar I.
PY - 2016
SP - 391
EP - 395
DO - 10.5220/0005937203910395