第6章 需求分析與建模最佳實踐

2021-05-25 05:43:16 字數 1190 閱讀 8873

軟體需求分析是軟體需求工程中最為核心的工作,而需求建模則是需求分析的主要手段。需求建模有很多任務具,到底怎麼有效地應用到需求分析過程中也是令人感到難以掌握的東西,本章為讀者勾勒出需求分析的階段與任務,指出如何選擇合適的建模工具,以及在什麼時機、如何應用這些建模工具。

6.1需求分析與建模的藥點與誤區分析

6.1.1需求分析到底做什麼

需求分析的任務並不是分析系統如何實現用的需求,這種認識是對需求分析最常見的誤解。需求分析實際上是業務分析,也就是選擇一種業務導向的線索將零散的需求串起來,形成乙個體系完整、內容清晰的框架,以及指導後續的設計、開發工作。

如果要更具體地描述需求分析工作的任務,筆者會將其歸納成三個詞:分解、提煉、消除矛盾,連成一句話就是:

<-需求分析就是先分解,再提煉,在這個過程中消除矛盾。 >

1.分解

分解是人類控制複雜性、認識複雜事物的最佳實踐,不管是採用結構化分析方式還是採用物件導向分析方法,分解都是必然要採用的手段。只不過,現代需求工程理論更建議採用業務導向的分解,而非傳統的系統導向的分解。

(1)業務流程為主線索的分解結構

(2)程式結構為主線索的分解結構

(3)基於場景的分解結構

(4)基於資料的分解結構

小結:選擇了乙個合適的分解結構之後,就可以把需求規格說明書的大綱確定下來,知道應該捕獲什麼資訊;因此當資訊捕獲回來後,需求分析的任務就是將其填充到相應的級別上,並不斷驗證是否已經填充完成。

2.提煉

分解是一種自頂向下的方法,當你按任何一種線索進行分解時,就會破壞其他線索的完整性。例如,如果以」事「為線索,那麼會發現資料需求分解後就會出現相互交疊的情況,也就是在多個業務事件中都涉及相同的類。

當出現這樣的現象時就會阻礙需求分析人員建立全面理解,因此我們還需要採用自低向上的方法進行提煉。例如將每個業務事件中的類進行提煉,抽取出共同的部分,建立針對整個系統的全域性領域模型。

3.消除矛盾

軟體建模 第4章 需求分析

需求分析實現的目標 將軟體使用者對於軟體的一系列意圖 想法轉變為軟體開發人員所需要的有關軟體的技術規格 需求分析的步驟 1.需求獲取 需求類別 使用者需求 功能需求 非功能性需求 需求獲取的方式 訪談使用者 開座談會 問卷調查 跟班作業 收集使用者台賬資料 通過原型完善使用者需求 2.需求建模和細化...

需求分析 12章 過程建模

12.1概述 過程建模使用的主要技術 12.2 資料流圖 1.基本模型元素 4種 外部實體 過程 資料流 資料儲存 過程資料流 資料儲存 2.規則 3.分層結構 有時資料流程圖過於複雜,所以分而治之,依據過程的功能分解結構,建立層次式的資料流程圖描述 在分層結構中定義了3個層次的資料流程圖 上下文圖...

第4章 需求分析

標籤 軟體需求工程 軟體需求工程 毋國慶 第二版 個人筆記 拋棄型原型 指在原型達到預期目的後將其拋棄 快速,粗略 進化型原型 是在需求清楚定義的情況下,以漸增式方式構建原型,並使原型最終能成為軟體產品的一部分,一開始就必須編制具有較好健壯性和高質量的 優先順序命名 含義高 中 低 乙個關鍵任務的需...