Automatic team recommendation for collaborative software development
In large-scale collaborative software development, building a team of software practitioners can be challenging, mainly due to overloading choices of candidate members to fill in each role. Furthermore, having to understand all members’ diverse backgrounds, and anticipate team compatibility could significantly complicate and attenuate such a team formation process. Current solutions that aim to automatically suggest software practitioners for a task merely target particular roles, such as developers, reviewers, and integrators. While these existing approaches could alleviate issues presented by choice overloading, they fail to address team compatibility while members collaborate. In this paper, we propose RECAST, an intelligent recommendation system that suggests team configurations that satisfy not only the role requirements, but also the necessary technical skills and teamwork compatibility, given task description and a task assignee. Specifically, RECAST uses Max-Logit to intelligently enumerate and rank teams based on the team-fitness scores. Machine learning algorithms are adapted to generate a scoring function that learns from heterogenous features characterizing effective software teams in large-scale collaborative software development. RECAST is evaluated against a state-of-the-art team recommendation algorithm using three well-known open-source software project datasets. The evaluation results are promising, illustrating that our proposed method outperforms the baselines in terms of team recommendation with 646% improvement (MRR) using the exact-match evaluation protocol.
This is a preview of subscription content, log in via an institution to check access.
Access this article
Subscribe and save
Springer+ Basic
€32.70 /Month
- Get 10 units per month
- Download Article/Chapter or eBook
- 1 Unit = 1 Article or 1 Chapter
- Cancel anytime
Buy Now
Price includes VAT (France)
Instant access to the full article PDF.
Rent this article via DeepDyve
Similar content being viewed by others
Quantifying effectiveness of team recommendation for collaborative software development
Article 20 August 2022
A Multi-criteria Approach for Team Recommendation
Chapter © 2017
Identification of the Ideal Team Capabilities and Predictive Success Measure for Software Projects Using Machine Learning
Chapter © 2022
Explore related subjects
Notes
References
- Al-Subaihin A, Sarro F, Black S, Capra L (2019) Empirical comparison of text-based mobile apps similarity measurement techniques. Empir Softw Eng 24(6):3290–3315 ArticleGoogle Scholar
- Alberola JM, Del Val E, Sanchez-Anguix V, Palomares A, Teruel MD (2016) An artificial intelligence tool for heterogeneous team formation in the classroom. Knowl-Based Syst 101:1–14 ArticleGoogle Scholar
- Alharbi AS, Li Y, Xu Y (2017) Integrating lda with clustering technique for relevance feature selection. In: Australasian joint conference on artificial intelligence. Springer, pp 274–286
- Assavakamhaenghan N, Choetkiertikul M, Tuarob S, Kula RG, Hata H, Ragkhitwetsagul C, Sunetnanta T, Matsumoto K (2019) Software team member configurations: A study of team effectiveness in moodle. In: 2019 10th International workshop on empirical software engineering in practice (IWESEP). IEEE, pp 19–195
- Asuncion A, Welling M, Smyth P, Teh YW (2009) On smoothing and inference for topic models. In: Proceedings of the twenty-fifth conference on uncertainty in artificial intelligence, UAI ’09. AUAI Press, Arlington, pp 27–34. ISBN 978-0-9749039-5-8. http://dl.acm.org/citation.cfm?id=1795114.1795118
- Baj-Rogowska A (2017) Sentiment analysis of facebook posts: The uber case. In: Proceedings of the 8th International conference on intelligent computing and information systems (ICICIS). IEEE, pp 391–395
- Blei DM, Ng AY, Jordan MI (2003) Latent dirichlet allocation. J Mach Learn Res 3(Jan):993–1022 MATHGoogle Scholar
- Breiman L (2001) Random forests. Mach Learn 45(1):5–32 ArticleMATHGoogle Scholar
- Cabanillas C, Resinas M, Mendling J, Ruiz-Cortés A (2015) Automated team selection and compliance checking in business processes. In: Proceedings of the international conference on software and system process. pp 42–51
- Chen T-H, Thomas SW, Hassan AE (2016) A survey on the use of topic models when mining software repositories. Empir Softw Eng 21(5):1843–1919 ArticleGoogle Scholar
- Choetkiertikul M, Dam HK, Tran T, Ghose A (2017) Predicting the delay of issues with due dates in software projects. Empir Softw Eng 22 (3):1223–1263. ISSN 15737616. https://doi.org/10.1007/s10664-016-9496-7ArticleGoogle Scholar
- Coelho J, Valente MT (2017) Why modern open source projects fail. In: Proceedings of the 2017 11th Joint meeting on foundations of software engineering, pp 186–196
- Dai H, Huang Y, Yang L (2015) Game theoretic max-logit learning approaches for joint base station selection and resource allocation in heterogeneous networks. IEEE J Select Areas Commun 33(6):1068–1081 ArticleGoogle Scholar
- Datta A, Tan Teck Yong J, Ventresque A (2011) T-recs: team recommendation system through expertise and cohesiveness. In: Proceedings of the 20th international conference companion on World wide web. pp 201–204
- de Lima Júnior ML, Soares DM, Plastino A, Murta L (2018) Automatic assignment of integrators to pull requests: The importance of selecting appropriate attributes. J Syst Softw 144:181–196 ArticleGoogle Scholar
- Deerwester S, Dumais ST, Furnas GW, Landauer TK, Harshman R (1990) Indexing by latent semantic analysis. J Am Soc Inf Sci 41(6):391–407 ArticleGoogle Scholar
- Ferreira DJ, Caetano SS, Junior CGC (2017) An automatic group formation method to foster innovation in collaborative learning at workplace. Int J Innov Educ Res 5(4):28–43 ArticleGoogle Scholar
- Fox E (2008) Emotion science cognitive and neuroscientific approaches to understanding human emotions. Palgrave Macmillan, London BookGoogle Scholar
- Gao D, Tong Y, She J, Song T, Chen L, Xu K (2017) Top-k team recommendation and its variants in spatial crowdsourcing. Data Sci Eng 2(2):136–150 ArticleGoogle Scholar
- Gharehyazie M, Filkov V (2017) Tracing distributed collaborative development in apache software foundation projects. Empir Softw Eng 22(4):1795–1830 ArticleGoogle Scholar
- Gharehyazie M, Posnett D, Vasilescu B, Filkov V (2015) Developer initiation and social interactions in oss: A case study of the apache software foundation. Empir Softw Eng 20(5):1318–1353 ArticleGoogle Scholar
- Grigore M, Rosenkranz C (2011) Increasing the willingness to collaborate online: an analysis of sentiment-driven interactions in peer content production. In: Galletta DF, Liang T (eds) Proceedings of the international conference on information systems, ICIS 2011, Shanghai, China, December 4-7, 2011. Association for Information Systems. http://aisel.aisnet.org/icis2011/proceedings/onlinecommunity/20
- Gupta P, Xhabija F, Shoup MD, Brikman Y, Crosa A, Ramirez R (2014) Team member recommendation system. US Patent App. 13/907,577
- Hassan S-U, Akram A, Haddawy P (2017) Identifying important citations using contextual information from full text. In: 2017 ACM/IEEE Joint conference on digital libraries (JCDL). IEEE, pp 1–8
- Hofmann T (2001) Unsupervised learning by probabilistic latent semantic analysis. Mach Learn 42(1-2):177–196 ArticleMATHGoogle Scholar
- Hogan JM, Thomas R (2005) Developing the software engineering team. pp 203–210
- Hupa A, Rzadca K, Wierzbicki A, matchmaking A. Datta. (2010) Interdisciplinary Choosing collaborators by skill, acquaintance and trust. In: Computational social network analysis. Springer, pp 319–347
- Iaffaldano G, Steinmacher I, Calefato F, Gerosa M, Lanubile F (2019) Why do developers take breaks from contributing to oss projects?: a preliminary analysis. In: Proceedings of the 2nd International workshop on software health. IEEE Press, pp 9–16
- Jeni LA, Cohn JF, De La Torre F (2013) Facing imbalanced data–recommendations for the use of performance metrics. In: 2013 Humaine association conference on affective computing and intelligent interaction. IEEE, pp 245–251
- Jiarpakdee J, Tantithamthavorn C, Hassan AE (2019) The impact of correlated metrics on the interpretation of defect models. IEEE Trans Softw Eng
- Jiarpakdee J, Tantithamthavorn C, Treude C (2020) The impact of automated feature selection techniques on the interpretation of defect models. Empir Softw Eng :1–49
- Kale A, Karandikar A, Kolari P, Java A, Joshi A (2007) Modeling trust and influence in the blogosphere using link polarity. In: Proceedings of the international conference on Weblogs and social media (ICWSM 2007)
- Khoshgoftaar TM, Golawala M, Van Hulse J (2007) An empirical study of learning from imbalanced data using random forest. In: 19th IEEE International conference on tools with artificial intelligence (ICTAI 2007), vol 2. IEEE, pp 310–317
- Li H, Chen T-HP, Shang W, Hassan AE (2018) Studying software logging using topic models. Empir Softw Eng 23(5):2655–2694 ArticleGoogle Scholar
- Liao Z, Li Y, He D, Wu J, Zhang Y, Fan X (2017) Topic-based integrator matching for pull request. In: Proceedings of GLOBECOM 2017-2017 IEEE global communications conference. IEEE, pp 1–6
- Lindsjørn Y, Sjøberg DI, Dingsøyr T, Bergersen GR, Dybå T (2016) Teamwork quality and project success in software development: A survey of agile development teams. J Syst Softw 122:274–286 ArticleGoogle Scholar
- Liu H, Qiao M, Greenia D, Akkiraju R, Dill S, Nakamura T, Song Y, Nezhad HM (2014) A machine learning approach to combining individual strength and team features for team recommendation. In: Proceedings of the 13th International conference on machine learning and applications. IEEE, pp 213–218
- Malinowski J, Weitzel T, Keim T (2008) Decision support for team staffing: An automated relational recommendation approach. Decis Support Syst 45(3):429–447 ArticleGoogle Scholar
- Manning CD, Schütze H, Raghavan P (2008) Introduction to information retrieval. Cambridge university press, Cambridge BookMATHGoogle Scholar
- McIntosh A, Hassan S, Hindle A (2019) What can android mobile app developers do about the energy consumption of machine learning? Empir Softw Eng 24(2):562–601 ArticleGoogle Scholar
- Misra H, Cappé O, Yvon F (2008) Using lda to detect semantically incoherent documents. In: CoNLL 2008: Proceedings of the Twelfth Conference on Computational Natural Language Learning, pages 41–48
- Mistrík I, Grundy J, Van der Hoek A, Whitehead J (2010) Collaborative software engineering: challenges and prospects. Berlin, Springer, pp 389–403 BookMATHGoogle Scholar
- Moe NB, Dingsøyr T, Dybå T (2010) A teamwork model for understanding an agile team: A case study of a Scrum project. Inf Softw Technol 52 (5):480–491. ISSN 09505849. https://doi.org/10.1016/j.infsof.2009.11.004ArticleGoogle Scholar
- Monderer D, Shapley LS (1996) Potential games. Games Econ Behav 14(1):124–143 ArticleMathSciNetMATHGoogle Scholar
- Naguib H, Narayan N, Brügge B, Helal D (2013) Bug report assignee recommendation using activity profiles. In: Proceedings of the 10th working conference on mining software repositories (MSR). IEEE, pp 22–30
- Newman D, Lau J, Grieser K, Baldwin T (2010) Automatic evaluation of topic coherence. inhuman language technologies: The 2010 annual conference of the north american chapter of the association for computational linguistics hlt’10
- Osborne MJ, Rubinstein A (1994) A course in game theory, MIT press, Cambridge
- Ouni A, Kula RG, Inoue K (2016) Search-based peer reviewers recommendation in modern code review. In: Proceedings of IEEE International conference on software maintenance and evolution (ICSME). IEEE, pp 367–377
- Petkovic D, Sosnick-Pérez M, Huang S, Todtenhoefer R, Okada K, Arora S, Sreenivasen R, Flores L, Dubey S (2014) Setap: Software engineering teamwork assessment and prediction using machine learning. In: Proceedings of IEEE Frontiers in education conference (FIE) proceedings. IEEE, pp 1–8
- Ragkhitwetsagul C, Krinke J (2019) Siamese: scalable and incremental code clone search via multiple code representations. Empir Softw Eng 24(4):2236–2284 ArticleGoogle Scholar
- Rahman MM, Roy CK, Collins JA (2016) Correct: code reviewer recommendation in github based on cross-project and technology experience. In: Proceedings of the 38th International conference on software engineering companion. pp 222–231
- Ramage D, Hall D, Nallapati R, Manning CD (2009) Labeled lda: A supervised topic model for credit attribution in multi-labeled corpora. In: Proceedings of conference on empirical methods in natural language processing: Volume 1-Volume 1. Association for Computational Linguistics, pp 248–256
- Rosen C, Shihab E (2016) What are mobile developers asking about? a large scale study using stack overflow. Empir Softw Eng 21(3):1192–1223 ArticleGoogle Scholar
- Song Y, Wong SH, Lee. K-W (2011) Optimal gateway selection in multi-domain wireless networks: A potential game perspective. In: Proceedings of the 17th annual international conference on Mobile computing and networking. pp 325–336
- Steyvers M, Griffiths T (2007) Probabilistic topic models. In: Handbook of latent semantic analysis, vol 427, pp 424–440
- Sudhakar GP (2012) A model of critical success factors for software projects. J Enterp Inf Manag
- Surian D, Liu N, Lo D, Tong H, Lim E-P, Faloutsos C (2011) Recommending people in developers’ collaboration network. In: Proceedings of the 18th Working conference on reverse engineering. IEEE, pp 379–388
- Tantithamthavorn C, Hassan AE, Matsumoto K (2018) The impact of class rebalancing techniques on the performance and interpretation of defect prediction models. IEEE Trans Softw Eng
- Thelwall M, Buckley K, Paltoglou G, Cai D, Kappas A (2010) Sentiment strength detection in short informal text. J Am Soc Inf Sci Technol 61 (12):2544–2558 ArticleGoogle Scholar
- Thongtanunam P, Tantithamthavorn C, Kula RG, Yoshida N, Iida H, Matsumoto K-I (2015) Who should review my code? a file location-based code-reviewer recommendation approach for modern code review. In: Proceedings of IEEE 22nd International conference on software analysis, evolution, and reengineering (SANER). IEEE, pp 141–150
- Tuarob S, Pouchard LC, Mitra P, Giles CL (2015) A generalized topic modeling approach for automatic document annotation. Int J Digit Libr 16(2):111–128 ArticleGoogle Scholar
- Tuarob S, Strong R, Chandra A, Tucker CS (2018) Discovering discontinuity in big financial transaction data. ACM Trans Manag Inf Syst (TMIS) 9 (1):1–26 ArticleGoogle Scholar
- Tuarob S, Kang SW, Wettayakorn P, Pornprasit C, Sachati T, Hassan SU, Haddawy P (2020) Automatic classification of algorithm citation functions in scientific literature. IEEE Trans Knowl Data Eng 32(10):1881–1896 ArticleGoogle Scholar
- Xia X, Lo D, Wang X, Zhou B (2013) Accurate developer recommendation for bug resolution. In: 2013 20th Working conference on reverse engineering (WCRE). IEEE, pp 72–81
- Xia X, Lo D, Wang X, Zhou B (2015) Dual analysis for recommending developers to resolve bugs. J Softw Evol Process 27(3):195–220 ArticleGoogle Scholar
- Yang H, Sun X, Li B, Hu J (2016) Recommending developers with supplementary information for issue request resolution. In: Proceedings of the 38th International conference on software engineering companion. pp 707–709
- Yi H, Xiong Q, Zou Q, Xu R, Wang K, Gao M (2019) A novel random forest and its application on classification of air quality. In: 2019 8th International congress on advanced applied informatics (IIAI-AAI). IEEE, pp 35–38
- Yu Y, Wang H, Yin G, Wang T (2016) Reviewer recommendation for pull-requests in github What can we learn from code review and bug assignment? Inf Softw Technol 74:204–218 ArticleGoogle Scholar
- Zanjani MB, Kagdi H, Bird C (2015) Automatically recommending peer reviewers in modern code review. IEEE Trans Softw Eng 42(6):530–543 ArticleGoogle Scholar
- Zhang Z, Ren W, Yang Z, Wen G (2020a) Real-time seam defect identification for al alloys in robotic arc welding using optical spectroscopy and integrating learning. Measurement 156:107546 ArticleGoogle Scholar
- Zhang Z, Sun H, Zhang H (2020b) Developer recommendation for topcoder through a meta-learning based policy model. Empir Softw Eng 25(1):859–889 ArticleGoogle Scholar
- Zhang Z-W, Jing X-Y, Wang T-J (2017) Label propagation based semi-supervised learning for software defect prediction. Autom Softw Eng 24(1):47–69 ArticleGoogle Scholar
Acknowledgements
This research is supported by the Thailand Science Research and Innovation (TSRI), formerly known as Thailand Research Fund (TRF), through grant RSA6280105.
Author information
Authors and Affiliations
- Faculty of Information and Communication Technology, Mahidol University, Nakhon Pathom, Thailand Suppawong Tuarob, Noppadol Assavakamhaenghan, Waralee Tanaphantaruk, Ponlakit Suwanworaboon & Morakot Choetkiertikul
- Information Technology University, Lahore, Pakistan Saeed-Ul Hassan
- Suppawong Tuarob