




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
本文格式為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)
是一個擁有明確定義的輸入、輸出和特征的程序?qū)嶓w。如函數(shù)、過程、子程序、宏等若模塊的所有輸入都是實(shí)現(xiàn)功能必不可少的,所有輸出都有動作產(chǎn)生,即成為定義明確的模塊??芍貜?fù)使用的軟件組件。
軟件構(gòu)件(SoftwareComponent)
現(xiàn)有的可復(fù)用構(gòu)件,大多是在對象的基礎(chǔ)上創(chuàng)立。
面向?qū)ο蟮脑O(shè)計(jì)
2、抽象與細(xì)化
抽象
提取客觀世界中一群事物的某些本質(zhì)共性,而暫時忽略他們的非本質(zhì)的細(xì)節(jié),是一個從特別到一般的過程。分層次考慮和處理問題(數(shù)據(jù)和過程)過程抽象:把完成一個特定功能的動作序列抽象為一個過程名和參數(shù)表,以后通過指定過程名和實(shí)際參數(shù)調(diào)用此過程。數(shù)據(jù)抽象:把一個數(shù)據(jù)對象的定義抽象為一個數(shù)據(jù)類型名,用此類型名可定義多個具有一致性質(zhì)的數(shù)據(jù)對象。
細(xì)化
從高到低的逐步分解過程。
面向?qū)ο蟮脑O(shè)計(jì)
3、信息隱蔽
定義
把系統(tǒng)分解為模塊時應(yīng)遵守的指導(dǎo)思想。
基本思想
模塊內(nèi)部的數(shù)據(jù)和過程,不需要這些信息的模塊不可訪問;每一個模塊只完成一個相對獨(dú)立的特定功能;模塊之間僅僅交換那些完成系統(tǒng)功能必需交換的信息。提高模塊的獨(dú)立性,當(dāng)修改或維護(hù)模塊時減少把一個模塊的錯誤擴(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)生的軟件需求說明轉(zhuǎn)換為用適當(dāng)手段表示的軟件設(shè)計(jì)文檔。解決“如何做〞的問題
內(nèi)容
數(shù)據(jù)設(shè)計(jì):信息模型軟件數(shù)據(jù)結(jié)構(gòu);體系結(jié)構(gòu)設(shè)計(jì):定義軟件主要組成部件之間的關(guān)系;接口設(shè)計(jì):軟件內(nèi)部、外部及與人之間的通信(數(shù)據(jù)流和控制流)過程設(shè)計(jì):將軟件體系結(jié)構(gòu)的組成部件轉(zhuǎn)變?yōu)閷浖M件的過程性描述。
面向?qū)ο蟮脑O(shè)計(jì)
7.1.3模塊化設(shè)計(jì)
定義
把大型軟件依照規(guī)定的原則劃分成一個個較小的、相對獨(dú)立但又相互關(guān)聯(lián)的模塊。
指導(dǎo)思想
分解模塊獨(dú)立性分解模塊獨(dú)立性自頂向下與由底向上
內(nèi)容
面向?qū)ο蟮脑O(shè)計(jì)
1.分解
分解是處理繁雜問題的常用方法
傳統(tǒng)軟件工程:利用分解畫分層DFD圖;設(shè)計(jì)階段:利用分解實(shí)現(xiàn)模塊化設(shè)計(jì);OO軟件工程:利用分解劃分類和對象。
將繁雜問題分解可以降低解題的總工作量和繁雜度
已知若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)各個擊破理論
面向?qū)ο蟮脑O(shè)計(jì)
將模塊數(shù)控制在最小成本區(qū)內(nèi)可以使總的開發(fā)工作量保持最小。
軟件開發(fā)工作量
總成本最小成本區(qū)M接口成本
模塊成本模塊數(shù)
面向?qū)ο蟮脑O(shè)計(jì)
2.模塊獨(dú)立性
概括了把軟件劃分為模塊時要遵守的準(zhǔn)則,也是判斷模塊構(gòu)造是不是合理的標(biāo)準(zhǔn)。堅(jiān)持模塊的獨(dú)立性,是獲得良好設(shè)計(jì)的關(guān)鍵。衡量標(biāo)準(zhǔn)
模塊本身的內(nèi)聚模塊內(nèi)部各個成分之間的聯(lián)系又稱塊內(nèi)聯(lián)系或模塊強(qiáng)度模塊間的耦合一個模塊與其他模塊之間的聯(lián)系又稱塊間聯(lián)系
模塊獨(dú)立性越高,塊內(nèi)聯(lián)系越強(qiáng),塊間聯(lián)系越弱。
面向?qū)ο蟮脑O(shè)計(jì)
1.內(nèi)聚cohesion從功能角度對模塊內(nèi)部聚合能力的度量。偶然性內(nèi)聚弱邏輯性內(nèi)聚時間性內(nèi)聚過程性內(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)
一些無任何聯(lián)系語句可能在多個模塊中重復(fù)屢屢,為節(jié)省存儲,把它們抽出來組成一個新的模塊。缺點(diǎn)(1)不易修改和維護(hù)(2)模塊的內(nèi)容不易理解,很難描述所完成的功能,增加程序的模糊。(3)可能會把一個完整的程序段分割到大量模塊內(nèi),在程序運(yùn)行過程中將會頻繁地相互調(diào)用和訪問數(shù)據(jù)。
面向?qū)ο蟮脑O(shè)計(jì)
低內(nèi)聚偶然內(nèi)聚(巧合內(nèi)聚)A例:MMOVEREADMOVEO
B
C
TORFILEFSTOT
模塊M中的三個語句沒有任何聯(lián)系缺點(diǎn):可理解性差,可修改性差
面向?qū)ο蟮脑O(shè)計(jì)
低內(nèi)聚
規(guī)律性內(nèi)聚由若干個規(guī)律功能相像的成分組成。執(zhí)行時須從模塊外引入判斷量,增大塊間耦合。
讀入分?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)聚
時間性內(nèi)聚
模塊所包含的成分,是由一致的執(zhí)行時間將他們連接到一起。
要求在同一時間內(nèi)執(zhí)行。
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年山西警官職業(yè)學(xué)院高職單招職業(yè)適應(yīng)性測試歷年(2019-2024年)真題考點(diǎn)試卷含答案解析
- 2025年山西藝術(shù)職業(yè)學(xué)院高職單招職業(yè)適應(yīng)性測試歷年(2019-2024年)真題考點(diǎn)試卷含答案解析
- 2025年山西水利職業(yè)技術(shù)學(xué)院高職單招(數(shù)學(xué))歷年真題考點(diǎn)含答案解析
- 2025年山東中醫(yī)藥高等??茖W(xué)校高職單招職業(yè)技能測試近5年常考版參考題庫含答案解析
- body-language課文教學(xué)課件
- 保險(xiǎn)行業(yè)時間管理
- DNS服務(wù)基礎(chǔ)知識課件
- 2345課件安全性分析
- 天津市河?xùn)|區(qū)2025屆高三下學(xué)期一模試題 地理 含解析
- 制作課程表指南
- 2024年初級消防員職業(yè)技能鑒定考試復(fù)習(xí)題庫(單選、多選題)
- 玉溪大紅山鐵礦二期北采區(qū)采礦施工組織設(shè)計(jì)
- 陽光心理-健康人生小學(xué)生心理健康主題班會課件
- 第9課資產(chǎn)階級革命與資本主義制度的確立課件-高中歷史統(tǒng)編版2019必修中外歷史綱要下冊
- 2024年共青團(tuán)入團(tuán)積極分子團(tuán)校結(jié)業(yè)考試試題庫及答案
- 高中英語語法-各種從句練習(xí)
- G -B- 43630-2023 塔式和機(jī)架式服務(wù)器能效限定值及能效等級(正式版)
- 人教版高一下學(xué)期期中考試數(shù)學(xué)試題及答案解析(共五套)
- 《零碳建筑技術(shù)概論》 課件全套 郭春梅 第1-13章 緒論、零碳建筑碳排放核算方法- 典型零碳建筑案例
- 統(tǒng)編版六年級下冊語文非連續(xù)性文本閱讀小升初專項(xiàng)訓(xùn)練(含答案)
- 24春國家開放大學(xué)《教育學(xué)》期末大作業(yè)
評論
0/150
提交評論