An Agent-Based Simulation for Task Allocation in Software Development Teams based on the Truck Factor Metric

  • Caetano Segundo
    Paraíso University Center - 1228 Conceição St., Juazeiro do Norte - CE - Brasil caetano.segundo[at]fapce.edu.br
  • Marcos Oliveira
    Federal University of Ceará - Campus Quixadá, 5003 José de Freitas Queiroz St., Quixadá - CE - Brasil
  • Enyo Gonçalves

Abstract

Several tasks must be performed for a software development project to be completed successfully. Task allocation is a complex task that significantly impacts the project's success. Techniques have been proposed over the years to support this step, aiming to minimize cost and development time and to reduce the negative impact of team members leaving the project. In this context, the Truck Factor (TF) is a metric that can determine the risk to a project and can be used when distributing tasks among team members. The TF concerns the distribution of knowledge about the project among the development team members, ensuring that knowledge is not concentrated in only one part of the team. This theme is relevant nowadays since team rotation has become frequent due to the increasing demand for software in recent years. Member allocation in software teams does not have an exact solution since it is an NP-hard problem. Thus, Search-Based Software Engineering (SBSE) techniques, which can apply optimization algorithms such as genetic algorithms, have been used in several types of research to solve this class of problem over the years. In multi-agent environments, a certain number of agents have perception and communicate to achieve their goals. Researchers in the multi-agent field use simulated environments to validate their research since the modeling and simulation must consider the main variables of a real environment. Therefore, this work proposes to build a multi-agent simulation using SBSE techniques to minimize the impacts caused by the Truck Factor in a software development team. In the simulations, we model different configurations for the software development teams. Through statistical analysis and hypothesis testing, our results show that the proposed approach minimizes the impacts caused by task allocation in software development teams by around 25 % when considering the TF metric during task allocation.
  • Referencias
  • Cómo citar
  • Del mismo autor
  • Métricas
Abbas, H. A., Shaheen, S. I., & Amin, M. H. (2015). Organization of multi-agent systems: An overview. arXiv preprint arXiv:1506.09032. https://doi.org/10.48550/arXiv.1506.09032

Avelino, G., Passos, L., Hora, A., & Valente, M. T. (2016). A novel approach for estimating truck factors. In 2016 IEEE 24th International Conference on Program Comprehension (ICPC) (pp. 1–10). IEEE.

Baia, D. D. M. (2015, May). An integrated multi-agent-based simulation approach to support software project management. In 2015 IEEE/ACM 37th IEEE International Conference on Software Engineering (Vol. 2, pp. 911–914). IEEE.

Balaji, P. G., & Srinivasan, D. (2010). An introduction to multi-agent systems. In Innovations in multi-agent systems and applications-1 (pp. 1–27). Springer. https://doi.org/10.1007/978-3-642-14435-6_1

Bibi, N., Ahsan, A., & Anwar, Z. (2014). Project resource allocation optimization using search-based software engineering—A framework. In Ninth International Conference on Digital Information Management (ICDIM 2014) (pp. 226–229). IEEE. https://doi.org/10.1109/ICDIM.2014.6991431

Chae, S. W., Seo, Y. W., & Lee, K. C. (2015). Task difficulty and team diversity on team creativity: Multi-agent simulation approach. Computers in Human Behavior, 42, 83–92.

Farooq, H., Janjua, U. I., Madni, T. M., Waheed, A., Zareei, M., & Alanazi, F. (2022). Identification and analysis of factors influencing turnover intention of Pakistan IT professionals: An empirical study. IEEE Access.

Ferreira, M., Valente, M. T., & Ferreira, K. (2017). A comparison of three algorithms for computing truck factors. In 2017 IEEE/ACM 25th International Conference on Program Comprehension (ICPC) (pp. 207–217). IEEE.

Harman, M., & Jones, B. F. (2001). Search-based software engineering. Information and Software Technology, 43(14), 833–839. https://doi.org/10.1016/S0950-5849(01)00189-6

Harman, M., Mansouri, S. A., & Zhang, Y. (2009). Search-based software engineering: A comprehensive analysis and review of trends, techniques, and applications. Department of Computer Science, King’s College London, Tech. Rep. TR-09-03, 23.

Harman, M., Mansouri, S. A., & Zhang, Y. (2012). Search-based software engineering: Trends, techniques, and applications. ACM Computing Surveys, 45(1), 1–61.

Hilton, M., & Begel, A. (2018). A study of the organizational dynamics of software teams. In Proceedings of the 40th International Conference on Software Engineering: Software Engineering in Practice (pp. 191–200).

Hongqiao, Y., Xihua, L., Fei, W., & Weizi, L. (2009). Multi-agent based modeling and simulation of complex system in hospital. In 2009 16th International Conference on Industrial Engineering and Engineering Management (pp. 1759–1763). IEEE.

Kolmogorov–Smirnov Test. (2008). In Springer Handbook of Statistics (pp. 283–287). Springer. https://doi.org/10.1007/978-0-387-32833-1_214

Krothapalli, N. K., & Deshmukh, A. V. (2002). Distributed task allocation in multi-agent systems. In Proceedings of the Institute of Industrial Engineers Annual Conference.

Miller, W., & Spooner, D. L. (1976). Automatic generation of floating-point test data. IEEE Transactions on Software Engineering, SE-2(3), 223–226. https://doi.org/10.1109/TSE.1976.233818

Mohamad, M. R., Nasaruddin, F. H., Hamid, S., Bukhari, S., & Ijab, M. T. (2021). Predicting employees’ turnover in IT industry using classification method with feature selection. In 2021 International Conference on Computer Science and Engineering (IC2SE) (Vol. 1, pp. 1–7). IEEE.

Pee, L. G., Kankanhalli, A., Tan, G. W., & Tham, G. Z. (2014). Mitigating the impact of member turnover in information systems development projects. IEEE Transactions on Engineering Management, 61(4), 702–716.

Räihä, O. (2010). A survey on search-based software design. Computer Science Review, 4(4), 203–249. https://doi.org/10.1016/j.cosrev.2010.06.001

Railsback, S. F., Lytinen, S. L., & Jackson, S. K. (2006). Agent-based simulation platforms: Review and development recommendations. Simulation, 82(9), 609–623. https://doi.org/10.1177/0037549706073695

Rey, D., & Neuhäuser, M. (2011). Wilcoxon-Signed-Rank Test. In Lovric, M. (eds) International Encyclopedia of Statistical Science. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-04898-2_616

Rubin, K. S. (2012). Essential Scrum: A practical guide to the most popular Agile process. Addison-Wesley. ISBN: 9780137043293.

Shapiro, S. S., & Wilk, M. B. (1965). An analysis of variance test for normality (complete samples). Biometrika, 52(3–4), 591–611. https://doi.org/10.1093/biomet/52.3-4.591

Siebers, P. O., & Aickelin, U. (2008). Introduction to multi-agent simulation. In Encyclopedia of Decision Making and Decision Support Technologies (pp. 554–564). IGI Global.

Singhal, V., & Dahiya, D. (2015). Distributed task allocation in dynamic multi-agent system. In International Conference on Computing, Communication & Automation (pp. 643–648). IEEE. https://doi.org/10.1109/CCAA.2015.7148452

Sommerville, I. (2011). Engenharia de Software (3rd ed.). Pearson Prentice Hall. ISBN: 9788579361081.

Wooldridge, M. (2009). An introduction to multiagent systems (2nd ed.). John Wiley & Sons. ISBN: 9780470519462.
Segundo, C., Oliveira, M., & Gonçalves, E. (2025). An Agent-Based Simulation for Task Allocation in Software Development Teams based on the Truck Factor Metric. ADCAIJ: Advances in Distributed Computing and Artificial Intelligence Journal, 14, e32600. https://doi.org/10.14201/adcaij.32600

Downloads

Download data is not yet available.
+