天天看點

需求分析

一、概念和意義

以文檔形式提供關于目标系統功能和性能等需求的完整描述。

需求分析結果以模型形式展示:如DFD圖,IDEF0圖等,稱為功能模型。

軟體開發的依據:功能模型和軟體需求規格說明書。

二、需求擷取方法

面談、實地觀察、問卷調查、查閱資料。

三、需求分析過程

1.辨別問題

了解現行系統的業務流程,發現存在的問題和需要改進的方面,還要注意系統的人機界面。

2.建立需求模型

借助模型和抽象方法把複雜事物變簡單,便于認識和分析複雜問題。

3.描述需求

對待開發系統從宏觀和整體上的一個完整性描述。

主要由需求模型(系統功能模型,展現業務流程)和軟體需求說明書組成。

需求文檔是需求分析工作完成的标志,力求論述全面、結構清晰、内容準确、描述清楚。

4.确認需求

證明需求說明書描述的内容是可惡所期望和需要的。

四、需求分析方法

1.概述

主要有DFD(data flow diagram)和IDEF0(結構化分析與模組化方法),優點:不過早地陷入細節、從宏觀和整體入手分析、圖形化、不涉及太多技術術語。

UML用例模組化(面向對象分析方法)

2.DFD需求模組化方法

核心:資料流,抽象出主要業務流程,分析其輸入,初始資料,從哪裡來,流向何處,經過什麼加工,變為什麼資料,最終結果。

基本元素:

資料流

需求分析

處理(或圓)

一個處理隻做一件事情。

需求分析

資料存儲

靜态存儲,可代表檔案、資料庫的元素等

需求分析

外部項(實體)

人、物或其他軟體系統

(或正方形)

需求分析

DFD圖:

自頂向下,逐漸細化的結構化分析方法表示目标系統。

直到每項活動都是具體的、可操作性的、用一個程式子產品可以實作其功能為止。

模組化過程:(對功能進行模組化)

明确目标,确定系統範圍:明确系統需求,完整準确一緻地描述出來。

分為三層

建立頂層DFD圖:(頂層DFD圖中包含的處理隻有一個)

描述主要功能

建構第一層DFD分解圖:

将頂層圖中的處理分解成多個更細化的處理。

開發DFD層次結構圖:

對第一層分解圖中的每個處理框進行進一步分解,在分解圖中要列出所有處理及相關的資訊。

大連工業大學——《軟體工程導論》

DFD圖示例:

 兩個表 表示“資料存儲”。

上一層是下一層的抽象,下一層是上一層的求精和細化。

IDEF0:

矩形框:代表功能活動

箭頭:資料

自頂向下,逐漸細化

機制:計算機系統、人或組織

控制:執行的事件或限制條件

功能活動執行個體:

需求分析

DFD和IDEF0比較:

DFD強調流或順序,IDEF0強調資料限制。

IDEF0的箭頭語義更加豐富,不僅能夠表示資料流,還可以表示資料流和限制。

IDEF0箭頭說明可以在文檔中,不必表示在圖中,适合于大型複雜系統的需求模組化。