• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • 試論軟件的可靠性及其保證(2)

    發表于:2013-07-15來源:ulm.org.cn作者:不詳點擊數: 標簽:可靠性
    軟件開發方法對軟件的可靠性也有重要影響。 目前的軟件開發方法主要有Parnas方法、Yourdon方法、面向數據結構的Jackson方法和Warnier方法、PSL/PSA方法、原型

      軟件開發方法對軟件的可靠性也有重要影響。

      目前的軟件開發方法主要有Parnas方法、Yourdon方法、面向數據結構的Jackson方法和Warnier方法、PSL/PSA方法、原型化方法、面向對象方法、可視化方法、ICASE方法、瑞理開發方法等,其他還有BSP方法、CSF方法等。這里特別要提一下的是Parnas方法。

      Parnas方法是最早的軟件開發方法,是Parnas 在1972年提出來的,基本思想是在概要設計時預先估計未來可能發生變化,提出了信息隱藏的原則以提高軟件的可靠性和可維護性。

      在設計中要求先列出將來可能要變化的因素,在劃分模塊時將一些可能發生變化的因素隱含在某個模塊的內部,使其他模塊與此無關,這樣就提高了軟件的可維護性,避免了錯誤的蔓延,也就提高了軟件的可靠性。還提出了提高可靠性的措施:

      (1)考慮到硬件有可能出故障,接近硬件的模塊要對硬件行為進行檢查,及時發現錯誤。

      (2)考慮到操作人員有可能失誤,輸入模塊對輸入數據進行合法性檢查,是否合法、越權,及時糾錯。

      (3)考慮到軟件本身有可能失誤,加強模塊間檢查,防止錯誤蔓延。

      對瑞理方法可能許多人還不熟悉,這里簡要介紹一下。

      瑞理(Rational)模式是美國瑞理軟件工程公司發展出來的,其模式是:

      面向對象;

      螺旋式上升;

      管理與控制;

      高度自動化;

      以管理觀點和技術觀點把軟件生命周期劃分為起始、規劃、建構、轉移、進化五個階段,也可把這五個階段歸并為研究時期(起始和規劃)和生產時期(建構和轉移),最后是維護時期(進化),特別適合對高風險部分及變動需求的處理。

      在以上的眾多方法中,可視化方法主要用于與圖形有關的應用,目前的可視化開發工具只能提供用戶界面的可視化開發,對一些不需要復雜圖形界面的應用不必使用這種方法;ICASE 技術還沒有完全成熟,所以可視在方法和ICASE方法最多只能用作輔助方法。面向數據結構的方法、PSL/PSA方法及原型化方法只適合于中小型系統的開發。

      面向對象的方法便于軟件復雜性控制,有利于生產率的提高,符合人類的思維習慣,能自然地表達現實世界的實體和問題,具有一種自然的模型化能力,達到從問題空間到解空間的較為直接自然的映射。

      在面向對象的方法中,由于大量使用具有高可靠性的庫,其可靠性也就有了保證,用面向對象的方法也利于實現軟件重用。

      所以建議采用面向對象的方法,借鑒Parnas和瑞理模式的思想,在開發過程中再結合使用其他方法,吸取其它方法的優點。

      3.軟件重用

      最大限度地重用現有的成熟軟件,不僅能縮短開發周期,提高開發效率,也能提高軟件的可維護性和可靠性。因為現有的成熟軟件,已經過嚴格的運行檢測,大量的錯誤已在開發、運行和維護過程中排除,應該是比較可靠的。在項目規劃開始階段就要把軟件重用列入工作中不可缺少的一部分,作為提高可靠性的一種必要手段。

      軟件重用不僅僅是指軟件本身,也可以是軟件的開發思想方法、文檔,甚至環境、數據等,包括三個方面內容的重用:

      (1)開發過程重用,指開發規范、各種開發方法、工具和標準等。

      (2)軟件構件重用,指文檔、程序和數據等。

      (3)知識重用,如相關領域專業知識的重用。

      一般用的比較多的是軟件構件重用。

      軟件重用的過程如下:候選,選擇,資格,分類和存儲,查找和檢索。在選擇可重用構件時,一定要有嚴格的選擇標準,可重用的構件必須是經過嚴格測試的、甚至是經過可靠性和正確性證明的構件,應模塊化(實現單一、的完整的功能)、結構清晰(可讀、可理解、規模適當),且有高度可適應性。

      4.使用開發管理工具

      開發一個大的軟件系統,離不開開發管理工具,作為一個項目管理員,僅僅靠人來管理是不夠的,需要有開發管理工具來輔助解決開發過程中遇到的各種各樣的問題,以提高開發效率和產品質量。

      如Intersolv公司的PVCS軟件開發管理工具,在美國市場占有率已超過70%,使用PVCS可以帶來不少好處:規范開發過程,縮短開發周期,減少開發成本,降低項目投資風險;自動創造完整的文檔,便于軟件維護;管理軟件多重版本;管理和追蹤開發過程中危及軟件質量和影響開發周期的缺陷和變化,便于軟件重用,避免數據丟失,也便于開發人員的交流,對提高軟件可靠性,保證質量有很大作用。

      在我國,開發管理工具并沒有得到有效地使用,許多軟件公司還停留在人工管理階段,所開發的軟件質量不會很高。

      人的管理比較困難,在保證開發人員素質的同時,要保持人員的穩定性,盡可能避免人員的經常流動。人員流動影響了軟件的質量,工作連續性難保證,繼承者不可能對情況了解很清楚等,也可能影響工作進程等。PVCS也提供了適當的人員管理方法。

      5.加強測試

      軟件開發前期各階段完成之后,為進一步提高可靠性,只有通過加強測試來實現了。為最大限度地除去軟件中的差錯,改進軟件的可靠性,就要對軟件進行完備測試。要對一個大的軟件系統進行完備測試是不可能的,所以要確定一個最小測試數和最大測試數,前者是技術性的決策,后者管理性的決策,在實際過程中要確定一個測試數量的下界??偟膩碚f,要在可能的情況下,進行盡可能完備的測試。

      誰來做測試呢?一般說來,用戶不大可能來進行模塊測試,模塊測試應該由最初編寫代碼的程序員來進行,要在他們之間交換程序進行模塊測試,自己設計的程序自己測試一般都達不到好的效果。

      測試前要確定測試標準、規范,測試過程中要建立完整的測試文檔,把軟件置于配置控制下,用形式化的步驟去改變它,保證任何錯誤及對錯誤的動作都能及時歸檔。

      測試規范包括以下三類文檔:

      (1)測試設計規范:詳細描述測試方法,規定該設計及其有關測試所包括的特性。還應規定完成測試所需的測試用例和測試規程,規定特性的通過/失敗判定準則。

      (2)測試用例規范:列出用于輸入的具體值及預期輸出結果。規定在使用具體測試用例時對測試規程的各種限制。

    原文轉自:http://www.uml.org.cn/rjzl/200612011.htm

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>