When to Release and Stop Testing of a Software
Tóm tắt
For several decades both practitioners as well as researchers have contributed immensely towards solving one of the prime concerns of software firms regarding how long to continue testing? Although, efficient testing ensures reliable software but costs a lot to developer in terms of higher testing and market opportunity cost. Hence it’s imperative to obtain optimal testing time of software. Product release marking the end to software testing has been the phenomenon commonly observed in both practice and theory but often leaves customer dissatisfied either in the form of delayed release (prolonged testing phase) or lower reliability (shortened testing phase). To address this issue, current practices in software industry involve a post release testing phase during which organization aims at treating remaining software faults and subsequently enhance product experience for customers. In this paper we present a generalized framework of optimal scheduling policy to determine optimal software release and testing stop time separately, to minimize overall testing cost under reliability and budget constraints. One of the biggest advantages of early release is capitalizing market opportunity while post release testing ensures adequate software reliability. We also propose that software testing & operational phases are governed by different distribution functions in our proposed cost model. Numerical illustration is provided at the end of the paper to validate the proposed cost model.
Tài liệu tham khảo
Arora Ashish, Caulkins JP, Telang R (2006) Research note-sell first, fix later: impact of patching on software quality. Manag Sci 52(3):465–471
Cavusoglu H, Cavusoglu H, Zhang J (2008) Security patch management: share the burden or share the damage? Manag Sci 54(4):657–670
Dalal SR, Mallows CL (1988) When should one stop testing software? J Am Stat Assoc 83(403):872–879
Dohi T, Kaio N, Osaki S (1997) Optimal software release policies with debugging time lag. Int J Reliab, Qual Saf Eng 4(03):241–255
Ehrlich W, Prasanna B, Stampfel J, Wu J (1993) Determining the cost of a stop-test decision (software reliability). IEEE Softw 10(2):33–42
Goel AL, Okumoto K (1979) Time-dependent error-detection rate model for software reliability and other performance measures. IEEE Trans Reliab 3:206–211
Huang CY (2005) Cost-reliability-optimal release policy for software reliability models incorporating improvements in testing efficiency. J Syst Softw 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
Jiang Z, Sarkar S, Jacob VS (2012) Post-release testing and software release policy for enterprise-level systems. Inf Syst Res 23(3–part–1):635–657
Kapur PK, Garg RB (1989) Cost-reliability optimum release policies for a software system under penalty cost. Int J Syst Sci 20(12):2547–2562
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. Revue française d’automatique, d’informatique et de recherche opérationnelle. Recherche opérationnelle 28(2):165–180
Kapur PK, Garg RB, Kumar S (1999) Contributions to hardware and software reliability, vol 3. World Scientific
Kapur PK, Pham H, Gupta A, Jha PC (2011a) Software reliability assessment with OR applications. Springer, London
Kapur PK, Pham H, Anand S, Yadav K (2011b) A unified approach for developing software reliability growth models in the presence of imperfect debugging and error generation’. IEEE Trans Reliab 60(1):331–340
Kapur PK, Pham H, Aggarwal AG, Kaur G (2012) Two dimensional multi-release software reliability modeling and optimal release planning. IEEE Trans Reliab 61(3):758–768
Kapur PK, Pham H, Singh JNP, Sachdeva N (2014) When to stop testing multi upgradations of software based on cost criteria. Int J Syst Sci Oper Logist 1(2):84–93
McDaid K, Wilson SP (2001) Deciding how long to test software. J R Stat Soc Ser D (The Statistician) 50(2):117–134
Musa JD, Iannino A, Okumoto K (1987) Software reliability: measurement, prediction, application. McGraw-Hill, Inc
Okumoto K, Goel AL (1980) Optimum release time for software systems based on reliability and cost criteria. J Syst Softw 1:315–318
Pham H (2007) System software reliability. Springer
Pham H, Zhang X (1999) A software cost model with warranty and risk costs. IEEE Trans Comput 48(1):71–75
Singh O, Kapur PK, Shrivastava AK, Kumar V (2015) Release time problem with multiple constraints. Int J Syst Assur Eng Manag 6(1):83–91
Wood A (1996) Predicting software reliability. Computer 29(11):69–77
Yamada S, Osaki S (1987) Optimal software release policies with simultaneous cost and reliability requirements. Euro J Oper Res 31(1):46–51
Yun WY, Bai DS (1990) Optimum software release policy with random life cycle. IEEE Trans Reliab 39(2):167–170