軟體工程期末考試複習(三) 需求分析的任務分析建模與規格說明

  • 2019 年 10 月 5 日
  • 筆記

需求分析

需求分析的任務

1、通常對軟體系統有下述幾個方面的綜合要求:

2、與用戶溝通獲取需求的方法訪談

  1. 訪談。有兩種基本形式,分別是正式的和非正式的訪談。
  2. 面向數據流自頂向下求精。結構化分析方法就是面向數據流自頂向下逐步求精進行需求分析的方法。通過可行性研究已經得出了目標系統的高層數據流圖,需求分析的目標之一就是把數據流和數據存儲定義到元素級。
  3. 簡易的應用規格說明技術
  4. 快速建立軟體原型

3、儘管目前有許多不同的用於需求分析的結構化分析方法,但是,所有這些分析方法都遵守下述準則:

  1. 必須理解並描述問題的資訊域,根據這條準則應該建立數據模型。
  2. 必須定義軟體應完成的功能,這條準則要求建立功能模型。
  3. 必須描述作為外部事件結果的軟體行為,這條準則要求建立行為模型
  4. 必須對描述資訊、功能和行為的模型進行分解,用層次的方式展示細節。

分析建模與規格說明

1、軟體需求規格說明 軟體需求規格說明是需求分析階段得出的最主要的文檔。 通常用自然語言完整、準確、具體地描述系統的數據要求、功能需求、性能需求、可靠性和可用性要求、出錯處理需求、介面需求、約束、逆向需求以及將來可能提出的要求。

2、驗證軟體需求,一般從四個方面進行驗證。

  1. 驗證需求的一致性。當需求分析的結果是用自然語言書寫的時候,除了靠人工技術審查驗證軟體系統規格說明書的正確性之外,目前還沒有其他更好的「測試」方法。但是,這種非形式化的規格說明書是難於驗證的,特別在目標系統規模龐大、規格說明書篇幅很長的時候,人工審查的效果是沒有保證的,冗餘、遺漏和不一致等問題可能沒被發現而繼續保留下來,以致軟體開發工作不能在正確的基礎上順利進行。為了克服上述困難,人們提出了形式化的描述軟體需求的方法。
  2. 驗證需求的現實性。為了驗證需求的現實性,分析員應該參照以往開發類似系統的經驗,分析用現有的軟、硬體技術實現目標系統的可能性。必要的時候應該採用模擬或性能模擬技術,輔助分析軟體需求規格說明書的現實性。
  3. 驗證需求的完整性和有效性。只有目標系統的用戶才真正知道軟體需求規格說明書是否完整、準確地描述了他們的需求。因此,檢驗需求的完整性,特別是證明系統確實滿足用戶的實際需要,只有在用戶的密切合作下才能完成。然而許多用戶並不能清楚地認識到他們的需要(特別在要開發的系統是全新的,以前沒有使用類似系統的經驗時,情況更是如此),不能有效地比較陳述需求的語句和實際需要的功能。只有當他們有某種工作著的軟體系統可以實際使用和評價時,才能完整確切地提出他們的需要。