Abstract
Faults in software can be of varied severity and so is the priority with which they are fixed. Hence, these two factors impact the reliability of the software to a large extent and is worthy of being taken into consideration while framing the software reliability growth model (SRGM). In this paper, a stochastic differential equation-based SRGM has been formulated where detection of faults has been associated with severity of fault occurrence and the process of correcting them have been knit with priority of defect fixing. Another matter of concern is the determination of the optimal time to release the software in the market with high reliability figures keeping the development cost margin minimum. Release time determination in the literature is done mainly using crisp or type-1 fuzzy system approach wherein the cost constraint in the optimization framework is considered to be of deterministic nature which is something highly unrealistic. In this study, the cost constraint is considered to comprise of a randomized cost budget with variable coefficients being interval type-2 fuzzy numbers which can represent the dynamicity associated with changes in specification during software development process in a much more realistic fashion. This encourages the release time determination problem to be framed as a multi-objective chance constrained optimization problem, which is thereby solved using fuzzy goal programming approach based on Taylor series method. The proposed SRGM and the release time approach have been validated on real time data, which show much promising results than many of those available in the literature.
Similar content being viewed by others
Change history
26 February 2021
A Correction to this paper has been published: https://doi.org/10.1007/s00500-020-05463-w
References
Bug Severity and Priority in Testing with Examples and Differences (2019) https://www.lambdatest.com/blog/bug-severity-vs-priority-in-testing-with-examples/. Accessed 8 April 2019
Chatterjee S, Shukla A (2016) Change point–based software reliability model under imperfect debugging with revised concept of fault dependency. Proc Inst Mech Eng Part O J Risk Reliab 230(6):579–597
Chatterjee S, Shukla A (2017) An ideal software release policy for an improved software reliability growth model incorporating imperfect debugging with fault removal efficiency and change point. Asia Pac J Oper Res 34(03):1740017
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
Chatterjee S, Nigam S, Singh JB, Upadhyaya LN (2012) Effect of change point and imperfect debugging in software reliability and its optimal release policy. Math Comput Modell Dyn Syst 18(5):539–551
Chatterjee S, Chaudhuri B, Bhar C (2020a) Optimal release time determination in intuitionistic fuzzy environment involving randomized cost budget for SDE-based software reliability growth model. Arab JSci Eng 45(4):2721–2741
Chatterjee S, Chaudhuri B, Bhar C, Shukla A (2020b) Optimal release time determination using FMOCCP involving randomized cost budget for FSDE-based software reliability growth model. Int J Reliab Qual Saf Eng 27(01):2050004
Dalman H, Bayram M (2018) Interactive fuzzy goal programming based on Taylor series to solve multiobjective nonlinear programming problems with interval type-2 fuzzy numbers. IEEE Trans Fuzzy Syst 26(4):2434–2449
De A, Kundu P, Das S, Kar S (2020) A ranking method based on interval type-2 fuzzy sets for multiple attribute group decision making. Soft Comput 24(1):131–154
Deb K, Pratap A, Agarwal S, Meyarivan TAMT (2002) A fast and elitist multiobjective genetic algorithm: NSGA-II. IEEE Trans Evol Comput 6(2):182–197
Defect Severity and Priority in Testing with Examples and Differences (2018) 6. https://www.softwaretestinghelp.com/how-to-set-defect-priority-and-severity-with-defect-triage-process/. Accessed 8 April 2019
Dhillon BS (1999) Engineering maintainability: how to design for reliability and easy maintenance. Gulf Professional Publishing, Houston
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
Hoffmann M, Donev V (2018) Introduction of a new continuous time and state space stochastic process in condition prediction. Int J Pavement Eng 19(4):339–354
Huang CY (2005) Cost-reliability-optimal release policy for software reliability models incorporating improvements in testing efficiency. Reliab Eng Syst Saf 77(2):139–155
Huang CY, Lyu MR (2005) Optimal release time for software systems considering cost, testing-effort, and test efficiency. IEEE Trans Reliab 54(4):583–591
Huang CY, Luo SY, Lyu MR (1999) Optimal software release policy based on cost and reliability with testing efficiency. In: Computer software and applications conference, 1999. COMPSAC’99. Proceedings. The twenty-third annual international. IEEE, pp 468–473
Jha PC, Gupta A, Kapur PK, Gupta D (2008) Release time decision policy of software employed for the safety of critical system under uncertainty. Opsearch 45(3):209–224
Kapur PK, Garg RB, Bhalla VK (1993) Release policies with random software life cycle and penalty cost. Microelectron Reliab 33(1):7–12
Kapur PK, Agarwala S, Garg RB (1994) Bicriterion release policy for exponential software reliability growth model. RAIRO-Oper Res 28(2):165–180
Kapur PK, Gupta A, Jha PC (2007) Reliability growth modeling and optimal release policy of a n-version programming system incorporating the effect of fault removal efficiency. Int J Autom Comput 4(4):369–379
Kapur PK, Anand S, Yadav K (2008) Testing-domain based software reliability growth models using stochastic differential equation. Advances in performance and safety of complex systems. MacMillan India Ltd, New Delhi, pp 817–830
Kapur PK, Anand S, Yamada S, Yadavalli VS (2009) Stochastic differential equation-based flexible software reliability growth model. Math Prob Eng 2009
Kapur PK, Pham H, Gupta A, Jha PC (2011a) Software reliability assessment with OR applications. Springer, London
Kapur PK, Pham H, Gupta A, Jha PC (2011b) Optimal release policy under fuzzy environment. Int J Syst Assur Eng Manag 2(1):48–58
Kou G, Yang P, Peng Y, Xiao F, Chen Y, Alsaadi FE (2020) Evaluation of feature selection methods for text classification with small datasets using multiple criteria decision-making methods. Appl Soft Comput 86:105836. https://doi.org/10.1016/j.asoc.2019.105836
Lee CH, Kim YT, Park DH (2004) S-shaped software reliability growth models derived from stochastic differential equations. IIE Trans 36(12):1193–1199
Li G, Kou G, Peng Y (2016) A group decision making model for integrating heterogeneous information. IEEE Trans Syst Man Cybern Part A Syst 48(6):982–992
Li T, Kou G, Peng Y, Shi Y (2017) Classifying with adaptive hyper-spheres: an incremental classifier based on competitive learning. IEEE Trans Syst Man Cybern Syst. https://doi.org/10.1109/TSMC.2017.2761360
Li T, Kou G, Peng Y (2020) Improving malicious URLs detection via feature engineering: linear and nonlinear space transformation methods. Inf Syst 91:101494. https://doi.org/10.1109/TSMC.2017.2761360
Lo JH, Huang CY (2006) An integration of fault detection and correction processes in software reliability analysis. J Syst Softw 79(9):1312–1323
Peng R, ZhAi Q (2017) Modeling of software fault detection and correction processes with fault dependency Modelowanie procesów wykrywania i korekcji błędów opro-gramowania z założeniem wzajemnej zależności błędów. eksploatacja i niezawodnosc 19(3):467
Peng R, Li YF, Zhang WJ, Hu QP (2014) Testing effort dependent software reliability model for imperfect debugging process considering both detection and correction. Reliab Eng Syst Saf 126:37–43
Pham H (1996) A software cost model with imperfect debugging, random life cycle and penalty cost. Int J Syst Sci 27(5):455–463
Pham H (2007) System software reliability. Springer, Berlin
Pham H, Zhang X (1999) A software cost model with warranty and risk costs. IEEE Trans Comput 48(1):71–75
Qin J, Liu X, Pedrycz W (2017) An extended TODIM multi-criteria group decision making method for green supplier selection in interval type-2 fuzzy environment. Eur J Oper Res 258(2):626–638
Rao C, Goh M, Zhao Y, Zheng J (2015) Location selection of city logistics centers under sustainability. Transp Res Part D Transp Environ 36:29–44
Rao C, Lin H, Liu M (2020) Design of comprehensive evaluation index system for P2P credit risk of “three rural” borrowers. Soft Comput 24(15):11493–11509
Rezaei F, Yarmohammadian MH, Haghshenas A, Fallah A, Ferdosi M (2018) Revised risk priority number in failure mode and effects analysis model from the perspective of healthcare system. Int J Prev Med 9
Schneidewind NF (1975) Analysis of error processes in computer software. ACM Sigplan Not 10(6):337–346
Soner S, Jain A, Tripathi A, Litoriya R (2010) A novel approach to calculate the severity and priority of bugs in software projects. In: 2010 2nd International conference on education technology and computer, vol 2. IEEE. pp V2–50
Tahayori H, Tettamanzi AG, Degli Antoni G, Visconti A, Moharrer M (2010) Concave type-2 fuzzy sets: properties and operations. Soft Comput 14(7):749–756
Wang L, Hu Q, Liu J (2016) Software reliability growth modeling and analysis with dual fault detection and correction processes. IIE Trans 48(4):359–370
Xie M, Hu QP, Wu YP, Ng SH (2007) A study of the modeling and analysis of software fault-detection and fault-correction processes. Qual Reliab Eng Int 23(4):459–470
Xiong CJ, Xie M, Ng SH (2011) Optimal software maintenance policy considering unavailable time. J Softw Evol Process 23(1):21–33
Yamada S, Kimura M, Tanaka H, Osaki S (1994) Software reliability measurement and assessment with stochastic differential equations. IEICE Trans Fundam Electron Commun Comput Sci 77(1):109–116
Yamada S, Nishigaki A, Kimura M (2003) A stochastic differential equation model for software reliability assessment and its goodness-of-fit. Int J Reliab Appl 4(1):1–11
Yang J, Liu Y, Xie M, Zhao M (2016) Modeling and analysis of reliability of multi-release open source software incorporating both fault detection and correction processes. J Syst Softw 115:102–110
Yun WY, Bai DS (1990) Optimum software release policy with random life cycle. IEEE Trans Reliab 39(2):167–170
Zhang X, Pham H (2000) Comparisons of nonhomogeneous Poisson process software reliability models and its applications. Int J Syst Sci 31(9):1115–1123
Zhang H, Kou G, Peng Y (2019) Soft consensus cost models for group decision making and economic interpretations. Eur J Oper Res 277(3):964–980
Acknowledgements
The authors of the article acknowledge IIT(ISM), Dhanbad, India, for providing the necessary facilities for this work. The authors also acknowledge Dr. S. Chattopadhyay, Associate Professor of Department of Mechanical Engineering, IIT (ISM), Dhanbad, for his help at preparing the manuscript.
Funding
This research did not receive any specific grant from funding agencies in the public, commercial, or not-for-profit sectors.
Author information
Authors and Affiliations
Corresponding author
Ethics declarations
Conflict of interest
No potential conflict of interest was reported by the authors.
Additional information
Communicated by V. Loia.
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
The original article has been updated: Due to affiliation update.
Appendices
Appendix A: Deterministic formulation of chance constraint
\( C_{\text{B}} \) is obtained to be a FRV following Johnson SB distribution having probability density function (pdf) given by,
where \( z = \frac{{C_{\text{B}} - \xi^{'} }}{{\lambda^{'} }} \); \( \gamma^{'} \in \,\,\gamma [\alpha ],\,\,\,\delta^{'} \in \delta [\alpha ] \)
such that \( C_{\text{B}} \ge \xi \)
In expression above, \( \gamma^{'} \in \,\tilde{\gamma }[\alpha ]\,,\,\delta^{'\,} \in \,\tilde{\delta }[\alpha ] \), \( \xi^{'} \in \xi [\alpha ] \), \( \lambda^{'} \in \,\lambda [\alpha ] \) are defined the \( \alpha \, \) cut of fuzzy numbers \( \tilde{\gamma }\,,\,\tilde{\delta }\,,\,\tilde{\xi },\,\tilde{\lambda } \). The support of \( \delta \,,\,\lambda \) are set of positive real numbers and the support of \( \xi ,\,\,\gamma \) are set of real numbers.
The chance constraint expression is given by, \( \Pr \left( {\tilde{C}(t) \le \tilde{C}_{B} } \right) \ge 1 - p \) whereby \( C_{\text{B}} \) follows Johnson SB distribution. Hence, from the expression for pdf it may be well stated that the above inequality takes the form,
\( h_{i} \, \in \,\tilde{C}(t) \) and \( h_{i} \, \ge \,\xi^{'} \) Implies that,
Since, the above inequality is true for all \( \alpha \in (0,1] \), the expression may be reframed in terms of \( \alpha \)-cut as,
and \( \tilde{C}(t)[\alpha ] \ge \xi [\alpha ] \)
Using the first decomposition theorem the above expression takes the form,
By fitting the cost data corresponding to Release 1 (as shown in “Appendix B”) to the Easy fit Software it was observed that, \( \gamma = - 0.50168\,,\,\delta = \,0.51181,\,\lambda = 6.1499 \times 10^{5} ,\,\xi = - 16470.0 \)
\( C(t) \) denoting the cost function it always assumes a value greater than zero. Hence, the constraint \( \tilde{C}(t) \ge \xi \) becomes a redundant constraint.
Thereby, \( \tilde{C}(t) \le \tilde{C}_{n} \) whereby \( \tilde{C}_{n} = \frac{{\tilde{\lambda }\exp \left( {\frac{{\omega - \tilde{\gamma }}}{{\tilde{\delta }}}} \right)}}{{\exp \left( {\frac{{\omega - \tilde{\gamma }}}{{\tilde{\delta }}}} \right) + 1}} + \tilde{\xi } \) and hence \( \tilde{C}_{{B^{'} }} = \left( \begin{aligned} \left( {459833.9,506933.818,526933.75,584975.80;0.97,0.99} \right), \hfill \\ \left( {506933.818,537875.69,558734.88,564537.23;0.87,0.98} \right) \hfill \\ \end{aligned} \right) \)
In the above case value of p is considered equal to 0.2089.
Appendix B: Dataset based on which cost calculation has been carried out
The data set below was obtained from a large IT firm. The data comprises of specification of the Resources, Effort Man days, Effort Man Hours, Total Hours, Rate and Price. Further it contains the weekly cost breakup corresponding to each resource. The Effort Man Week column represents the number of weeks the particular resource had worked in course of building the project. The column corresponding to Effort Man Days corresponds to number of days the resource had put in the development process. It has been considered that the firm supports five working days a week with 8 to 9 working hours per day. The column corresponding to Rate illustrates the amount paid to the each resource per week. The column corresponding to price defines the total amount spend in regard to the corresponding resource. The remaining part of the dataset defines the proportion of the total cost that was spent per resource on a weekly basis. The above data set was used for estimating the distribution corresponding to the cost budget in formulation of the cost constraint in the optimization problem.
Cost dataset:
Rights and permissions
About this article
Cite this article
Chatterjee, S., Chaudhuri, B. & Bhar, C. Optimal release time determination via fuzzy goal programming approach for SDE-based software reliability growth model. Soft Comput 25, 3545–3564 (2021). https://doi.org/10.1007/s00500-020-05385-7
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00500-020-05385-7