版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)1過(guò)程設(shè)計(jì)主要內(nèi)容過(guò)程設(shè)計(jì)主要內(nèi)容軟件設(shè)計(jì)基本原理軟件設(shè)計(jì)基本原理軟件設(shè)計(jì)工具軟件設(shè)計(jì)工具軟件結(jié)構(gòu)設(shè)計(jì)軟件結(jié)構(gòu)設(shè)計(jì)軟件詳細(xì)設(shè)計(jì)軟件詳細(xì)設(shè)計(jì)主要內(nèi)容主要內(nèi)容上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)2軟件過(guò)程設(shè)計(jì)主要內(nèi)容n 軟件總體設(shè)計(jì)軟件總體設(shè)計(jì)( (概要設(shè)計(jì)概要設(shè)計(jì)) )將系統(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è)計(jì)軟件詳細(xì)設(shè)計(jì)確定怎樣具體實(shí)現(xiàn)軟件結(jié)構(gòu)圖中每個(gè)模塊的具
2、體內(nèi)容確定怎樣具體實(shí)現(xiàn)軟件結(jié)構(gòu)圖中每個(gè)模塊的具體內(nèi)容細(xì)化程序的基本邏輯細(xì)化程序的基本邏輯上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)3上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)4軟件設(shè)計(jì)的基本原理n 模塊化是解決一個(gè)復(fù)雜問(wèn)題時(shí)自頂向下逐層把軟件系統(tǒng)劃分成若干模塊的過(guò)程n 模塊化的優(yōu)點(diǎn):降低問(wèn)題復(fù)雜性減少開發(fā)工作量降低開發(fā)成本提供軟件生產(chǎn)率上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)5軟件設(shè)計(jì)的基本原理n 模塊化模塊化是解決一個(gè)復(fù)雜問(wèn)題時(shí)自頂向下逐層把軟件系統(tǒng)劃分成若干模塊的過(guò)程n 模塊化的優(yōu)點(diǎn):降低問(wèn)題復(fù)雜性減少開
3、發(fā)工作量降低開發(fā)成本提供軟件生產(chǎn)率n 在軟件的體系結(jié)構(gòu)中,模塊是可組合、分解和更換的單元,具有以下幾種基本屬性:接口:指模塊的輸入輸出。功能:模塊實(shí)現(xiàn)的功能。邏輯:內(nèi)部如何實(shí)現(xiàn)及所需數(shù)據(jù)。狀態(tài):模塊的運(yùn)行環(huán)境,調(diào)用與被調(diào)用關(guān)系。n 邏輯屬性反映內(nèi)部特性,其它屬性反映模塊的外部特性。軟件成本軟件成本M模塊數(shù)模塊數(shù) 成本成本(工作量)(工作量)接口接口成本成本成本成本/模塊模塊最小區(qū)域最小區(qū)域上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)6軟件設(shè)計(jì)的基本原理n 抽象:抽象:是認(rèn)識(shí)復(fù)雜現(xiàn)象過(guò)程中使用的思維工具。抽象是對(duì)具體對(duì)象(問(wèn)題)進(jìn)行概括, 抽出這一類對(duì)象的公共性質(zhì)并加以
4、描述 的過(guò)程。 軟件結(jié)構(gòu)頂層模塊控制系統(tǒng)主要功能并影響全局,底層模塊完成具體的處理。在進(jìn)行軟件設(shè)計(jì)時(shí),抽象與逐步求精、模塊化密切相關(guān),可提高軟件的可理解性n 信息隱蔽是指在設(shè)計(jì)和確定模塊時(shí),使得一個(gè)模塊內(nèi)包含的信息(過(guò)程和數(shù)據(jù)),對(duì)于不需要這些信息的其他模塊來(lái)說(shuō),是不可訪問(wèn)的。它為軟件系統(tǒng)的修改、測(cè)試及以后的維護(hù)都帶來(lái)好處。上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)7軟件設(shè)計(jì)的基本原理n 模塊的獨(dú)立性:指每個(gè)模塊只完成系統(tǒng)要求的獨(dú)立的子功能,并且與其它模塊的聯(lián)系量最少且接口簡(jiǎn)單。n 包括兩個(gè)度量準(zhǔn)則耦合性:指軟件系統(tǒng)結(jié)構(gòu)中各模塊間相互聯(lián)系緊密程度的一種度量。模塊間耦
5、合高低取決于接口的復(fù)雜性、調(diào)用的方式及傳遞的信息。內(nèi)聚性:指模塊的功能強(qiáng)度的度量,即一個(gè)模塊內(nèi)部各個(gè)元素彼此結(jié)合的緊密程度的度量。上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)8軟件設(shè)計(jì)的基本原理 無(wú)直接耦合:兩個(gè)模塊間沒有直接的關(guān)系,不傳遞任何信息。 內(nèi)容耦合:一個(gè)模塊直接使用另一模塊的內(nèi)部數(shù)據(jù),或通過(guò)非正常入口而轉(zhuǎn)入另一個(gè)模塊內(nèi)部。 公共耦合:指通過(guò)一個(gè)公共數(shù)據(jù)環(huán)境相互作用的那些模塊間的耦合。 控制耦合:兩個(gè)模塊間傳遞控制信息。被調(diào)用函數(shù)通過(guò)控制信息有選擇地執(zhí)行塊內(nèi)某一功能。 標(biāo)記耦合:兩個(gè)模塊間傳遞的是數(shù)據(jù)結(jié)構(gòu)。 數(shù)據(jù)耦合:兩個(gè)模塊間有調(diào)用關(guān)系,傳遞簡(jiǎn)單的數(shù)據(jù)值。
6、AB耦合性上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)9耦合性舉例2 數(shù)據(jù)耦合數(shù)據(jù)耦合3 標(biāo)記耦合標(biāo)記耦合住戶詳情中包含了“本月用電量”和“本月用水量”模塊ATRC:.模塊BGOTO TRC6 內(nèi)容耦合內(nèi)容耦合5 公共耦合公共耦合4 控制耦合控制耦合上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)10軟件設(shè)計(jì)的基本原理應(yīng)采用的總體原則:應(yīng)采用的總體原則:n 盡量使用數(shù)據(jù)耦合盡量使用數(shù)據(jù)耦合n 少用控制耦合少用控制耦合n 限制公共耦合的范圍限制公共耦合的范圍n 完全不用內(nèi)容耦合完全不用內(nèi)容耦合上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)
7、計(jì)軟件過(guò)程設(shè)計(jì)11軟件設(shè)計(jì)的基本原理 偶然內(nèi)聚:指一個(gè)模塊內(nèi)的各處理元素之間沒有任何聯(lián)系。 邏輯內(nèi)聚:指模塊內(nèi)執(zhí)行幾個(gè)邏輯上相似的功能,通過(guò)參數(shù)確定該模塊完成哪一個(gè)功能。例如把編輯各種輸入數(shù)據(jù)的功能放在一個(gè)模塊中。 時(shí)間內(nèi)聚:把需要同時(shí)執(zhí)行的動(dòng)作組合在一起形成的模塊。例如程序設(shè)計(jì)中的初始化模塊 。 通信內(nèi)聚:指模塊內(nèi)所有處理元素都在同一個(gè)數(shù)據(jù)結(jié)構(gòu)上操作,或指各處理使用相同的輸入數(shù)據(jù)或者產(chǎn)生相同的輸出數(shù)據(jù)。 順序內(nèi)聚:指一個(gè)模塊中各個(gè)處理元素都密切相關(guān)于同一功能且必須順序執(zhí)行,前一功能元素的輸出是后一功能元素的輸入。 功能內(nèi)聚:指模塊內(nèi)所有元素共同完成一個(gè)功能,缺一不可。內(nèi)聚性上海財(cái)經(jīng)大學(xué)信息管
8、理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)12軟件設(shè)計(jì)的基本原理順序內(nèi)聚順序內(nèi)聚通信內(nèi)聚通信內(nèi)聚內(nèi)聚性舉例上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)13軟件結(jié)構(gòu)圖形工具|軟件結(jié)構(gòu)圖|軟件結(jié)構(gòu)設(shè)計(jì)優(yōu)化準(zhǔn)則|表示軟件結(jié)構(gòu)的HIPO圖 (Hierarchy Plus Input/Processing/Output)上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)14軟件結(jié)構(gòu)圖(Structure Chart)模塊:用方框表示,名字體現(xiàn)該模塊的功能。模塊間的控制關(guān)系:統(tǒng)率、從屬;模塊間的信息傳遞:兩個(gè)附加符號(hào): 模塊選擇調(diào)用或循環(huán)調(diào)用。注意事
9、項(xiàng):模塊唯一、從上到下調(diào)用、調(diào)用次序不嚴(yán)格。ABCMABCA 查詢成績(jī)B 學(xué)生記錄學(xué)號(hào)查詢標(biāo)志B1A入出X,Y Z編號(hào)1上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)15結(jié)構(gòu)圖的形態(tài)特征n 深度、寬度、扇入、扇出。深度、寬度、扇入、扇出。TDMABC扇入扇入扇出扇出深深度度寬度寬度上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)16軟件結(jié)構(gòu)圖舉例產(chǎn)生最佳解原始輸入得到好輸入計(jì)算最佳解輸出結(jié)果讀輸入編輯輸入結(jié)果格式化顯示輸出原始輸入好輸入好輸入解解編輯結(jié)果格式化解解格式化解產(chǎn)生最佳解上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)
10、計(jì)17軟件結(jié)構(gòu)圖注意事項(xiàng)n (1)同一名字的模塊在結(jié)構(gòu)圖中僅能出現(xiàn)一次。n (2)調(diào)用關(guān)系只能從上到下。n (3)不嚴(yán)格表示模塊的調(diào)用次序,習(xí)慣上從左到右,有時(shí)為了減少連線的交叉,適當(dāng)?shù)卣{(diào)整同一層模塊的左右位置,以保證結(jié)構(gòu)圖的清晰。n (4)結(jié)構(gòu)圖并不指明什么時(shí)候調(diào)用下層模塊,只表明一個(gè)模塊調(diào)用哪些模塊,至于模塊內(nèi)還有沒有其他成分則完全沒有表示。上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)18表示軟件結(jié)構(gòu)的HIPO圖訂貨處理1.0銷售管理系統(tǒng)進(jìn)貨處理2.0銷售統(tǒng)計(jì)3.0讀庫(kù)存記錄1.2輸入并檢驗(yàn)訂單1.1缺貨處理4.0確定能否供貨1.3可供貨處理1.3.1缺貨貨單留底
11、1.3.2H圖:圖:每個(gè)矩形框代表一個(gè)模塊,連線表示“調(diào)用”而非“組成”。所謂HIPO,即對(duì)每個(gè)模塊附一張IPO圖。每個(gè)IPO圖中應(yīng)明確標(biāo)出對(duì)應(yīng)模塊的編號(hào)。上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)19表示軟件結(jié)構(gòu)的HIPO圖 IPO表系統(tǒng):_ 作者: _ 模塊:_ 日期: _ 編號(hào): 1.3 被調(diào)用: 調(diào)用: 輸入 輸出: 處理: 局部數(shù)據(jù)元素文件名:全局變量:注釋:銷售管理系統(tǒng)確定能否訂貨訂貨處理可供貨模塊缺貨訂單留底訂單訂貨量X貨物庫(kù)存量Y供貨標(biāo)志庫(kù)存文件IF YX THEN 可供貨處理 ELSE 缺貨訂單留底ENDIFIPO圖:圖:上海財(cái)經(jīng)大學(xué)信息管理與工程
12、學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)20結(jié)構(gòu)化設(shè)計(jì)方法n 結(jié)構(gòu)化設(shè)計(jì)是以結(jié)構(gòu)化分析產(chǎn)生的數(shù)據(jù)流圖為基礎(chǔ),按一定的步驟映射成軟件結(jié)構(gòu)。n 結(jié)構(gòu)化設(shè)計(jì)結(jié)構(gòu)化設(shè)計(jì)變換分析設(shè)計(jì)變換分析設(shè)計(jì)事務(wù)分析設(shè)計(jì)事務(wù)分析設(shè)計(jì)上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)21變換型數(shù)據(jù)流圖由輸入、變換和輸出三部分組成。變換中心邏輯輸入邏輯輸出物理輸出物理輸入時(shí)間內(nèi)部表示信息輸入流變換流信息流外部表示輸出流上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)22事務(wù)型數(shù)據(jù)流圖 數(shù)據(jù)沿著輸入通路到達(dá)一個(gè)加工T。T將輸入數(shù)據(jù)分解成一串發(fā)散的數(shù)據(jù)流,形成許多的活動(dòng)路徑,并根
13、據(jù)輸入數(shù)據(jù)的類型在若干動(dòng)作序列中選出一個(gè)來(lái)執(zhí)行。T事務(wù)處理中心接收輸入數(shù)據(jù)。分析輸入數(shù)據(jù),確定類型。根據(jù)事務(wù)類型選取一活動(dòng)通路。上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)23變換分析設(shè)計(jì)1. 確定輸入流和輸出流的邊界,從而孤立出變換中心(1)檢查“輸入流”的邊界從輸入的數(shù)據(jù)源開始,沿著每一個(gè)由數(shù)據(jù)源傳入的數(shù)據(jù)流的移動(dòng)方向進(jìn)行跟蹤分析,逐個(gè)分析它所經(jīng)過(guò)的處理邏輯功能。如果僅是傳入的數(shù)據(jù)流作形式上的轉(zhuǎn)換,邏輯上沒有進(jìn)行實(shí)際的數(shù)據(jù)處理功能,則這些處理邏輯屬于系統(tǒng)的“輸入處理部分”。順著傳入的數(shù)據(jù)流的移動(dòng)方向,一直跟蹤到它被真正地處理為止。上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第
14、8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)24變換分析設(shè)計(jì)(2)檢查“輸出流”的邊界從輸出結(jié)果的地方開始,逆著每一個(gè)傳遞出去的數(shù)據(jù)流,由外向里反方向跟蹤,逐個(gè)分析它的處理邏輯功能,一直反方向跟蹤到它被真正地產(chǎn)生出來(lái)為止。(3)得到變換中心根據(jù)前兩步的分析結(jié)果,畫出一個(gè)閉環(huán)界線,在界線以內(nèi)的就是變換中心。上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)25變換分析設(shè)計(jì)2. 設(shè)計(jì)軟件結(jié)構(gòu)的頂層和第一層變換結(jié)構(gòu)CmCICTCO第一級(jí)分解第一級(jí)分解上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)26變換分析設(shè)計(jì)(1)頂層主模塊Cm是抽象出來(lái)的,以系統(tǒng)的名字命名,協(xié)
15、調(diào)控制下屬模塊,完成系統(tǒng)各項(xiàng)功能。(2)第一層:為每一個(gè)邏輯輸入設(shè)計(jì)一個(gè)輸入模塊功能:為主模塊提供數(shù)據(jù)輸入為每一個(gè)邏輯輸出設(shè)計(jì)一個(gè)輸出模塊功能:為主模塊提供數(shù)據(jù)輸出為中心變換設(shè)計(jì)一個(gè)變換模塊功能:將邏輯輸入轉(zhuǎn)換成邏輯輸出上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)27變換分析設(shè)計(jì)(1)輸入模塊的下屬模塊設(shè)計(jì)為每個(gè)輸入模塊設(shè)計(jì)兩個(gè)下層模塊 一個(gè)用于接收數(shù)據(jù) 另一個(gè)用于將這些數(shù)據(jù)轉(zhuǎn)換為所要求的數(shù)據(jù)重復(fù)直到物理輸入為止3. 設(shè)計(jì)中、下層模塊自頂向下,逐層分解A to BGet BGet Aaab上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)28變換分
16、析設(shè)計(jì)(2)輸出模塊的下屬模塊設(shè)計(jì)為每個(gè)輸出模塊設(shè)計(jì)兩個(gè)下層模塊 一個(gè)將調(diào)用模塊提供的數(shù)據(jù)轉(zhuǎn)換為所需的數(shù)據(jù)形式。 另一個(gè)用于發(fā)送數(shù)據(jù)重復(fù)直到物理輸出為止Put BPut AbaaB to A(3)變換模塊的下屬模塊設(shè)計(jì)按照模塊獨(dú)立性的原則來(lái)組織其結(jié)構(gòu),一般每個(gè)基本加工設(shè)計(jì)一個(gè)功能模塊。上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)29變換分析設(shè)計(jì)ABCDEFGHf1f2f3f4f5f6f7f8f9f10f11變換中心輸入輸出主模塊f2Get f3將f3變換成f7和f8Put f7Get f2BFPut f9f3f7f9f7f9f3f7f8Put f8EDCf8GAHPu
17、t f10Put f11Gut f1f1f1f2f8f10f10f11f10f11f3f2初始結(jié)構(gòu)圖初始結(jié)構(gòu)圖上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)30變換分析設(shè)計(jì)4. 設(shè)計(jì)的優(yōu)化根據(jù)設(shè)計(jì)準(zhǔn)則(1)輸入部分的求精對(duì)每個(gè)物理輸入設(shè)置專門模塊,以體現(xiàn)系統(tǒng)的外部接口;其他輸入模塊并非真正輸入,當(dāng)它與轉(zhuǎn)換數(shù)據(jù)的模塊都很簡(jiǎn)單時(shí),可將它們合并成一個(gè)模塊。Get CGet BGet AabA to BGet BGet AaabB to CGet Cbbc上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)31(2)輸出部分的求精為每個(gè)物理輸出設(shè)置專門模塊,同
18、時(shí)注意把相同或類似的物理輸出模塊合并在一起,以減低耦合度。Put BPut AbaaB to APut BPut Aa變換分析設(shè)計(jì)上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)32(3)變換部分的求精:根據(jù)設(shè)計(jì)準(zhǔn)則,對(duì)模塊進(jìn)行合并和調(diào)整。軟件結(jié)構(gòu)的求精,具有很大的經(jīng)驗(yàn)性。追求“高內(nèi)聚,低耦合”方法:設(shè)計(jì)有獨(dú)立功能的模塊模塊間傳遞數(shù)據(jù)型的參數(shù)模塊間共享信息盡量少變換分析設(shè)計(jì)上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)33變換分析設(shè)計(jì)例:上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)34變換分析設(shè)計(jì)上海財(cái)經(jīng)大學(xué)信息管理與工程
19、學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)35分房處理分房處理分房活動(dòng)分房活動(dòng)輸出分房結(jié)果輸出分房結(jié)果獲得分房資源獲得分房資源獲得空房信息獲得空房信息獲得分房隊(duì)列獲得分房隊(duì)列輸出輸出住房住房結(jié)果結(jié)果獲得分房申請(qǐng)獲得分房申請(qǐng)計(jì)算分?jǐn)?shù)計(jì)算分?jǐn)?shù)上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)36事務(wù)分析設(shè)計(jì)事務(wù)分析的設(shè)計(jì)步驟和變換分析的設(shè)計(jì)步驟大部分相同或類似,主要差別僅在由數(shù)據(jù)流程圖到軟件結(jié)構(gòu)的映射方法不同。由事務(wù)流映射成的軟件結(jié)構(gòu)包括一個(gè)接收分支和一個(gè)發(fā)送分支。映射出接收分支結(jié)構(gòu)的方法和變換分析映射出輸入結(jié)構(gòu)的方法相似,即從事務(wù)中心的邊界開始,把沿著接收流通路的處理邏輯映
20、射成模塊。發(fā)送分支的結(jié)構(gòu)包含一個(gè)調(diào)度模塊,它控制下層的所有活動(dòng)模塊;然后把數(shù)據(jù)流程圖中的每一個(gè)活動(dòng)流通路映射成與它的特征相對(duì)應(yīng)的結(jié)構(gòu)。上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)37總控調(diào)度A_CTLB_CTLC_CTL接收通路C通路B通路A通路事務(wù)分析的映射方法事務(wù)分析的映射方法上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)38上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)39分房系統(tǒng)分房系統(tǒng)合法性檢查合法性檢查更改信息更改信息分房處理分房處理調(diào)房處理調(diào)房處理退房處理退房處理查詢處理查詢處理上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)
21、院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)40綜合數(shù)據(jù)流圖的映射|確定DFD整體上的類型:除明顯有事務(wù)類型的,都可認(rèn)為是變換型。事務(wù)型用于高層DFD變換有平行處理的優(yōu)點(diǎn)。|把與全局特性不同的局部區(qū)域孤立出來(lái),確定類型。|按整體與局部的DFD特性,設(shè)計(jì)軟件結(jié)構(gòu)。上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)41混合型的結(jié)構(gòu)設(shè)計(jì)ab1b2c1db3c3c2bAC1DBC3C2lmkgjfheLKEFGJ主模塊Get dd to kPut kGet bAGet aC1C3C2事務(wù)中心EJGFPut lKPut mL上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件
22、過(guò)程設(shè)計(jì)42分層DFD映射:銷售管理系統(tǒng)銷售管理系統(tǒng)銷售管理系統(tǒng)讀鍵盤讀鍵盤類別類別1訂貨處理訂貨處理2進(jìn)貨處理進(jìn)貨處理3缺貨處理缺貨處理4銷售統(tǒng)計(jì)銷售統(tǒng)計(jì)輸出備貨單輸出備貨單輸入訂單輸入訂單輸出統(tǒng)計(jì)表輸出統(tǒng)計(jì)表輸出缺貨通知單輸出缺貨通知單輸入進(jìn)貨通知單輸入進(jìn)貨通知單主圖:主圖:1訂貨處理訂貨處理子圖子圖1:根據(jù)訂單及庫(kù)存確定能否供貨根據(jù)訂單及庫(kù)存確定能否供貨讀庫(kù)存記錄讀庫(kù)存記錄缺貨訂單留底缺貨訂單留底可供貨處理可供貨處理訂單留底訂單留底根據(jù)可供貨訂單修改庫(kù)存根據(jù)可供貨訂單修改庫(kù)存上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)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上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)44精化數(shù)據(jù)流圖DFD類型區(qū)分事務(wù)中心和數(shù)據(jù)接收通路區(qū)分輸入和輸出分支映射成事務(wù)結(jié)構(gòu)映射成變換結(jié)構(gòu)運(yùn)用模塊設(shè)計(jì)規(guī)則,精
24、化軟件結(jié)構(gòu)描述模塊功能、接口和全局?jǐn)?shù)據(jù)結(jié)構(gòu)復(fù)查詳細(xì)設(shè)計(jì)映射頂層和第一層事務(wù)變換設(shè)計(jì)中下層模塊結(jié)構(gòu)結(jié)構(gòu)化設(shè)計(jì)過(guò)程結(jié)構(gòu)化設(shè)計(jì)過(guò)程上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)45軟件詳細(xì)設(shè)計(jì)n 詳細(xì)設(shè)計(jì)結(jié)果基本上決定了最終程序代碼的質(zhì)量。不僅要邏輯詳細(xì)設(shè)計(jì)結(jié)果基本上決定了最終程序代碼的質(zhì)量。不僅要邏輯正確,性能滿足,還要簡(jiǎn)明易懂。正確,性能滿足,還要簡(jiǎn)明易懂。n 采用自頂向下,逐步求精的程序設(shè)計(jì)方法。n 使用三種基本控制結(jié)構(gòu)構(gòu)造程序:順序、選擇、循環(huán)。單入口,單出口的共同特點(diǎn)。n 主程序員的組織形式:一個(gè)主程序員、一個(gè)后備程序員和一個(gè)程序管理員三人為核心,再加上一些專家、其
25、他技術(shù)人員組成小組。上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)46軟件詳細(xì)設(shè)計(jì)表示法常用三種工具:圖形、表格和語(yǔ)言。n 程序流程圖(PFC)n PAD圖n 盒圖(N-S圖)n 過(guò)程設(shè)計(jì)語(yǔ)言上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)47PFC:三種基本控制結(jié)構(gòu)ABexpABFTFexpATAexpFTDO-UNTILDO-WHILEDOCASE ICASE 1CASE nFTDO-CASE上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)48程序流程圖程序流程圖,又稱程序框圖,是描述程序邏輯結(jié)構(gòu)的工具。它使用的符號(hào)與系統(tǒng)
26、流程圖的符號(hào)很多相同,但是,箭頭符號(hào)代表控制流而不是數(shù)據(jù)流。優(yōu)點(diǎn)是直觀清晰、易于使用。缺點(diǎn)是: 易造成非結(jié)構(gòu)化的程序結(jié)構(gòu),編碼時(shí)不加限制的使用GOTO語(yǔ)句,導(dǎo)致基本控制塊多入多出口,與軟件設(shè)計(jì)的原則相違背。 程序流程圖本質(zhì)上不是逐步求精的好工具,誘使過(guò)早考慮程序的控制流程,而不去考慮程序的全局結(jié)構(gòu)。 程序流程圖不易表示數(shù)據(jù)結(jié)構(gòu)。上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)49詳細(xì)設(shè)計(jì)案例分析程序流程圖(visio工具)策略:自頂向下,逐步求精的分解 上海財(cái)經(jīng)大學(xué)信息管理與工程學(xué)院第第8 8章章 軟件過(guò)程設(shè)計(jì)軟件過(guò)程設(shè)計(jì)50PAD圖問(wèn)題分析圖(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. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 工程建設(shè)項(xiàng)目招標(biāo)合同樣本
- 住宅室內(nèi)設(shè)計(jì)施工合同
- 住宅建造合同模板
- 電梯設(shè)備安裝與定期檢修協(xié)議
- 上海市內(nèi)銷商品房出售合同
- 2024年個(gè)人土地交易合同模板
- 2024意外傷害賠償協(xié)議書范例
- 影視廣告制作合同
- 合伙協(xié)議與法律規(guī)定沖突時(shí)的解決途徑
- 2024年技師合同書
- 無(wú)償劃轉(zhuǎn)國(guó)有股權(quán)及資產(chǎn)的可行性論證報(bào)告(附無(wú)償劃轉(zhuǎn)協(xié)議)
- 公務(wù)車司機(jī)年度工作總結(jié) 公務(wù)用車駕駛員個(gè)人總結(jié)
- 第二版《高中物理題型筆記》上冊(cè)
- 上海市大學(xué)生安全教育(2022級(jí))學(xué)習(xí)通課后章節(jié)答案期末考試題庫(kù)2023年
- 蘇軾生平及創(chuàng)作整理
- 柴油發(fā)電機(jī)組應(yīng)急預(yù)案
- 語(yǔ)文《猜猜他是誰(shuí)》教案
- 繪本:讓誰(shuí)先吃好呢
- 寬容待人正確交往中小學(xué)生教育主題班會(huì)
- 移動(dòng)通信網(wǎng)絡(luò)運(yùn)行維護(hù)管理規(guī)程
- 龍頭股戰(zhàn)法優(yōu)質(zhì)獲獎(jiǎng)?wù)n件
評(píng)論
0/150
提交評(píng)論