1.3軟件設(shè)計(jì)
軟件設(shè)計(jì)原則: 軟件設(shè)計(jì)的原則對(duì)提高軟件的設(shè)計(jì)質(zhì)量有很大的幫助。
◆ 抽象
抽象是指忽視一個(gè)主題中與當(dāng)前目標(biāo)無(wú)關(guān)的那些方面,以便更充分地注意與當(dāng)前目標(biāo)有關(guān)的方面。過(guò)程抽象和數(shù)據(jù)抽象是常用的兩種主要抽象手段。
◆ 模塊化
模塊化是指將一個(gè)待開(kāi)發(fā)的軟件分解成若干個(gè)小的簡(jiǎn)單的部分——模塊,每個(gè)模塊可獨(dú)立地開(kāi)發(fā)、測(cè)試、最后組裝成完整的軟件。這是一種復(fù)雜問(wèn)題的“分而治之”的原則。
模塊是指執(zhí)行某一特定任務(wù)的數(shù)據(jù)結(jié)構(gòu)和程序代碼。一個(gè)模塊有它的外部特征和內(nèi)部特征。
◆ 信息隱蔽
信息隱蔽是開(kāi)發(fā)整體程序結(jié)構(gòu)時(shí)使用的法則,即將每個(gè)程序的成分隱蔽或封裝在一個(gè)單一的設(shè)計(jì)模塊中,定義每一個(gè)模塊時(shí)盡可能少地顯露其內(nèi)部的處理。信息隱蔽原則對(duì)提高軟件的可修改性、可測(cè)試性和可移植性都有重要的作用。
◆ 模塊獨(dú)立
模塊獨(dú)立是指每個(gè)模塊完成一個(gè)相對(duì)獨(dú)立的子功能,并且與其他模塊之間的聯(lián)系簡(jiǎn)單。衡量模塊獨(dú)立程度的度量標(biāo)準(zhǔn)有兩個(gè):耦合和內(nèi)聚。
耦合是指模塊之間聯(lián)系的緊密程度。耦合度越高則模塊的獨(dú)立性越差。按耦合度從低到高依次有7種耦合方式。
Ø 非直接耦合(獨(dú)立運(yùn)行)
Ø 數(shù)據(jù)耦合(用參數(shù)表傳遞簡(jiǎn)單數(shù)據(jù))
Ø 標(biāo)記耦合(傳遞數(shù)據(jù)結(jié)構(gòu)或者一部分)
Ø 控制耦合(傳遞的信息包括控制模塊的信息)
Ø 外部耦合(模塊與軟件之外的環(huán)境有關(guān))
Ø 公共耦合(多個(gè)模塊引用同一全局的數(shù)據(jù)區(qū))
Ø 內(nèi)容耦合(訪(fǎng)問(wèn)內(nèi)部數(shù)據(jù),代碼重疊或者多個(gè)入口)
內(nèi)聚是指模塊內(nèi)部各元素之間聯(lián)系的緊密程度內(nèi)聚度越低模塊的獨(dú)立性越差。按內(nèi)聚度從低到高依次有7種內(nèi)聚種類(lèi)。
Ø 偶然內(nèi)聚(模塊完成的多個(gè)任務(wù),任務(wù)之間的關(guān)系松散)
Ø 邏輯內(nèi)聚(模塊完成邏輯相關(guān)的一組任務(wù))
Ø 瞬時(shí)內(nèi)聚(模塊的所有任務(wù)必須在同一時(shí)間間隔內(nèi)執(zhí)行)
Ø 過(guò)程內(nèi)聚(模塊的處理元素相關(guān)而且按照特定的次序執(zhí)行)
Ø 通信內(nèi)聚(模塊的所有元素集中在一個(gè)數(shù)據(jù)結(jié)構(gòu)區(qū)域上)
Ø 順序內(nèi)聚(模塊的處理元素相關(guān),必須順序執(zhí)行)
Ø 功能內(nèi)聚(模塊完成單一的功能,各個(gè)部分協(xié)調(diào)工作,而且不可缺少)
模塊分解原則:
Ø 滿(mǎn)足信息隱蔽;
Ø 盡量?jī)?nèi)聚度高,模塊間偶合度低;
Ø 模塊大小在(50-100語(yǔ)句);
Ø 模塊調(diào)用深度不能過(guò)大;
Ø 模塊的扇入(直接調(diào)用該模塊)應(yīng)盡量大,扇出(直接調(diào)用下級(jí)模塊數(shù))不宜過(guò)大;
Ø 設(shè)計(jì)單入口和單出口的模塊;
Ø 模塊的作用域應(yīng)在控制域之內(nèi):
作用域:受模塊內(nèi)一個(gè)判定影響的所有的模塊的集合;
控制域:該模塊本身和被該模塊直接或間接調(diào)用的所有的模塊的集合;
相關(guān)推薦:推薦:2010年計(jì)算機(jī)軟件水平考試必備完美攻略北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |