關鍵字:需求分析 軟件可靠性
不準使用需求說明語言中不曾定義的符號,保證所有語句均滿足語法規則。實踐表明,錯誤的預防、檢測和更正是語法質量保證的三種基本手段。檢測錯誤是通過模型的構造發現錯誤;預防錯誤是拒絕在模型中加入錯誤的語句;更正錯誤是用正確的語句替換錯誤的語句。前兩者可以通過需求說明語言的形式預防來完成,后者則較難自動化。
語義質量是需求模型有效性和完備性的保證。有效性要求模型中的所有語句都正確且與用戶需求相關;完備性要求模型包含領域中關于問題的所有相關語句。需求模型與領域越相似,其語義質量越高。但對實際問題,不可能達到徹底的有效性和完備性,因而較為實際的目標是在約定的可信度下的有效性和完備性。多數提高模型質量的方法都依賴于人們對模型具體內容的理解,即語用手段。一致性檢測往往可自動完成,而不必真正理解給出的模型。
語用質量影響人們對表達同一意義的多種表達方式的選擇,其目標是可理解性。它不僅要使需求模型能被理解,而且要確保開發人員理解該模型。與語義質量目標一樣,在可理解性中也需要引入可信度。任何有助于理解需求模型的手段都可以納入達到語用目標的有益途徑 。
例如,各種逐項閱讀、以求理解的模型檢查,以圖表代替文字的模型可視化,利用動畫表現系統動態特征的模型動畫顯示,根據統計數據預測模型所刻劃軟件行為特征的系統模型,基于解釋的模型查閱手段,基于過濾(甚至包括語言翻譯)的閱讀范圍控制等。
3.軟件需求分析中的可靠性分析、設計與管理
在軟件需求分析過程中,可靠性任務包含四方面內容:一是對可靠性需求的獲取、分析二是確定擬開發軟件的可靠性目標;三是軟件需求分析過程中的可靠性設計;四是為實現可靠性目標而采取的可靠性管理。在需求分析活動中,將這四方面的可靠性任務以用戶和軟件開發人員共同熟悉的軟件可靠性度量加以反映。
用戶需求中有時已經包含了用戶對可靠性的要求,這樣,需求分析人員只需將其可靠性要求和其它要求一起進行細化,并以規定的要求和形式形成能綜合反映可靠性要求的規格說明即可。不過,大部分用戶對可靠性提不出明確的要求、甚至沒有要求,這就需要根據用戶對擬開發軟件的功能、性能等要求,來確定用戶對可靠性的要求和可靠性目標,并將其隨軟件功能的分解而分解。
在軟件需求分析過程中,我們可以很方便地列舉出影響軟件需求分析可靠性的一些常見的錯誤和缺陷,并可以估計需求分析錯誤相對這些錯誤和缺陷的分布。
為了進一步開展軟件需求分析中的可靠性設計,可以用需求分析中的錯誤或缺陷度量來對需求分析的有關可靠性指標進行度量。通過度量,明確主要的軟件錯誤分布及對軟件需求分析可靠性的影響,以及軟件需求分析階段的錯誤或缺陷指標后,我們就可以對相關的錯誤或缺陷進行控制。
需求分析中的錯誤或缺陷,主要殘存于需求規格說明中。對此,可通過仔細的復核、審查與評審來降低。當然,分析人員素質的提高,以及分析工具、方法和說明語言的選擇都相當重要。
軟件需求分析階段中的可靠性問題,同樣嚴重受制于其復雜性。因此,有效地控制其復雜性(包括結構的、功能分解的、總體的、規格說明的復雜性),是確保需求分析階段可靠性的有效措施。
為了能有效地避免需求分析中的人為因素,需求重用在很多時候是一種非常有效的方法。它包括模型、方法、概念、工具的重用,以及需求規格說明的片段、甚至完全的重用。
因為軟件需求分析是一項純智力活動,所以需要在這一過程中、尤其在需求分析的后期,進行有效的評審和驗證。它們是發現需求分析錯誤和缺陷的最有效的辦法。當然,它們也只能發現需求分析中的錯誤和缺陷,并不能保證需求分析沒有錯誤和缺陷。此時,采用基于嚴格數學正確性證明和公理證明的非形式化正確性證明方法,會收到意想不到的效果。
文章來源于領測軟件測試網 http://www.kjueaiud.com/