版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、面向數(shù)據(jù)流的設(shè)計方法 面向數(shù)據(jù)流的設(shè)計方法,又稱結(jié)構(gòu)化設(shè)計即SD(Structured Design) 。 結(jié)構(gòu)化設(shè)計的目標:將軟件設(shè)計為多個結(jié)構(gòu)合理、功能單一的模塊,建立系統(tǒng)的模塊結(jié)構(gòu)圖。它的主要表示方法是一種分層次的結(jié)構(gòu)圖。,面向數(shù)據(jù)流的設(shè)計方法,SD設(shè)計方法的主要思想: 認為一個程序、一組程序或一個系統(tǒng),是由一組功能模塊來構(gòu)成的。 軟件設(shè)計者首先必須無視程序、模塊或過程的內(nèi)部情況,而只對它們之間的關(guān)系進行分析。將系統(tǒng)看作是邏輯功能的抽象集合功能模塊的集合。,面向數(shù)據(jù)流的設(shè)計方法,結(jié)構(gòu)化設(shè)計的優(yōu)點: (1)減少設(shè)計復(fù)雜性。將對大目標的實現(xiàn)轉(zhuǎn)化為一些小目標來實現(xiàn)。結(jié)構(gòu)化設(shè)計是一種減少設(shè)計復(fù)雜
2、性的技術(shù)。 (2)結(jié)構(gòu)獨立。結(jié)構(gòu)化設(shè)計將功能性程序劃分成多個相對獨立的程序模塊。 (3)單一的功能模塊,易于進行軟件修改,易于開發(fā)和維護。 (4)加強了代碼的可重用性。,面向數(shù)據(jù)流的設(shè)計方法,描述工具: 結(jié)構(gòu)化設(shè)計方法提出了一種圖形工具結(jié)構(gòu)圖。 結(jié)構(gòu)圖是精確表達程序結(jié)構(gòu)的圖形表示方法。它作為軟件文檔的一部分,清楚地反映出程序中模塊之間的層次調(diào)用關(guān)系和聯(lián)系。它不僅嚴格地定義了各個模塊的名字、功能和接口,而且還集中反映了設(shè)計思想。,面向數(shù)據(jù)流的設(shè)計方法,結(jié)構(gòu)圖的主要內(nèi)容: 1、模塊:方框表示,并用名字標識該模塊。 2、模塊的調(diào)用關(guān)系:用單向箭頭或直線連接模塊間的控制關(guān)系。 3、模塊間的信息傳遞:用
3、帶注釋的短箭頭表示模塊間傳遞的信息。 4、兩個附加符號:弧形線表示循環(huán)調(diào)用,菱形表示選擇調(diào)用。,面向數(shù)據(jù)流的設(shè)計方法,模塊間的控制關(guān)系及信息傳遞,模塊間選擇調(diào)用,模塊間循環(huán)調(diào)用,面向數(shù)據(jù)流的設(shè)計方法,系統(tǒng)結(jié)構(gòu)圖中有4種類型的模塊: 1、傳入模塊:從下屬模塊取得數(shù)據(jù),經(jīng)過某些處理,再將其送給上級模塊。它傳送的數(shù)據(jù)叫做邏輯輸入數(shù)據(jù)流。 2、傳出模塊:從上級模塊取得數(shù)據(jù),進行某些處理后,傳送給下屬模塊。它傳送的數(shù)據(jù)流叫做邏輯輸出數(shù)據(jù)流。 3、變換模塊:從上級模塊取得數(shù)據(jù),進行特定處理后,送回原上級模塊。它加工的數(shù)據(jù)流叫做變換數(shù)據(jù)流。 4、協(xié)調(diào)模塊:對其下屬模塊進行控制和管理的模塊。在一個好的系統(tǒng)結(jié)構(gòu)
4、圖中,協(xié)調(diào)模塊應(yīng)在較高層出現(xiàn)。,面向數(shù)據(jù)流的設(shè)計方法,系統(tǒng)結(jié)構(gòu)圖中主要有4種類型的模塊:,Y,面向數(shù)據(jù)流的設(shè)計方法,數(shù)據(jù)流圖的類型 SD方法是以數(shù)據(jù)流圖為基礎(chǔ)設(shè)計系統(tǒng)的模塊結(jié)構(gòu)的。不同類型的數(shù)據(jù)流圖設(shè)計的過程以及所導(dǎo)出的初始的軟件結(jié)構(gòu)不同。不管系統(tǒng)的數(shù)據(jù)流圖如何龐大和復(fù)雜,一般均可分為變換型、事務(wù)型和變換/事務(wù)混合型。,面向數(shù)據(jù)流的設(shè)計方法,變換型(IPO型) 變換型的數(shù)據(jù)流圖是一個線性結(jié)構(gòu),由輸入、變換和輸出三部分組成。信息沿輸入通路進入系統(tǒng),同時由外部形式變換成內(nèi)部形式。進入系統(tǒng)的信息通過變換中心,經(jīng)加工處理以后再沿輸出通路變換成外部形式離開軟件系統(tǒng)。,面向數(shù)據(jù)流的設(shè)計方法,物理輸入,物理
5、輸出,輸入流,變換中心,輸出流,邏輯輸出,邏輯輸入,變換型DFD圖,面向數(shù)據(jù)流的設(shè)計方法, 事務(wù)型 事務(wù)型的數(shù)據(jù)流圖中,數(shù)據(jù)沿輸入通路到達一個加工處理(如下圖中的C),這個處理將輸入分為許多相互平行的加工路徑,并根據(jù)輸入數(shù)據(jù)的類型,選擇某一加工路徑。其中C為事務(wù)處理中心,其任務(wù)是得到輸入數(shù)據(jù)(輸入數(shù)據(jù)又稱為事務(wù))、分析每個事務(wù)以確定它的類型、根據(jù)事務(wù)類型選取一條活動通路。,面向數(shù)據(jù)流的設(shè)計方法,事務(wù)型DFD圖,面向數(shù)據(jù)流的設(shè)計方法,面向數(shù)據(jù)流設(shè)計方法的過程: 1、精化DFD。去除數(shù)據(jù)流圖中的數(shù)據(jù)存儲等信息,對數(shù)據(jù)流圖進行精化。 2、確定DFD類型,和邏輯輸入、邏輯輸出的界限,映射出變換結(jié)構(gòu)的頂
6、層合第一層;如果為事務(wù)型,確定事務(wù)中心和加工路徑,映射出事務(wù)結(jié)構(gòu)的頂層合第一層。 3、分解上層模塊,設(shè)計中下層模塊結(jié)構(gòu)。 4、根據(jù)優(yōu)化準則對軟件結(jié)構(gòu)求精。 5、描述模塊功能、接口及全局數(shù)據(jù)結(jié)構(gòu)。 6、復(fù)查,如有錯轉(zhuǎn)向2、修改完善,否則進入詳細設(shè)計。,面向數(shù)據(jù)流的設(shè)計方法,變換分析設(shè)計: 1、確定DFD中的變換中心,邏輯輸入、邏輯輸出。 通常幾股數(shù)據(jù)流的匯合處就是系統(tǒng)的加工中心,也可用以下方法確定加工中心:從物理輸入(出)端開始,沿(逆)數(shù)據(jù)流方向向系統(tǒng)中心尋找,直到有這樣的數(shù)據(jù)流,它不能再被看作是系統(tǒng)的輸入(出)時,則它的前一數(shù)據(jù)流就是系統(tǒng)的邏輯輸入(出)。介于邏輯輸入和邏輯輸出間的加工就是加
7、工中心。,面向數(shù)據(jù)流的設(shè)計方法,2、設(shè)計軟件結(jié)構(gòu)的頂層和第一層變換結(jié)構(gòu)。 頂層就是主模塊的位置,其功能是完成對所有模塊的控制,其名稱就是系統(tǒng)名稱; 第一層一般至少有輸入、變換、輸出三種功能模塊。,面向數(shù)據(jù)流的設(shè)計方法,3、設(shè)計中、下層模塊。對第一層模塊自頂向下逐層分解。 輸入模塊下屬模塊的設(shè)計:為每個輸入模塊設(shè)計兩個下屬模塊,一個接受數(shù)據(jù),一個將數(shù)據(jù)轉(zhuǎn)換成調(diào)用模塊所需的信息。用類似的方法一直分解下去,直至物理輸入端。 輸出模塊下屬模塊的設(shè)計:為每個輸出模塊設(shè)計兩個下屬模塊,一個將數(shù)據(jù)轉(zhuǎn)換成下屬模塊所需的信息,一個發(fā)送數(shù)據(jù)。用類似的方法一直分解下去,直至物理輸出端。 變換模塊下屬模塊的設(shè)計:根據(jù)
8、變換中心的組成情況,按照模塊獨立性原則,為每個基本加工建立一個功能模塊。,面向數(shù)據(jù)流的設(shè)計方法,4、設(shè)計優(yōu)化:根據(jù)優(yōu)化準則對初始結(jié)構(gòu)進行細化和改進。 根據(jù)設(shè)計準則,對模塊進行合并和調(diào)整,為每個物理輸入和物理輸出設(shè)計專門模塊,以體現(xiàn)系統(tǒng)的外部接口。,面向數(shù)據(jù)流的設(shè)計方法,變換型分析設(shè)計,面向數(shù)據(jù)流的設(shè)計方法,變換型分析設(shè)計,面向數(shù)據(jù)流的設(shè)計方法,事務(wù)分析設(shè)計: 1、確定DFD中的事物中心和加工路徑。 通常當DFD中的某個加工具有明顯的將一個輸入數(shù)據(jù)流分解成多個發(fā)散的輸出數(shù)據(jù)流時,該加工就是系統(tǒng)的事務(wù)中心,從事務(wù)中心輻射出去的數(shù)據(jù)流就是各個加工路徑。,面向數(shù)據(jù)流的設(shè)計方法,2、設(shè)計軟件結(jié)構(gòu)的頂層和
9、第一層事務(wù)結(jié)構(gòu)。 頂層就是主模塊的位置,有兩個功能,一是接收數(shù)據(jù),二是根據(jù)事務(wù)類型調(diào)度相應(yīng)的處理模塊。因此事務(wù)型軟件結(jié)構(gòu)應(yīng)包括兩個部分,接收分支和發(fā)送分支。 接收分支:負責(zé)接收數(shù)據(jù),其設(shè)計方法與變換型DFD的輸入部分相同。 發(fā)送分支:通常包含一個調(diào)度模塊,控制管理所有的下層事務(wù)處理模塊。 3、設(shè)計中、下層模塊并優(yōu)化。 具體過程同變換結(jié)構(gòu)設(shè)計。,面向數(shù)據(jù)流的設(shè)計方法,A,B,加工路徑,輸入流,事務(wù)處理中心,事務(wù)分析設(shè)計,C,D,f1,面向數(shù)據(jù)流的設(shè)計方法,事務(wù)分析設(shè)計,面向數(shù)據(jù)流的設(shè)計方法,舉 例,事務(wù)分析 舉例,結(jié)構(gòu)圖的形態(tài)特征: 深度表示控制的層數(shù)。 寬度表示控制的總分布。 扇出是對由某一模
10、塊直接控制的模塊數(shù)目的度量。 扇入指出有多少個模塊直接控制一個給定的模塊。 如果一模塊控制另一個模塊便稱前者“統(tǒng)帥”后者; 反之,稱后者“從屬”于前者。,面向數(shù)據(jù)流的設(shè)計方法,畫結(jié)構(gòu)圖應(yīng)注意的事項: 1、同一名字的模塊在結(jié)構(gòu)圖中僅出現(xiàn)一次。 2、調(diào)用關(guān)系只能從上到下。 3、結(jié)構(gòu)圖不嚴格表示模塊的調(diào)用次序,習(xí)慣上從左到右。有時為了減少連線的交叉,適當?shù)卣{(diào)整同一層模塊的左右位置,以保持結(jié)構(gòu)圖的清晰。,面向數(shù)據(jù)流的設(shè)計方法,例1:高考錄取統(tǒng)分子系統(tǒng)有如下功能: 1)計算標準分:根據(jù)考生原始分計算,得到標準分,存入考生分數(shù)文件; 2)計算錄取線:根據(jù)標準分、招生計劃文件中的招生人數(shù),計算錄取線存入錄取
11、線文件。 要求:對以上問題畫出數(shù)據(jù)流圖。 畫出該子系統(tǒng)的軟件結(jié)構(gòu)圖,面向數(shù)據(jù)流的設(shè)計方法,例2:某培訓(xùn)中心要研制一個計算機管理系統(tǒng)。它的業(yè)務(wù)是:將學(xué)員發(fā)來的信件收集分類后,按幾種不同情況處理: 1)如果是報名的,則將報名數(shù)據(jù)負責(zé)給報名事務(wù)的職員,他們將查閱課程文件,檢查該課程是否額滿,然后在學(xué)生文件、課程文件上登記,并開出報名單交財務(wù)部門,財務(wù)人員開出發(fā)票給學(xué)生。 2)如果是想注銷原來已選修的課程,則由注銷人員在課程文件、學(xué)生文件和帳目文件上做相應(yīng)的修改,并給學(xué)生注銷單。 3)如果是付款的,則由財務(wù)人員在帳目文件上登記,也給學(xué)生一張收費收據(jù)。 要求:對以上問題畫出數(shù)據(jù)流圖。 畫出該培訓(xùn)管理系統(tǒng)
12、的軟件結(jié)構(gòu)圖的主圖。,面向數(shù)據(jù)流的設(shè)計方法,在實際的軟件系統(tǒng)中,數(shù)據(jù)流圖往往是變換型和事務(wù)型的混合體。 綜合設(shè)計方法: 一般以“變換分析”為主,“事務(wù)分析”為輔進行設(shè)計。即先找出子加工,設(shè)計出結(jié)構(gòu)圖的上層,然后根據(jù)數(shù)據(jù)流圖的各個部分的結(jié)構(gòu)特點適當?shù)剡\用“變換分析” 或“事務(wù)分析”進行處理,可得到初始的結(jié)構(gòu)圖。,綜合設(shè)計,1、概要設(shè)計說明書(參考標準文檔) 2、詳細設(shè)計說明書(參考標準文檔),軟件設(shè)計文檔,其他設(shè)計方法,面向數(shù)據(jù)結(jié)構(gòu)的設(shè)計方法是根據(jù)數(shù)據(jù)結(jié)構(gòu)設(shè)計程序處理過程的方法。 目前比較成熟的有 MAJackson提出的Jackson系統(tǒng)開發(fā)方法(JSD,Jackson System Deve
13、lopment)和JDwarnier提出的程序邏輯構(gòu)造方法LCP( Logical Construction of Programs )。,Jackson方法 Jackson方法思想 面向數(shù)據(jù)結(jié)構(gòu)的設(shè)計是根據(jù)某些過程,從一些數(shù)據(jù)結(jié)構(gòu)中導(dǎo)出程序結(jié)構(gòu),著重于問題域數(shù)據(jù)結(jié)構(gòu)到問題解的程序結(jié)構(gòu)之間的轉(zhuǎn)換,而不強調(diào)模塊定義。 首先要充分了解所涉及的數(shù)據(jù)結(jié)構(gòu),而且用工具清晰地描述數(shù)據(jù)結(jié)構(gòu); 然后按一定的步驟根據(jù)數(shù)據(jù)結(jié)構(gòu),導(dǎo)出解決問題的程序結(jié)構(gòu),完成設(shè)計。,其他設(shè)計方法,(2) Jackson圖 Jackson圖表示的三種基本結(jié)構(gòu),由方框、連線和一些附加標記組成。標記“o”代表選擇,標記“*”代表重復(fù)。連線可以理解為“包含”或“由組成”。,順序,選擇,重復(fù),其他設(shè)計方法,Jackson方法
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024游艇銷售及倉儲物流服務(wù)合同范本3篇
- 二零二五年度廚房設(shè)備進出口貿(mào)易合同2篇
- 專業(yè)2024委托獵頭服務(wù)協(xié)議范本版
- 二零二五年股東股權(quán)解除及退股條件明確協(xié)議書3篇
- 個人租車合同2024年度版:租賃工程車具體條款3篇
- 2024版承包經(jīng)營權(quán)抵押合同
- 二零二五版?zhèn)€人房產(chǎn)抵押典當經(jīng)營合同3篇
- 臺州科技職業(yè)學(xué)院《內(nèi)科學(xué)B》2023-2024學(xué)年第一學(xué)期期末試卷
- 二零二五年股權(quán)投資合同具體條款2篇
- 二零二五年度汽車環(huán)保技術(shù)改造投資合同3篇
- 醫(yī)療組長競聘
- 2024年業(yè)績換取股權(quán)的協(xié)議書模板
- 顳下頜關(guān)節(jié)疾病(口腔頜面外科學(xué)課件)
- 工業(yè)自動化設(shè)備維護保養(yǎng)指南
- 2024人教新版七年級上冊英語單詞英譯漢默寫表
- 《向心力》參考課件4
- 2024至2030年中國膨潤土行業(yè)投資戰(zhàn)略分析及發(fā)展前景研究報告
- 2024年深圳中考數(shù)學(xué)真題及答案
- 土方轉(zhuǎn)運合同協(xié)議書
- Module 3 Unit 1 Point to the door(教學(xué)設(shè)計)-2024-2025學(xué)年外研版(三起)英語三年級上冊
- 智能交通信號燈安裝合同樣本
評論
0/150
提交評論