2018-10-19 學(xué)信網(wǎng)教育 http://glbcc.cn
2020年自考《軟件工程》單元七
(四)簡答題
1. 什么是軟件概要設(shè)計?該階段的基本任務(wù)是什么?
2. 軟件設(shè)計的基本原理包括哪些內(nèi)容?
3. 什么是模塊間的耦合性?有哪幾種耦合性?簡述降低模塊間耦合度的方法。
4. 什么是軟件結(jié)構(gòu)?簡述軟件結(jié)構(gòu)設(shè)計優(yōu)化準則。
5. 變換分析設(shè)計與事務(wù)分析設(shè)計有什么區(qū)別?簡述其設(shè)計步驟。
(四)簡答題答案
1. 軟件概要設(shè)計又稱結(jié)構(gòu)設(shè)計,這是一個把軟件需求轉(zhuǎn)換為軟件表示(只是描述軟件的總的體系結(jié)構(gòu))的過程。該階段的基本任務(wù)是:
① 設(shè)計軟件系統(tǒng)結(jié)構(gòu):
·采用某種設(shè)計方法,將一個復(fù)雜的系統(tǒng)按功能劃分成模塊。
·確定每個模塊的功能。
·確定模塊之間的調(diào)用關(guān)系。
·確定模塊之間的接口,即模塊之間傳遞的信息。
·評價模塊結(jié)構(gòu)的質(zhì)量。
② 數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)庫設(shè)計:在概要設(shè)計階段,數(shù)據(jù)結(jié)構(gòu)設(shè)計應(yīng)用抽象的數(shù)據(jù)類型、數(shù)據(jù)庫設(shè)計應(yīng)用數(shù)據(jù)庫的邏輯設(shè)計。
③ 編寫概要設(shè)計文檔:包括概要設(shè)計說明書、數(shù)據(jù)庫設(shè)計說明書、用戶手冊、組裝測試計劃。
④ 評審:對設(shè)計部分是否完整地實現(xiàn)了需求中規(guī)定的功能、性能等要求,設(shè)計方案的可行性,關(guān)鍵的處理及內(nèi)外部接口定義正確性、有效性,各部分之間的一致性等一一進行評審。
2. 軟件設(shè)計的基本原理包括:
① 模塊化:指解決一個復(fù)雜問題時自頂向下逐層把軟件系統(tǒng)劃分成若干模塊的過程。每個模塊完成一個特定的子功能,所有模塊按某種方法組裝起來,成為一個整體,完成整個系統(tǒng)所要求的功能。模塊化是軟件解決復(fù)雜問題所具備的手段。
② 抽象:是認識復(fù)雜現(xiàn)象過程中使用的思維工具,即抽出事物本質(zhì)的共同的特性而暫不考慮它的細節(jié),不考慮其他因素。軟件工程中每一步都是對軟件解決方法的抽象層次的一次細化。
③ 信息隱蔽:指在設(shè)計和確定模塊時,使得一個模塊內(nèi)包含的信息(過程或數(shù)據(jù)),對于不需要這些信息的其他模塊來說,是不能訪問的。通過信息隱蔽,可以定義和實施對模塊的過程細節(jié)和局部數(shù)據(jù)結(jié)構(gòu)的存取限制。
④ 模塊獨立性。指每個模塊只完成系統(tǒng)要求的獨立的子功能,并且與其他模塊的聯(lián)系最少且接口簡單。衡量模塊獨立性有兩個標準耦合性和內(nèi)聚性,可判斷設(shè)計方案的優(yōu)劣。
3. 模塊間的耦合性是根據(jù)模塊的外部特征提出的,是對軟件系統(tǒng)結(jié)構(gòu)中各模塊間相互聯(lián)系緊密程度的一種度量,也稱塊間關(guān)系。耦合程度由低到高分為6種:
① 無直接耦合(不傳遞任何消息)。
② 數(shù)據(jù)耦合(傳遞的是值)。
③ 標記耦合(傳遞的是數(shù)據(jù)結(jié)構(gòu))。
④ 控制耦合(傳遞的是控制變量,例如開關(guān)、標志等)。
⑤ 外部耦合(傳遞的是I/O環(huán)境)
⑥公共耦合(傳遞的是在公共數(shù)據(jù)環(huán)境中的數(shù)據(jù))。
⑦ 內(nèi)容耦合(傳遞的是一個模塊的內(nèi)部數(shù)據(jù),往往出現(xiàn)在匯編語言中)。
模塊間聯(lián)系越緊密,其耦合性越強,模塊的獨立性越差。提高模塊獨立性,降低模塊間耦合度的措施是:
① 在耦合方式上降低模塊間接口的復(fù)雜性。
·模塊接口方式不采用直接引用(內(nèi)容耦合),而采用調(diào)用方式(例如過程語句調(diào)用);
·模塊接口信息通過參數(shù)傳遞且傳遞信息的結(jié)構(gòu)盡量簡單,不用復(fù)雜數(shù)據(jù)結(jié)構(gòu)(例如過程、指針等),參數(shù)個數(shù)不宜過多。
② 在傳遞信息類型上盡量使用數(shù)據(jù)耦合,避免控制耦合,慎用或有控制地使用公共耦合。
4. 軟件結(jié)構(gòu)設(shè)計優(yōu)化準則如下:
① 劃分模塊時,盡量做到高內(nèi)聚、低耦合,保持模塊相對獨立性,以此優(yōu)化初始的軟件結(jié)構(gòu)。
② 一個模塊的作用范圍應(yīng)在其控制范圍之內(nèi),且判定所在的模塊應(yīng)與受其影響的模塊在層次上盡量靠近。
③ 軟件結(jié)構(gòu)的深度、寬度、扇入、扇出應(yīng)適當(dāng)。
④ 模塊的大小要適中。
⑤ 模塊的接口要簡單、清晰、含義明確,便于理解,易于實現(xiàn)、測試與維護。
5. 變換分析設(shè)計是一個順序結(jié)構(gòu),由輸入、變換和輸出三部分組成,其工作過程有3步:取得數(shù)據(jù)、變換數(shù)據(jù)和給出數(shù)據(jù)。事務(wù)分析設(shè)計是將它的輸入流分離成許多發(fā)散的數(shù)據(jù)流,形成許多加工路徑,并根據(jù)輸入的值選擇其中一個路徑來執(zhí)行。二者區(qū)別:變換分析設(shè)計適用于具有明顯變換特征的數(shù)據(jù)流圖,事務(wù)分析設(shè)計適用于具有明顯事務(wù)特征的數(shù)據(jù)流圖。
變換分析設(shè)計步驟:
① 確定DFD中的變換中心、邏輯輸入和邏輯輸出:
·從物理輸入端開始,沿著數(shù)據(jù)流方向向系統(tǒng)中心尋找,直到有這樣的數(shù)據(jù)流,它不能再被看做是系統(tǒng)的輸入,則它的前一個數(shù)據(jù)流是系統(tǒng)的邏輯輸入。
·從物理輸出端開始,逆數(shù)據(jù)流方向向中間移動,可以確定系統(tǒng)的邏輯輸出。
·介于邏輯輸入和邏輯輸出之間的加工就是變換中心,即主加工。
② 設(shè)計軟件結(jié)構(gòu)的頂層和第一層——變換結(jié)構(gòu):
·頂層即主模塊,主要完成所有模塊的控制。
聲明:熱門院校推薦
熱門專業(yè)推薦