Skip to main content

Reducing the Uncertainty of Agile Software Development Using a Random Forest Classification Algorithm

  • Conference paper
  • First Online:
Lean and Agile Software Development (LASD 2021)

Abstract

Background: Companies operating in the software industry or those which rely on new technologies are facing a rising level of complexity in building products. To address these new circumstances, enterprises are investing more resources in modern approaches to software delivery, such as agile methodologies. Amongst these methodologies, relative effort estimation is widely adopted. Outcomes of the estimation process are often not predictable or reliable. Aims: The objective of this paper is to research the random forest classification algorithm’s effectiveness for high-level effort estimating. Method: Authors are focusing on defining complexity factors that are treated as model features. In addition, the authors have empirically tested the proposed solution in a commercial environment. Besides these, authors have analyzed the effective impact of each complexity factor. The analysis was done on the set of seventy thousands of Jira work items. Observation has been made empirically across four major releases. Results: The results indicate that the empirical way of defining model features has a significant impact on effort estimation accuracy. During research, the authors have found several key factors that have a significant impact on model accuracy. Teams that are using agile techniques or methods for effort estimation can enhance planning outcomes with tools supporting high-level estimation. Finding out and fine-tuning such tools needs a structured process for finding the most significant key complexity factors. Conclusion: Usage of metrics such as effort estimations and their accuracy in the software development process in agile organizations could lead to more accurate planning and forecasting of project outcomes. Problems with planning on program level could also be actioned with a structured estimation framework, enhanced by modern tools such as classification models. We should remember that complexity is growing with scaling delivery structures within companies.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 64.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 84.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Braga, P.L., Oliveira, A.L.I.: Software effort estimation using machine learning techniques with robust confidence intervals. In: 19th IEEE International Conference on Tools with Artificial Intelligence (2007)

    Google Scholar 

  2. Patel, B.N., Prajapati, S.G., Lakhtaria, K.I.: Efficient classification of data using decision tree. Bonfring Int. J. Data Min. 2(1), 06–12 (2012)

    Google Scholar 

  3. Bhatia, S., Attri, V.K.: Implementing decision tree for software development effort estimation of software project. International Journal of Innovative Research in Computer and Communication Engineering, vol. 3, no. 5, May 2015

    Google Scholar 

  4. Kumari, S.: Comparison and analysis of different software cost estimation methods. (IJACSA) International Journal of Advanced Computer Science and Applications, vol. 4, no. 1 (2013)

    Google Scholar 

  5. Geurts, P., Ernst, D., Wehenkel, L.: Extremely randomized trees. Springer Science + Business Media, 2 March 2006

    Google Scholar 

  6. Breiman, L.: Random forests. Mach. Learn. 45(1), 5–32 (2001)

    Article  Google Scholar 

  7. Shepperd, M., Schofield, C.: Estimating software project effort using analogies. IEEE Trans. Softw. Eng. 23(11), 736–743 (1997). https://doi.org/10.1109/32.637387

    Article  Google Scholar 

  8. Miranda, E.: Improving subjective estimates using paired comparisons. IEEE Softw. 18(1), 87–91 (2001)

    Google Scholar 

  9. Vicinanaza, S., Mukhopadhyay, T., Prietula, M.: Software-effort estimation: an explaratory study of expert performance. Inform. Syst. Res. 2(4), 243–262 (1991)

    Google Scholar 

  10. Boehm, B., et al.: Software Cost Estimation with COCOMO II. Prentice-Hall, Englewood Cliffs (2000)

    Google Scholar 

  11. Jorgensen, M.: Methods for estimating agile software projects: a systematic review. In: The 30th International Conference on Software Engineering and Knowledge Engineering (2018)

    Google Scholar 

  12. West, D., Kong, P., Bittner, K.: Nexus framework for scaling scrum, the: continuously delivering an integrated product with multiple scrum teams. Addison-Wesley Professional (2017)

    Google Scholar 

  13. Zhao, Y., Zhang, Y.: Comparison of decision tree methods for finding active objects. Adv. Space Res. 41(12), 1955–1959 (2008)

    Article  Google Scholar 

  14. Wińska, E., Dąbrowski, W.: Software development artifacts in large agile organizations: a comparison of scaling agile methods. In: Poniszewska-Marańda, A., Kryvinska, N., Jarząbek, S., Madeyski, L. (eds.) Data-Centric Business and Applications. LNDECT, vol. 40, pp. 101–116. Springer, Cham (2020). https://doi.org/10.1007/978-3-030-34706-2_6

    Chapter  Google Scholar 

  15. Scott, E., Pfahl, D., Hebig, R., Heldal, R., Knauss, E.: Initial results of the HELENA survey conducted in estonia with comparison to results from sweden and worldwide. In: Felderer, M., Méndez Fernández, D., Turhan, B., Kalinowski, M., Sarro, F., Winkler, D. (eds.) PROFES 2017. LNCS, vol. 10611, pp. 404–412. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-69926-4_29

    Chapter  Google Scholar 

  16. Tell, P., et al.:What are hybrid development methods made of? an evidence-based characterization. In: International Conference on Software and Systems Process (2019)

    Google Scholar 

Download references

Acknowledgements

Authors are eager to share their experience regarding model implementation. Anonymized data used for training and testing the models could be shown upon request to the authors.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Ewelina Wińska .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2021 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Wińska, E., Kot, E., Dąbrowski, W. (2021). Reducing the Uncertainty of Agile Software Development Using a Random Forest Classification Algorithm. In: Przybyłek, A., Miler, J., Poth, A., Riel, A. (eds) Lean and Agile Software Development. LASD 2021. Lecture Notes in Business Information Processing, vol 408. Springer, Cham. https://doi.org/10.1007/978-3-030-67084-9_9

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-67084-9_9

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-67083-2

  • Online ISBN: 978-3-030-67084-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics