周毅
計算機技術的不斷進步,軟件開發及其可靠性已經成為關系計算機技術持續發展的核心內容。在實際軟件開發中,架構是保證軟件后期運行質量與可靠性的重要前提,不良的架構基礎上的軟件開發,對后期軟件投入運行時的安全可靠性構成嚴重危險,并相應的補救成本更是無法估量,因此基于良好架構模式之上的軟件開發是保證去可靠性的重要前提。本文筆者在對軟件可靠性分配相關理論與原則分析的基礎上,提出基于架構的軟件可靠性的分配模型以及其相應的優化措施。
【關鍵詞】架構 軟件可靠性 分配模型 優化措施
軟件架構是一種指導大型軟件系統各方面設計的抽象模式,它描述的對象是直接構成系統的抽象組件。在實際的操作中軟件架構和其他軟件一樣都擔負著自身的責任,對于軟件架構師來說,在軟件架構時保證其他軟件系統的可靠性、安全性是重要目標,一旦架構出現問題導致軟件可靠性與運行的安全性遭到破壞,其后果不堪設想,而修復的成本更會對企業的經濟效益造成巨大的損失,因此基于架構的軟件可靠性是軟件安全可靠運行的重要前提。
1 軟件可靠性分配模型概述
軟件可靠性分配是基于軟件可靠性之上的,其主要的目的是將軟件系統的可靠性指標轉化為組成軟件系統的各個組件的可靠性指標并用來指導軟件分系統的開發工作,從而在有限的資源里找尋到最佳的軟件系統設計方案,使得整體系統具備較高的可靠性。在這個過程中,通常會以非線性規劃模型來指導軟件開發中的可靠性分配,并以函數的形式來展示成本與軟件各個構件之間的關系。
基于架構的軟件可靠性分配則是在保證整體系統的可靠性前提下,以組成軟件構架的重要成分為目標,對各個組成的軟件元素進行可靠性分配,達到可靠性成本預估一定的前提下,使得開發軟件的可靠性最高,抑或是在可靠性目標一定的前提下,使得可靠性成本最優化。基于架構的可靠性分配受到許多因素的影響,主要因素包括組成架構的組件可靠性以及組件之間的聯系、架構組成的方式與基本結構這兩方面內容,要達到完善系統可靠性的目標則必須從這兩方面因素著手,提高架構組件的可靠性、組件之間的關系等,此外還應該考慮到可靠性成本問題,結合各組件可靠性的成本函數,通過改變組件關系,使得基于架構的系統可靠性預估成本最小化。
2 基于架構的軟件可靠性分配模型及優化
在對基于架構的軟件可靠性分配模型的相關定義加以闡述之后,下面筆者再對可靠性模型及優化以函數的形式加以表現。從上文中了解到了可靠性分配模型的優化則不僅涉及對各部件的可靠性優化,更應該考慮到軟件可靠性成本問題。在可靠性模型優化中達到軟件系統的開發成本最小化是指的在滿足系統的可靠性基礎前提下,著眼于開發成本的最優化問題來尋找最佳的可靠性分配方案。
基于成本最優化的軟件可靠性模型,在假設成本投入與軟件出錯率成絕對反比的基礎上,可以函數關系的模式表示為:
在上面這個函數式中,r表示的軟件的可靠性;C是軟件開發的成本;其他兩個參數分別是可靠性成本系數以及軟件的成本基值。根據上式,不難看出軟件的可靠性和成本之間的關系,一個軟件要達到百分之百的可靠必須投入大量的成本。
軟件可靠性的分配模型與可靠性的成本模型不同,對于一個由n個組件組成的軟件系統,軟件可靠性模型一般表示為:
在這個函數式中,設定系統的可靠性目標是Robj,系統可靠性r與各個組件可靠性的關系為F(r1,r2...),C為預期的開發成本。
基于上述軟件可靠性成本模型構建,提出相應的動態算法,對由n個組件組成的軟件系統來說,提高其可靠性則必須提高開發成本,而在控制成本的前提下,為了達到系統的可靠性最優化,則必須優化各組件的可靠性,具體算法如圖1。
So是系統可靠性分配結果,也就是各組件的可靠性;Ro表示的對應系統的可靠性,而Co則是預期的開發成本。要保證這組算法的正確性則應該確保在這個系統中一個組件的可靠性降低會帶動整個系統的可靠性相應降低以及系統開發成本的減少,在這兩個前提成立的基礎上那么步驟5中的第4部便是對最佳組件的選擇,從而d達到整個軟件系統可靠性最優化的目的。
3 結語
基于軟件架構的可靠性由組成構架的各軟件系統的可靠性決定,軟件系統可靠性的提高伴隨著軟件開發成本的增加,本文的算法論述建立在保證軟件可靠性的前提下,以構架各部分組件為對象,降低開發成本,從而選擇出可靠性最優的架構組合,提高軟件系統的可靠性,滿足計算機技術發展的要求。
參考文獻
[1]陳未如,李可明.基于架構的軟件可靠性分配模型及優化研究[J].計算機系統應用,2009,18(4):92-95.
[2]黃寧,陳未如,石帥等.一種基于動態規劃的軟件可靠性分配方法[J].計算機應用與軟件,2011,28(3):119-120.
[3]陳未如,石帥,黃寧等.基于軟件架構的可靠性分配算法[J].計算機工程與設計,2010,31(4):706-708.
[4]楊俊茹,張麗麗,張道忠等.基于架構的軟件可靠性研究現狀及發展趨勢[J].煤礦機械,2012,33(6):21-23.
[5]楊春暉,熊婧,李冬等.基于體系架構的軟件可靠性測試時間分配模型[C].//2010中國電子學會可靠性分會第十五屆可靠性學術年會論文集,2010:58-63.
作者單位
江蘇蘇源高科技有限公司 江蘇省南京市 210008