Skip to main content
Log in

A deep intelligent framework for software risk prediction using improved firefly optimization

  • Original Article
  • Published:
Neural Computing and Applications Aims and scope Submit manuscript

Abstract

For the success of a software project, early and precise discrimination of software requirement risks are essential. Researchers have suggested several predictive methods based on conventional deep learning techniques, but the common factor is the high misclassification rate. Setting the appropriate hyperparameters is a complex problem in deep learning. Manual, grid and random searches are the most common methods for locating the best deep neural network hyperparameters. However, these are not the choice when experience is lacking. In this article, we proposed Deep Neural Network with Memetic firefly. The deep neural network performs classification tasks, and deep neural network hyperparameters have been optimized using a memetic firefly algorithm. Moreover, a novel perturbation operator is introduced to get rid of locally optimal solutions of the traditional firefly algorithm. The proposed method’s performance has been validated by comparing various hybrid techniques such as a deep neural network with firefly hill-climbing, a deep neural network with firefly, a deep neural network with PSO, and a deep neural network to identify the risk in software requirements. The proposed deep neural network with the memetic firefly algorithm outperforms all compared approaches with a 98.8% accuracy. It is adaptable for accurate software risk prediction in projects.

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

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7

Similar content being viewed by others

Data availability

Data sharing not applicable to this article as no datasets were generated or analyzed during the current study.

References

  1. Li J, Li M, Wu D, Dai Q, Song H (2016) A bayesian networks-based risk identification approach for software process risk: the context of chinese trustworthy software. Int J Inf Technol Decis Mak 15(06):1391–1412. https://doi.org/10.1142/S0219622016500401

    Article  Google Scholar 

  2. Suresh Kumar P, Behera HS, Nayak J, Naik B (2021) A pragmatic ensemble learning approach for effective software effort estimation. Innov Syst Softw Eng. https://doi.org/10.1007/s11334-020-00379-y

    Article  Google Scholar 

  3. The Economic impacts of inadequate infrastructure of software testing. RTI. https://www.nist.gov/system/files/documents/director/planning/report02-3.pdf

  4. Rosen C, Grawi B, Shihab E (2015) Commit guru: analytics and risk prediction of software commits. In: Proceedings of the 2015 10th joint meeting on foundations of software engineering–ESEC/FSE 2015, p 966–969. https://doi.org/10.1145/2786805.2803183

  5. Drew Procaccino J, Verner JM, Overmyer SP, Darter ME (2002) Case study: factors for early prediction of software development success. Inf Softw Technol 44(1):53–62. https://doi.org/10.1016/S0950-5849(01)00217-8

    Article  Google Scholar 

  6. Moores TT, Champion REM (1996) A methodology for measuring the risk associated with a software. Australas J Inf Syst 4(1):55–63

    Google Scholar 

  7. Patil S, Ade R (2015) Generic approach for goal driven software requirement risk management. Commun Appl Electron 1(3):18–21. https://doi.org/10.5120/cae-1527

    Article  Google Scholar 

  8. Krawczyk B (2015) One-class classifier ensemble pruning and weighting with firefly algorithm. Neurocomputing 150:490–500. https://doi.org/10.1016/j.neucom.2014.07.068

    Article  Google Scholar 

  9. Tufano M, Watson C, Bavota G, Di Penta M, White M, Poshyvanyk D (2019) An empirical study on learning bug-fixing patches in the wild via neural machine translation. ACM Trans Softw Eng Methodol 28(4):1–29. https://doi.org/10.1145/3340544

    Article  Google Scholar 

  10. Pemmada SK, Behera HS, Nayak J, Naik B (2022) Correlation-based modified long short-term memory network approach for software defect prediction. Evol Syst. https://doi.org/10.1007/s12530-022-09423-7

    Article  Google Scholar 

  11. Wang S, Liu T, Tan L (2016) Automatically learning semantic features for defect prediction. In: Proceedings of the 38th international conference on software engineering, p 297–308. https://doi.org/10.1145/2884781.2884804

  12. Suresh Kumar P, Behera HS, Nayak J, Naik B (2021) Bootstrap aggregation ensemble learning-based reliable approach for software defect prediction by using characterized code feature. Innov Syst Softw Eng 17:1–22. https://doi.org/10.1007/s11334-021-00399-2

    Article  Google Scholar 

  13. Kumar PS, Nayak J, Behera HS (2022) Model-based software defect prediction from software quality characterized code features by using stacking ensemble learning. J Eng Sci Technol Rev 15(2):137–155. https://doi.org/10.25103/jestr.152.17

    Article  Google Scholar 

  14. Gu X, Zhang H, Kim S (2018) Deep code search. In: Proceeding international conference on software engineering, p 933–944. https://doi.org/10.1145/3180155.3180167

  15. Suresh Kumar P, Behera HS, Kumari AK, Nayak J, Naik B (2020) Advancement from neural networks to deep learning in software effort estimation: perspective of two decades. Comput Sci Rev 38:100288. https://doi.org/10.1016/j.cosrev.2020.100288

    Article  MathSciNet  Google Scholar 

  16. Khan MS, Jabeen F, Ghouzali S, Rehman Z, Naz S, Abdul W (2021) Metaheuristic algorithms in optimizing deep neural network model for software effort estimation. IEEE Access 9:60309–60327. https://doi.org/10.1109/ACCESS.2021.3072380

    Article  Google Scholar 

  17. Zhang J, Zou F, Zhu J (2018) Android malware detection based on deep learning. In: 2018 IEEE 4th international conference on computer and communications (ICCC), p 2190–2194. https://doi.org/10.1109/CompComm.2018.8781037

  18. Cody AW (2020) Deep learning in software engineering. The College of William and Mary, Williamsburg

    Google Scholar 

  19. Yang XS (2014) Nature-inspired optimization algorithms. Elsevier Inc., Amsterdam

    MATH  Google Scholar 

  20. Simoncini D, Zhang KYJ (2019) Population-based sampling and fragment-based de novo protein structure prediction. Encyclopedia of bioinformatics and computational biology. Elsevier, Amsterdam, pp 774–784

    Chapter  Google Scholar 

  21. Kennedy J, Eberhart R (2021) Particle swarm optimization. In: Proceedings of ICNN’95–international conference on neural networks, p 1942–1948. https://doi.org/10.1109/ICNN.1995.488968

  22. Dorigo M, Stützle T (2003) The ant colony optimization metaheuristic: algorithms, applications, and advances. Handbook of metaheuristics. Springer, Cham, pp 250–285

    Chapter  Google Scholar 

  23. Zhao S-Z, Suganthan PN, Das S (2010) Dynamic multi-swarm particle swarm optimizer with sub-regional harmony search. In: IEEE congress on evolutionary computation, p 1–8. https://doi.org/10.1109/CEC.2010.5586323

  24. Yang X-S, Deb S (2014) Cuckoo search: recent advances and applications. Neural Comput Appl 24(1):169–174. https://doi.org/10.1007/s00521-013-1367-1

    Article  Google Scholar 

  25. Yang X-S (2009) Firefly algorithms for multimodal optimization. In: Lecture notes in computer science (including subseries lecture notes in artificial intelligence and lecture notes in bioinformatics), LNCS, p 169–178

  26. Yu S, Su S, Lu Q, Huang L (2014) A novel wise step strategy for firefly algorithm. Int J Comput Math 91(12):2507–2513. https://doi.org/10.1080/00207160.2014.907405

    Article  MathSciNet  MATH  Google Scholar 

  27. Yu S, Zhu S, Ma Y, Mao D (2015) A variable step size firefly algorithm for numerical optimization. Appl Math Comput 263:214–220. https://doi.org/10.1016/j.amc.2015.04.065

    Article  MathSciNet  MATH  Google Scholar 

  28. Fister I, Yang X-S, Fister I, Brest J (2012) Memetic firefly algorithm for combinatorial optimization. In: Proceedings 5th international conference bioinspired optim. Methods their applied. BIOMA 2012, p 75–86. [Online]. Available: http://arxiv.org/abs/1204.5165

  29. Shaukat ZS, Naseem R, Zubair M (2018) A dataset for software requirements risk prediction. In: 2018 IEEE international conference on computational science and engineering (CSE). https://figshare.com/articles/Requirement_Risk_Data_arff/5878819. Accessed 11 Dec 11 2020

  30. Salih HAM, Ammar HH (2017) Model-based resource utilization and performance risk prediction using machine learning techniques. JOIV Int J Inform Vis 1(3):101. https://doi.org/10.30630/joiv.1.3.35

    Article  Google Scholar 

  31. Xu Z, Yang B, Guo P (2015) Software risk prediction based on the hybrid algorithm of genetic algorithm and decision tree. Advanced intelligent computing theories and applications with aspects of contemporary intelligent computing techniques. Springer, Berlin Heidelberg, pp 266–274

    Google Scholar 

  32. Hu Y, Mo X, Zhang X, Zeng Y, Du J, Xie K (2012) Intelligent analysis model for outsourced software project risk using constraint-based bayesian network. J Softw 7(2):440–449. https://doi.org/10.4304/jsw.7.2.440-449

    Article  Google Scholar 

  33. Hu Y, Zhang X, Sun X, Liu M, Du J (2009) An intelligent model for software project risk prediction. In: 2009 International conference on information management, innovation management and industrial engineering, p 629–632. https://doi.org/10.1109/ICIII.2009.157

  34. Xu Z, Yang B, Guo P (2007) Software risk prediction based on the hybrid algorithm of genetic algorithm and decision tree. Advanced intelligent computing theories and applications. With aspects of contemporary intelligent computing techniques. Springer, Berlin, Heidelberg, pp 266–274

    Chapter  Google Scholar 

  35. Appukkutty K, Ammar HH, Popstajanova KG (2005) Software requirement risk assessment using UML. In: The 3rd ACS/IEEE international conference oncomputer systems and applications, p 591–594. https://doi.org/10.1109/AICCSA.2005.1387101

  36. Naseem R et al (2021) Empirical assessment of machine learning techniques for software requirements risk prediction. Electronics 10(2):168. https://doi.org/10.3390/electronics10020168

    Article  Google Scholar 

  37. Shaukat ZS, Naseem R, Zubair M (2018) A dataset for software requirements risk prediction. In: 2018 IEEE International conference on computational science and engineering (CSE), p 112–118. https://doi.org/10.1109/CSE.2018.00022

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Janmenjoy Nayak.

Ethics declarations

Conflict of interest

The authors declare that this manuscript has no conflict of interest with any other published source and has not been published previously (partly or in full). No data have been fabricated or manipulated to support our conclusions.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Pemmada, S.K., Nayak, J. & Naik, B. A deep intelligent framework for software risk prediction using improved firefly optimization. Neural Comput & Applic 35, 19523–19539 (2023). https://doi.org/10.1007/s00521-023-08756-x

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00521-023-08756-x

Keywords

Navigation