Open Access Open Access  Restricted Access Subscription Access

Modelling Open-Source Software Reliability Incorporating Swarm Intelligence-Based Techniques


Affiliations
1 Department of Computer Science, Al al-Bayt University, Mafraq, Jordan
 

In the software industry, two software engineering development best practices coexist: open-source and closed-source software. The former has a shared code that anyone can contribute, whereas the latter has a proprietary code that only the owner can access. Software reliability is crucial in the industry when a new product or update is released. Applying meta-heuristic optimization algorithms for closed-source software reliability prediction has produced significant and accurate results. Now, open-source software dominates the landscape of cloud-based systems. Therefore, providing results on open- source software reliability - as a quality indicator - would greatly help solve the open-source software reliability growth- modelling problem. The reliability is predicted by estimating the parameters of the software reliability models. As software reliability models are inherently nonlinear, traditional approaches make estimating the appropriate parameters difficult and ineffective. Consequently, software reliability models necessitate a high- quality parameter estimation technique. These objectives dictate the exploration of potential applications of meta- heuristic swarm intelligence optimization algorithms for optimizing the parameter estimation of nonhomogeneous Poisson process-based open-source software reliability modelling. The optimization algorithms are firefly, social spider, artificial bee colony, grey wolf, particle swarm, moth flame, and whale. The applicability and performance evaluation of the optimization modelling approach is demonstrated through two real open-source software reliability datasets. The results are promising.

Keywords

Swarm Intelligence, Open Source Software, Software Reliability Engineering.
User
Notifications
Font Size

  • Frank Nagle and Jenny Hoffman, (2020). The Hidden Vulnerabilities of Open Source Software, 2020. Retrieved January 23, 2023, from: http://hbswk.hbs.edu/item/the-hidden-vulnerabilities-of-open-source-software
  • Shiva Tyagi, Devendra Kumar, and Sachin Kumar. (2019). Open source software: analysis of available reliability models keeping security in the forefront. International Journal of Information Technology, pages 1–10.
  • Amrit L Goel and KazuOkumoto. (1979). Time-dependent error-detection rate model for software reliability and other performance measures. IEEE transactions on Reliability, 28(3):206–211.
  • PK Kapur, Hoang Pham, Anshu Gupta, PC Jha, et al. (2011). Software reliability assessment with OR applications, volume 364. Springer.
  • Omar Shatnawi. (2014). Measuring commercial software operational reliability: an interdisciplinary modelling approach. EksploatacjaiNiezawodnos´c´, 16(4).
  • Omar Shatnawi. (2016). An integrated framework for developing discrete-time modelling in software reliability engineering. Quality and Reliability Engineering International, 32(8):2925–2943.
  • Shigeru Yamada. (2014). Software reliability modeling: fundamentals and applications, volume 5. Springer.
  • IztokFister Jr, Xin-She Yang, IztokFister, Janez Brest, and DusanFister. (2013). A brief ˇ review of nature-inspired algorithms for optimization. arXiv preprint arXiv:1307.4186.
  • Pamba, R. V., Sherly, E., & Mohan, K. (2017). Automated information retrieval model using FP growth based fuzzy particle swarm optimization. Int. J. Comput. Sci. Inf. Technol, 9(1).
  • Jun Tang, Gang Liu, and Qingtao Pan. (2021). A review on representative swarm intelligence algorithms for solving optimization problems: Applications and trends. IEEE/CAA Journal of AutomaticaSinica, 8(10):1627–1643.
  • Touqeer Ahmed Jumani, Mohd Wazir Mustafa, Ali S Alghamdi, MadihahMdRasid, ArbabAlamgir, and Ahmed Bilal Awan. (2020). Swarm intelligence-based optimization techniques for dynamic response and power quality enhancement of ac microgrids: A comprehensive review. IEEE Access, 8:75986–76001.
  • ShahrzadSaremi, SeyedaliMirjalili, and Andrew Lewis. (2017). Grasshopper optimisation algorithm: theory and application. Advances in Engineering Software, 105:30–47.
  • PK Kapur, SaurabhPanwar, Vivek Kumar, and Ompal Singh. (2020). Entropy-based two-dimensional software reliability growth modeling for open-source software incorporating change-point. International Journal of Reliability, Quality and Safety Engineering, 27(05):2040009.
  • IqraSaraf, Javaid Iqbal, Avinash K Shrivastava, and ShozabKhurshid. (2022). Modelling reliability growth for multi-version open source software considering varied testing and debugging factors. Quality and Reliability Engineering International, 38(4):1814–1825.
  • Jinyong Wang. (2021). Open source software reliability model with nonlinear fault detection and fault introduction. Journal of Software: Evolution and Process, 33(12):e2385.
  • Jinyong Wang, Ce Zhang, and Jianying Yang. (2022). Software reliability model of open source software based on the decreasing trend of fault introduction. Plos one, 17(5):e0267171
  • Shigeru Yamada, Yoshinobu Tamura, et al. (2016). OSS reliability measurement and assessment. Springer.
  • Mengmeng Zhu and Hoang Pham. (2018). A multi-release software reliability modeling for open source software incorporating dependent fault detection process. Annals of Operations Research, 269:773–790.
  • Taehyoun Kim, Kwangkyu Lee, and JongmoonBaik. (2015). An effective approach to estimating the parameters of software reliability growth models using a real-valued genetic algorithm. Journal of Systems and Software, 102:134–144.
  • Takashi Minohara and Yoshihiro Tohma. (1995). Parameter estimation of hyper-geometric distribution software reliability growth model by genetic algorithms. In Proceedings of Sixth International Symposium on Software Reliability EngineeringISSRE’95, pages 324– 329. IEEE.
  • NajlaAkram Al-Saati and MarrwaAbd-AlKareemAlabajee. (2020). A comparative study on parameter estimation in software reliability modeling using swarm intelligence. arXiv preprint arXiv:2003.04770.
  • AnkurChoudhary, Anurag Singh Baghel, and Om Prakash Sangwan. (2017). Efficient parameter estimation of software reliability growth models using harmony search. IET Software, 11(6):286–291.
  • Sheta, A. F., & Abdel-Raouf, A. (2016). Estimating the parameters of software reliability growth models using the grey wolf optimization algorithm. International Journal of Advanced Computer Science and Applications, 7(4).
  • Xin-She Yang. (2020). Nature-inspired computation and swarm intelligence: Algorithms, theory and applications. Academic Press.
  • Jumani,Touqeer Ahmed, et al. (2020). Swarm intelligence-based optimization techniques for dynamic response and power quality enhancement of AC microgrids: A comprehensive review. IEEE Access, 8, 75986-76001.
  • Jing Wang and Gerardo Beni. (1989). Cellular robotic system with stationary robots and its application to manufacturing lattices. In Proceedings. IEEE International Symposium on Intelligent Control 1989, pages 132–137. IEEE.
  • Mark M Millonas. (1993). Swarms, phase transitions, and collective intelligence. arXiv preprint adap-org/9306002.
  • Gabriella Kicska and Attila Kiss. (2021). Comparing swarm intelligence algorithms for dimension reduction in machine learning. Big Data and Cognitive Computing, 5(3):36.
  • Pushpendra Singh, Nand K Meena, Jin Yang, and Adam Slowik. (2020). Swarm intelligence algorithms: A tutorial. Swarm Intelligence Algorithms, pages 1-15.
  • James Kennedy and Russell Eberhart. (1995). Particle swarm optimization. In Proceedings of ICNN’95-international conference on neural networks, volume 4, pages 1942– 1948. IEEE.
  • Karaboga, D. (2005). An idea based on honey bee swarm for numerical optimization (Vol. 200, pp. 1-10). Technical report-tr06, ErciyesUniversity, Computer Engineering Department.
  • Xin-She Yang. (2009). Firefly algorithms for multimodal optimization. In International symposium on stochastic algorithms, pages 169–178. Springer.
  • SeyedaliMirjalili, Seyed Mohammad Mirjalili, and Andrew Lewis. (2014). Grey wolf optimizer. Advances in Engineering Software, 69:46–61.
  • Erik Cuevas and Miguel Cienfuegos. (2014). A new algorithm inspired in the behavior of the social-spider for constrained optimization. Expert Systems with Applications, 41(2):412–425.
  • SeyedaliMirjalili. (2015). Moth-flame optimization algorithm: A novel nature-inspired heuristic paradigm. Knowledge-Based Systems, 89:228–249.
  • SeyedaliMirjalili and Andrew Lewis. (2016). The whale optimization algorithm. Advances in Engineering Software, 95:51–67.
  • MohdTaib Shatnawi and Omar Shatnawi. (2021). Discrete time-space stochastic mathematical modelling for quantitative description of software imperfect fault-debugging with change-point. International Journal of Advanced Computer Science and Applications, 12(6).
  • KaramaKanoun, Mohamed Kaaniche, and J-P Laprie. (1997). Qualitative and quantitative ˆ reliability assessment. IEEE Software, 14(2):77–87.
  • Fan Li, Ze-Long Yi, et al. (2016). A new software reliability growth model: multigeneration faults and a power-law testing-effort function. Mathematical Problems in Engineering, 2016
  • Xiang Li, Yan Fu Li, Min Xie, and Szu Hui Ng. (2011). Reliability analysis and optimal version-updating for open source software. Information and Software Technology, 53(9):929–936.
  • Bhoopendra Pachauri, Ajay Kumar, and JoydipDhar. (2019). Reliability analysis of open source software systems considering the effect of previously released version. International Journal of Computers and Applications, 41(1):31–38.
  • Kapur, P. K., Aggarwal, A. G., Shatnawi, O., & Kumar, R. (2010). On the development of unified scheme for discrete software reliability growth modeling. International Journal of Reliability, Quality and Safety Engineering, 17(03), 245-260.
  • Shatnawi, O. (2009). Discrete time modelling in software reliability engineering—A unified approach. Computer Systems Science and Engineering, 24(6), 391.
  • Kapur, P. K., Gupta, A., Shatnawi, O., &Yadavalli, V. S. S. (2006). Testing effort control using flexible software reliability growth model with change point. International Journal of Performability Engineering, 2(3), 245.
  • Kapur, P. K., Khatri, S. K., Tickoo, A., & Shatnawi, O. (2014). Release time determination depending on number of test runs using multi attribute utility theory. International Journal of System Assurance Engineering and Management, 5, 186-194.
  • Shatnawi, O. (2009). Discrete time NHPP models for software reliability growth phenomenon. Int. Arab J. Inf. Technol., 6(2), 124-131.
  • Kapur, P. K., Shatnawi, O., &Yadavalli, V. S. S. (2004). A software fault classification model. South African Computer Journal, 2004(33):1–9.
  • ChakkritTantithamthavorn, Shane McIntosh, Ahmed E Hassan, and Kenichi Matsumoto. (2016). An empirical comparison of model validation techniques for defect prediction models. IEEE Transactions on Software Engineering, 43(1):1–18.

Abstract Views: 55

PDF Views: 23




  • Modelling Open-Source Software Reliability Incorporating Swarm Intelligence-Based Techniques

Abstract Views: 55  |  PDF Views: 23

Authors

Omar Shatnawi
Department of Computer Science, Al al-Bayt University, Mafraq, Jordan

Abstract


In the software industry, two software engineering development best practices coexist: open-source and closed-source software. The former has a shared code that anyone can contribute, whereas the latter has a proprietary code that only the owner can access. Software reliability is crucial in the industry when a new product or update is released. Applying meta-heuristic optimization algorithms for closed-source software reliability prediction has produced significant and accurate results. Now, open-source software dominates the landscape of cloud-based systems. Therefore, providing results on open- source software reliability - as a quality indicator - would greatly help solve the open-source software reliability growth- modelling problem. The reliability is predicted by estimating the parameters of the software reliability models. As software reliability models are inherently nonlinear, traditional approaches make estimating the appropriate parameters difficult and ineffective. Consequently, software reliability models necessitate a high- quality parameter estimation technique. These objectives dictate the exploration of potential applications of meta- heuristic swarm intelligence optimization algorithms for optimizing the parameter estimation of nonhomogeneous Poisson process-based open-source software reliability modelling. The optimization algorithms are firefly, social spider, artificial bee colony, grey wolf, particle swarm, moth flame, and whale. The applicability and performance evaluation of the optimization modelling approach is demonstrated through two real open-source software reliability datasets. The results are promising.

Keywords


Swarm Intelligence, Open Source Software, Software Reliability Engineering.

References