第8章-軟件過程設(shè)計_第1頁
第8章-軟件過程設(shè)計_第2頁
第8章-軟件過程設(shè)計_第3頁
第8章-軟件過程設(shè)計_第4頁
第8章-軟件過程設(shè)計_第5頁
已閱讀5頁,還剩49頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計1過程設(shè)計主要內(nèi)容過程設(shè)計主要內(nèi)容軟件設(shè)計基本原理軟件設(shè)計基本原理軟件設(shè)計工具軟件設(shè)計工具軟件結(jié)構(gòu)設(shè)計軟件結(jié)構(gòu)設(shè)計軟件詳細(xì)設(shè)計軟件詳細(xì)設(shè)計主要內(nèi)容主要內(nèi)容上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計2軟件過程設(shè)計主要內(nèi)容n 軟件總體設(shè)計軟件總體設(shè)計( (概要設(shè)計概要設(shè)計) )將系統(tǒng)劃分成功能模塊將系統(tǒng)劃分成功能模塊明確軟件結(jié)構(gòu)(模塊組成的層次系統(tǒng))明確軟件結(jié)構(gòu)(模塊組成的層次系統(tǒng))采用適當(dāng)?shù)墓ぞ呙枋鲕浖Y(jié)構(gòu)采用適當(dāng)?shù)墓ぞ呙枋鲕浖Y(jié)構(gòu)n 軟件詳細(xì)設(shè)計軟件詳細(xì)設(shè)計確定怎樣具體實現(xiàn)軟件結(jié)構(gòu)圖中每個模塊的具

2、體內(nèi)容確定怎樣具體實現(xiàn)軟件結(jié)構(gòu)圖中每個模塊的具體內(nèi)容細(xì)化程序的基本邏輯細(xì)化程序的基本邏輯上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計3上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計4軟件設(shè)計的基本原理n 模塊化是解決一個復(fù)雜問題時自頂向下逐層把軟件系統(tǒng)劃分成若干模塊的過程n 模塊化的優(yōu)點(diǎn):降低問題復(fù)雜性減少開發(fā)工作量降低開發(fā)成本提供軟件生產(chǎn)率上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計5軟件設(shè)計的基本原理n 模塊化模塊化是解決一個復(fù)雜問題時自頂向下逐層把軟件系統(tǒng)劃分成若干模塊的過程n 模塊化的優(yōu)點(diǎn):降低問題復(fù)雜性減少開

3、發(fā)工作量降低開發(fā)成本提供軟件生產(chǎn)率n 在軟件的體系結(jié)構(gòu)中,模塊是可組合、分解和更換的單元,具有以下幾種基本屬性:接口:指模塊的輸入輸出。功能:模塊實現(xiàn)的功能。邏輯:內(nèi)部如何實現(xiàn)及所需數(shù)據(jù)。狀態(tài):模塊的運(yùn)行環(huán)境,調(diào)用與被調(diào)用關(guān)系。n 邏輯屬性反映內(nèi)部特性,其它屬性反映模塊的外部特性。軟件成本軟件成本M模塊數(shù)模塊數(shù) 成本成本(工作量)(工作量)接口接口成本成本成本成本/模塊模塊最小區(qū)域最小區(qū)域上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計6軟件設(shè)計的基本原理n 抽象:抽象:是認(rèn)識復(fù)雜現(xiàn)象過程中使用的思維工具。抽象是對具體對象(問題)進(jìn)行概括, 抽出這一類對象的公共性質(zhì)并加以

4、描述 的過程。 軟件結(jié)構(gòu)頂層模塊控制系統(tǒng)主要功能并影響全局,底層模塊完成具體的處理。在進(jìn)行軟件設(shè)計時,抽象與逐步求精、模塊化密切相關(guān),可提高軟件的可理解性n 信息隱蔽是指在設(shè)計和確定模塊時,使得一個模塊內(nèi)包含的信息(過程和數(shù)據(jù)),對于不需要這些信息的其他模塊來說,是不可訪問的。它為軟件系統(tǒng)的修改、測試及以后的維護(hù)都帶來好處。上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計7軟件設(shè)計的基本原理n 模塊的獨(dú)立性:指每個模塊只完成系統(tǒng)要求的獨(dú)立的子功能,并且與其它模塊的聯(lián)系量最少且接口簡單。n 包括兩個度量準(zhǔn)則耦合性:指軟件系統(tǒng)結(jié)構(gòu)中各模塊間相互聯(lián)系緊密程度的一種度量。模塊間耦

5、合高低取決于接口的復(fù)雜性、調(diào)用的方式及傳遞的信息。內(nèi)聚性:指模塊的功能強(qiáng)度的度量,即一個模塊內(nèi)部各個元素彼此結(jié)合的緊密程度的度量。上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計8軟件設(shè)計的基本原理 無直接耦合:兩個模塊間沒有直接的關(guān)系,不傳遞任何信息。 內(nèi)容耦合:一個模塊直接使用另一模塊的內(nèi)部數(shù)據(jù),或通過非正常入口而轉(zhuǎn)入另一個模塊內(nèi)部。 公共耦合:指通過一個公共數(shù)據(jù)環(huán)境相互作用的那些模塊間的耦合。 控制耦合:兩個模塊間傳遞控制信息。被調(diào)用函數(shù)通過控制信息有選擇地執(zhí)行塊內(nèi)某一功能。 標(biāo)記耦合:兩個模塊間傳遞的是數(shù)據(jù)結(jié)構(gòu)。 數(shù)據(jù)耦合:兩個模塊間有調(diào)用關(guān)系,傳遞簡單的數(shù)據(jù)值。

6、AB耦合性上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計9耦合性舉例2 數(shù)據(jù)耦合數(shù)據(jù)耦合3 標(biāo)記耦合標(biāo)記耦合住戶詳情中包含了“本月用電量”和“本月用水量”模塊ATRC:.模塊BGOTO TRC6 內(nèi)容耦合內(nèi)容耦合5 公共耦合公共耦合4 控制耦合控制耦合上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計10軟件設(shè)計的基本原理應(yīng)采用的總體原則:應(yīng)采用的總體原則:n 盡量使用數(shù)據(jù)耦合盡量使用數(shù)據(jù)耦合n 少用控制耦合少用控制耦合n 限制公共耦合的范圍限制公共耦合的范圍n 完全不用內(nèi)容耦合完全不用內(nèi)容耦合上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)

7、計軟件過程設(shè)計11軟件設(shè)計的基本原理 偶然內(nèi)聚:指一個模塊內(nèi)的各處理元素之間沒有任何聯(lián)系。 邏輯內(nèi)聚:指模塊內(nèi)執(zhí)行幾個邏輯上相似的功能,通過參數(shù)確定該模塊完成哪一個功能。例如把編輯各種輸入數(shù)據(jù)的功能放在一個模塊中。 時間內(nèi)聚:把需要同時執(zhí)行的動作組合在一起形成的模塊。例如程序設(shè)計中的初始化模塊 。 通信內(nèi)聚:指模塊內(nèi)所有處理元素都在同一個數(shù)據(jù)結(jié)構(gòu)上操作,或指各處理使用相同的輸入數(shù)據(jù)或者產(chǎn)生相同的輸出數(shù)據(jù)。 順序內(nèi)聚:指一個模塊中各個處理元素都密切相關(guān)于同一功能且必須順序執(zhí)行,前一功能元素的輸出是后一功能元素的輸入。 功能內(nèi)聚:指模塊內(nèi)所有元素共同完成一個功能,缺一不可。內(nèi)聚性上海財經(jīng)大學(xué)信息管

8、理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計12軟件設(shè)計的基本原理順序內(nèi)聚順序內(nèi)聚通信內(nèi)聚通信內(nèi)聚內(nèi)聚性舉例上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計13軟件結(jié)構(gòu)圖形工具|軟件結(jié)構(gòu)圖|軟件結(jié)構(gòu)設(shè)計優(yōu)化準(zhǔn)則|表示軟件結(jié)構(gòu)的HIPO圖 (Hierarchy Plus Input/Processing/Output)上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計14軟件結(jié)構(gòu)圖(Structure Chart)模塊:用方框表示,名字體現(xiàn)該模塊的功能。模塊間的控制關(guān)系:統(tǒng)率、從屬;模塊間的信息傳遞:兩個附加符號: 模塊選擇調(diào)用或循環(huán)調(diào)用。注意事

9、項:模塊唯一、從上到下調(diào)用、調(diào)用次序不嚴(yán)格。ABCMABCA 查詢成績B 學(xué)生記錄學(xué)號查詢標(biāo)志B1A入出X,Y Z編號1上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計15結(jié)構(gòu)圖的形態(tài)特征n 深度、寬度、扇入、扇出。深度、寬度、扇入、扇出。TDMABC扇入扇入扇出扇出深深度度寬度寬度上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計16軟件結(jié)構(gòu)圖舉例產(chǎn)生最佳解原始輸入得到好輸入計算最佳解輸出結(jié)果讀輸入編輯輸入結(jié)果格式化顯示輸出原始輸入好輸入好輸入解解編輯結(jié)果格式化解解格式化解產(chǎn)生最佳解上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)

10、計17軟件結(jié)構(gòu)圖注意事項n (1)同一名字的模塊在結(jié)構(gòu)圖中僅能出現(xiàn)一次。n (2)調(diào)用關(guān)系只能從上到下。n (3)不嚴(yán)格表示模塊的調(diào)用次序,習(xí)慣上從左到右,有時為了減少連線的交叉,適當(dāng)?shù)卣{(diào)整同一層模塊的左右位置,以保證結(jié)構(gòu)圖的清晰。n (4)結(jié)構(gòu)圖并不指明什么時候調(diào)用下層模塊,只表明一個模塊調(diào)用哪些模塊,至于模塊內(nèi)還有沒有其他成分則完全沒有表示。上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計18表示軟件結(jié)構(gòu)的HIPO圖訂貨處理1.0銷售管理系統(tǒng)進(jìn)貨處理2.0銷售統(tǒng)計3.0讀庫存記錄1.2輸入并檢驗訂單1.1缺貨處理4.0確定能否供貨1.3可供貨處理1.3.1缺貨貨單留底

11、1.3.2H圖:圖:每個矩形框代表一個模塊,連線表示“調(diào)用”而非“組成”。所謂HIPO,即對每個模塊附一張IPO圖。每個IPO圖中應(yīng)明確標(biāo)出對應(yīng)模塊的編號。上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計19表示軟件結(jié)構(gòu)的HIPO圖 IPO表系統(tǒng):_ 作者: _ 模塊:_ 日期: _ 編號: 1.3 被調(diào)用: 調(diào)用: 輸入 輸出: 處理: 局部數(shù)據(jù)元素文件名:全局變量:注釋:銷售管理系統(tǒng)確定能否訂貨訂貨處理可供貨模塊缺貨訂單留底訂單訂貨量X貨物庫存量Y供貨標(biāo)志庫存文件IF YX THEN 可供貨處理 ELSE 缺貨訂單留底ENDIFIPO圖:圖:上海財經(jīng)大學(xué)信息管理與工程

12、學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計20結(jié)構(gòu)化設(shè)計方法n 結(jié)構(gòu)化設(shè)計是以結(jié)構(gòu)化分析產(chǎn)生的數(shù)據(jù)流圖為基礎(chǔ),按一定的步驟映射成軟件結(jié)構(gòu)。n 結(jié)構(gòu)化設(shè)計結(jié)構(gòu)化設(shè)計變換分析設(shè)計變換分析設(shè)計事務(wù)分析設(shè)計事務(wù)分析設(shè)計上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計21變換型數(shù)據(jù)流圖由輸入、變換和輸出三部分組成。變換中心邏輯輸入邏輯輸出物理輸出物理輸入時間內(nèi)部表示信息輸入流變換流信息流外部表示輸出流上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計22事務(wù)型數(shù)據(jù)流圖 數(shù)據(jù)沿著輸入通路到達(dá)一個加工T。T將輸入數(shù)據(jù)分解成一串發(fā)散的數(shù)據(jù)流,形成許多的活動路徑,并根

13、據(jù)輸入數(shù)據(jù)的類型在若干動作序列中選出一個來執(zhí)行。T事務(wù)處理中心接收輸入數(shù)據(jù)。分析輸入數(shù)據(jù),確定類型。根據(jù)事務(wù)類型選取一活動通路。上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計23變換分析設(shè)計1. 確定輸入流和輸出流的邊界,從而孤立出變換中心(1)檢查“輸入流”的邊界從輸入的數(shù)據(jù)源開始,沿著每一個由數(shù)據(jù)源傳入的數(shù)據(jù)流的移動方向進(jìn)行跟蹤分析,逐個分析它所經(jīng)過的處理邏輯功能。如果僅是傳入的數(shù)據(jù)流作形式上的轉(zhuǎn)換,邏輯上沒有進(jìn)行實際的數(shù)據(jù)處理功能,則這些處理邏輯屬于系統(tǒng)的“輸入處理部分”。順著傳入的數(shù)據(jù)流的移動方向,一直跟蹤到它被真正地處理為止。上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第

14、8 8章章 軟件過程設(shè)計軟件過程設(shè)計24變換分析設(shè)計(2)檢查“輸出流”的邊界從輸出結(jié)果的地方開始,逆著每一個傳遞出去的數(shù)據(jù)流,由外向里反方向跟蹤,逐個分析它的處理邏輯功能,一直反方向跟蹤到它被真正地產(chǎn)生出來為止。(3)得到變換中心根據(jù)前兩步的分析結(jié)果,畫出一個閉環(huán)界線,在界線以內(nèi)的就是變換中心。上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計25變換分析設(shè)計2. 設(shè)計軟件結(jié)構(gòu)的頂層和第一層變換結(jié)構(gòu)CmCICTCO第一級分解第一級分解上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計26變換分析設(shè)計(1)頂層主模塊Cm是抽象出來的,以系統(tǒng)的名字命名,協(xié)

15、調(diào)控制下屬模塊,完成系統(tǒng)各項功能。(2)第一層:為每一個邏輯輸入設(shè)計一個輸入模塊功能:為主模塊提供數(shù)據(jù)輸入為每一個邏輯輸出設(shè)計一個輸出模塊功能:為主模塊提供數(shù)據(jù)輸出為中心變換設(shè)計一個變換模塊功能:將邏輯輸入轉(zhuǎn)換成邏輯輸出上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計27變換分析設(shè)計(1)輸入模塊的下屬模塊設(shè)計為每個輸入模塊設(shè)計兩個下層模塊 一個用于接收數(shù)據(jù) 另一個用于將這些數(shù)據(jù)轉(zhuǎn)換為所要求的數(shù)據(jù)重復(fù)直到物理輸入為止3. 設(shè)計中、下層模塊自頂向下,逐層分解A to BGet BGet Aaab上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計28變換分

16、析設(shè)計(2)輸出模塊的下屬模塊設(shè)計為每個輸出模塊設(shè)計兩個下層模塊 一個將調(diào)用模塊提供的數(shù)據(jù)轉(zhuǎn)換為所需的數(shù)據(jù)形式。 另一個用于發(fā)送數(shù)據(jù)重復(fù)直到物理輸出為止Put BPut AbaaB to A(3)變換模塊的下屬模塊設(shè)計按照模塊獨(dú)立性的原則來組織其結(jié)構(gòu),一般每個基本加工設(shè)計一個功能模塊。上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計29變換分析設(shè)計ABCDEFGHf1f2f3f4f5f6f7f8f9f10f11變換中心輸入輸出主模塊f2Get f3將f3變換成f7和f8Put f7Get f2BFPut f9f3f7f9f7f9f3f7f8Put f8EDCf8GAHPu

17、t f10Put f11Gut f1f1f1f2f8f10f10f11f10f11f3f2初始結(jié)構(gòu)圖初始結(jié)構(gòu)圖上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計30變換分析設(shè)計4. 設(shè)計的優(yōu)化根據(jù)設(shè)計準(zhǔn)則(1)輸入部分的求精對每個物理輸入設(shè)置專門模塊,以體現(xiàn)系統(tǒng)的外部接口;其他輸入模塊并非真正輸入,當(dāng)它與轉(zhuǎn)換數(shù)據(jù)的模塊都很簡單時,可將它們合并成一個模塊。Get CGet BGet AabA to BGet BGet AaabB to CGet Cbbc上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計31(2)輸出部分的求精為每個物理輸出設(shè)置專門模塊,同

18、時注意把相同或類似的物理輸出模塊合并在一起,以減低耦合度。Put BPut AbaaB to APut BPut Aa變換分析設(shè)計上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計32(3)變換部分的求精:根據(jù)設(shè)計準(zhǔn)則,對模塊進(jìn)行合并和調(diào)整。軟件結(jié)構(gòu)的求精,具有很大的經(jīng)驗性。追求“高內(nèi)聚,低耦合”方法:設(shè)計有獨(dú)立功能的模塊模塊間傳遞數(shù)據(jù)型的參數(shù)模塊間共享信息盡量少變換分析設(shè)計上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計33變換分析設(shè)計例:上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計34變換分析設(shè)計上海財經(jīng)大學(xué)信息管理與工程

19、學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計35分房處理分房處理分房活動分房活動輸出分房結(jié)果輸出分房結(jié)果獲得分房資源獲得分房資源獲得空房信息獲得空房信息獲得分房隊列獲得分房隊列輸出輸出住房住房結(jié)果結(jié)果獲得分房申請獲得分房申請計算分?jǐn)?shù)計算分?jǐn)?shù)上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計36事務(wù)分析設(shè)計事務(wù)分析的設(shè)計步驟和變換分析的設(shè)計步驟大部分相同或類似,主要差別僅在由數(shù)據(jù)流程圖到軟件結(jié)構(gòu)的映射方法不同。由事務(wù)流映射成的軟件結(jié)構(gòu)包括一個接收分支和一個發(fā)送分支。映射出接收分支結(jié)構(gòu)的方法和變換分析映射出輸入結(jié)構(gòu)的方法相似,即從事務(wù)中心的邊界開始,把沿著接收流通路的處理邏輯映

20、射成模塊。發(fā)送分支的結(jié)構(gòu)包含一個調(diào)度模塊,它控制下層的所有活動模塊;然后把數(shù)據(jù)流程圖中的每一個活動流通路映射成與它的特征相對應(yīng)的結(jié)構(gòu)。上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計37總控調(diào)度A_CTLB_CTLC_CTL接收通路C通路B通路A通路事務(wù)分析的映射方法事務(wù)分析的映射方法上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計38上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計39分房系統(tǒng)分房系統(tǒng)合法性檢查合法性檢查更改信息更改信息分房處理分房處理調(diào)房處理調(diào)房處理退房處理退房處理查詢處理查詢處理上海財經(jīng)大學(xué)信息管理與工程學(xué)

21、院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計40綜合數(shù)據(jù)流圖的映射|確定DFD整體上的類型:除明顯有事務(wù)類型的,都可認(rèn)為是變換型。事務(wù)型用于高層DFD變換有平行處理的優(yōu)點(diǎn)。|把與全局特性不同的局部區(qū)域孤立出來,確定類型。|按整體與局部的DFD特性,設(shè)計軟件結(jié)構(gòu)。上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計41混合型的結(jié)構(gòu)設(shè)計ab1b2c1db3c3c2bAC1DBC3C2lmkgjfheLKEFGJ主模塊Get dd to kPut kGet bAGet aC1C3C2事務(wù)中心EJGFPut lKPut mL上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件

22、過程設(shè)計42分層DFD映射:銷售管理系統(tǒng)銷售管理系統(tǒng)銷售管理系統(tǒng)讀鍵盤讀鍵盤類別類別1訂貨處理訂貨處理2進(jìn)貨處理進(jìn)貨處理3缺貨處理缺貨處理4銷售統(tǒng)計銷售統(tǒng)計輸出備貨單輸出備貨單輸入訂單輸入訂單輸出統(tǒng)計表輸出統(tǒng)計表輸出缺貨通知單輸出缺貨通知單輸入進(jìn)貨通知單輸入進(jìn)貨通知單主圖:主圖:1訂貨處理訂貨處理子圖子圖1:根據(jù)訂單及庫存確定能否供貨根據(jù)訂單及庫存確定能否供貨讀庫存記錄讀庫存記錄缺貨訂單留底缺貨訂單留底可供貨處理可供貨處理訂單留底訂單留底根據(jù)可供貨訂單修改庫存根據(jù)可供貨訂單修改庫存上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計43分層DFD映射g4g4g3g3g2g2g

23、1g1f2f2f1f1A1A1A2A2A3A3A4A4主圖:主圖:子圖:子圖:A AB BC Cf f1 1f2f2f3f3f4f4主模塊主模塊Put f3Get f2BAGet f1put f4CAA1A4A2A3f2g3,g4子圖:子圖:B1B1B2B2B3B3f f2 2g1g1g2g2f4f4f5f5f4f4主圖:主圖:f3f3f2f2f1f1A AB BA3A3思考題:思考題:f1f2f1 g1g2上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計44精化數(shù)據(jù)流圖DFD類型區(qū)分事務(wù)中心和數(shù)據(jù)接收通路區(qū)分輸入和輸出分支映射成事務(wù)結(jié)構(gòu)映射成變換結(jié)構(gòu)運(yùn)用模塊設(shè)計規(guī)則,精

24、化軟件結(jié)構(gòu)描述模塊功能、接口和全局?jǐn)?shù)據(jù)結(jié)構(gòu)復(fù)查詳細(xì)設(shè)計映射頂層和第一層事務(wù)變換設(shè)計中下層模塊結(jié)構(gòu)結(jié)構(gòu)化設(shè)計過程結(jié)構(gòu)化設(shè)計過程上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計45軟件詳細(xì)設(shè)計n 詳細(xì)設(shè)計結(jié)果基本上決定了最終程序代碼的質(zhì)量。不僅要邏輯詳細(xì)設(shè)計結(jié)果基本上決定了最終程序代碼的質(zhì)量。不僅要邏輯正確,性能滿足,還要簡明易懂。正確,性能滿足,還要簡明易懂。n 采用自頂向下,逐步求精的程序設(shè)計方法。n 使用三種基本控制結(jié)構(gòu)構(gòu)造程序:順序、選擇、循環(huán)。單入口,單出口的共同特點(diǎn)。n 主程序員的組織形式:一個主程序員、一個后備程序員和一個程序管理員三人為核心,再加上一些專家、其

25、他技術(shù)人員組成小組。上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計46軟件詳細(xì)設(shè)計表示法常用三種工具:圖形、表格和語言。n 程序流程圖(PFC)n PAD圖n 盒圖(N-S圖)n 過程設(shè)計語言上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計47PFC:三種基本控制結(jié)構(gòu)ABexpABFTFexpATAexpFTDO-UNTILDO-WHILEDOCASE ICASE 1CASE nFTDO-CASE上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計48程序流程圖程序流程圖,又稱程序框圖,是描述程序邏輯結(jié)構(gòu)的工具。它使用的符號與系統(tǒng)

26、流程圖的符號很多相同,但是,箭頭符號代表控制流而不是數(shù)據(jù)流。優(yōu)點(diǎn)是直觀清晰、易于使用。缺點(diǎn)是: 易造成非結(jié)構(gòu)化的程序結(jié)構(gòu),編碼時不加限制的使用GOTO語句,導(dǎo)致基本控制塊多入多出口,與軟件設(shè)計的原則相違背。 程序流程圖本質(zhì)上不是逐步求精的好工具,誘使過早考慮程序的控制流程,而不去考慮程序的全局結(jié)構(gòu)。 程序流程圖不易表示數(shù)據(jù)結(jié)構(gòu)。上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計49詳細(xì)設(shè)計案例分析程序流程圖(visio工具)策略:自頂向下,逐步求精的分解 上海財經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過程設(shè)計軟件過程設(shè)計50PAD圖問題分析圖(Problem Analysis Diagram)開始結(jié)束輸入A(1)到A(10)的值輸出A(1)到A(10)的值置初值:n=10sortsorti=1WHILE in-1WHILE jnj= i+ 1,max=A (i)A(i) =max , i= i+ 1 j=j+1B=maxmax=A(j)A (j) =BMaxA (j) 清晰地反映了程序的層次結(jié)構(gòu)。 支持

溫馨提示

  • 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

提交評論