四、結束語
軟件需求分析工作主要解決需求分析的指導原則、方法框架和操作啟示。形式化需求分析技術在軟件需求分析中的研究與應用,推動了軟件需求分析自動化的進程,使軟件需求的獲取與分析更加嚴密、精確。
目前,基于結構化的非形式化需求分析方法是一種使用較為廣泛的需求分析技術,是一種單純的自頂向下、逐步求精的功能分解方法,具有較好的分割、抽象能力,為開發人員找到了一種中間語言,軟件人員易于掌握。但它難以直接應用領域術語,這無疑為其更廣泛的應用設置了障礙。
隨著面向對象軟件開發技術的成熟與廣泛應用,人們自然也研究了面向對象軟件的形式化分析。面向對象的需求分析強調系統是對現實的模擬,通過對象、狀態、服務及對象之間的交互,來同時刻劃軟件系統的動態、靜態特征。在形式化的需求分析規格說明中,Z語言是一個成功的范例。用Z語言進行描述時,通常把系統看成一個狀態機。在這種意義下,即可用Z語言描述面向對象的系統。但Z語言未提供描述面向對象系統的足夠機制。因此,人們又在Z語言的基礎上進行了改進和擴充,如Object-Z和Z++。此外,人們還開發了基于代數規格描述技術、面向對象分析的形式化描述語言,如OBJ-3和COLD-K等。
盡管人們已經認識到了需求工程在軟件產品開發中的重要性,并
逐步認識到需求規格說明是軟件開發的基石。但無論從技術、支持環境,還是從分析工具與方法上來看,軟件需求分析所獲得的支持都非常有限。目前,它面臨如下困難:
應用領域與用戶問題的多樣性,以及需求變更的不可預測性。
用戶要求的實效性、多變性、不確定性與模糊性。
用戶需求的內在矛盾及其潛在沖突。
自然概念中存在的本質矛盾。
用戶需求的獲取過程與描述形式的非形式特征,以及規范描述的困難性。
需求分析方法論和分析工具的缺乏,及其應用范圍的局限性。
對軟件需求分析認識不足、重視不夠。
目前,軟件需求分析的重要性正日益引起人們的普遍關注和重視,這方面的研究正在大力開展。其中,人工智能中關于知識表示、知識獲取與知識處理的研究,似乎對進一步推動需求分析研究帶來了希望,我們期盼著它的成功。
文章來源于領測軟件測試網 http://www.kjueaiud.com/