![第7章 面向?qū)ο笤O(shè)計(jì)_第1頁(yè)](http://file4.renrendoc.com/view/83354f43930b585b57be0af88cc814f3/83354f43930b585b57be0af88cc814f31.gif)
![第7章 面向?qū)ο笤O(shè)計(jì)_第2頁(yè)](http://file4.renrendoc.com/view/83354f43930b585b57be0af88cc814f3/83354f43930b585b57be0af88cc814f32.gif)
![第7章 面向?qū)ο笤O(shè)計(jì)_第3頁(yè)](http://file4.renrendoc.com/view/83354f43930b585b57be0af88cc814f3/83354f43930b585b57be0af88cc814f33.gif)
![第7章 面向?qū)ο笤O(shè)計(jì)_第4頁(yè)](http://file4.renrendoc.com/view/83354f43930b585b57be0af88cc814f3/83354f43930b585b57be0af88cc814f34.gif)
![第7章 面向?qū)ο笤O(shè)計(jì)_第5頁(yè)](http://file4.renrendoc.com/view/83354f43930b585b57be0af88cc814f3/83354f43930b585b57be0af88cc814f35.gif)
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
本文格式為Word版,下載可任意編輯——第7章面向?qū)ο笤O(shè)計(jì)
面向?qū)ο蟮脑O(shè)計(jì)
第7章面向?qū)ο笤O(shè)計(jì)
軟件設(shè)計(jì)概述面向?qū)ο笤O(shè)計(jì)建模系統(tǒng)架構(gòu)設(shè)計(jì)系統(tǒng)元素設(shè)計(jì)面向?qū)ο笤O(shè)計(jì)例如
面向?qū)ο蟮脑O(shè)計(jì)
7.1軟件設(shè)計(jì)概述7.1.1軟件設(shè)計(jì)的概念
模塊與構(gòu)件抽象與細(xì)化信息隱蔽
軟件復(fù)用
面向?qū)ο蟮脑O(shè)計(jì)
1.模塊與構(gòu)件
模塊(Module)
是一個(gè)擁有明確定義的輸入、輸出和特征的程序?qū)嶓w。如函數(shù)、過(guò)程、子程序、宏等若模塊的所有輸入都是實(shí)現(xiàn)功能必不可少的,所有輸出都有動(dòng)作產(chǎn)生,即成為定義明確的模塊。可重復(fù)使用的軟件組件。
軟件構(gòu)件(SoftwareComponent)
現(xiàn)有的可復(fù)用構(gòu)件,大多是在對(duì)象的基礎(chǔ)上創(chuàng)立。
面向?qū)ο蟮脑O(shè)計(jì)
2、抽象與細(xì)化
抽象
提取客觀世界中一群事物的某些本質(zhì)共性,而暫時(shí)忽略他們的非本質(zhì)的細(xì)節(jié),是一個(gè)從特別到一般的過(guò)程。分層次考慮和處理問(wèn)題(數(shù)據(jù)和過(guò)程)過(guò)程抽象:把完成一個(gè)特定功能的動(dòng)作序列抽象為一個(gè)過(guò)程名和參數(shù)表,以后通過(guò)指定過(guò)程名和實(shí)際參數(shù)調(diào)用此過(guò)程。數(shù)據(jù)抽象:把一個(gè)數(shù)據(jù)對(duì)象的定義抽象為一個(gè)數(shù)據(jù)類型名,用此類型名可定義多個(gè)具有一致性質(zhì)的數(shù)據(jù)對(duì)象。
細(xì)化
從高到低的逐步分解過(guò)程。
面向?qū)ο蟮脑O(shè)計(jì)
3、信息隱蔽
定義
把系統(tǒng)分解為模塊時(shí)應(yīng)遵守的指導(dǎo)思想。
基本思想
模塊內(nèi)部的數(shù)據(jù)和過(guò)程,不需要這些信息的模塊不可訪問(wèn);每一個(gè)模塊只完成一個(gè)相對(duì)獨(dú)立的特定功能;模塊之間僅僅交換那些完成系統(tǒng)功能必需交換的信息。提高模塊的獨(dú)立性,當(dāng)修改或維護(hù)模塊時(shí)減少把一個(gè)模塊的錯(cuò)誤擴(kuò)散到其他模塊中去的機(jī)遇。
目的
面向?qū)ο蟮脑O(shè)計(jì)
4、軟件復(fù)用
Designwithreuse,designforreuse
面向?qū)ο蟮脑O(shè)計(jì)
7.1.2軟件設(shè)計(jì)的任務(wù)
軟件設(shè)計(jì)的任務(wù)
把分析階段產(chǎn)生的軟件需求說(shuō)明轉(zhuǎn)換為用適當(dāng)手段表示的軟件設(shè)計(jì)文檔。解決“如何做〞的問(wèn)題
內(nèi)容
數(shù)據(jù)設(shè)計(jì):信息模型軟件數(shù)據(jù)結(jié)構(gòu);體系結(jié)構(gòu)設(shè)計(jì):定義軟件主要組成部件之間的關(guān)系;接口設(shè)計(jì):軟件內(nèi)部、外部及與人之間的通信(數(shù)據(jù)流和控制流)過(guò)程設(shè)計(jì):將軟件體系結(jié)構(gòu)的組成部件轉(zhuǎn)變?yōu)閷?duì)軟件組件的過(guò)程性描述。
面向?qū)ο蟮脑O(shè)計(jì)
7.1.3模塊化設(shè)計(jì)
定義
把大型軟件依照規(guī)定的原則劃分成一個(gè)個(gè)較小的、相對(duì)獨(dú)立但又相互關(guān)聯(lián)的模塊。
指導(dǎo)思想
分解模塊獨(dú)立性分解模塊獨(dú)立性自頂向下與由底向上
內(nèi)容
面向?qū)ο蟮脑O(shè)計(jì)
1.分解
分解是處理繁雜問(wèn)題的常用方法
傳統(tǒng)軟件工程:利用分解畫分層DFD圖;設(shè)計(jì)階段:利用分解實(shí)現(xiàn)模塊化設(shè)計(jì);OO軟件工程:利用分解劃分類和對(duì)象。
將繁雜問(wèn)題分解可以降低解題的總工作量和繁雜度
已知若C(p1)
C(p2),則E(p1)E(p2)
由經(jīng)驗(yàn):C(p1+p2)C(p1)+C(p2)所以:E(p1+p2)E(p1)+E(p2)各個(gè)擊破理論
面向?qū)ο蟮脑O(shè)計(jì)
將模塊數(shù)控制在最小成本區(qū)內(nèi)可以使總的開發(fā)工作量保持最小。
軟件開發(fā)工作量
總成本最小成本區(qū)M接口成本
模塊成本模塊數(shù)
面向?qū)ο蟮脑O(shè)計(jì)
2.模塊獨(dú)立性
概括了把軟件劃分為模塊時(shí)要遵守的準(zhǔn)則,也是判斷模塊構(gòu)造是不是合理的標(biāo)準(zhǔn)。堅(jiān)持模塊的獨(dú)立性,是獲得良好設(shè)計(jì)的關(guān)鍵。衡量標(biāo)準(zhǔn)
模塊本身的內(nèi)聚模塊內(nèi)部各個(gè)成分之間的聯(lián)系又稱塊內(nèi)聯(lián)系或模塊強(qiáng)度模塊間的耦合一個(gè)模塊與其他模塊之間的聯(lián)系又稱塊間聯(lián)系
模塊獨(dú)立性越高,塊內(nèi)聯(lián)系越強(qiáng),塊間聯(lián)系越弱。
面向?qū)ο蟮脑O(shè)計(jì)
1.內(nèi)聚cohesion從功能角度對(duì)模塊內(nèi)部聚合能力的度量。偶然性內(nèi)聚弱邏輯性內(nèi)聚時(shí)間性內(nèi)聚過(guò)程性內(nèi)聚通信性內(nèi)聚順序性內(nèi)聚功能性內(nèi)聚強(qiáng)
1
2
3
4
5
6
7
低內(nèi)聚
中內(nèi)聚
高內(nèi)聚
面向?qū)ο蟮脑O(shè)計(jì)
低內(nèi)聚
偶然性內(nèi)聚
塊內(nèi)各組成部分在功能上是互不相關(guān)的。
模塊內(nèi)部成分的組合純屬偶然。
面向?qū)ο蟮脑O(shè)計(jì)
低內(nèi)聚偶然內(nèi)聚(CoincidentalCohesion)
一些無(wú)任何聯(lián)系語(yǔ)句可能在多個(gè)模塊中重復(fù)屢屢,為節(jié)省存儲(chǔ),把它們抽出來(lái)組成一個(gè)新的模塊。缺點(diǎn)(1)不易修改和維護(hù)(2)模塊的內(nèi)容不易理解,很難描述所完成的功能,增加程序的模糊。(3)可能會(huì)把一個(gè)完整的程序段分割到大量模塊內(nèi),在程序運(yùn)行過(guò)程中將會(huì)頻繁地相互調(diào)用和訪問(wèn)數(shù)據(jù)。
面向?qū)ο蟮脑O(shè)計(jì)
低內(nèi)聚偶然內(nèi)聚(巧合內(nèi)聚)A例:MMOVEREADMOVEO
B
C
TORFILEFSTOT
模塊M中的三個(gè)語(yǔ)句沒(méi)有任何聯(lián)系缺點(diǎn):可理解性差,可修改性差
面向?qū)ο蟮脑O(shè)計(jì)
低內(nèi)聚
規(guī)律性內(nèi)聚由若干個(gè)規(guī)律功能相像的成分組成。執(zhí)行時(shí)須從模塊外引入判斷量,增大塊間耦合。
讀入分?jǐn)?shù)
平均/最高?計(jì)算平均分輸出結(jié)果計(jì)算最高分
面向?qū)ο蟮脑O(shè)計(jì)
規(guī)律內(nèi)聚模塊AEBFCGE、F、G規(guī)律功能相像,組成新模塊EFGCA1B1C1公用代碼段
A
B
公用代碼段
EFG模塊內(nèi)部規(guī)律EFG缺點(diǎn):加強(qiáng)了耦合程度(控制耦合)不易修改,效率低
面向?qū)ο蟮脑O(shè)計(jì)
低內(nèi)聚
時(shí)間性內(nèi)聚
模塊所包含的成分,是由一致的執(zhí)行時(shí)間將他們連接到一起。
要求在同一時(shí)間內(nèi)執(zhí)行。
溫馨提示
- 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 科技企業(yè)崗位晉升匯報(bào)創(chuàng)新與實(shí)力的展現(xiàn)
- 科技助力下的語(yǔ)文口語(yǔ)交際教學(xué)創(chuàng)新
- 服裝物流外包合同模板
- 二零二五年度圖書促銷員銷售目標(biāo)達(dá)成合同3篇
- 品牌銷售授權(quán)合同
- 太陽(yáng)能資源開發(fā)利用合同
- pe管材購(gòu)銷合同范本
- 網(wǎng)絡(luò)安全服務(wù)-安全保障合同協(xié)議
- 環(huán)保產(chǎn)業(yè)投資合作框架協(xié)議
- 醫(yī)療器械采購(gòu)及售后服務(wù)合同
- 中央2025年公安部部分直屬事業(yè)單位招聘84人筆試歷年參考題庫(kù)附帶答案詳解
- 三年級(jí)數(shù)學(xué)(上)計(jì)算題專項(xiàng)練習(xí)附答案
- 中醫(yī)診療方案腎病科
- 2025年安慶港華燃?xì)庀薰菊衅腹ぷ魅藛T14人高頻重點(diǎn)提升(共500題)附帶答案詳解
- 人教版(2025新版)七年級(jí)下冊(cè)數(shù)學(xué)第七章 相交線與平行線 單元測(cè)試卷(含答案)
- 2025年供電所所長(zhǎng)個(gè)人工作總結(jié)(2篇)
- 玩具有害物質(zhì)風(fēng)險(xiǎn)評(píng)估-洞察分析
- 春節(jié)節(jié)后復(fù)工全員安全意識(shí)提升及安全知識(shí)培訓(xùn)
- 2024年河南省公務(wù)員錄用考試《行測(cè)》真題及答案解析
- 2023年上海鐵路局集團(tuán)有限公司招聘筆試真題
評(píng)論
0/150
提交評(píng)論