軟件工程教學(xué)課件:6-第六講(0)_第1頁
軟件工程教學(xué)課件:6-第六講(0)_第2頁
軟件工程教學(xué)課件:6-第六講(0)_第3頁
軟件工程教學(xué)課件:6-第六講(0)_第4頁
軟件工程教學(xué)課件:6-第六講(0)_第5頁
已閱讀5頁,還剩37頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、毛新軍毛新軍 教授教授計(jì)算機(jī)科學(xué)與技術(shù)系計(jì)算機(jī)科學(xué)與技術(shù)系602教研室教研室 0731-(45)73649軟件工程導(dǎo)論軟件工程導(dǎo)論 之之Copyright Xinjun Mao面向數(shù)據(jù)流的軟件設(shè)計(jì)方法面向數(shù)據(jù)流的軟件設(shè)計(jì)方法2n軟件設(shè)計(jì)基礎(chǔ)知識n軟件的需求分析及其需求規(guī)格說明書(SRS)n軟件的SRS - 軟件設(shè)計(jì)信息n面向數(shù)據(jù)流的設(shè)計(jì)方法:提供了方法和策略Copyright Xinjun Mao面向數(shù)據(jù)流的軟件設(shè)計(jì)方法面向數(shù)據(jù)流的軟件設(shè)計(jì)方法31.基本概念和軟件設(shè)計(jì)過程2.變換分析方法3.事務(wù)分析方法4.啟發(fā)式設(shè)計(jì)策略5.設(shè)計(jì)優(yōu)化原則Copyright Xinjun Mao面向數(shù)據(jù)流的軟件設(shè)

2、計(jì)方法面向數(shù)據(jù)流的軟件設(shè)計(jì)方法4 輸入流輸入流 輸出流輸出流 變換流變換流 時間時間 外部表示外部表示 內(nèi)部表示內(nèi)部表示 信息信息 訂訂票票員員 訂訂票票員員 預(yù)預(yù)定定機(jī)機(jī)票票 準(zhǔn)準(zhǔn)備備機(jī)機(jī)票票 記記帳帳 訂訂票票單單 航航班班目目錄錄 航航班班號號 航航班班 費(fèi)費(fèi)用用 帳帳單單 機(jī)機(jī)票票 記記帳帳數(shù)數(shù)據(jù)據(jù)庫庫 帳帳目目 n前提 經(jīng)過評審后的需求模型 - 數(shù)據(jù)流圖Copyright Xinjun Mao面向數(shù)據(jù)流的軟件設(shè)計(jì)方法面向數(shù)據(jù)流的軟件設(shè)計(jì)方法5n變換流 信息通常以“外部世界”所具有的形式進(jìn)入系統(tǒng),經(jīng)過處理后,又以這種形式離開系統(tǒng) 輸入流輸入流 輸出流輸出流 變換流變換流 時間時間 外部

3、表示外部表示 內(nèi)部表示內(nèi)部表示 信息信息 訂訂票票員員 訂訂票票員員 預(yù)預(yù)定定機(jī)機(jī)票票 準(zhǔn)準(zhǔn)備備機(jī)機(jī)票票 記記帳帳 訂訂票票單單 航航班班目目錄錄 航航班班號號 航航班班 費(fèi)費(fèi)用用 帳帳單單 機(jī)機(jī)票票 記記帳帳數(shù)數(shù)據(jù)據(jù)庫庫 帳帳目目 Copyright Xinjun Mao面向數(shù)據(jù)流的軟件設(shè)計(jì)方法面向數(shù)據(jù)流的軟件設(shè)計(jì)方法6 事事務(wù)務(wù)處處理理中中心心 動動作作路路徑徑 事事務(wù)務(wù) n數(shù)據(jù)沿輸入通道到達(dá)一個轉(zhuǎn)換,該轉(zhuǎn)換根據(jù)輸入流類型和特征在若干動作序列中選擇一條來執(zhí)行 輸入數(shù)據(jù)(事務(wù)) 具有一個轉(zhuǎn)換(事務(wù)中心) 一組動作執(zhí)行路徑Copyright Xinjun Mao面向數(shù)據(jù)流的軟件設(shè)計(jì)方法面向數(shù)據(jù)

4、流的軟件設(shè)計(jì)方法7n實(shí)際上所有的數(shù)據(jù)流圖都是變換流,事務(wù)流是變換流的一種特殊形式 n為什么要將事務(wù)型的數(shù)據(jù)流圖獨(dú)立出來考慮?n大多數(shù)系統(tǒng)的數(shù)據(jù)流途中,事務(wù)流和變換流往往交織在一起Copyright Xinjun Mao面向數(shù)據(jù)流的軟件設(shè)計(jì)方法面向數(shù)據(jù)流的軟件設(shè)計(jì)方法8 a b c d e q r s p 事事務(wù)務(wù)處處理理中中心心 Copyright Xinjun Mao面向數(shù)據(jù)流的軟件設(shè)計(jì)方法面向數(shù)據(jù)流的軟件設(shè)計(jì)方法9n 面向數(shù)據(jù)流的設(shè)計(jì)方法的主要過程 確定數(shù)據(jù)流的類型:變換流還是事務(wù)流 劃定流界 將數(shù)據(jù)流圖轉(zhuǎn)換為軟件結(jié)構(gòu) 通過設(shè)計(jì)復(fù)審和啟發(fā)式策略精化所得到軟件結(jié)構(gòu)Copyright Xinj

5、un Mao面向數(shù)據(jù)流的軟件設(shè)計(jì)方法面向數(shù)據(jù)流的軟件設(shè)計(jì)方法10 流流 類類 型型 確確 定定 事事務(wù)務(wù) 中中 心心和和 動動作作 路路 徑徑 映映 射射 為為事事 務(wù)務(wù) 結(jié)結(jié)構(gòu)構(gòu) 確確 定定 輸輸入入 和和 輸輸出出 流流界界 映映 射射 為為變變 換換 結(jié)結(jié)構(gòu)構(gòu) 利利 用用 啟啟發(fā)發(fā) 式式 策策略略 精精化化 設(shè)設(shè) 計(jì)計(jì) 描描 述述 接接口口 和和 數(shù)數(shù)據(jù)據(jù) 設(shè)設(shè)計(jì)計(jì) 復(fù)復(fù) 審審 詳詳 細(xì)細(xì) 設(shè)設(shè)計(jì)計(jì) 精精 化化 數(shù)數(shù)據(jù)據(jù) 流流 圖圖 事事 務(wù)務(wù) 流流 變變 換換 流流 變變換換分分析析法法 事事務(wù)務(wù)分分析析法法 有有 問問 題題 Copyright Xinjun Mao面向數(shù)據(jù)流的軟件設(shè)

6、計(jì)方法面向數(shù)據(jù)流的軟件設(shè)計(jì)方法111.基本概念和軟件設(shè)計(jì)過程2.變換分析方法3.事務(wù)分析方法4.啟發(fā)式設(shè)計(jì)策略5.設(shè)計(jì)優(yōu)化原則Copyright Xinjun Mao面向數(shù)據(jù)流的軟件設(shè)計(jì)方法面向數(shù)據(jù)流的軟件設(shè)計(jì)方法12n基本思想 通過一系列的設(shè)計(jì)步驟,將變換型的數(shù)據(jù)流圖映射為軟件結(jié)構(gòu) 輸入:SRS(數(shù)據(jù)流圖、數(shù)據(jù)字典、小說明) 輸出:軟件總體結(jié)構(gòu)Copyright Xinjun Mao面向數(shù)據(jù)流的軟件設(shè)計(jì)方法面向數(shù)據(jù)流的軟件設(shè)計(jì)方法13n 什么是基本系統(tǒng)模型 基本系統(tǒng)模型即SRS中的頂級數(shù)據(jù)流圖n 為什么需要對基本系統(tǒng)模型進(jìn)行復(fù)審 對系統(tǒng)規(guī)格說明書和SRS進(jìn)行評估,以確保系統(tǒng)的輸入和輸出數(shù)據(jù)符

7、合實(shí)際Copyright Xinjun Mao面向數(shù)據(jù)流的軟件設(shè)計(jì)方法面向數(shù)據(jù)流的軟件設(shè)計(jì)方法14n為什么需要復(fù)審和精化數(shù)據(jù)流圖 確保DFD給出目標(biāo)系統(tǒng)正確的邏輯模型 以獲得足夠詳細(xì)的DFD 確保DFD中每個轉(zhuǎn)換代表一個規(guī)模適中、相對獨(dú)立的子功能Copyright Xinjun Mao面向數(shù)據(jù)流的軟件設(shè)計(jì)方法面向數(shù)據(jù)流的軟件設(shè)計(jì)方法15n信息流都可用變換流表示,但是如果有明顯的事務(wù)流特征,則還應(yīng)采用事務(wù)流的映射方法n設(shè)計(jì)人員負(fù)責(zé)判定在數(shù)據(jù)流圖中占主導(dǎo)地位的信息流是變換流還是事務(wù)流Copyright Xinjun Mao面向數(shù)據(jù)流的軟件設(shè)計(jì)方法面向數(shù)據(jù)流的軟件設(shè)計(jì)方法16劃分因人而異,在一般情況

8、下有點(diǎn)出入對整個劃分因人而異,在一般情況下有點(diǎn)出入對整個目標(biāo)軟件系統(tǒng)的影響不是很大目標(biāo)軟件系統(tǒng)的影響不是很大n輸入流處理部分n變換中心n輸出流處理部分 輸入流輸入流 輸出流輸出流 變換流變換流 時間時間 外部表示外部表示 內(nèi)部表示內(nèi)部表示 信息信息 Copyright Xinjun Mao面向數(shù)據(jù)流的軟件設(shè)計(jì)方法面向數(shù)據(jù)流的軟件設(shè)計(jì)方法17 I D A C E F G H B J 輸輸出出流流 輸輸入入流流 變變換換流流 Copyright Xinjun Mao面向數(shù)據(jù)流的軟件設(shè)計(jì)方法面向數(shù)據(jù)流的軟件設(shè)計(jì)方法18n任務(wù): 導(dǎo)出三個層次結(jié)構(gòu)的軟件結(jié)構(gòu) 底層模塊:用于輸入、輸出和計(jì)算等基本功能 中

9、間層模塊:協(xié)調(diào)、控制底層模塊的工作 高層模塊:用于協(xié)調(diào)和控制所有的從屬模塊n原則 在確保完成系統(tǒng)功能并保持低耦合度、高內(nèi)聚度的情況下盡可能的減少模塊數(shù)目n一級分解的結(jié)果可以用層次圖、結(jié)構(gòu)圖等來表示Copyright Xinjun Mao面向數(shù)據(jù)流的軟件設(shè)計(jì)方法面向數(shù)據(jù)流的軟件設(shè)計(jì)方法19 主主控控模模塊塊 輸輸入入流流控控制制模模塊塊 變變換換流流控控制制模模塊塊 輸輸出出流流控控制制模模塊塊 高高層層 中中間間層層 底底層層 Copyright Xinjun Mao面向數(shù)據(jù)流的軟件設(shè)計(jì)方法面向數(shù)據(jù)流的軟件設(shè)計(jì)方法20n任務(wù) 把DFD中每個轉(zhuǎn)換映射為軟件結(jié)構(gòu)中的模塊n方法 從變換中心邊界開始沿

10、輸入、輸出通道向外移動,把輸入、輸出通道中的每個轉(zhuǎn)換映射為軟件結(jié)構(gòu)中的 一個模塊 沿著輸入流到輸出流的方向移動,將每個轉(zhuǎn)換映射為 相應(yīng)的模塊n有必要為每一模塊寫簡要的處理說明,包括:進(jìn)出模塊的信息,模塊處理功能的陳述,有關(guān)的限制和約束 I D A C E F G H B J 主主 控控 模模 塊塊 輸輸 入入 流流 控控 制制 模模 塊塊 變變 換換 流流 控控 制制 模模 塊塊 輸輸 出出 流流 控控 制制 模模 塊塊 輸輸 出出 流流 輸輸 入入 流流 變變 換換 流流 B D A C E F G H I J Copyright Xinjun Mao面向數(shù)據(jù)流的軟件設(shè)計(jì)方法面向數(shù)據(jù)流的軟件

11、設(shè)計(jì)方法22n以“模塊化”的思想,對軟件結(jié)構(gòu)中的模塊進(jìn)行拆并,以追求高內(nèi)聚、低耦合、易實(shí)現(xiàn)、易測試、易維護(hù)的軟件結(jié)構(gòu) I D A C E F G H B J 主主 控控 模模 塊塊 輸輸 入入 流流 控控 制制 模模 塊塊 變變 換換 流流 控控 制制 模模 塊塊 輸輸 出出 流流 控控 制制 模模 塊塊 輸輸 出出 流流 輸輸 入入 流流 變變 換換 流流 B D A C E F G H I J I D A C E F G H B J 主控模塊主控模塊 輸入流控制模塊輸入流控制模塊 變換流控制模塊變換流控制模塊 輸出流輸出流 輸入流輸入流 變換流變換流 B D A C E F G H I J

12、 Copyright Xinjun Mao面向數(shù)據(jù)流的軟件設(shè)計(jì)方法面向數(shù)據(jù)流的軟件設(shè)計(jì)方法251.基本概念和軟件設(shè)計(jì)過程2.變換分析方法3.事務(wù)分析方法4.啟發(fā)式設(shè)計(jì)策略5.設(shè)計(jì)優(yōu)化原則Copyright Xinjun Mao面向數(shù)據(jù)流的軟件設(shè)計(jì)方法面向數(shù)據(jù)流的軟件設(shè)計(jì)方法26n當(dāng)數(shù)據(jù)流具有明顯的事務(wù)特征時,應(yīng)該采用事務(wù)流的分析方法n基本步驟 步驟1. 復(fù)審基本系統(tǒng)模型 步驟2. 復(fù)審和精化數(shù)據(jù)流圖 步驟3. 確定數(shù)據(jù)流圖的類型:變換流還是事務(wù)流Copyright Xinjun Mao面向數(shù)據(jù)流的軟件設(shè)計(jì)方法面向數(shù)據(jù)流的軟件設(shè)計(jì)方法27n把整個事務(wù)型DFD劃分為以下三個部分 接受路徑部分:接受

13、事務(wù)的輸入 事務(wù)處理中心 動作路徑部分n判定在每一條動作路徑上數(shù)據(jù)流的特征:變換流或者事務(wù)流Copyright Xinjun Mao面向數(shù)據(jù)流的軟件設(shè)計(jì)方法面向數(shù)據(jù)流的軟件設(shè)計(jì)方法28 A B C D E Q R S P 事事務(wù)務(wù)處處理理中中心心 接接受受路路徑徑部部分分 動動作作路路徑徑部部分分 Copyright Xinjun Mao面向數(shù)據(jù)流的軟件設(shè)計(jì)方法面向數(shù)據(jù)流的軟件設(shè)計(jì)方法29 A B C D E Q R P 總總 控控 模模塊塊 輸輸 入入 控控制制 模模 塊塊 C C1 Cn 一一 條條 動動作作 路路 徑徑 事事 務(wù)務(wù) 處處理理 中中 心心 散散 轉(zhuǎn)轉(zhuǎn) Copyright X

14、injun Mao面向數(shù)據(jù)流的軟件設(shè)計(jì)方法面向數(shù)據(jù)流的軟件設(shè)計(jì)方法30 A B C D E Q R P 總總 控控 模模塊塊 B Q C C1 P A R 一一 條條 動動作作 路路 徑徑 事事 務(wù)務(wù) 處處理理 中中 心心 輸輸 入入 控控制制 Copyright Xinjun Mao面向數(shù)據(jù)流的軟件設(shè)計(jì)方法面向數(shù)據(jù)流的軟件設(shè)計(jì)方法31 A B C D E Q R P 總控模塊總控模塊 B Q C C1 P A R 一條動作路徑一條動作路徑 事務(wù)處事務(wù)處理中心理中心 輸入控制輸入控制 Copyright Xinjun Mao面向數(shù)據(jù)流的軟件設(shè)計(jì)方法面向數(shù)據(jù)流的軟件設(shè)計(jì)方法32 A B C D

15、E Q R P 總總 控控 模模塊塊 B Q C C1 P A R 一一 條條 動動作作 路路 徑徑 事事 務(wù)務(wù) 處處理理 中中 心心 Copyright Xinjun Mao面向數(shù)據(jù)流的軟件設(shè)計(jì)方法面向數(shù)據(jù)流的軟件設(shè)計(jì)方法331.基本概念和軟件設(shè)計(jì)過程2.變換分析方法3.事務(wù)分析方法4.啟發(fā)式設(shè)計(jì)策略5.設(shè)計(jì)優(yōu)化原則Copyright Xinjun Mao面向數(shù)據(jù)流的軟件設(shè)計(jì)方法面向數(shù)據(jù)流的軟件設(shè)計(jì)方法34n改造軟件結(jié)構(gòu),降低耦合度,提高內(nèi)聚度 如果在幾個模塊中發(fā)現(xiàn)共有的子功能,一般應(yīng)該將該子功能獨(dú)立出來作為一個模塊,以提高模塊的獨(dú)立性 合并那些具有較多的控制信息傳遞的模塊以降低模塊之間的耦

16、合度Copyright Xinjun Mao面向數(shù)據(jù)流的軟件設(shè)計(jì)方法面向數(shù)據(jù)流的軟件設(shè)計(jì)方法35n 一個好的軟件結(jié)構(gòu)通常頂層扇出較高,中間層扇出較低,底層又高扇入到公共模塊中去Copyright Xinjun Mao面向數(shù)據(jù)流的軟件設(shè)計(jì)方法面向數(shù)據(jù)流的軟件設(shè)計(jì)方法36n作用域是指受模塊內(nèi)部判定影響的所有模塊n控制域是指其所有的下屬模塊Copyright Xinjun Mao面向數(shù)據(jù)流的軟件設(shè)計(jì)方法面向數(shù)據(jù)流的軟件設(shè)計(jì)方法37n降低模塊接口復(fù)雜度和冗余度,提高協(xié)調(diào)性 模塊接口應(yīng)盡可能簡單并與模塊功能相一致如: Sort(Data; Number) -Sort(Data)n模塊功能可預(yù)測,避免對模

17、塊施加過多限制 模塊的功能可預(yù)測是指輸入恒定,則輸出恒定n追求單入口、單出口的模塊n為滿足設(shè)計(jì)和可移植性要求,把某些軟件用包 封裝起來Copyright Xinjun Mao面向數(shù)據(jù)流的軟件設(shè)計(jì)方法面向數(shù)據(jù)流的軟件設(shè)計(jì)方法381.基本概念和軟件設(shè)計(jì)過程2.變換分析方法3.事務(wù)分析方法4.啟發(fā)式設(shè)計(jì)策略5.設(shè)計(jì)優(yōu)化原則Copyright Xinjun Mao面向數(shù)據(jù)流的軟件設(shè)計(jì)方法面向數(shù)據(jù)流的軟件設(shè)計(jì)方法39n在先不考慮時間復(fù)雜度的情況下設(shè)計(jì)并精化軟件結(jié)構(gòu)n借用CASE工具模擬分析運(yùn)行性能,定位低效率的部分n詳細(xì)設(shè)計(jì)時對耗時的模塊進(jìn)行仔細(xì)的推敲,以減少模塊的運(yùn)行開銷n用高級語言編寫n對大量占用CPU資源的模塊必要時用低級語言

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論