翻譯|實(shí)施案例|編輯:楊鵬連|2020-11-16 16:26:00.477|閱讀 325 次
概述:數(shù)據(jù)流程圖在軟件工程中被廣泛使用。您可以在建模信息系統(tǒng)中使用DFD。本文以客戶(hù)服務(wù)系統(tǒng)為例介紹和解釋數(shù)據(jù)流程圖(DFD)。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門(mén)軟控件火熱銷(xiāo)售中 >>
相關(guān)鏈接:
Visual Paradigm是包含設(shè)計(jì)共享、線框圖和數(shù)據(jù)庫(kù)設(shè)計(jì)新特性的企業(yè)項(xiàng)目設(shè)計(jì)工具。現(xiàn)在你只需要這樣單獨(dú)的一款模型軟件 Visual Paradigm就可以完成用UML設(shè)計(jì)軟件,用BPMN去執(zhí)行業(yè)務(wù)流程分析,用ERD企業(yè)設(shè)計(jì)數(shù)據(jù)庫(kù)的任務(wù)。Visual Paradigm年終鉅惠來(lái)襲,Visual Paradigm Modeler 訂閱1年只需666元,現(xiàn)在搶購(gòu)立享優(yōu)惠!
點(diǎn)擊下載Visual Paradigm最新試用版
數(shù)據(jù)流圖(DFD)提供了系統(tǒng)內(nèi)信息(即數(shù)據(jù))流的直觀表示。通過(guò)創(chuàng)建數(shù)據(jù)流程圖,您可以告訴參與系統(tǒng)流程的人員所提供并傳遞給其的信息,完成流程所需的信息以及需要存儲(chǔ)和訪問(wèn)的信息。數(shù)據(jù)流程圖在軟件工程中被廣泛使用。您可以在建模信息系統(tǒng)中使用DFD。本文以客戶(hù)服務(wù)系統(tǒng)為例介紹和解釋數(shù)據(jù)流程圖(DFD)。
CS系統(tǒng)示例
數(shù)據(jù)流程圖是圖的層次結(jié)構(gòu),包括:
下圖顯示了為鐵路公司的客戶(hù)服務(wù)系統(tǒng)繪制的上下文數(shù)據(jù)流程圖。它包含一個(gè)表示要建模的系統(tǒng)的過(guò)程(形狀),在本例中為“ CS System ”。它還顯示了將與系統(tǒng)交互的參與者,稱(chēng)為外部實(shí)體。在此示例中,CS Assistant和Passenger是將與系統(tǒng)交互的兩個(gè)實(shí)體。在流程與外部實(shí)體之間,存在數(shù)據(jù)流(連接器),這些數(shù)據(jù)流指示實(shí)體與系統(tǒng)之間存在信息交換。
1級(jí)DFD
下圖顯示了1級(jí)DFD,它是上下文DFD中顯示的CS系統(tǒng)過(guò)程的分解(即分解)。通讀該圖,然后我們將基于此圖介紹一些關(guān)鍵概念。
CS系統(tǒng)數(shù)據(jù)流程圖示例包含四個(gè)流程,兩個(gè)外部實(shí)體和四個(gè)數(shù)據(jù)存儲(chǔ)。盡管沒(méi)有設(shè)計(jì)準(zhǔn)則可以控制形狀在數(shù)據(jù)流程圖中的位置,但是我們傾向于將過(guò)程放在中間,而將數(shù)據(jù)存儲(chǔ)區(qū)和外部實(shí)體放在側(cè)面,以便于理解。
根據(jù)該圖,我們知道乘客可以從“查詢(xún)運(yùn)輸詳細(xì)信息”流程中接收運(yùn)輸詳細(xì)信息,并且詳細(xì)信息由數(shù)據(jù)存儲(chǔ)“運(yùn)輸詳細(xì)信息”和“鐵路實(shí)時(shí)統(tǒng)計(jì)”提供。雖然存儲(chǔ)在“運(yùn)輸詳細(xì)信息”中的數(shù)據(jù)是永久性數(shù)據(jù)(用標(biāo)簽“ D”表示),但是“鐵路實(shí)時(shí)統(tǒng)計(jì)”中存儲(chǔ)的數(shù)據(jù)是短暫的瞬態(tài)數(shù)據(jù)(用標(biāo)簽“ T”表示)。標(biāo)注形狀用于列出乘客可以查詢(xún)的詳細(xì)信息的種類(lèi)。CS Assistant可以啟動(dòng)“購(gòu)買(mǎi)紀(jì)念品”流程,這將導(dǎo)致將訂單詳細(xì)信息存儲(chǔ)在“訂單”數(shù)據(jù)存儲(chǔ)區(qū)中。盡管客戶(hù)是購(gòu)買(mǎi)紀(jì)念品的真實(shí)人,但CS助手可以訪問(wèn)存儲(chǔ)訂單明細(xì)的系統(tǒng)。因此,我們使數(shù)據(jù)從CS助手流向購(gòu)買(mǎi)紀(jì)念品流程。
CS Assistant還可以通過(guò)提供訂單明細(xì)來(lái)啟動(dòng)“購(gòu)買(mǎi)憑單”流程,該詳細(xì)信息將再次存儲(chǔ)在“訂單”數(shù)據(jù)存儲(chǔ)區(qū)中。數(shù)據(jù)流圖是一個(gè)高度抽象的高級(jí)圖。此處繪制的數(shù)據(jù)存儲(chǔ)Order不一定表示真實(shí)的訂單數(shù)據(jù)庫(kù)或數(shù)據(jù)庫(kù)中的訂單表。訂單詳細(xì)信息的物理存儲(chǔ)方式將在以后實(shí)現(xiàn)系統(tǒng)時(shí)確定。
最后,CS Assistant可以通過(guò)提供事件和項(xiàng)目詳細(xì)信息來(lái)啟動(dòng)“報(bào)告丟失”過(guò)程,并且該信息將存儲(chǔ)在“丟失的項(xiàng)目”數(shù)據(jù)庫(kù)中。
數(shù)據(jù)流程圖提示和注意事項(xiàng)
用D,M和T聲明數(shù)據(jù)類(lèi)型
數(shù)據(jù)流程圖中繪制的每個(gè)數(shù)據(jù)存儲(chǔ)都以字母為前綴,默認(rèn)情況下為“ D”。該字母表示數(shù)據(jù)存儲(chǔ)區(qū)保存的數(shù)據(jù)類(lèi)型。字母“ D”用于表示持久的計(jì)算機(jī)化數(shù)據(jù),這可能是典型信息系統(tǒng)中最常見(jiàn)的數(shù)據(jù)類(lèi)型。除了計(jì)算機(jī)化數(shù)據(jù)外,數(shù)據(jù)還可以暫時(shí)保留一小段時(shí)間。我們稱(chēng)這種數(shù)據(jù)為暫態(tài)數(shù)據(jù),用字母“ T”表示。有時(shí),無(wú)需使用計(jì)算機(jī)即可存儲(chǔ)數(shù)據(jù)。我們稱(chēng)這種數(shù)據(jù)為手動(dòng)數(shù)據(jù),用字母“ M”表示。最后,如果數(shù)據(jù)是在不使用計(jì)算機(jī)的情況下存儲(chǔ)的,并且也保留了很短的時(shí)間,則稱(chēng)為手動(dòng)瞬態(tài)數(shù)據(jù),并由T(M)表示。
注意細(xì)節(jié)級(jí)別
在此數(shù)據(jù)流程圖示例中,標(biāo)記數(shù)據(jù)時(shí),多次使用“詳細(xì)信息”一詞。我們有“運(yùn)輸詳細(xì)信息”和“訂單詳細(xì)信息”。如果我們將其明確寫(xiě)為“路線信息,火車(chē)時(shí)間和延誤”,“紀(jì)念品名稱(chēng),數(shù)量和數(shù)量”以及“機(jī)票類(lèi)型和數(shù)量”怎么辦?它是否正確?好吧,這個(gè)問(wèn)題沒(méi)有確定的答案,但是在做出決定時(shí)嘗試問(wèn)自己一個(gè)問(wèn)題。為什么要繪制DFD?
在大多數(shù)情況下,數(shù)據(jù)流程圖是在系統(tǒng)開(kāi)發(fā)的早期階段繪制的,其中許多細(xì)節(jié)尚待確認(rèn)。諸如“詳細(xì)信息”,“信息”,“憑證”之類(lèi)的通用術(shù)語(yǔ)的使用無(wú)疑為討論留下了空間。但是,使用通用術(shù)語(yǔ)可能會(huì)缺乏細(xì)節(jié),從而使設(shè)計(jì)失去其用處。因此,這實(shí)際上取決于您的設(shè)計(jì)目的。
不要透支
在數(shù)據(jù)流程圖中,我們專(zhuān)注于系統(tǒng)與外部各方之間的交互,而不是接口之間的內(nèi)部通信。因此,接口與所使用的數(shù)據(jù)存儲(chǔ)之間的數(shù)據(jù)流被認(rèn)為是超出范圍的,因此不應(yīng)在圖中顯示。
不要混淆數(shù)據(jù)流和流程流
一些設(shè)計(jì)人員在遇到從數(shù)據(jù)存儲(chǔ)連接到流程的連接器時(shí)可能會(huì)感到不舒服,而沒(méi)有在圖表上顯示指定數(shù)據(jù)請(qǐng)求的步驟。一些設(shè)計(jì)人員將嘗試將請(qǐng)求附加到流程和數(shù)據(jù)存儲(chǔ)之間的連接器,將其標(biāo)記為“請(qǐng)求”或“對(duì)某物的請(qǐng)求”,這肯定是不必要的。
請(qǐng)記住,數(shù)據(jù)流程圖是為表示信息交換而設(shè)計(jì)的。數(shù)據(jù)流程圖中的連接器用于表示數(shù)據(jù),而不用于表示過(guò)程流,步驟或其他任何內(nèi)容。當(dāng)我們將以數(shù)據(jù)存儲(chǔ)結(jié)尾的數(shù)據(jù)流標(biāo)記為“請(qǐng)求”時(shí),從字面上看,這意味著我們正在將請(qǐng)求作為數(shù)據(jù)傳遞到數(shù)據(jù)存儲(chǔ)中。盡管在實(shí)現(xiàn)級(jí)別可能是這種情況,因?yàn)槟承〥BMS確實(shí)支持使用函數(shù),這些函數(shù)會(huì)吸收一些值作為參數(shù)并返回結(jié)果,但是,在數(shù)據(jù)流程圖中,我們傾向于將數(shù)據(jù)存儲(chǔ)視為唯一的數(shù)據(jù)持有人沒(méi)有任何處理能力。如果要對(duì)系統(tǒng)流或流程進(jìn)行建模,則可以使用“活動(dòng)圖”或“ BPMN業(yè)務(wù)流程圖”代替。如果要對(duì)數(shù)據(jù)存儲(chǔ)的內(nèi)部結(jié)構(gòu)建模,可以使用Entity Relationship Diagram。
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自: