訂購(gòu)與考務(wù)系統(tǒng)數(shù)據(jù)流圖PPT:DFD分層繪制與避坑指南)
簡(jiǎn)介這是一份關(guān)于圖書(shū)訂購(gòu)與考務(wù)系統(tǒng)數(shù)據(jù)流圖設(shè)計(jì)的PPT教學(xué)資料適合軟件工程、系統(tǒng)分析與設(shè)計(jì)課程的學(xué)生以及需要繪制分層DFD的開(kāi)發(fā)者使用。內(nèi)容以考務(wù)處理系統(tǒng)為主線(xiàn)從頂層圖、0層圖到加工內(nèi)部子圖逐步拆解覆蓋報(bào)名單、成績(jī)清單、合格標(biāo)準(zhǔn)等數(shù)據(jù)流定義以及考試報(bào)名、統(tǒng)計(jì)成績(jī)等加工劃分同時(shí)給出圖書(shū)訂購(gòu)系統(tǒng)的DFD示例幫助理解源、宿、文件與數(shù)據(jù)流之間的關(guān)系。資源包僅含1個(gè)pptx文件共24頁(yè)大小263KB屬于輕量級(jí)課件資料目前已有1422人學(xué)習(xí)。讀者可快速掌握頂層DFD、0層圖與各層子圖的繪制方法、數(shù)據(jù)流與加工標(biāo)注規(guī)則以及如何用功能分解和業(yè)務(wù)處理流程識(shí)別加工、確定文件和邊界數(shù)據(jù)流適合備考或課程設(shè)計(jì)時(shí)對(duì)照參考。1. 圖書(shū)訂購(gòu)與考務(wù)系統(tǒng)數(shù)據(jù)流圖PPT不是畫(huà)流程是在劃系統(tǒng)邊界圖書(shū)訂購(gòu)與考務(wù)系統(tǒng)數(shù)據(jù)流圖PPT資料看著像是一套“畫(huà)圖加排版”的活兒實(shí)際上它解決的是兩個(gè)完全不同業(yè)務(wù)域放進(jìn)同一套系統(tǒng)后怎么把信息流向講清楚的問(wèn)題。數(shù)據(jù)流圖DFD跟業(yè)務(wù)流程圖最大的區(qū)別是它只關(guān)心“數(shù)據(jù)從哪來(lái)到哪去、經(jīng)過(guò)什么加工、落在哪個(gè)存儲(chǔ)”不關(guān)心誰(shuí)先點(diǎn)按鈕、誰(shuí)后彈窗口。很多人一上手就把它畫(huà)成業(yè)務(wù)時(shí)序圖這是最大的翻車(chē)點(diǎn)。這套資料適合三類(lèi)人做課程設(shè)計(jì)或畢業(yè)設(shè)計(jì)需要配套需求文檔的同學(xué)準(zhǔn)備系統(tǒng)答辯但被評(píng)審追問(wèn)數(shù)據(jù)流向的開(kāi)發(fā)以及要接手圖書(shū)訂購(gòu)或考務(wù)模塊卻看不懂老代碼的人。它的核心價(jià)值在于用分層DFD把兩個(gè)系統(tǒng)的邊界、外部交互、加工邏輯一次性理清再組織成能匯報(bào)的PPT。2. 上手DFD前先定規(guī)則四種符號(hào)、分層原則與命名約束數(shù)據(jù)流圖看似自由其實(shí)是一套紀(jì)律很強(qiáng)的建模語(yǔ)言。很多人畫(huà)到一半返工不是因?yàn)闃I(yè)務(wù)復(fù)雜而是因?yàn)橐婚_(kāi)始沒(méi)定符號(hào)規(guī)范、沒(méi)定分層粒度。圖書(shū)訂購(gòu)和考務(wù)系統(tǒng)放在一個(gè)PPT里等于兩張圖共用一套規(guī)則規(guī)則不定清楚后面每張圖都要改。2.1 數(shù)據(jù)流圖的四個(gè)符號(hào)與兩種流派怎么選數(shù)據(jù)流圖只有四種基本符號(hào)外部實(shí)體、加工、數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)流。外部實(shí)體用矩形表示是系統(tǒng)之外但與系統(tǒng)交換數(shù)據(jù)的角色加工用圓角矩形或圓形表示是對(duì)數(shù)據(jù)做的處理或轉(zhuǎn)換數(shù)據(jù)存儲(chǔ)用開(kāi)口矩形表示是數(shù)據(jù)的靜態(tài)落腳點(diǎn)數(shù)據(jù)流用帶箭頭的線(xiàn)表示方向就是數(shù)據(jù)的移動(dòng)方向。流派上常見(jiàn)兩套一套是 Yourdon/DeMarco 記號(hào)加工用圓存儲(chǔ)用雙橫線(xiàn)另一套是 Gane/Sarson 記號(hào)加工用圓角矩形存儲(chǔ)用開(kāi)口矩形。國(guó)內(nèi)教材和課程設(shè)計(jì)里后者更常見(jiàn)因?yàn)榉椒秸?huà)出來(lái)容易對(duì)齊而且能直接寫(xiě)文字。我一般建議統(tǒng)一用 Gane/Sarson 記號(hào)理由只有一個(gè)它在 PPT 縮略圖上比圓更適合中文排版文字不用繞圈排。定完流派還要定兩個(gè)全局約定第一數(shù)據(jù)流線(xiàn)上必須寫(xiě)名字名字必須是名詞短語(yǔ)比如“訂單信息”“到貨通知”不能寫(xiě)“發(fā)送”“處理”這種動(dòng)詞短語(yǔ)動(dòng)詞屬于加工不屬于數(shù)據(jù)流第二同一個(gè)名詞在全套 PPT 里只能表達(dá)同一個(gè)含義比如“訂單信息”一旦出現(xiàn)就不要在另一張圖里用“訂購(gòu)單”代替同一個(gè)東西。2.2 分層結(jié)構(gòu)頂層圖、0層圖、1層圖各放什么內(nèi)容DFD 的分層是它區(qū)別于流程圖的核心能力。頂層圖也叫上下文圖整張圖里只有一個(gè)加工代表整個(gè)圖書(shū)訂購(gòu)與考務(wù)系統(tǒng)外面圍著外部實(shí)體。這一層回答的問(wèn)題是“系統(tǒng)的邊界在哪里誰(shuí)在跟系統(tǒng)打交道”。0層圖把系統(tǒng)內(nèi)部按業(yè)務(wù)域拆成若干加工圖書(shū)訂購(gòu)和考務(wù)兩個(gè)模塊在這里分開(kāi)。1層圖則針對(duì) 0 層的某個(gè)加工繼續(xù)細(xì)化把它內(nèi)部的數(shù)據(jù)處理流程展開(kāi)。分層的核心原則是“平衡”父圖里的一條數(shù)據(jù)流必須在子圖里有對(duì)應(yīng)的入口或出口子圖里新增的數(shù)據(jù)流也必須能在父圖里找到來(lái)源。這句話(huà)聽(tīng)起來(lái)簡(jiǎn)單實(shí)操中九成的不一致問(wèn)題都出在這里。另一個(gè)原則是粒度的把控0層加工數(shù)量控制在 4 到 7 個(gè)超過(guò) 7 個(gè)說(shuō)明你把多個(gè)業(yè)務(wù)域塞進(jìn)了一張圖少于 3 個(gè)說(shuō)明你還沒(méi)拆到位。2.3 加工編號(hào)體系與數(shù)據(jù)字典的同步策略加工編號(hào)是分層圖的定位系統(tǒng)沒(méi)有編號(hào)評(píng)審問(wèn)你“你那個(gè)訂單處理內(nèi)部怎么做的”你根本說(shuō)不出看哪張圖。常見(jiàn)規(guī)則是頂層圖加工不編號(hào)0 層的加工按順序編為 1、2、3、41 層加工編為 1.1、1.2、1.3依此類(lèi)推。圖書(shū)訂購(gòu)模塊占 1 號(hào)段考務(wù)模塊占 2 號(hào)段兩個(gè)模塊在同一套系統(tǒng)里編號(hào)不能重疊。數(shù)據(jù)字典要跟圖同步建不能等圖畫(huà)完了再補(bǔ)。每條數(shù)據(jù)流、每個(gè)數(shù)據(jù)存儲(chǔ)、每個(gè)外部實(shí)體都建一條記錄。數(shù)據(jù)流記錄包含名稱(chēng)、組成、來(lái)源、去向數(shù)據(jù)存儲(chǔ)記錄包含名稱(chēng)、結(jié)構(gòu)說(shuō)明外部實(shí)體記錄包含名稱(chēng)和用途。建數(shù)據(jù)字典有個(gè)實(shí)際好處它能逼你把“訂單信息包括哪些字段”這種模糊表述落實(shí)成“訂單號(hào)、訂購(gòu)人、ISBN、數(shù)量、單價(jià)、訂購(gòu)日期”如果這些字段說(shuō)不出來(lái)說(shuō)明數(shù)據(jù)流還沒(méi)想清楚。3. 圖書(shū)訂購(gòu)模塊從頂層圖到1層圖的逐步推演圖書(shū)訂購(gòu)業(yè)務(wù)看起來(lái)簡(jiǎn)單不外乎選書(shū)、下訂單、收貨、付款但它是全校所有師生都在用的高頻路徑信息流的細(xì)節(jié)比想象中多。這一章按分層思路把圖書(shū)訂購(gòu)模塊的頂層圖、0層圖和1層圖逐層推演一遍。3.1 頂層圖外部實(shí)體只有三個(gè)邊界先立住圖書(shū)訂購(gòu)模塊的頂層圖外部實(shí)體就三個(gè)訂購(gòu)人、供應(yīng)商、財(cái)務(wù)經(jīng)辦人。訂購(gòu)人是發(fā)起購(gòu)書(shū)請(qǐng)求的師生供應(yīng)商是提供圖書(shū)書(shū)目的外部書(shū)商財(cái)務(wù)經(jīng)辦人是負(fù)責(zé)審核付款和發(fā)票結(jié)算的管理角色。這里最容易犯的錯(cuò)是讓供應(yīng)商既當(dāng)外部實(shí)體又當(dāng)加工——比如把“書(shū)商發(fā)貨”畫(huà)在系統(tǒng)內(nèi)部。記住一條判斷標(biāo)準(zhǔn)系統(tǒng)無(wú)法控制對(duì)方的行為它就是外部實(shí)體。頂層圖的數(shù)據(jù)流有六條訂購(gòu)人發(fā)出“購(gòu)書(shū)請(qǐng)求”系統(tǒng)返回“書(shū)目查詢(xún)結(jié)果”和“訂單狀態(tài)”系統(tǒng)向供應(yīng)商發(fā)出“圖書(shū)訂單”供應(yīng)商返回“到貨通知”和“發(fā)票”系統(tǒng)向財(cái)務(wù)經(jīng)辦人提交“付款申請(qǐng)”財(cái)務(wù)經(jīng)辦人返回“付款回執(zhí)”。注意付款申請(qǐng)是系統(tǒng)發(fā)出去的不是財(cái)務(wù)經(jīng)辦人發(fā)起的說(shuō)明資金操作還是由系統(tǒng)觸發(fā)只是由人工審核。3.2 0層圖書(shū)目查詢(xún)、訂單處理、驗(yàn)收入庫(kù)、財(cái)務(wù)結(jié)算四個(gè)加工0 層圖把圖書(shū)訂購(gòu)模塊拆成四個(gè)加工1 書(shū)目查詢(xún)、2 訂單處理、3 驗(yàn)收入庫(kù)、4 財(cái)務(wù)結(jié)算。這 4 個(gè)加工之間要畫(huà)清楚 6 條數(shù)據(jù)流。加工 1 接收訂購(gòu)人的“查詢(xún)條件”輸出“書(shū)目信息”給訂購(gòu)人加工 2 接收訂購(gòu)人選定的“購(gòu)書(shū)請(qǐng)求”校驗(yàn)后輸出“圖書(shū)訂單”給供應(yīng)商加工 3 接收供應(yīng)商的“到貨通知”清點(diǎn)后輸出“入庫(kù)記錄”加工 4 接收供應(yīng)商的“發(fā)票”結(jié)合入庫(kù)記錄輸出“付款申請(qǐng)”。數(shù)據(jù)存儲(chǔ)在 0 層圖里要標(biāo)出四個(gè)書(shū)目信息存儲(chǔ)、訂單臺(tái)賬、庫(kù)存記錄、財(cái)務(wù)憑證。這些存儲(chǔ)分別被哪個(gè)加工讀寫(xiě)是一張圖是否專(zhuān)業(yè)的關(guān)鍵。書(shū)目信息存儲(chǔ)由加工 1 讀、由加工 3 寫(xiě)因?yàn)樾聲?shū)到貨錄入后查詢(xún)才能看到新書(shū)訂單臺(tái)賬由加工 2 寫(xiě)、由加工 4 讀結(jié)算時(shí)要以訂單為依據(jù)庫(kù)存記錄由加工 3 寫(xiě)財(cái)務(wù)憑證由加工 4 寫(xiě)。數(shù)據(jù)流圖上每個(gè)存儲(chǔ)必須同時(shí)有“寫(xiě)者”和“讀者”否則就是懸空存儲(chǔ)。3.3 1層圖示例訂單處理加工的內(nèi)部展開(kāi)拿 0 層圖里的加工 2“訂單處理”做一次 1 層展開(kāi)最能說(shuō)明這套方法的實(shí)用價(jià)值。加工 2 內(nèi)部可以拆成 2.1 生成訂單、2.2 訂單審核、2.3 發(fā)送書(shū)商三個(gè)子加工。訂購(gòu)人發(fā)的“購(gòu)書(shū)請(qǐng)求”先進(jìn) 2.12.1 從書(shū)目信息存儲(chǔ)讀單價(jià)和庫(kù)存生成“待審核訂單”寫(xiě)入訂單臺(tái)賬2.2 讀取待審核訂單做合規(guī)檢查比如單筆金額上限、是否在采購(gòu)目錄內(nèi)審核通過(guò)后把“審核通過(guò)訂單”傳給 2.32.3 把它整理成“圖書(shū)訂單”發(fā)給供應(yīng)商。這里有個(gè)容易漏的細(xì)節(jié)1 層圖里外部實(shí)體不是必須出現(xiàn)。2.1 接收的數(shù)據(jù)來(lái)自外部實(shí)體訂購(gòu)人但在子圖里你只需要畫(huà)一個(gè)從來(lái)源方向進(jìn)入加工 2.1 的“購(gòu)書(shū)請(qǐng)求”數(shù)據(jù)流不需要把訂購(gòu)人矩形再畫(huà)一遍。很多初學(xué)者在子圖里重復(fù)畫(huà)外部實(shí)體把圖畫(huà)得很亂這個(gè)習(xí)慣要改掉。子圖平衡檢查在 1 層圖上要過(guò)一遍父圖加工 2 的入口數(shù)據(jù)流有“購(gòu)書(shū)請(qǐng)求”出口有“圖書(shū)訂單”子圖里2.1 有“購(gòu)書(shū)請(qǐng)求”這個(gè)入流2.3 有“圖書(shū)訂單”這個(gè)出流兩條主線(xiàn)都對(duì)應(yīng)上了。至于審核不通過(guò)的情況也要有一條“審核退回”的數(shù)據(jù)流從 2.2 回到 2.1或者直接回到訂購(gòu)人否則這張圖只畫(huà)了成功路徑不完整。4. 考務(wù)模塊報(bào)名、編排、成績(jī)?nèi)龡l主鏈路的數(shù)據(jù)流考務(wù)模塊比圖書(shū)訂購(gòu)更強(qiáng)調(diào)狀態(tài)流轉(zhuǎn)一場(chǎng)考試從發(fā)布通知到成績(jī)發(fā)布數(shù)據(jù)會(huì)經(jīng)過(guò)多次寫(xiě)入和校驗(yàn)。這一章不按加工逐個(gè)講而是沿著三條主鏈路推演考試報(bào)名、考場(chǎng)編排、成績(jī)流轉(zhuǎn)。每條鏈路都有完整的數(shù)據(jù)流路徑畫(huà)圖時(shí)按鏈路檢查比按加工檢查更容易發(fā)現(xiàn)問(wèn)題。4.1 考務(wù)模塊的外部實(shí)體與頂層圖設(shè)計(jì)考務(wù)模塊的頂層圖外部實(shí)體有四個(gè)學(xué)生、任課教師、教務(wù)管理員、教學(xué)秘書(shū)。學(xué)生提交考試報(bào)名和查詢(xún)成績(jī)?nèi)握n教師錄入平時(shí)成績(jī)和期末成績(jī)教務(wù)管理員負(fù)責(zé)發(fā)布考試安排教學(xué)秘書(shū)負(fù)責(zé)審核報(bào)名數(shù)據(jù)和成績(jī)單。注意要把“學(xué)生”和“教師”在邊界上區(qū)分開(kāi)學(xué)生是系統(tǒng)外的純使用者教師既是使用者又是成績(jī)數(shù)據(jù)的生產(chǎn)者教師在頂層圖里是兩條數(shù)據(jù)線(xiàn)的起點(diǎn)。頂層數(shù)據(jù)流包括學(xué)生發(fā)“報(bào)名申請(qǐng)”和“成績(jī)查詢(xún)請(qǐng)求”入系統(tǒng)系統(tǒng)返回“報(bào)名回執(zhí)”和“成績(jī)單”任課教師提交“成績(jī)錄入表”教務(wù)管理員發(fā)布“考試安排通知”教學(xué)秘書(shū)提交“報(bào)名審核意見(jiàn)”。這里有一條容易忽略的規(guī)則系統(tǒng)與每個(gè)外部實(shí)體之間至少有一條入流和一條出流否則這個(gè)外部實(shí)體就是孤立角色。孤立角色要么刪掉要么補(bǔ)上數(shù)據(jù)流。4.2 0層圖考務(wù)基礎(chǔ)信息、報(bào)名管理、考場(chǎng)編排、成績(jī)管理考務(wù)模塊的 0 層圖可以拆成四個(gè)加工1 考務(wù)基礎(chǔ)信息管理、2 考試報(bào)名管理、3 考場(chǎng)編排管理、4 成績(jī)管理。加工 1 維護(hù)課程信息、考試科目、考試時(shí)間表是另外三個(gè)加工的數(shù)據(jù)來(lái)源加工 2 處理報(bào)名申請(qǐng)和審核意見(jiàn)輸出報(bào)名匯總名單加工 3 讀取報(bào)名名單和考場(chǎng)資源生成考場(chǎng)安排表加工 4 接收成績(jī)錄入數(shù)據(jù)經(jīng)過(guò)審核后發(fā)布成績(jī)。四個(gè)加工之間的數(shù)據(jù)流是環(huán)環(huán)相扣的。加工 1 向加工 2 發(fā)“可報(bào)考試計(jì)劃”加工 2 向加工 3 發(fā)“報(bào)名確認(rèn)名單”加工 3 向加工 4 發(fā)“考試實(shí)施結(jié)果”加工 4 再向加工 1 回流“成績(jī)發(fā)布匯總”。這種回路說(shuō)明考務(wù)不是一個(gè)單向流程成績(jī)發(fā)布后會(huì)影響下一次考務(wù)計(jì)劃的基礎(chǔ)數(shù)據(jù)這套邏輯在畫(huà)圖時(shí)必須有體現(xiàn)否則數(shù)據(jù)流圖斷鏈讀圖的人會(huì)問(wèn)“成績(jī)發(fā)布完了然后呢”。數(shù)據(jù)存儲(chǔ)在 0 層圖里出現(xiàn)五個(gè)考試計(jì)劃存儲(chǔ)、報(bào)名信息存儲(chǔ)、考場(chǎng)安排存儲(chǔ)、成績(jī)存儲(chǔ)、課程信息存儲(chǔ)??荚囉?jì)劃存儲(chǔ)由加工 1 寫(xiě)、加工 2 讀報(bào)名信息存儲(chǔ)由加工 2 寫(xiě)、加工 3 讀考場(chǎng)安排存儲(chǔ)由加工 3 寫(xiě)、加工 4 讀成績(jī)存儲(chǔ)由加工 4 寫(xiě)和讀課程信息存儲(chǔ)由加工 1 寫(xiě)、加工 4 讀。五個(gè)存儲(chǔ)中沒(méi)有懸空存儲(chǔ)圖才算成立。4.3 手工推演一條成績(jī)數(shù)據(jù)從錄入到發(fā)布的完整路徑畫(huà)圖前先做一次手工推演是避免漏數(shù)據(jù)流最有效的土辦法。我一般會(huì)在紙上寫(xiě)下誰(shuí)產(chǎn)生數(shù)據(jù)、經(jīng)過(guò)什么校驗(yàn)、落到哪個(gè)存儲(chǔ)、誰(shuí)最終消費(fèi)它。以成績(jī)?yōu)槔咭槐橥暾溌啡握n教師錄入成績(jī)生成“成績(jī)錄入表”進(jìn)入加工 4加工 4 先寫(xiě)入成績(jī)存儲(chǔ)同時(shí)做一次完整性校驗(yàn)檢查是否有缺考標(biāo)記、是否有超過(guò)百分制的異常值校驗(yàn)通過(guò)后生成“待發(fā)布成績(jī)單”交由教學(xué)秘書(shū)審核教學(xué)秘書(shū)返回“審核通過(guò)意見(jiàn)”加工 4 再把“正式成績(jī)單”發(fā)給學(xué)生。推演時(shí)會(huì)發(fā)現(xiàn)一個(gè)容易被忽略的細(xì)節(jié)成績(jī)發(fā)布后加工 4 還要向加工 1 發(fā)一條“成績(jī)歸檔數(shù)據(jù)”用于生成補(bǔ)考計(jì)劃。這條數(shù)據(jù)流如果不推演幾乎一定漏掉因?yàn)闃I(yè)務(wù)上它不是主要路徑但對(duì)系統(tǒng)的完整性很重要。把這條推演路徑畫(huà)進(jìn) 0 層圖評(píng)審一眼就能看出你真的理解考務(wù)業(yè)務(wù)而不是在套模板。5. 把DFD做成能匯報(bào)的PPT版式、標(biāo)注與說(shuō)明頁(yè)設(shè)計(jì)圖畫(huà)好只是第一步把圖做進(jìn) PPT 并讓人看懂是圖書(shū)訂購(gòu)與考務(wù)系統(tǒng)數(shù)據(jù)流圖PPT資料里最容易翻車(chē)的環(huán)節(jié)。數(shù)據(jù)流圖的信息密度遠(yuǎn)比流程圖高直接截圖放上去評(píng)審在投影上是看不清的。這一章講 PPT 的頁(yè)面結(jié)構(gòu)、繪制規(guī)范和說(shuō)明頁(yè)寫(xiě)法。5.1 PPT頁(yè)面結(jié)構(gòu)一張圖配一頁(yè)說(shuō)明不堆圖完整的 PPT 建議按七頁(yè)結(jié)構(gòu)組織封面、符號(hào)說(shuō)明頁(yè)、系統(tǒng)頂層圖、圖書(shū)訂購(gòu)模塊 0 層圖、圖書(shū)訂購(gòu)訂單處理 1 層圖、考務(wù)模塊 0 層圖、數(shù)據(jù)字典摘要頁(yè)。如果為了湊篇幅把 0 層圖和 1 層圖放在同一頁(yè)投影效果會(huì)大打折扣不推薦。每一頁(yè)技術(shù)圖都必須是“圖為主、文字為輔”圖的寬度占頁(yè)面 70% 以上下方留一行圖題。圖題寫(xiě)清楚這層圖的編號(hào)和它對(duì)應(yīng)的父圖位置比如“圖 3 圖書(shū)訂購(gòu)模塊 0 層圖父圖圖 1 系統(tǒng)頂層圖”。這是評(píng)審快速定位的邏輯錨點(diǎn)也是答辯時(shí)最容易被提問(wèn)的點(diǎn)。符號(hào)說(shuō)明頁(yè)很多人不重視但它是整套 PPT 的閱讀基礎(chǔ)。用表格列四行外部實(shí)體、加工、數(shù)據(jù)存儲(chǔ)、數(shù)據(jù)流每行配符號(hào)樣式和一句話(huà)定義。這里的關(guān)鍵是要用“本項(xiàng)目語(yǔ)境”來(lái)解釋比如數(shù)據(jù)存儲(chǔ)寫(xiě)“數(shù)據(jù)的靜態(tài)存放處如訂單臺(tái)賬”不要寫(xiě)教科書(shū)上的抽象定義。評(píng)審翻到后面看不懂符號(hào)時(shí)會(huì)翻回這一頁(yè)對(duì)照表格做得清楚能省掉很多口舌。5.2 繪制規(guī)范統(tǒng)一字體、線(xiàn)型與導(dǎo)出清晰度繪制規(guī)范決定了圖在 PPT 上的觀(guān)感。先說(shuō)字體圖內(nèi)文字統(tǒng)一用無(wú)襯線(xiàn)字體數(shù)據(jù)流名稱(chēng)字號(hào)不小于 10 號(hào)加工名稱(chēng)不小于 12 號(hào)因?yàn)橥队昂笞痔?hào)縮水太小直接看不清。再連線(xiàn)型數(shù)據(jù)流一律用正交折線(xiàn)不用斜線(xiàn)箭頭兩條數(shù)據(jù)流交叉時(shí)用拱橋過(guò)線(xiàn)或斷線(xiàn)讓路避免視覺(jué)上像兩條線(xiàn)連在一起。最重要的一個(gè)設(shè)置是導(dǎo)出分辨率。用繪圖工具導(dǎo)出圖片時(shí)目標(biāo)分辨率至少 150 DPI推薦 200 DPI 以上否則貼進(jìn) PPT 放大一點(diǎn)就是鋸齒。PPT 里不要直接復(fù)制嵌入小圖再拉大你會(huì)得到一張所有數(shù)據(jù)流名稱(chēng)都糊掉的圖。導(dǎo)出格式選 PNG如果能導(dǎo)出 SVG 矢量格式更好PPT 對(duì) SVG 支持已經(jīng)很成熟放大不模糊。5.3 用“數(shù)據(jù)字典頁(yè)”把每個(gè)數(shù)據(jù)流字段化圖書(shū)訂購(gòu)與考務(wù)系統(tǒng)數(shù)據(jù)流圖PPT資料的最后一頁(yè)建議放數(shù)據(jù)字典摘要。它不需要列出全量字段只列關(guān)鍵數(shù)據(jù)流和數(shù)據(jù)存儲(chǔ)的組成控制在十條以?xún)?nèi)每條包含編號(hào)、名稱(chēng)、來(lái)源、去向、組成。下面是本套 PPT 中數(shù)據(jù)分析梳理示例樣式編號(hào)數(shù)據(jù)流/存儲(chǔ)名稱(chēng)來(lái)源去向組成說(shuō)明D1購(gòu)書(shū)請(qǐng)求訂購(gòu)人訂單處理書(shū)目號(hào)、數(shù)量、訂購(gòu)人賬號(hào)、訂購(gòu)時(shí)間D2圖書(shū)訂單訂單處理供應(yīng)商訂單號(hào)、書(shū)目明細(xì)、總金額、期望到貨日D3成績(jī)錄入表任課教師成績(jī)管理課程號(hào)、學(xué)號(hào)、成績(jī)、錄入時(shí)間D4報(bào)名確認(rèn)名單報(bào)名管理考場(chǎng)編排考試場(chǎng)次、學(xué)號(hào)、姓名、報(bào)考科目數(shù)據(jù)字典頁(yè)的價(jià)值在于別人能把你畫(huà)的圖讀成一個(gè)明確的數(shù)據(jù)協(xié)議。如果沒(méi)有這一頁(yè)圖上的箭頭雖然畫(huà)了但“圖書(shū)訂單”里到底傳什么只有你自己知道開(kāi)發(fā)對(duì)需求會(huì)產(chǎn)生多種理解。這一頁(yè)也是評(píng)審最喜歡翻看的內(nèi)容字段列得準(zhǔn)比圖本身更能證明你想清楚了每個(gè)數(shù)據(jù)流。6. DFD繪制與匯報(bào)中的避坑、翻車(chē)點(diǎn)與排查方法數(shù)據(jù)流圖看著簡(jiǎn)單但評(píng)審問(wèn)倒人的往往都是細(xì)節(jié)。這一章把最常見(jiàn)的五個(gè)坑整理出來(lái)每條按現(xiàn)象、原因、解決三段式處理。這些都是我見(jiàn)過(guò)大量新建DFD時(shí)反復(fù)踩的真實(shí)問(wèn)題。6.1 坑1把控制流畫(huà)進(jìn)數(shù)據(jù)流圖現(xiàn)象圖里出現(xiàn)“打印完成”“審核觸發(fā)”這類(lèi)沒(méi)有數(shù)據(jù)含義的箭頭評(píng)審問(wèn)“這條線(xiàn)上傳了什么數(shù)據(jù)”畫(huà)圖的人答不上來(lái)。原因把流程圖的思考方式帶進(jìn)了 DFD認(rèn)為“下一步動(dòng)作”就是一條流。但在數(shù)據(jù)流圖里動(dòng)作屬于加工內(nèi)部的事務(wù)不屬于數(shù)據(jù)流。解決畫(huà)每條線(xiàn)之前問(wèn)自己這條線(xiàn)上傳輸?shù)木唧w數(shù)據(jù)是什么?!按蛴⊥瓿伞辈粩y帶數(shù)據(jù)它不是數(shù)據(jù)流“打印任務(wù)”攜帶了打印內(nèi)容和打印機(jī)標(biāo)識(shí)它才是數(shù)據(jù)流。把“打印完成”這樣的線(xiàn)刪掉只在加工內(nèi)部標(biāo)注處理邏輯即可。6.2 坑2頂層圖邊界劃錯(cuò)供應(yīng)商被畫(huà)進(jìn)系統(tǒng)內(nèi)部現(xiàn)象頂層圖里出現(xiàn)一個(gè)加工叫“供應(yīng)商發(fā)貨處理”或者外部實(shí)體和加工用雙向箭頭直接相連導(dǎo)致系統(tǒng)邊界模糊。原因系統(tǒng)邊界劃在哪取決于系統(tǒng)能否控制和約束這個(gè)行為。供應(yīng)商發(fā)貨是外部行為系統(tǒng)只接收“到貨通知”不對(duì)發(fā)貨本身做處理。解決把“供應(yīng)商發(fā)貨”整體挪到系統(tǒng)外系統(tǒng)內(nèi)只保留“驗(yàn)收入庫(kù)”加工。判斷標(biāo)準(zhǔn)很簡(jiǎn)單加工的動(dòng)作能不能由系統(tǒng)內(nèi)部觸發(fā)如果不能它就不是這個(gè)系統(tǒng)的加工。邊界劃對(duì)頂層圖的外部實(shí)體和加工就自然分離了。6.3 坑3父圖與子圖不平衡編號(hào)對(duì)不上現(xiàn)象答辯時(shí)評(píng)審問(wèn)“你的 0 層圖里訂單處理有‘購(gòu)書(shū)請(qǐng)求’和‘圖書(shū)訂單’兩條流1 層圖里怎么多了一條‘審核退回’”畫(huà)圖的人說(shuō)“審核退回是內(nèi)部流”但子圖里它確實(shí)連到了外部。原因子圖內(nèi)部可以局部細(xì)化但出入口必須只保留父圖已有的數(shù)據(jù)流。“審核退回”如果真實(shí)存在要么是父圖漏畫(huà)要么它不應(yīng)該穿過(guò)加工的邊界。解決先把父圖補(bǔ)齊加上“審核退回”數(shù)據(jù)流再在子圖中展開(kāi)對(duì)應(yīng)路徑。每細(xì)化一層就對(duì)照父圖檢查一遍出入口數(shù)據(jù)流集合兩者必須完全一致。6.4 坑4PPT 里圖模糊到數(shù)據(jù)流名稱(chēng)看不出來(lái)現(xiàn)象PPT 放映時(shí)評(píng)審問(wèn)“這個(gè)箭頭是‘訂單信息’還是‘訂單明細(xì)’”現(xiàn)場(chǎng)放大頁(yè)面字已經(jīng)糊成一片。原因粘貼進(jìn) PPT 的圖片分辨率太低或者圖片被拉伸放大導(dǎo)致文字邊緣發(fā)虛。這是 PPT 匯報(bào)最常見(jiàn)的觀(guān)感翻車(chē)比圖畫(huà)錯(cuò)還致命。解決繪圖時(shí)初始紙張?jiān)O(shè)置成 A4 橫向?qū)С?PNG 前把縮放比例調(diào)到 200%導(dǎo)出后再放回 PPT 檢查一次文字清晰度。有條件就把圖導(dǎo)出為 SVG 矢量格式在 PPT 里隨意縮放都不糊。6.5 坑5數(shù)據(jù)存儲(chǔ)畫(huà)了但沒(méi)人讀寫(xiě)現(xiàn)象圖里有一個(gè)“庫(kù)存記錄存儲(chǔ)”但檢查所有加工沒(méi)有一個(gè)加工向它寫(xiě)數(shù)據(jù)也沒(méi)有一個(gè)加工從它讀數(shù)據(jù)。原因?yàn)榱孙@得圖完整而加存儲(chǔ)或者復(fù)制其他項(xiàng)目模板時(shí)留下的空存儲(chǔ)節(jié)點(diǎn)。解決逐個(gè)檢查數(shù)據(jù)存儲(chǔ)必須有至少一個(gè)加工寫(xiě)、至少一個(gè)加工讀。沒(méi)有讀寫(xiě)的存儲(chǔ)直接刪掉。圖書(shū)訂購(gòu)模塊的庫(kù)存記錄由“驗(yàn)收入庫(kù)”寫(xiě)、由“訂單處理”讀這個(gè)閉環(huán)在圖里必須有明確的箭頭指向不能只是畫(huà)個(gè)矩形擺在那里。7. 進(jìn)階用數(shù)據(jù)字典校驗(yàn)兩套圖的一致性畫(huà)完圖書(shū)訂購(gòu)和考務(wù)模塊的圖最后一步不是排版而是做一次跨圖一致性校驗(yàn)。校驗(yàn)不需要依賴(lài)工具用一張檢查表就能跑完。做法是把所有數(shù)據(jù)流和數(shù)據(jù)存儲(chǔ)在 Excel 里列出來(lái)每條記錄包含編號(hào)、名稱(chēng)、父圖、層數(shù)、來(lái)源、去向、組成。然后按固定順序過(guò)四個(gè)檢查所有數(shù)據(jù)流編號(hào)是否全局唯一同一名稱(chēng)的數(shù)據(jù)流在不同層圖中是否存在但組成不一致每個(gè)數(shù)據(jù)存儲(chǔ)是否同時(shí)有寫(xiě)者和讀者每個(gè)外部實(shí)體是否至少有一條入流和一條出流。這個(gè)檢查動(dòng)作我在項(xiàng)目里執(zhí)行過(guò)無(wú)數(shù)次超過(guò)一半的圖都能查出問(wèn)題。最常見(jiàn)的是同一個(gè)名稱(chēng)在不同層圖里代表不同內(nèi)容比如 0 層圖里“訂單狀態(tài)”只含訂單號(hào)和狀態(tài)碼但 1 層圖里它突然多了到貨日期和折扣信息。這種問(wèn)題靠眼睛看圖根本發(fā)現(xiàn)不了必須靠編號(hào)查組成才能定位。檢查表過(guò)完之后把這套校驗(yàn)結(jié)果附到 PPT 的最后一頁(yè)作為數(shù)據(jù)字典摘要的補(bǔ)充。答辯時(shí)如果有人質(zhì)疑圖的完整性你直接指出“我已按四步校驗(yàn)表做過(guò)一致性檢查所有存儲(chǔ)都有讀寫(xiě)閉環(huán)”評(píng)審很難再挑出結(jié)構(gòu)性問(wèn)題。這個(gè)技巧不需要額外工具但能讓整套資料的專(zhuān)業(yè)度上一個(gè)臺(tái)階。我自己的習(xí)慣是每次畫(huà)完 DFD 都強(qiáng)制自己關(guān)掉圖紙等半小時(shí)再打開(kāi)只看編號(hào)和數(shù)據(jù)流名稱(chēng)重推一遍業(yè)務(wù)鏈路。推不通的地方一定是圖里漏了數(shù)據(jù)或者邊界劃錯(cuò)了。這套資料的重心永遠(yuǎn)是讓讀圖的人一次看懂而不是把圖畫(huà)全。希望這個(gè)校驗(yàn)習(xí)慣對(duì)你有所幫助。本文還有配套的精品資源點(diǎn)擊獲取