Pertanika Journal of Science & Technology
Pertanika Journal Home Facebook
Pertanika · Universiti Putra Malaysia Press

Pertanika Journal of Science & Technology

Official journal of Universiti Putra Malaysia for scholarly work across science, engineering and related technologies.

e-ISSN 2231-8526 ISSN 0128-7680
Research article

A Review Article on Software Effort Estimation in Agile Methodology

Pantjawati Sudarmaningtyas and Rozlina Mohamed

https://doi.org/10.47836/pjst.29.2.08
KeywordsAgile, effort estimation attributes, expert judgement, hybrid approach, software effort estimation
Article content

Abstract

Currently, Agile software development method has been commonly used in software development projects, and the success rate is higher than waterfall projects. The effort estimation in Agile is still a challenge because most existing means are developed based on the conventional method. Therefore, this study aimed to ascertain the software effort estimation method that is applied in Agile, the implementation approach, and the attributes that affect effort estimation. The results showed the top three estimation that is applied in Agile, are machine learning (37%), Expert Judgement (26%), and Algorithmic (21%). The implementation of all machine learning methods used a hybrid approach, which is a combination of machine learning and expert judgement, or a mix of two or more machine learning. Meanwhile, the implementation of effort estimation through a hybrid approach was only used in 47% of relevant articles. In addition, effort estimation in Agile involved twenty-four attributes, where Complexity, Experience, Size, and Time are the most commonly used and implemented.
Supporting literature

References

  1. Abrahamsson, P., Fronza, I., Moser, R., Vlasenko, J., & Pedrycz, W. (2011, September 22-23). Predicting development effort from user stories. In 2011 International Symposium on Empirical Software Engineering and Measurement (pp. 400-403). Banff, Canada. https: //doi.org/10.1109/ESEM.2011.58
  2. Adnan, M., & Afzal, M. (2017). Ontology based multiagent effort estimation system for scrum agile method. IEEE Access, 5, 25993-26005. https: //doi.org/10.1109/ACCESS.2017.2771257
  3. Bilgaiyan, S., Mishra, S., & Das, M. (2018). Effort estimation in agile software development using experimental validation of neural network models. International Journal of Information Technology, 11, 569-573. https: //doi.org/10.1007/s41870-018-0131-2
  4. Bloch, M., Blumberg, S., & Laartz, J. (2012). Delivering large scale IT.pdf. Retrieved October 23, 2017, from https: //www.mckinsey.com/business-functions/digital-mckinsey/our-insights/delivering-large-scale-it-projects-on-time-on-budget-and-on-value
  5. Boehm, B. W. (1984). Software engineering economics. IEEE Transactions on Software Engineering, SE-10(1), 4-21. https: //doi.org/10.1109/TSE.1984.5010193
  6. Bourque, P., & Fairley, R. E. (2014). Guide to the software engineering body of knowledge. IEEE Computer Society Press. https: //doi.org/10.1234/12345678
  7. Chatzipetrou, P., Ouriques, R., & Gonzalez-Huerta, J. (2018). Approaching the relative estimation concept with planning poker. In Proceedings of the 7th Computer Science Education Research Conference (CSERC ’18) (pp. 21-25). Association for Computing Machinery. https: //doi.org/10.1145/3289406.3289409
  8. Choetkiertikul, M., Dam, H. K., Tran, T., Pham, T., Ghose, A., & Menzies, T. (2018). A deep learning model for estimating story points. IEEE Transactions on Software Engineering, 45(7), 637-656.
  9. Chongpakdee, P., & Vatanawood, W. (2017, November 24-26). Estimating user story points using document fingerprints. In 2017 8th IEEE International Conference on Software Engineering and Service Science (ICSESS), (pp. 149-152). Beijing, China. https: //doi.org/10.1109/ICSESS.2017.8342885
  10. Choudhari, J., & Suman, U. (2012a). Phase wise effort estimation for software maintenance: An extended SMEEM model. In Proceedings of the CUBE International Information Technology Conference (pp. 397-402). Association for Computing Machinery. https: //doi.org/10.1145/2381716.2381790
  11. Choudhari, J., & Suman, U. (2012b). Story Points based effort estimation model for software maintenance. Procedia Technology, 4, 761-765. https: //doi.org/https://doi.org/10.1016/j.protcy.2012.05.124
  12. Desharnais, J. M., Buglione, L., & Kocatürk, B. (2011). Using the COSMIC method to estimate agile user stories. In Proceedings of the 12th International Conference on Product Focused Software Development and Process Improvement (pp. 68-73). Association for Computing Machinery. https: //doi.org/10.1145/2181101.2181117
  13. Dragicevic, S., Celar, S., & Turic, M. (2017). Bayesian network model for task effort estimation in agile software development. Journal of Systems and Software, 127, 109-119. https: //doi.org/10.1016/j.jss.2017.01.027
  14. Garg, S., & Gupta, D. (2015, March 3-5). PCA based cost estimation model for agile software development projects. In 2015 International Conference on Industrial Engineering and Operations Management (IEOM) (pp. 1-7). Dubai, United Arab Emirates. https: //doi.org/10.1109/IEOM.2015.7228109
  15. Hamouda, A. E. D. (2014, July 28-August 1). Using agile story points as an estimation technique in CMMI organizations. In 2014 Agile Conference (pp. 16-23). Kissimmee, FL, USA. https: //doi.org/10.1109/AGILE.2014.11
  16. Institute, P. M. (2017). A guide to the project management body of knowledge (PMBOK® Guide)-Sixth edition. Project Management Institute, Inc.
  17. Jørgensen, M. (2016). The use of precision of software development effort estimates to communicate uncertainty. In 8th International Conference on Software Quality Days (SWQD) (pp. 156-168). Springer. https: //doi.org/10.1007/978-3-319-27033-3_11
  18. Kang, S., Choi, O., & Baik, J. (2010, August 18-20). Model-based dynamic cost estimation and tracking method for agile software development. In 2010 IEEE/ACIS 9th International Conference on Computer and Information Science (pp. 743-748). Yamagata, Japan. https: //doi.org/10.1109/ICIS.2010.126
  19. Khatri, S. K., Malhotra, S., & Johri, P. (2016, September 7-9). Use case point estimation technique in software development. In 2016 5th International Conference on Reliability, Infocom Technologies and Optimization (Trends and Future Directions) (ICRITO) (pp. 123-128). Noida, India. https: //doi.org/10.1109/ICRITO.2016.7784938
  20. Khuat, T. T., & Le, M. H. (2017). A novel hybrid ABC-PSO algorithm for effort estimation of software projects using agile methodologies. Journal of Intelligent Systems, 27(3), 489-506. https: //doi.org/10.1515/jisys-2016-0294
  21. Kitchenham, B., & Charters, S. (2007). Guidelines for performing systematic literature reviews in software engineering (Version 2.3). Department of Computer Science, Keele University. https: //doi.org/10.1145/1134285.1134500
  22. Kowalska, J., & Ochodek, M. (2014). Supporting analogy-based effort estimation with the use of ontologies. E-Informatica Software Engineering Journal, 8(1), 53-64. https: //doi.org/10.5277/e-Inf140104
  23. López-Martínez, J., Ram´ırez-Noriega, A., Ju´arez-Ram´ırez, R., Licea, G., & Mart´ınez-Ram´ırez, Y. (2017a). Analysis of planning poker factors between university and enterprise. In 2017 5th International Conference in Software Engineering Research and Innovation (CONISOFT) (pp. 54-60). Conference Publishing Services. https: //doi.org/10.1109/CONISOFT.2017.00014
  24. López-Martínez, J., Juárez-Ramírez, R., Ramírez-Noriega, A., Licea, G., & Navarro-Almanza, R. (2017b). Estimating user stories’ complexity and importance in scrum with Bayesian networks. In World Conference on Information Systems and Technologies (pp. 205-214). Springer. https: //doi.org/10.1007/978-3-319-56535-4_21
  25. López-Martínez, J., Ramírez-Noriega, A., Juárez-Ramírez, R., Licea, G., & Jiménez, S. (2018). User stories complexity estimation using Bayesian networks for inexperienced developers. Cluster Computing, 21(1), 715-728. https: //doi.org/10.1007/s10586-017-0996-z
  26. Lenarduzzi, V., Lunesu, I., Matta, M., & Taibi, D. (2015). Functional size measures and effort estimation in agile development: A replicated study. In International Conference on Agile Software Development (pp. 105-116). Springer. https: //doi.org/10.1007/978-3-319-18612-2_9
  27. Mahnič, V., & Hovelja, T. (2012). On using planning poker for estimating user stories. Journal of Systems and Software, 85(9), 2086-2095. https: //doi.org/10.1016/j.jss.2012.04.005
  28. Malgonde, O., & Chari, K. (2018). An ensemble-based model for predicting agile software development effort. Empirical Software Engineering, 24, 1017-1055. https: //doi.org/10.1007/s10664-018-9647-0
  29. Mersino, A. (2018). Agile project success rates are 2x higher than traditional projects (2019). Retrieved January 27, 2020, from https: //vitalitychicago.com/blog/agile-projects-are-more-successful-traditional-projects/
  30. Moharreri, K., Sapre, A. V., Ramanathan, J., & Ramnath, R. (2016). Cost-effective supervised learning models for software effort estimation in agile environments. In 2016 IEEE 40th Annual Computer Software and Applications Conference (COMPSAC) (pp. 135-140). Conference Publishing Services. https: //doi.org/10.1109/COMPSAC.2016.85
  31. Moløkken-Østvold, K., & Jørgensen, M. (2004). Group processes in software effort estimation. Empirical Software Engineering, 9(4), 315-334. https: //doi.org/10.1023/B:EMSE.0000039882.39206.5a
  32. Panda, A., Satapathy, S. M., & Rath, S. K. (2015a). Empirical validation of neural network models for agile software effort estimation based on story points. Procedia Computer Science, 57, 772-781. https: //doi.org/https://doi.org/10.1016/j.procs.2015.07.474
  33. Panda, A., Satapathy, S. M., & Rath, S. K. (2015b). Neural network models for agile software effort estimation based on story points. Proceedings of the International Conference on Advances in Computing, Control and Networking, 57(57), 26-30. https: //doi.org/10.15224/978-1-63248-038-5-06
  34. Popli, R., & Chauhan, N. (2013, March 9-10). A sprint-point based estimation technique in Scrum. In 2013 International Conference on Information Systems and Computer Networks (pp. 98-103). Mathura, India. https: //doi.org/10.1109/ICISCON.2013.6524182
  35. Popli, R., & Chauhan, N. (2014a, February 6-8). Cost and effort estimation in agile software development. In 2014 International Conference on Reliability Optimization and Information Technology (ICROIT) (pp. 57-61). Faridabad, India. https: //doi.org/10.1109/ICROIT.2014.6798284
  36. Popli, R., & Chauhan, N. (2014b, March 1-2). Estimation in agile environment using resistance factors. In 2014 International Conference on Information Systems and Computer Networks (ISCON) (pp. 60-65). Mathura, India. https: //doi.org/10.1109/ICISCON.2014.6965219
  37. Project-Management.com. (2019). 10 key principles of agile software development. Retrieved January 11, 2020, from Project Management.com website: https: //project-management.com/10-key-principles-of-agile-software-development/
  38. Rao, C. P., Kumar, P. S., Sree, S. R., & Devi, J. (2018). An agile effort estimation based on story points using machine learning techniques. In Proceedings of the Second International Conference on Computational Intelligence and Informatics (pp. 209-219). Springer. https: //doi.org/10.1007/978-981-10-8228-3_20
  39. Silas, F. A., Yusuf, M., & Bijik, A. H. (2017). Hybridization of class responsibility collaborators model (HCRCM) with function point to enhance project estimation cost in agile software development. Circulation in Computer Science, 2(6), 20-24. https: //doi.org/10.22632/ccs-2017-252-32
  40. Soares, R. G. F. (2018, July 8-13). Effort estimation via text classification and autoencoders. In 2018 International Joint Conference on Neural Networks (IJCNN) (pp. 01-08). Rio de Janeiro, Brazil. https: //doi.org/10.1109/IJCNN.2018.8489030
  41. Srivastava, B., & Wadhwa, M. (2013). Relative analysis of software cost and effort estimation techniques. International Journal of Computer Science and Engineering (IJCSE), 2(3), 53-68.
  42. Tanveer, B., Vollmer, A. M., & Engel, U. M. (2017a). Utilizing change impact analysis for effort estimation in agile development. In 2017 43rd Euromicro Conference on Software Engineering and Advanced Applications (SEAA) (pp. 430-434). Conference Publishing Services. https: //doi.org/10.1109/SEAA.2017.64
  43. Tanveer, B., Guzman, L., & Engel, U. M. (2017b). Effort estimation in agile software development: Case study and improvement framework. Journal of Software-Evolution and Process, 29(11), 1-14. https: //doi.org/10.1002/smr.1862
  44. Tanveer, B., Guzmán, L., & Engel, U. M. (2016). Understanding and improving effort estimation in agile software development. In Proceedings of the International Workshop on Software and Systems Process - ICSSP ’16 (pp. 41-50). Association for Computing Machinery. https: //doi.org/10.1145/2904354.2904373
  45. Tanveer, B., Vollmer, A. M., & Braun, S. (2018). A hybrid methodology for effort estimation in agile development: An industrial evaluation. In Proceedings of the 2018 International Conference on Software and System Process (pp. 21-30). Association for Computing Machinery. https: //doi.org/10.1145/3202710.3203152
  46. Trendowicz, A., & Jeffery, R. (2014). Software project effort estimation: Foundation and best practice guidelines for success. Springer. https: //doi.org/10.1007/978-3-319-03629-8
  47. VersionOne.com. (2017). 11th Annual state of agile report. VersionOne Agile Annual Report, 1-16. https: //doi.org/10.1093/jicru/ndl025
  48. Yuliansyah, H., Qudsiah, S. N., Zahrotun, L., & Arfiani, I. (2018). Implementation of use case point as software effort estimation in scrum framework. IOP Conference Series: Materials Science and Engineering, 403(1), 1-10. https: //doi.org/10.1088/1757-899X/403/1/012085
  49. Zahraoui, H., & Idrissi, M. A. J. (2015, October 20-21). Adjusting story points calculation in scrum effort & time estimation. In 2015 10th International Conference on Intelligent Systems: Theories and Applications (SITA) (pp. 1-8). Rabat, Morocco. https: //doi.org/10.1109/SITA.2015.7358400
  50. Zakrani, A., Najm, A., & Marzak, A. (2018, October 21-27). Support vector regression based on grid-search method for agile software effort prediction. In 2018 IEEE 5th International Congress on Information Science and Technology (CiSt) (pp. 1-6). Marrakech, Morocco. https: //doi.org/10.1109/CIST.2018.8596370