第4章需求分析(結構化方法)
需求分析是指開發人員通過細緻的調查分析,詳細準确和完整的了解,使用者需要什麼樣的軟體,将使用者非形式的需求陳述轉化為完整的需求定義,再将需求定義轉換到相應的需求規格說明的過程,
4.1需求分析的特點,
- 問題的複雜性,
- 客戶和開發者之間的交流障礙,
- 客戶需求的易變,
- 客戶描述的不一緻性和完整性,
4.2需求收集,
-
需求收集的内容,
需求收集需要收集以下幾個方面的内容,資料需求,功能需求,性能需求,運作需求,其他方面的需求,
-
需求收集的方式,
訪談,由開發人員向客戶提出問題,分為程式化的訪談和非程式化的訪談,
問卷調查,場景使用,使用者資料收集等等,
4.3資料流模組化,
資料流模組化的方法是一種結構化的分析方法,自頂向下逐漸分解的定義使用者系統的需求,
-
資料流圖
資料流圖的組成部分有4種,
資料流,在資料流中用箭頭表示,
加工,在資料流圖中用一個圓圈或圓角的方框表示,
資料存儲,用一個開口的矩形或雙劃線表示,
資料的原點和終點,用正方形或立方體來表示,
拓展符号,*(與),+(或),異或
-
分層資料流圖,
存資料流圖有利于控制問題的複雜度,有利于描述大型系統,有利于使用者的了解,
頂層資料流圖
頂層資料流圖隻有一張,主要描述整個系統的作用範圍,說明系統的邊界,反映系統和外部環境之間的關系,
底層資料流圖
底層資料流圖有一些不必再進行分解的加工組成,
中間層資料流圖
中間層資料流圖是通過分解高層加工得到的,中還有一些加工,需要進一步分解,
-
資料詞典,
資料詞典是關于資料資訊的集合,是對資料流圖中的每個資料,包括資料流和資料存儲,進行嚴格定義的場所,
-
加工說明,
加工說明是對資料流圖的基本加工進行說明,可以采用以下的方法,Ipo圖,結構化語言,判定表,判定數等等,
IDEF0功能模組化,
-
Idef0圖
Idef0圖的主要元素是盒子以及箭頭,盒子代表系統的功能,箭頭表示系統處理的資料限制,
Idef零功能模組化方法要求一張Idef0圖中的盒子最多隻能有6個,子圖還要求不少于三個,盒子至少有一個控制箭頭,箭頭隻能水準或豎直
Idef0圖中的箭頭表示了系統的資料限制,箭頭又可分為,分支箭頭,彙合箭頭,通道箭頭,雙向箭頭,虛線箭頭,選擇箭頭,
通知箭頭,表示多個活動需要同一種資料或一種資料的不同成分,
彙合箭頭,表示多個活動産生同一種資料,
通道箭頭,表示箭頭描述的資料限制不出現在子圖或父圖中,
雙向箭頭,表示兩個盒子的活動互為輸入或互為控制,且将先觸發的盒子放在較高的位置上,
虛線箭頭,表示活動觸發的先後順序,
選擇箭頭,表示資料的選擇關系,
注意,一條邊線上最多有4個箭頭,
-
分層Idef0,
為了明确分解過程中資料和圖形間的關系,采用Icom碼和節點号來進行辨別,
Icom分别表示,來自父盒子的輸入,控制,輸出,機制邊線,并在字母之後跟上資料限制在父盒子中的數字順序号,
節點号,節點号用來表明圖形或盒子在分層Idef0圖中的位置,
-
Idef0圖的模組化步驟,
确定模組化的範圍,觀點及目的;建立系統的内外關系圖;建立a0圖的一系列子圖;書寫文字說明。
4.5Idef1x資料模組化,
Idefex方法是Idefe方法的拓展版本,Idef1用來表示系統的資訊結構和語義,Idefex方法增強了圖形的表達能力,豐富了語義和簡化了開發過程,
-
實體,
實體是具有相同屬性或特征的現實或抽象事物的集合,這個集合中的一個元素便稱為實體的一個執行個體,
在一張Idefex圖中,一個實體隻能在圖中出現一次,
實體分為獨立實體和從屬實體,獨立實體用矩形表示,從屬實體用圓角矩形表示,
-
聯系,
Idef1x圖中的聯系分為确定聯系和非确定聯系,确定聯系隻1對1或一對多的聯系,非确定聯系隻多對多的聯系,确定聯系又可分為連接配接聯系和分類聯系,連接配接聯系,有可标定聯系和非标定聯系,分類聯系,有完全分類聯系和不完全分類聯系,
可标定聯系用實線加圓圈表示,非标定聯系用虛線加圓圈表示,
完全分類聯系,由圓圈加兩根橫杠表示,不完全分類聯系,由圓圈加一根橫杠表示,
-
屬性,
屬性表示現實或抽象的事物的一種特性或特質,類似于uml圖中的類