Abstract
In this study, we present an approach to enhance software reliability, acknowledging the evolving understanding of error dynamics within software development. While traditional models predominantly attribute errors to coding mistakes, recent insights emphasize the role of human factors such as learning processes and fatigue. Our method integrates these insights by incorporating the fatigue factor of software testers and optimizing fault removal efficiency within the debugging process. This integration leads to the formulation of more realistic software reliability growth models, characterized by S-shaped learning curves and an exponential fatigue function. We conduct a thorough analysis of the models’ quality, predictive abilities, and accuracy, evaluating them against three established fit criteria. By encompassing learning, fatigue, and fault removal efficiency within our models, we provide a comprehensive framework for understanding the dynamics of software reliability.
Similar content being viewed by others
Data availability
The data that support the findings of this study have been included in the manuscript.
References
Ahmad N, Khan MG, Rafi LS (2010) A study of testing-effort dependent inflection s-shaped software reliability growth models with imperfect debugging. Int J Qual Reliab Manag 27(1):89–110. https://doi.org/10.1108/02656711011009335
Chang IH, Pham H, Lee SW, Song KY (2014) A testing-coverage software reliability model with the uncertainty of operating environments. Int J Syst Sci Oper Logist 1(4):220–227. https://doi.org/10.1080/23302674.2014.970244
Chatterjee S, Shukla A (2019) A unified approach of testing coverage-based software reliability growth modelling with fault detection probability, imperfect debugging, and change point. J Softw Evol Process 31(3):2150. https://doi.org/10.1002/smr.2150
Chatterjee S, Shukla A, Pham H (2019) Modeling and analysis of software fault detectability and removability with time variant fault exposure ratio, fault removal efficiency, and change point. Proc Inst Mech Eng Part O J Risk Reliab 233(2):246–256. https://doi.org/10.1177/1748006X18772930
Chiu K-C, Huang Y-S, Lee T-Z (2008) A study of software reliability growth from the perspective of learning effects. Reliab Eng Syst Saf 93(10):1410–1421. https://doi.org/10.1016/j.ress.2007.11.004
Chiu K-C, Huang Y-S, Huang I-C (2019) A study of software reliability growth with imperfect debugging for time-dependent potential errors. Int J Ind Eng Theory Appl Pract. https://doi.org/10.23055/ijietap.2019.26.3.2237
Driel WD, Bikker J, Tijink M (2021) Prediction of software reliability. Microelectron Reliab 119:114074. https://doi.org/10.1016/j.microrel.2021.114074
Goel AL, Okumoto K (1979) Time-dependent error-detection rate model for software reliability and other performance measures. IEEE Trans Reliab 28(3):206–211. https://doi.org/10.1109/TR.1979.5220566
Haque MA, Ahmad N (2022) A software reliability model using fault removal efficiency. J Reliab Stat Stud 15(2):459–472. https://doi.org/10.13052/jrss0974-8024.1523
Jelinski Z, Moranda P (1972) Software reliability research. Statistical computer performance evaluation. Elsevier, Amsterdam, pp 465–484
Kapur P, Panwar S, Singh O, Kumar V (2019) Joint release and testing stop time policy with testing-effort and change point. Risk Based Technol. https://doi.org/10.1007/978-981-13-5796-1_12
Kim K-S, Kim H-C (2016) The performance analysis of the software reliability NHPP log-linear model depend on viewpoint of the learning effects. Indian J Sci Technol 9(37):1–5. https://doi.org/10.17485/ijst/2016/v9i37/101785
Li Q, Pham H (2017) A testing-coverage software reliability model considering fault removal efficiency and error generation. PLoS ONE 12(7):0181524. https://doi.org/10.1371/journal.pone.0181524
Musa JD, Iannino A, Okumoto K (1987) Software reliability: measurement, prediction application. McGraw-Hill Inc., New YorK
Ohba M (1984) Inflection S-shaped software reliability growth model. In: Stochastic models in reliability theory: proceedings of a symposium held in Nagoya, Japan, Springer, pp 144–162. https://doi.org/10.1007/978-3-642-45587-2_10
Pachauri B, Dhar J, Kumar A (2015) Incorporating inflection s-shaped fault reduction factor to enhance software reliability growth. Appl Math Model 39(5–6):1463–1469. https://doi.org/10.1016/j.apm.2014.08.006
Park S (2021) A comparative study on the attributes of NHPP software reliability model based on exponential family and non-exponential family distribution. J Theor Appl Inf Technol 99(23):5735–5747
Samal U, Kumar A (2023) Redefining software reliability modeling: embracing fault-dependency, imperfect removal, and maximum fault considerations. Qual Eng. https://doi.org/10.1080/08982112.2023.2241067
Samal U, Kumar A (2023) A software reliability model incorporating fault removal efficiency and it’s release policy. Comput Stat. https://doi.org/10.1007/s00180-023-01430-9
Samal U, Kumar A (2023) Enhancing software reliability forecasting through a hybrid arima-ann model. Arab J Sci Eng 56:1–14. https://doi.org/10.1007/s13369-023-08486-1
Samal U, Kumar A (2024) A neural network approach for software reliability prediction. Int J Reliab Qual Saf Eng. https://doi.org/10.1142/S0218539324500098
Samal U, Kushwaha S, Kumar A (2023) A testing-effort based srgm incorporating imperfect debugging and change point. Reliab Theory Appl 1872:86–93. https://doi.org/10.24412/1932-2321-2023-172-86-93
Sarkar S, Parnin C (2017) Characterizing and predicting mental fatigue during programming tasks. In: 2017 IEEE/ACM 2nd international workshop on emotion awareness in software engineering(SEmotion), IEEE, pp 32–37. https://doi.org/10.1109/SEmotion.2017.2
Song KY, Chang IH, Pham H (2017) An NHPP software reliability model with S-shaped growth curve subject to random operating environments and optimal release time. Appl Sci 7(12):1304. https://doi.org/10.3390/app7121304
Song KY, Chang IH, Pham H (2019) NHPP software reliability model with inflection factor of the fault detection rate considering the uncertainty of software operating environments and predictive analysis. Symmetry 11(4):521. https://doi.org/10.3390/sym11040521
Subburaj R, Gopal G, Kapur P (2012) A software reliability growth model for estimating debugging and the learning indices. Int J Perform Eng 8(5):539. https://doi.org/10.23940/ijpe.12.5.p539.mag
Verma V, Anand S, Kapur P, Aggarwal AG (2022) Unified framework to assess software reliability and determine optimal release time in presence of fault reduction factor, error generation and fault removal efficiency. Int J Syst Assur Eng Manag 13(5):2429–2441. https://doi.org/10.1007/s13198-022-01653-x
Wallace DR, Kuhn DR (2001) Failure modes in medical device software: an analysis of 15 years of recall data. Int J Reliab Qual Saf Eng 8(04):351–371. https://doi.org/10.1142/S021853930100058X
Wood A (1996) Software reliability growth models. Tandem Tech Rep 96(130056):900
Yaghoobi T, Leung M-F (2023) Modeling software reliability with learning and fatigue. Mathematics 11(16):3491. https://doi.org/10.3390/math11163491
Yamada S, Ohba M, Osaki S (1984) S-shaped software reliability growth models and their applications. IEEE Trans Reliab 33(4):289–292. https://doi.org/10.1109/TR.1984.5221826
Zhang X, Pham H (1998) A software cost model with warranty cost, error removal times and risk costs. IIE Trans 30(12):1135–1142. https://doi.org/10.1080/07408179808966570
Zhang X, Teng X, Pham H (2003) Considering fault removal efficiency in software reliability assessment. IEEE Trans Syst Man Cybern Part A Syst Hum 33(1):114–120. https://doi.org/10.1109/TSMCA.2003.812597
Funding
The authors declare that this research was conducted without any specific grant or funding support.
Author information
Authors and Affiliations
Contributions
Umashankar Samal conducted all the research activities and calculations for this study and took primary responsibility for drafting the manuscript and incorporating the research findings into a coherent narrative. Ajay Kumar provided valuable guidance and oversight throughout the research process. This included reviewing and proofreading the manuscript for clarity, accuracy, and scientific rigor.
Corresponding author
Ethics declarations
Conflict of interest
The authors declare no conflict of interest or disclosures to report.
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.
About this article
Cite this article
Samal, U., Kumar, A. Incorporating human dynamics into software reliability analysis: learning, fatigue, and efficiency considerations. Int J Syst Assur Eng Manag (2024). https://doi.org/10.1007/s13198-024-02368-x
Received:
Revised:
Accepted:
Published:
DOI: https://doi.org/10.1007/s13198-024-02368-x