軟設考試筆記--數據流圖

軟設考試筆記–數據流圖

意義:
軟件設計師不僅需要具備高水平的編程能力,而且要熟練掌握軟件設計的方法和技術,具備一定的軟件設計能力。
對於一些諸如管理系統的軟件來說,往往要處理一定的數據流。所以數據流圖的設計顯得非常關鍵。
其中軟設的考綱中對軟件設計師的要求中有提到:
理解系統需求說明
指定詳細的工作流程和數據流
能夠使用面向數據流的模型和麪向對象模型描述軟件的功能需求
更夠根據具體問題,繪製相應的數據流,定義數據字典、採用決策樹或決策表的方式描述加工邏輯模型。

軟件是圍繞數據處理而存在的,所以這部分內容,在具體的項目開發中也非常有價值。

考點內容:

數據流圖中的基本概念

一、數據流圖(DFD):
它從數據傳遞和加工角度,以圖形方式來表達系統的邏輯功能、數據在系統內部的邏輯流向和邏輯變換過程,是結構化系統分析方法的主要表達工具及用於表示軟件模型的一種圖示方法。
二、數據流圖的組成:
1 數據流圖的構成
(1)數據流圖使用的符號
DFD由四種基本符號組成。如下圖所示。
在這裏插入圖片描述

(2)數據流
數據流(Data Flow)由一個或一組確定的數據組成。
①數據流名應能直觀地反映數據流的含義。
②數據流的流向
③數據流可以同名,也可以有相同的數據結構,但必須有不同的數據或具有不同的含義。
④兩個符號(加工、外部項、數據存儲)之間可以有多個數據流存在,DFD並不表明它們之間的任何關係,諸如次序、主次等。
⑤避免錯誤的數據流命名方法
(3)加工
加工又稱處理亦稱變換,它表示對數據流的操作。
加工的符號分成上、下兩部分,從上到下分別是標識部分和功能描述部分。
標識部分用於標註加工編號,加工編號應具有唯一性,以標識加工,以“P”開頭。
功能描述部分用來寫加工名。爲使DFD清晰易讀,加工名應簡單,能概括地說明對數據的加工行爲,其詳細描述在數據詞典中定義。
加工要逐層分解,以求得分解後的加工功能簡單、易於理解。
(4)數據存儲
數據存儲是用來存貯數據的。在分層DFD中,數據存儲一般僅屬於某一層或某幾層,因此又稱數據存儲爲局部文件。現對數據存儲符號說明如下:
①數據存儲名寫在開口的長方框內,應概要地說明文件中的主要數據。
②數據存儲上一定要有數據流。
③爲便於說明和管理,數據存儲亦應編號,編號寫在文件符號左端小方格中,以“D”開頭。
④爲避免DFD中出現交叉線,同一數據存儲可在多處畫出,可以用下圖所示符號表示數據存儲重複。
(5)外部項
源點和終點(又稱端點)是系統外的實體,稱作外部項。它們存在於環境之中,與系統有信息交流,從源點到系統的信息叫系統的輸入;從系統到終點的信息稱系統的輸出。同—個端點可以是人或其它系統。在DFD中引入源點和終點是爲了便於理解系統,所以不需要詳細描述它們。它們可有編號,以“S”開頭。
2 數據流圖的繪製步驟
(1)確定所開發的系統的外部項(外部實體),即系統的數據來源和去處。
(2)確定整個系統的輸出數據流和輸入數據流,把系統作爲一個加工環節,畫出關聯圖。
(3)確定系統的主要信息處理功能,按此將整個系統分解成幾個加工環節(子系統)確定每個加工的輸出與輸入數據流以及與這些加工有關的數據存儲。
(4)根據自頂向下,逐層分解的原則,對上層圖中全部或部分加工環節進行分解。
(5)重複步驟(4),直到逐層分解結束。
(6)對圖進行檢查和合理佈局,主要檢查分解是否恰當、徹底,DFD中各層是否有遺漏、重複、衝突之處,各層DFD及同層DFD之間關係是否爭取及命名、編號是否確切、合理等,對錯誤與不當之處進行修改。
(7)和用戶進行交流,在用戶完全理解數據圖的內容的基礎上徵求用戶的意見。
3 繪製數據流圖的主要原則
(1)明確系統界面。
(2)自頂向下逐層擴展。
(3)合理佈局。
(4)數據流圖繪製過程,就是系統的邏輯模型的形成過程,必須始終與用戶密切接觸,詳細討論,不斷修改,也要和其他系統建設者共同商討一求一致意見。
4 繪製數據流圖的注意事項
(1)關於自頂向下、逐層分解
(2)數據流必須通過加工
(3)數據存儲環節一般作爲兩個加工環節的界面來安排
(4)編號

三、數據流圖的分層
對於一個軟件系統,其數據流圖可能有許多層,每一層又有許多張圖。

頂層圖只有一張。
0層圖只有一張
子圖就是父圖中被分解的加工號

四 設計原則

(1)父圖與子圖的平衡原則

子圖的輸入輸出數據流同父圖相應加工的輸入輸出數據流必須一致,此即父圖與子圖的平衡。

(3)守恆加工原則

對同一個加工來說,輸入與輸出的名字必須不相同,即使它們的組成成分相同。
1.對於每個加工,必須既有輸入數據流,又有輸出數據流。
2.數據流與加工有關,且必須經過加工。

五、數據字典

數據字典是對數據流圖中出現的所有被命名的圖形元素在數據字典中作爲一個詞條加以定義,使每個圖形元素的名稱都有一個確切的解釋。

在數據字典中有4種類型的條目:
1、數據項條目:通常爲數據項的值類型,允許的取值範圍等
2、數據流條目:給出某個數據流的定義,列出該數據流的各組成數據項。
3、文件條目:對文件的定義,列出期組成的數據項
4、加工條目:對每個不能再分解的加工做說明,包括加工的激發條件,加工的邏輯,優先級等等。

考點分析:
主要根據數據平衡原則對數據流圖中的組成部分進行補充,修改。得分率應該普遍較高。

具體考點細節:
1、補充實體:
(1)人物角色:如客戶、管理員、主管、經理、老師、學生。
(2)組織機構:如銀行、供應商、募捐機構
3)外部系統:如銀行系統、工資系統、後臺數據庫(當要開發的是中間件時)

2、補充存儲:
存儲文字方面特徵“文件“表“庫“清單“檔案“

3、補充數據流:
(1)頂層圖與0層圖對比,是否頂層圖有,但0層圖沒有。或反之。
(2)檢查每個圖中的加工,是否存在只有入沒有出,或只有出沒有入,或根據輸入的數據無法產生對應的輸出的情況。
2、按題目說明與圖進行匹配
說明中的每一句,都能與圖中有對應關係,當把說明中的實體與數據流標識出來後,容易縮小對應範圍,找出紕漏。

4、補充加工名
可以把加工涉及到的數據流,在說明中標識出來,再在數據流名稱所在的句子中,找“動詞+名詞”:如生產報告,發出通知,批改作業,物流跟蹤,用戶管理等。

5、數據流圖中的改錯
錯誤的數據流名稱、錯誤的數據流的起點和終點、多餘的數據流等。。。。

**總結:**這部分考題實際上考察的是對數據流圖的理解上,這類題型規律性強,得分應該比較容易。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章