Abstract
Scrum is a popular software development process that addressed the complex software delivery through multi-sprint. However, the scrum team working strategy remain undefined, such as how-to delivery the software at each sprint by optimized task allocation for various team composition is a complex problem. This paper proposed a multi-agent based simulation methods to model scrum team and the proposed innovative team working strategy, in order to verify the performance of the team under different working strategies. A solo strategy and pair programming strategies for the scrum team are designed. Criteria such as completion time, effort time and idle time are considered into the evaluation of the designed team strategies. The testing experiment shows that the adoption of pair programming to scrum team can help the team to improve its performance under specific context.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
References
Scrum guide. https://www.scrum.org/resources/scrum-guide
Scrum diagram online. https://www.scruminc.com/the-3-5-3-of-scrum/
Agarwal, R.: A Flexible Model for Multi-agent Based Simulation of Software Development Process. Auburn University (2007)
Ali, N.B., Petersen, K., Wohlin, C.: A systematic literature review on the industrial use of software process simulation. J. Syst. Softw. 97(C), 65–85 (2014). https://doi.org/10.1016/j.jss.2014.06.059
Cherif, R., Davidsson, P.: Software Development Process Simulation: Multi Agent-Based Simulation versus System Dynamics, Berlin, Heidelberg (2010)
Cockburn, A., Williams, L.: The costs and benefits of pair programming. In: Extreme Programming Examined, pp. 223–243. Addison-Wesley Longman Publishing Co., Inc. (2001)
Dybå, T., Arisholm, E., Sjøberg, D.I.K., Hannay, J.E., Shull, F.: Are two heads better than one? On the effectiveness of pair programming. IEEE Softw. 24(6), 12–15 (2007). https://doi.org/10.1109/MS.2007.158
Hanakawa, N., Matsumoto, K.-I., Torii, K.: A knowledge-based software process simulation model. Ann. Softw. Eng. 14(1), 383–406 (2002). https://doi.org/10.1023/a:1020574228799
Hoda, R., Murugesan, L.K.: Multi-level agile project management challenges: a self-organizing team perspective. J. Syst. Softw. 117, 245–257 (2016). https://doi.org/10.1016/j.jss.2016.02.049
Joslin, D., Poole, W.: Agent-based simulation for software project planning. Paper Presented at the Proceedings of the Winter Simulation Conference (2005)
Kellner, M.I., Madachy, R.J., Raffo, D.M.: Software process simulation modeling: Why? What? How? J. Syst. Softw. 46(2), 91–105 (1999). https://doi.org/10.1016/S0164-1212(99)00003-5
Lin, J.: Context-aware task allocation for distributed agile team. Paper Presented at the Proceedings of the 28th IEEE/ACM International Conference on Automated Software Engineering, Silicon Valley, CA, USA (2013)
Lin, J., Yu, H., Shen, Z.: An Empirical Analysis of Task Allocation in Scrum-based Agile Programming. arXiv, abs/1411.6201 (2014)
Lin, J., Yu, H., Shen, Z., Miao, C.: Studying task allocation decisions of novice agile teams with data from agile project management tools. Paper Presented at the Proceedings of the 29th ACM/IEEE International Conference on Automated Software Engineering, Vasteras, Sweden (2014)
López-Martínez, J., Juárez-Ramírez, R., Huertas, C., Jiménez, S., Guerra-García, C.: Problems in the adoption of agile-scrum methodologies: a systematic literature review. Paper Presented at the 2016 4th International Conference in Software Engineering Research and Innovation (CONISOFT) (2016)
Lui, K.M., Chan, K.C.C.: Pair programming productivity: novice–novice vs. expert–expert. Int. J. Hum.-Comput. Stud. 64(9), 915–925 (2006). https://doi.org/10.1016/j.ijhcs.2006.04.010
Mahnič, V., Hovelja, T.: On using planning poker for estimating user stories. J. Syst. Softw. 85(9), 2086–2095 (2012). https://doi.org/10.1016/j.jss.2012.04.005
Masood, Z., Hoda, R., Blincoe, K.: Motivation for self-assignment: factors agile software developers consider. Paper Presented at the 2017 IEEE/ACM 10th International Workshop on Cooperative and Human Aspects of Software Engineering (CHASE) (2017)
Moe, N.B., Dings, T., Dyb, T.: A teamwork model for understanding an agile team: a case study of a Scrum project. Inf. Softw. Technol. 52(5), 480–491 (2010). https://doi.org/10.1016/j.infsof.2009.11.004
Moe, N.B., Dingsøyr, T.: Scrum and Team Effectiveness: Theory and Practice, Berlin, Heidelberg (2008)
Moløkken-Østvold, K., Haugen, N.C., Benestad, H.C.: Using planning poker for combining expert estimates in software projects. J. Syst. Softw. 81(12), 2106–2117 (2008). https://doi.org/10.1016/j.jss.2008.03.058
Nilsson, K.: Increasing Quality with Pair Programming - An Investigation of Using Pair Programming as a Quality Tool (2003)
Noori, F., Kazemifard, M.: Simulation of pair programming using multi-agent and MBTI personality model. Paper Presented at the 2015 Sixth International Conference of Cognitive Science (ICCS) (2015)
Plonka, L., Sharp, H., van der Linden, J., Dittrich, Y.: Knowledge transfer in pair programming: an in-depth analysis. Int. J. Hum. Comput. Stud. 73, 66–78 (2015). https://doi.org/10.1016/j.ijhcs.2014.09.001
Silva, I.J.D., Rayadurgam, S., Heimdahl, M.P.E.: A reference model for simulating agile processes. Paper Presented at the Proceedings of the 2015 International Conference on Software and System Process, Tallinn, Estonia (2015)
Vinod, V., Padmanabhuni, K., Tadiparthi, H.P., Yanamadala, M., Madina, S.: Effective Pair Programming Practice - An Experimental Study (2012)
Wang, Z.: The impact of expertise on pair programming productivity in a scrum team: a multi-agent simulation. Paper Presented at the 2018 IEEE 9th International Conference on Software Engineering and Service Science (ICSESS) (2018)
Wang, Z.: Teamworking strategies of scrum team: a multi-agent based simulation. Paper Presented at the Proceedings of the 2018 2nd International Conference on Computer Science and Artificial Intelligence, Shenzhen, China (2018)
Wang, Z.: The Compare of Solo Programming Strategies in a Scrum Team: A Multi-agent Simulation Tool for Scrum Team Dynamics, Cham (2019)
Wang, Z.: Estimating productivity in a scrum team: a multi-agent simulation. Paper Presented at the Proceedings of the 11th International Conference on Computer Modeling and Simulation, North Rockhampton, QLD, Australia (2019)
Williams, L., Kessler, R.: Pair Programming Illuminated: Addison-Wesley Longman Publishing Co., Inc. (2002)
Williams, L., Kessler, R.R., Cunningham, W., Jeffries, R.: Strengthening the case for pair programming. IEEE Softw. 17(4), 19–25 (2000). https://doi.org/10.1109/52.854064
Wooldridge, M., Jennings, N.R.: Agent Theories, Architectures, and Languages: A Survey, Berlin, Heidelberg (1995)
Wray, S.: How pair programming really works. IEEE Softw. 27(1), 50–55 (2010). https://doi.org/10.1109/ms.2009.199
Zhang, H., Kitchenham, B., Jeffery, R.: Qualitative vs. quantitative software process simulation modeling: conversion and comparison. Paper Presented at the 2009 Australian Software Engineering Conference (2009)
Zhang, H., Kitchenham, B., Pfahl, D.: Software process simulation modeling: facts, trends and directions. Paper Presented at the 2008 15th Asia-Pacific Software Engineering Conference (2008)
Zhang, H., Kitchenham, B., Pfahl, D.: Software process simulation modeling: an extended systematic review. Paper Presented at the Proceedings of the 2010 International Conference on New Modeling Concepts for Today’s Software Processes: Software Process, Paderborn, Germany (2010)
Zieris, F., Prechelt, L.: On knowledge transfer skill in pair programming. Paper Presented at the Proceedings of the 8th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement, Torino, Italy (2014)
Acknowledgement
Sincerely, Thanks for Dr Patricia Anthony and Dr. Stuart Charter at Lincoln University, New Zealand to support this PhD research, also thanks for University of Technology Sydney provides funding in the related data analysis and machine learning research which I was doing my invited research at UTS, Australia. I also thanks to Edinburgh Napier University, United Kingdom where I get my MSc in Advanced Software Engineering. They are all my best Supervisors support me to growth and become more and more professional.
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
Wang, Z. (2020). The Compare of Solo Programming and Pair Programming Strategies in a Scrum Team: A Multi-agent Simulation. In: Silhavy, R. (eds) Intelligent Algorithms in Software Engineering. CSOC 2020. Advances in Intelligent Systems and Computing, vol 1224. Springer, Cham. https://doi.org/10.1007/978-3-030-51965-0_11
Download citation
DOI: https://doi.org/10.1007/978-3-030-51965-0_11
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-51964-3
Online ISBN: 978-3-030-51965-0
eBook Packages: Intelligent Technologies and RoboticsIntelligent Technologies and Robotics (R0)