Abstract
Software maintainability is an important key aspect in software development life cycle. It has a huge impact on the time, effort, and cost. This research investigated the effect of applying pair programming on software maintainability vs individual programming approach. We reviewed many related studies which talked about the two approaches, but few of them focused on maintainability. Therefore, we conducted an experiment in educational environment. The participants were novice students in their second year, who finished object oriented programming course. The participating students were divided into two groups, some worked as individual and the others worked as pairs. In order to get good results, we made the experiment among the students in a competitive way. Enabling those who produced the best code to win a cash prize. Finally, code obtained from both approaches was analyzed by software quality assurance expert, who has finished a master degree in software engineering. The results taken from pair groups showed a statistically significant difference in building software with 50% less errors, 30% less code, and 25% better code. Furthermore, there is a marginal reducing in programming time particularly in small size software compared to individual programming.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Misra, S.: Pair programming: an empirical investigation in an agile software development environment. In: Przybyłek, A., Miler, J., Poth, A., Riel, A. (eds.) LASD 2021. LNBIP, vol. 408, pp. 195–199. Springer, Cham (2021). https://doi.org/10.1007/978-3-030-67084-9_13
Sunitha, K.S., Nirmala, K.: Correlation study on defect density with domain expert pair speed for effective pair programming. Indian J. Sci. Technol. 8(34), 1–7 (2015)
Rajagopal, S., Hareesha, K.S., Kundapur, P.P.: Optimising pair programming in a scholastic framework: a design pattern perspective. J. Comput. Sci. 13(6), 199–210 (2017)
Nawahdah, M., Taji, D., Inoue, T.: Collaboration leads to success: a study of the effects of using pair-programming teaching technique on student performance in a Middle Eastern society. In: 2015 IEEE International Conference on Teaching, Assessment, and Learning for Engineering (TALE). IEEE (2015)
Anjum, S., Batul, H., Sirshar, M.: A comparative study of ensuring quality in pair programming. IJCCSE 2(1), 160–171 (2015)
Alazzam, I., Akour, M.: Improving software testing course experience with pair testing pattern. Int. J. Teach. Case Stud. 6(3), 244–250 (2015)
Celepkolu, M., Boyer, K.E. The importance of producing shared code through pair programming. In: Proceedings of the 49th ACM Technical Symposium on Computer Science Education (2018)
Ersoy, I.B., Mahdy, A.M.: Agile knowledge sharing. Int. J. Softw. Eng. (IJSE) 6(1), 1–15 (2015)
Choudhari, J., Suman, U.: An empirical evaluation of iterative maintenance life cycle using XP. ACM SIGSOFT Softw. Eng. Notes 40(2), 1–14 (2015)
Sadath, L., Karim, K., Gill, S.: Extreme programming implementation in academia for software engineering sustainability. In: 2018 Advances in Science and Engineering Technology International Conferences (ASET). IEEE (2018)
Tsompanoudi, D., et al.: An empirical study on factors related to distributed pair programming, 65–81 (2019)
Bogner, J., Wagner, S., Zimmermann, A.: Automatically measuring the maintainability of service-and microservice-based systems: a literature review. In: Proceedings of the 27th International Workshop on Software Measurement and 12th International Conference on Software Process and Product Measurement (2017)
Chen, K., Rea, A.: Do pair programming approaches transcend coding? Measuring agile attitudes in diverse information systems courses. J. Inf. Sys. Educ. 29(2), 53–64 (2018)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2022 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this paper
Cite this paper
Nawahdah, M., Jaradat, M. (2022). The Effect of Pair Programming on Code Maintainability. In: Wong, LH., Hayashi, Y., Collazos, C.A., Alvarez, C., Zurita, G., Baloian, N. (eds) Collaboration Technologies and Social Computing. CollabTech 2022. Lecture Notes in Computer Science, vol 13632. Springer, Cham. https://doi.org/10.1007/978-3-031-20218-6_3
Download citation
DOI: https://doi.org/10.1007/978-3-031-20218-6_3
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-20217-9
Online ISBN: 978-3-031-20218-6
eBook Packages: Computer ScienceComputer Science (R0)