2023年自考《軟體工程》複習重點及試驗指導彙總

2022-08-10 13:48:09 字數 2363 閱讀 1799

2023年自學考試《軟體工程》複習重點及試驗指導(3)

第三章結構化設計

1. 軟體設計階段的主要任務、方法、階段:

需求分析階段的主要任務是確定系統必須「做什麼」,形成軟體的需求規格說明書,軟體設計階段的主要任務是確定系統「怎麼做」,從軟體需求規格說明書出發,形成軟體的具體設計方案,軟體設計可以採用多種方法,如結構化設計方法、面向資料結構的設計方法、物件導向的設計方法等,結構化軟體設計可以分為總體設計和詳細設計兩個階段。

2. 總體設計階段的主要任務及其內容:

總體設計階段的主要任務是把系統的功能需求分配給軟體結構,形成軟體的模組結構圖(msd),在結構圖中矩形表示功能單元,稱為「模組」,連線上下層模組的線段表示它們之間的呼叫關係,在總體設計階段,每個模組還處於黑盒子級,模組通過外部特徵標識,名字、輸入、輸出。

3. 總體設計的表示形式及其內容(層次圖、hipo圖、結構圖):

層次圖是軟體總體設計階段最常使用的表示形式之一,用來描繪軟體的層次結構,圖中的每個方框代表乙個模組,方框間的連線表示模組的呼叫關係,層次圖很適合於在自頂向下設計軟體的過程中使用;

hipo圖是由美國ibm公司發明的「層次圖+輸入/處理/輸出圖」的英文縮寫,hipo圖實際上由h圖和ipo圖兩部分組成,h圖就是上面提到的層次圖,為了能使hipo圖具有可跟蹤性,在h圖里除了最頂層的方框之外,每個方框都加了編號;

結構圖和層次圖類似,圖中每個方框代表乙個模組,方框之間的箭頭(或直線)表示模組的呼叫關係,在結構圖中通常還用帶注釋的箭頭表示模組呼叫過程中來回傳遞的資訊,尾部是空心圓表示傳遞的是資料,實心圓表示傳遞的是控制資訊。

4. 模組及其組成:

模組是執行乙個特殊任務或實現乙個特殊的抽象資料型別的一組例程和資料結構,模組由兩部分組成,介面和實現模組功能的執行機制。

5. 面向資料流的設計方法(綜合應用):

面向資料流的設計方法把資料流圖對映成為軟體結構,資料流圖的型別決定了對映的方法,資料流圖可以分為變換型資料流圖和事務型資料流圖,具有較明顯的輸入、變換(或稱主加工)和輸出介面的資料流圖稱為變換型資料流圖,資料沿輸入通路到達乙個處理模組,這個處理模組根據輸入資料的型別在若干動作序列中選出乙個來執行,這類資料流圖稱為事務型資料流圖,並且稱這個模組為事務中心,它完成如下任務,接收輸入資料、分析資料並確定資料型別、根據資料型別選取一條活動通路。

6. 評價軟體設計質量的主要準則(模組化、抽象、耦合、內聚)及詳細內容:

模組化是好的軟體設計的乙個基本準則;

抽象就是抽出事務的本質特性而暫時不考慮它們的細節,模組是按照不同的抽象級別安排的,高層抽象模組向讀者隱藏了功能實現的細節,這就是資訊隱蔽,模組之間相互隱藏自身的實現細節對乙個好的設計來說是至關重要的;

耦合是對不同模組之間相互依賴程度的度量,緊密耦合是指兩個模組之間存在著很強的依賴關係,鬆散耦合是指兩個模組之間存在一些依賴關係,但他們之間的連線比較弱,無耦合是指模組之間根本沒有任何連線;

耦合的強度依賴於以下四個因素,乙個模組對另乙個模組的引用,乙個模組向另乙個模組傳遞的資料量,乙個模組施加到另乙個模組的控制的數量,模組之間介面的複雜程度;

從強到弱的幾種常見的耦合型別,內容耦合,乙個模組直接修改或操作另乙個模組的資料;公共耦合,兩個以上的模組共同引用乙個全域性資料項;控制耦合,乙個模組在介面上傳遞乙個訊號控制另乙個模組,接收訊號的模組的動作根據訊號值進行調整,稱為控制耦合;標記耦合,若兩個模組至少有乙個通過介面傳遞的公共引數包含內部結構;資料耦合,模組間通過引數傳遞基本型別的資料,資料耦合是最簡單的耦合形式,系統中至少必須存在這種型別的耦合;

內聚度量的是乙個模組內部各成分之間相互關聯的強度,如果乙個模組的所有成分都直接參與並且對於完成同一功能來說都是最基本的,則該模組是高內聚的;

從低到高的幾種常見的內聚型別,偶然內聚,乙個模組的各個成分之間毫無關係;邏輯內聚,幾個邏輯上相關的功能被放在同一模組中;時間內聚,乙個模組完成的功能必須在同一時間內執行,但這些功能只是因為時間因素關聯在一起;過程內聚,乙個模組內部的處理成分是相關的,而且這些處理必須以特定的次序執行;通訊內聚,乙個模組的所有成分都操作同一資料集或生成同一資料集;順序內聚,乙個模組的各個成分和同乙個功能密切相關,而且乙個成分的輸出作為另乙個的成分;功能內聚,最理想的內聚是功能內聚,模組的所有成分對於完成單一的功能都是基本的;

內聚和耦合是密切相關的,在進行軟體設計時,應力爭做到強內聚、弱耦合。

7. 結構化設計的啟發式規則:

改進軟體結構提高模組獨立性,模組規模應該適中,深度、寬度、扇入和扇出應適中,模組的作用域應該在控制域之內,力爭降低模組介面的複雜性,模組功能應該可以**;

模組的作用域定義為受該模組內乙個判定影響的所有模組的集合,模組的控制域是這個模組本身以及所有直接或間接從屬於它的模組的集合。

8. 結構化分析與結構化設計的區別:

結構化分析得到資料流圖、資料字典等,屬於邏輯模型,結構化設計得到模組結構圖,屬於程式模型。

9. 詳細設計階段的目標、表現、內容:

2023年自考《軟體工程》複習重點及試驗指導彙總

第一章軟體工程概論 1.軟體工程的目的 倡導以工程的原理 原則和方法進行軟體開發,以解決當時出現的軟體危機。2.軟體危機 在計算機軟體開發和維護過程中所遇到的一系列問題。3.軟體及組成 計算機系統中的程式和文件稱為軟體,程式是計算機任務的處理物件和處理規則的描述,文件是為了理解程式所需的闡述性資料。...

2023年自考《軟體工程》複習重點及試驗指導彙總

第四章物件導向方法 1.基本概念 1 物件在系統分析和系統構造中,物件是對客觀世界事務的一種抽象,是由資料 屬性 及其上操作 行為 組成的封裝體。2 類是具有相同結構 行為和關係的一組物件的描述。3 屬性每一物件的屬性是一些有著確定值的 用於描述物件狀態資訊的資料。4 服務為了完成某一任務,乙個物件...

軟體工程複習重點

第一章軟體工程概論 1.軟體危機是指在計算機軟體的開發和維護過程中所遇到的一系列嚴重問題,幾乎所有軟體都不同程度地存在這些問題。2.軟體危機的典型表現 1 對軟體開發成本和進度的估計常常很不準確 2 使用者對 已完成的 軟體系統不滿意的現象經常發生 3 軟體產品質量往往靠不住 4 軟體常常是不可維護...