Abstract
Pair programming has been widely used in programming experiment teaching in programming courses. One of the important factors affecting the successful completion of pair programming is the timing of periodic role switching. We organized an experiment in the course of Python Programming for 102 freshmen who did not major in computer science. By comparing the accuracy of code submitted by students in the online judge system, we evaluated the influence of pairing programming on students’ programming ability under three different periodic role switching intervals of 15 min, 20 min and 30 min, and collected students’ perception towards pairing programming under different modes. We also made a standard to judge the normalization of code, to study the influence of pair programming on the normalization of code written by students. The results show that when the periodic role switching interval is 30 min, pairing programming is helpful for students to solve difficult problems, and it has a positive impact on the solution of subsequent problems after experiencing the process of solving difficult problems. When the periodic role switching interval is 20 min, students have a positive attitude towards pair programming. Therefore, the best switching interval can be set between 20 min and 30 min. However, in terms of code normalization, there is no significant relationship between the standard degree of student code and the switching interval of pair programming. We gave some explanations for this in this paper.
Supported by the National Natural Science Foundation of China (U1811261).
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Computer Research Association., et al.: Generation CS: computer science undergraduate enrollments surge since 2006 (2017). http://cra.org/data/Generation-CS/
Beck, K., Andres, C.: Extreme Programming Explained: Embrace Change. Addison-Wesley Professional, USA (2004). https://doi.org/10.5555/318762
Braught, G., Wahls, T., Eby, L.M.: The case for pair programming in the computer science classroom. ACM Trans. Comput. Educ. (TOCE) 11(1), 1–21 (2011). https://doi.org/10.1145/1921607.1921609
Carver, J.C., Henderson, L., He, L., Hodges, J., Reese, D.: Increased retention of early computer science and software engineering students using pair programming. In: 20th Conference on Software Engineering Education & Training (CSEET 2007), pp. 115–122. IEEE (2007). https://doi.org/10.1109/CSEET.2007.29
Celepkolu, M., Boyer, K.E.: Thematic analysis of students’ reflections on pair programming in cs1. In: Proceedings of the 49th ACM Technical Symposium on Computer Science Education, pp. 771–776 (2018). https://doi.org/10.1145/3159450.3159516
Chaparro, E.A., Yuksel, A., Romero, P., Bryant, S.: Factors affecting the perceived effectiveness of pair programming in higher education. In: Proceedings of PPIG, pp. 5–18 (2005)
Declue, T.: Pair programming and pair trading: effects on learning and motivation in a CS2 course. J. Comput. Sci. Coll. JCSC 18 (2003). https://doi.org/10.5555/771832.771843
Hanks, B.: Student attitudes toward pair programming. In: Proceedings of the 11th Annual SIGCSE Conference on Innovation and Technology in Computer Science Education, pp. 113–117 (2006). https://doi.org/10.1145/1140123.1140156
Heinonen, K., Hirvikoski, K., Luukkainen, M., Vihavainen, A.: Learning agile software engineering practices using coding dojo. In: Proceedings of the 14th Annual ACM SIGITE Conference on Information Technology Education, pp. 97–102 (2013). https://doi.org/10.1145/2512276.2512306
Khan, S., Ray, L., Smith, A., Kongmunvattana, A.: A pair programming trial in the CS1 lab. In: Proceeding Annual International Conference on Computer Science Education: Innovation and Technology (CSEIT), pp. 6–7 (2010)
Liu, X., Bai, J., Liu, L., Ouyang, H., Zhou, H., Xu, L.: Mining core contributors in open-source projects. In: Ni, W., Wang, X., Song, W., Li, Y. (eds.) WISA 2019. LNCS, vol. 11817, pp. 690–703. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-30952-7_70
McDowell, C., Hanks, B., Werner, L.: Experimenting with pair programming in the classroom. In: Proceedings of the 8th Annual Conference on Innovation and Technology in Computer Science Education, pp. 60–64 (2003). https://doi.org/10.1145/961511.961531
McDowell, C., Werner, L., Bullock, H., Fernald, J.: The effects of pair-programming on performance in an introductory programming course. In: Proceedings of the 33rd SIGCSE Technical Symposium on Computer Science Education, pp. 38–42 (2002). https://doi.org/10.1145/563340.563353
Nagappan, N., et al.: Improving the CS1 experience with pair programming. vol. 35, pp. 359–362. ACM New York (2003). https://doi.org/10.1145/792548.612006
Porter, L., Simon, B.: Retaining nearly one-third more majors with a trio of instructional best practices in CS1. In: Proceeding of the 44th ACM Technical Symposium on Computer Science Education, pp. 165–170 (2013). https://doi.org/10.1145/2445196.2445248
Quintana, H., Grados, B.: Applying pair programming practice in the improvement of software design skills, in an undergraduate course. In: Proceedings of the 2020 ACM Conference on Innovation and Technology in Computer Science Education, pp. 543–544 (2020). https://doi.org/10.1145/3341525.3393985
Reckinger, S., Hughes, B.: Strategies for implementing in-class, active, programming assessments: a multi-level model. In: Proceedings of the 51st ACM Technical Symposium on Computer Science Education, pp. 454–460 (2020). https://doi.org/10.1145/3328778.3366850
Venkatesan, V., Sankar, A.: Adoption of pair programming in the academic environment with different degree of complexity in students perspective-an empirical study. Int. J. Eng. Sci. Technol. 2(9), 4791–4800 (2010)
Xinogalos, S., Satratzemi, M., Chatzigeorgiou, A., Tsompanoudi, D.: Factors affecting students’ performance in distributed pair programming. J. Educ. Comput. Res. 57(2), 513–544 (2019). https://doi.org/10.1177/0735633117749432
Zhong, B., Wang, Q., Chen, J.: The impact of social factors on pair programming in a primary school. Comput. Hum. Behav. 64, 423–431 (2016). https://doi.org/10.1016/j.chb.2016.07.017
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2020 Springer Nature Switzerland AG
About this paper
Cite this paper
Xu, B., Yan, S., Gao, K., Zhang, Y., Yu, G. (2020). Influence of Periodic Role Switching Intervals on Pair Programming Effectiveness. In: Wang, G., Lin, X., Hendler, J., Song, W., Xu, Z., Liu, G. (eds) Web Information Systems and Applications. WISA 2020. Lecture Notes in Computer Science(), vol 12432. Springer, Cham. https://doi.org/10.1007/978-3-030-60029-7_1
Download citation
DOI: https://doi.org/10.1007/978-3-030-60029-7_1
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-60028-0
Online ISBN: 978-3-030-60029-7
eBook Packages: Computer ScienceComputer Science (R0)