dfd圖, er圖, process(流程圖)
例如:請根據下列需求用dfd方法開發“某電子産品租借管理系統”的資料流圖 ?
1) 出租産品:vcd , 錄像帶 ,dvd
2) 系統功能需求:要求系統具有客戶管理,産品庫存管理,租借管理,統計功能;客戶管理要求完成店員注冊,身份認證( 認證級别 ) :普通從業人員和經理
增,删,改 客戶資訊,查詢客戶租借資訊等。産品庫存管理:要求根據産品庫存進貨,完成産品資料的 增,删,改 及查詢。租借管理:要求完成品查詢。
答:首先資料流圖( dfd ) 采取分層處理,第一層一般是 who , system , result , 然後 細分 system .
第一層資料流圖 :
總結:
資料流圖從資料傳遞和加工的角度,以圖形的方式刻畫資料流從輸入到輸出的移動變換過程。
1.一個加工的輸出資料流不應與輸入資料流同名,即使它們的組成成分相同。
2.保持資料守恒。也就是說,一個加工所有輸出資料流中的資料必須能從該加工的輸入資料流 中直接獲得,或者說是通過該加工能産生的資料。
3.每個加工必須既有輸入資料流,又有輸出資料流。
4.所有的資料流必須以一個外部實體開始,并以一個外部實體結束。
5.外部實體之間不應該存在資料流。
資料流圖的畫法:
1.确定系統的輸入輸出
2.由外向裡畫系統的頂層資料流圖
3.自頂向下逐層分解, 繪出分層資料流圖
注意事項。
①命名。不論資料流、資料存儲還是加工,合适的命名使人們易于了解其含義。
②畫資料流而不是控制流。資料流反映系統“做什麼”,不反映“如何做”,是以箭頭上的資料流名稱隻能是名詞或名詞短語,整個圖中不反映加工的執行順序。
③一般不畫物質流。資料流反映能用計算機處理的資料,并不是實物,是以對目标系統的資料流圖一般不要畫物質流。
④每個加工至少有一個輸入資料流和一個輸出資料流,反映出此加工資料的來源與加工的結果。
⑤編号。如果一張資料流圖中的某個加工分解成另一張資料流圖時,則上層圖為父圖,直接下層圖為子圖。子圖及其所有的加工都應編号。
⑥父圖與子圖的平衡。子圖的輸入輸出資料流同父圖相應加工的輸入輸出資料流必須一緻,此即父圖與子圖的平衡。
⑦局部資料存儲。當某層資料流圖中的資料存儲不是父圖中相應加工的外部接口,而隻是本圖中某些加工之間的資料接口,則稱這些資料存儲為局部資料存儲。
⑧提高資料流圖的易懂性。注意合理分解,要把一個加工分解成幾個功能相對獨立的子加工,這樣可以減少加工之間輸入、輸出資料流的數目,增加資料流圖的可了解性。
模組化方法:
1. 準備 ( 包括business 邏輯分析, 結合 dfd 圖 , 收集相關資料資訊 )
2. 建立實體集 ( 分析現實情況 , 建立實體 )
3. 建立聯系 ( 聯系矩陣 )
實體a
實體b
實體c
null
x
上圖中, 實體c與實體c之間也存在關系 , 即自己跟自己存在關系 , 例如以前狸子中的 employees這個table , 因為含有 manager的資訊, 是以employees就包含這種關系.
4. 根據聯系矩陣等等, 畫出圖形
注意:定義的實體是否滿足範式要求等等,聯系中是否存在m:n的情況,進行必要的修改(比如另外增加實體來儲存這層關系),等等。
模組化工具很多:例如 power designer .
根據具體的 business logic 繪制流程圖。