簡易檢索 / 詳目顯示

研究生: 周雋軒
Chou, Chun-Hsuan
論文名稱: 考慮不完美除錯效應於多版本更新型態之軟體可靠度成長模型
An Imperfect Debugging Software Reliability Growth Model for Multi-Version Software
指導教授: 黃宇翔
Huang, Yeu-Shiang
學位類別: 碩士
Master
系所名稱: 管理學院 - 工業與資訊管理學系
Department of Industrial and Information Management
論文出版年: 2017
畢業學年度: 105
語文別: 中文
論文頁數: 89
中文關鍵詞: 軟體可靠度除錯過程不完美除錯多版本更新釋出
外文關鍵詞: Software Reliability, Debugging Process, Imperfect Debugging, Multi-version Release
相關次數: 點閱:130下載:2
分享至:
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報
  • 為了使軟體釋出後確保功能正常,在釋出前之檢測作業極為重要,目的是找出開發過程中產生的程式碼或其他錯誤並修正之,而其中軟體可靠度成長模型能有效地評估軟體的品質與可靠度,其成長概念即是藉由檢測時的偵錯與除錯作業減少軟體內的錯誤並降低失效發生率,使軟體越來越可靠。有關軟體可靠度成長模型的討論已有四十餘年的歷史,然而極大部分依舊是以瞬間除錯與完美除錯的情境下討論,前者表示一偵測到錯誤的瞬間即除錯完畢,後者表示除錯時可將錯誤永遠移除且不會產生新錯誤,但兩者都與實際檢測情況不符。
    因此本研究為使軟體可靠度成長模型更能應用於實際檢測環境,我們將移除瞬間除錯與完美除錯的假設,即加入除錯過程與不完美除錯效應於軟體可靠度成長模型中,前者表示已偵測之錯誤需要一段時間除錯才能移除;後者表示在除錯時有機會產生新錯誤,兩者都是符合實際檢測環境的狀況,此外現今多數軟體為延長在市場上的壽命與回應消費者期待,會進行多次更新作業,因此本研究把此模式納入以擴大模型應用範圍。為了驗證本研究之模型適合描述現實檢測情況,我們以各種不同的實際檢測資料集進行配適,並發現都較過往學者之模式為佳。確認模型的表現良好後,本研究進一步建構檢測成本模式,目的是找出最佳檢測時間使檢測成本最小化,並利用兩種求解法得到最佳解,第一種是過往學者最常使用的依序求解法,而為了解決此法不能得到所有版本總合的最佳解以及無法提供決策者停止更新的決策準則,本研究提出第二種方法,即動態規劃法,且發現此法能有效改善依序求解法的缺點,並針對成本函數進行敏感度分析,發現風險成本變動影響最大,此外也發現不完美除錯比例與總錯誤數量的改善可使最小成本改善最多。

    Since software testing requires a great amount of testing staff and resources, how to effectively test the software becomes an important issue. Software reliability growth models assist testing teams in evaluating the quality and reliability of the software. The concept of reliability growth is to reduce the software errors and failures by testing and debugging the software, which enhances the reliability of the software. Testing teams can use software reliability growth models to estimate the reliability and testing cost of the software, and then obtain the optimal release time of the software. The software reliability growth models have been studied for more than forty years. However, software reliability growth models are often constructed based on the assumption of instantaneous debugging, which refers to that once an error is detected, it would be removed instantaneously, and perfect debugging, which refers to that errors would be removed eternally, and new errors would not emerge during the debugging process. However, in practice, debugging takes time, and new errors may emerge during the debugging process, which is imperfect debugging. Therefore, instantaneous debugging and perfect debugging are unrealistic. This study proposes a software reliability growth model by removing the assumptions of instantaneous and perfect debugging with consideration of the debugging process, which indicates that once an error is detected, it would be removed after a while, and imperfect debugging effects, which indicates that new errors may emerge during the debugging process, for a practical consideration. In addition, most software are required to perform updates to extend their product life in the market to correspond with consumers’ expectation. This study also incorporates software updates into the software reliability growth model for a practical consideration. Moreover, this study uses data sets to examine the effectiveness of the proposed model to evaluate the fitness of the data sets and find that the proposed model outperforms the previously proposed models. Then, we also investigate the optimal release time of the software with the aim of minimizing the total testing cost under a certain degree of reliability.

    目錄 摘要 I Abstract II 誌謝 VI 目錄 VII 圖目錄 IX 表目錄 X 第一章 緒論 1 第一節 研究背景 1 第二節 研究動機 2 第三節 研究目的 3 第四節 研究範圍與重要性 4 第五節 論文架構 4 第二章 文獻探討 6 第一節 軟體可靠度成長模型 6 第二節 除錯過程 10 第三節 最佳釋出時間 14 第三章 不完美除錯效應之軟體可靠度成長模型 18 第一節 問題描述 18 第二節 研究架構 20 第三節 不完美除錯軟體可靠度成長模型之基本模式 25 第四節 不完美除錯軟體可靠度成長模型之多版本更新模式 36 第五節 不完美除錯之多版本更新成本模式 47 第四章 成本模型驗證與比較 55 第一節 成本模式之最佳解實例 55 第二節 成本模式之敏感度分析 64 第五章 結論 69 第一節 研究貢獻 69 第二節 研究限制 70 第三節 未來研究 70 參考文獻 72 附錄 78

    參考文獻

    Aktekin, T.& Caglar, T.(2013).Imperfect Debugging in Software Reliability: A
    Bayesian Approach.European Journal of Operational Research, 227(1), 112-121.

    Almering, V., van Genuchten, M., Cloudt, G., & Sonnemans, P.J.(2007).Using
    Software Reliability Growth Models in Practice.IEEE Software, 24(6), 82-88.

    August, T.& Niculescu, M.F.(2013).The Influence of Software Process Maturity and
    Customer Error Reporting on Software Release and Pricing.Management Science, 59(12), 2702-2726.

    Chen, T.Y., Kuo, F.C., Liu, H., & Wong, W.E.(2013).Code Coverage of Adaptive
    Random Testing.IEEE Transactions on Reliability, 62(1), 226-237.

    Chen, M.H., Lyu, M.R., & Wong, W.E.(2001).Effect of Code Coverage on
    Software Reliability Measurement.IEEE Transactions on Reliability, 50(2), 165-170.

    Chiu, K.C., Huang, Y.S., & Lee, T.Z.(2008).A Study of Software Reliability
    Growth from the Perspective of Learning Effects.Reliability Engineering & System Safety, 93(10), 1410-1421.

    Das, S., Dewanji, A., & Chakraborty, A.(2016).Software Reliability Modeling with
    Periodic Debugging Schedule.IEEE Transactions on Reliability, 65(3), 1449- 1456.

    Garmabaki, A.H., Aggarwal, A.G., Kapur, P.K., & Yadavali, V.S.S.(2012).
    Modeling Two-Dimensional Software Multi-Upgradation and Related Release Problem (A Multi-Attribute Utility Ppproach).International Journal of Reliability, Quality and Safety Engineering, 19(3), 1250012, 1-23.

    Goel, A.L., & Okumoto, K.(1979).Time-Dependent Error-Detection Rate Model for
    Software Reliability and Other Performance Measures.IEEE transactions on Reliability, 3, 206-211.

    Gokhale, S.S., Lyu, M.R., & Trivedi, K.S.(2006).Incorporating Fault Debugging
    Activities into Software Reliability Models: A Simulation Approach.IEEE Transactions on Reliability, 55(2), 281-292.

    Hsu, C.J.& Huang, C.Y.(2011).An Adaptive Reliability Analysis Using Path
    Testing for Complex Component-Based Software Systems.IEEE Transactions on Reliability, 60(1), 158-170.

    Hsu, C.J., Huang, C.Y., & Chang, J.R.(2011).Enhancing Software Reliability
    Modeling and Prediction through the Introduction of Time-Variable Fault Reduction Factor.Applied Mathematical Modelling, 35(1), 506-521.

    Huang, C.Y.& Huang, W.C.(2008).Software Reliability Analysis and Measurement
    Using Finite and Infinite Server Queueing Models.IEEE Transactions on Reliability, 57(1), 192-203.

    Huang, C.Y.& Hung, T.Y.(2010).Software Reliability Analysis and Assessment using
    Queueing Models with Multiple Change-Points.Computers & Mathematics with Applications, 60(7), 2015-2030.

    Huang, C.Y.& Kuo, S.Y.(2002).Analysis of Incorporating Logistic Testing-Effort
    Function into Software Reliability Modeling.IEEE Transactions on Reliability, 51(3), 261-270

    Huang, C.Y., Kuo, S.Y., & Lyu, M.R.(2007).An Assessment of Testing-Effort
    Dependent Software Reliability Growth Models.IEEE transactions on Reliability, 56(2), 198-211.

    Huang, C.Y.& Lin, C.T.(2010).Analysis of Software Reliability Modeling
    Considering Testing Compression Factor and Failure-to-Fault Relationship.IEEE Transactions on Computers, 59(2), 283-288.

    Huang, C.Y.& Lyu, M.R.(2005).Optimal Release Time for Software Systems
    Considering Cost, Testing-Effort, and Test Efficiency.IEEE Transactions on Reliability, 54(4), 583-591.

    Huang, C.Y.& Lyu, M.R.(2005).Optimal Testing Resource Allocation, and
    Sensitivity Analysis in Software Development.IEEE Transactions on Reliability, 54(4), 592-603.

    Huang, C.Y.& Lyu, M.R.(2011).Estimation and Analysis of Some Generalized
    Multiple Change-Point Software Reliability Models.IEEE Transactions on Reliability, 60(2), 498-514.

    Inoue, S., Fukuma, K., & Yamada, S.(2010).Two-Dimensional Change-Point
    Modeling for Software Reliability Assessment.International Journal of Reliability, Quality and Safety Engineering, 17(6), 531-542

    Inoue, S.& Yamada, S.(2004).Testing-Coverage Dependent Software Reliability
    Growth Modeling.International Journal of Reliability, Quality and Safety Engineering, 11(4), 303-312.

    Jiang, X., Du, D., & Ray, T.G.(2007).On Optimality of One‐Bug‐Look‐Ahead
    Policies for a Software Testing Model.Naval Research Logistics, 54(3),
    346-355.

    Kapur, P.K., Pham, H., Aggarwal, A.G., & Kaur, G.(2012).Two Dimensional Multi-
    Release Software Reliability Modeling and Optimal Release Planning.IEEE Transactions on Reliability, 61(3), 758-768

    Kapur, P.K., Pham, H., Anand, S., & Yadav, K.(2011).A Unified Approach for
    Developing Software Reliability Growth Models in the Presence of Imperfect Debugging and Error Generation.IEEE Transactions on Reliability, 60(1), 331-340.

    Lee, C.H., Kim, Y.T., & Park, D.H.(2004).S-Shaped Software Reliability Growth
    Models Derived from Stochastic Differential Equations.IIE Transactions, 36(12), 1193-1199.

    Li, X., Li, Y.F., Xie, M., & Ng, S.H.(2011).Reliability Analysis and Optimal Version-
    Updating for Open Source Software.Information and Software Technology, 53(9), 929-936.

    Malaiya, Y.K., Li, M.N., Bieman, J.M., & Karcich, R.(2002).Software Reliability
    Growth with Test Coverage.IEEE Transactions on Reliability, 51(4), 420-426.

    Morali, N.& Soyer, R.(2003).Optimal Stopping in Software Testing.Naval Research
    Logistics, 50(1), 88-104.

    Musa, J.D.& Okumoto, K.(1984).A Logarithmic Poisson Execution Time Model for Software Reliability Measurement.In Proceedings of the 7th International Conference on Software Engineering, 230-238, IEEE Press.

    Okamura, H., Dohi, T., & Osaki, S.(2013).Software Reliability Growth Models with
    Normal Failure Time Distributions.Reliability Engineering & System Safety, 116, 135-141.

    Özekici, S.& Soyer, R.(2001).Bayesian Testing Strategies for Software with an
    Operational Profile.Naval Research Logistics, 48(8), 747-763.

    Pachauri, B., Dhar, J., & Kumar, A.(2015).Incorporating Inflection S-Shaped Fault
    Reduction Factor to Enhance Software Reliability Growth.Applied Mathematical Modelling, 39(5), 1463-1469.

    Peng, R., Li, Y.F., Zhang, W.J., & Hu, Q.P.(2014).Testing Effort Dependent Software
    Reliability Model for Imperfect Debugging Process Considering Both Detection and Correction.Reliability Engineering and System Safety, 126, 37-43.

    Pham, H.& Zhang, X.(2003).NHPP Software Reliability and Cost Models with
    Testing Coverage.European Journal of Operational Research, 145(2), 443-454.

    Pievatolo, A., Ruggeri, F., & Soyer, R.(2012).A Bayesian Hidden Markov Model for
    Imperfect Debugging.Reliability Engineering & System Safety, 103, 11-21.

    Rekab, K., Thompson, H., & Wu, W.(2013).A Multistage Sequential Test Allocation for Software Reliability Estimation.IEEE Transactions on Reliability, 62(2), 424- 433.

    Teng, X.& Pham, H.(2004).Software Cost Model for Quantifying the Gain with
    Considerations of Random Field Environments.IEEE Transactions on Computers, 53(3), 380-384.

    Teng, X.& Pham, H.(2006).A New Methodology for Predicting Software Reliability
    in the Random Field Environments.IEEE Transactions on Reliability, 55(3),
    458-468

    Wang, J.& Wu, Z.(2016).Study of the Nonlinear Imperfect Software Debugging
    Model.Reliability Engineering & System Safety, 153, 180-192.

    Wang, L., Hu, Q., & Liu, J.(2016).Software Reliability Growth Modeling and
    Analysis with Dual Fault Detection and Correction Processes.IIE Transactions, 48(4), 359-370.

    Wang, S., Wu, Y., Lu, M., & Li, H.(2013).Discrete Nonhomogeneous Poisson
    Process Software Reliability Growth Models based on Test Coverage.Quality
    and Reliability Engineering International, 29(1), 103-112.

    Wu, Y.P., Hu, Q.P., Xie, M., & Ng, S.H.(2007).Modeling and Analysis of Software
    Fault Detection and Correction Process by Considering Time Dependency.IEEE Transactions on Reliability, 56(4), 629-642.

    Xie, M.& Yang, B.(2003).A Study of the Effect of Imperfect Debugging on Software
    Development Cost.IEEE Transactions on Software Engineering, 29(5), 471-473

    Yamada, S., Kimura, M., Tanaka, H., & Osaki, S.(1994).Software Reliability
    Measurement and Assessment with Stochastic Differential Equations.IEICE Transactions on Fundamentals of Electronics, Communications and Computer Sciences, 17, 109–115.

    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.Journal of Systems and Software, 115, 102-110.

    Zachariah, B.(2012).Analysis of Software Testing Strategies Through Attained
    Failure Size.IEEE Transactions on Reliability, 61(2), 569-579.

    Zachariah, B.& Rattihalli, R.N.(2007).Failure Size Proportional Models and an
    Analysis of Failure Detection Abilities of Software Testing Strategies.IEEE Transactions on Reliability, 56(2), 246-253.

    Zachariah, B.(2015).Optimal Stopping Time in Software Testing Based on Failure
    Size Approach.Annals of Operations Research, 235(1), 771-784.

    Zheng, S.(2002).Dynamic Release Policies for Software System with a Reliability
    Constraint.IIE Transactions, 34, 253-262.

    下載圖示 校內:2022-07-01公開
    校外:2022-07-01公開
    QR CODE