日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

(软件工程复习核心重点)第四章总体设计-第三节:启发规则

發布時間:2025/3/15 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 (软件工程复习核心重点)第四章总体设计-第三节:启发规则 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

文章目錄

    • (1)改進軟件結構提高模塊獨立性
    • (2)模塊規模應該適中
    • (3)深度、寬度、扇入和扇出應適當
    • (4)模塊的作用域應該在控制域之內
      • A:定義
      • B:規則
      • C:修改方法(了解)
    • (5)力爭降低模塊接口的復雜程度
    • (6)設計單入口單出口的模塊
    • (7)模塊功能應該可以預測但要防止過分局限

啟發規則有:

  • 改進軟件結構提高模塊獨立性
  • 模塊規模應該適中
  • 深度、寬度、扇入和扇出應適當
  • 模塊的作用域應該在控制域之內
  • 力爭降低模塊接口的復雜程度
  • 設計單入口單出口的模塊
  • 模塊功能應該可以預測但要防止過分局限

(1)改進軟件結構提高模塊獨立性

設計出軟件的初步結構后,應該審查分析這個結構,通過模塊分解或合并,力求降低耦合提高內聚。

(2)模塊規模應該適中

  • 過大的模塊往往是由于分解不充分,但是進一步分解必須符合問題結構,分解后不應該降低模塊獨立性
  • 過小的模塊開銷大于有效操作,而且模塊數目過多將使系統接口復雜。因此過小的模塊有時不值得單獨存在

(3)深度、寬度、扇入和扇出應適當

好的軟件結構:頂層扇出較高,中層扇出較少,底層模塊有高扇入


深度:表示軟件結構中控制的層數,能粗略地標志一個系統的大小和復雜程度

  • 深度為3

可以按文件夾的的層級目錄結構來對照理解,按照層級來看,
本道題中
第一層:某系統
第二層:功能1,功能2,功能3
第三層:功能2.1,功能2.2,功能2.3,功能3.1,功能3.2
(注意:這里功能3.1和功能3.2其實是同一個層級的,類比文件目錄結構不難看出),深度即為這里分析的層數,所以這題的深度為3。


寬度:寬度是軟件結構內同一個層次上的模塊總數的最大值。寬度越大系統越復雜。對寬度影響最大的因素是模塊的扇出

  • 寬度為5

第三層:功能2.1,功能2.2,功能2.3,功能3.1,功能3.2
第三層的模塊總數顯然最大,為5,


扇出:是一個模塊直接控制的模塊數目,設計扇出應注意

  • 扇出過大意味著模塊過分復雜,需要控制和協調過多的下級模塊,扇出太大一般是因為缺乏中間層次,應適當增加中間層次的控制模塊
  • 扇出過小可把下級模塊分解成若干個子功能模塊,或合并到它的上級模塊中去。分解模塊或合并模塊必須符合問題結構,不能違背模塊獨立原理
  • 一個設計得好的典型系統的平均扇出通常是3或4

  • 最大扇出數是3

扇入:表明有多少個上級模塊直接調用它。扇入越大則共享該模塊的上級模塊數目越多。但是,不能違背模塊獨立原理單純追求高扇入

(4)模塊的作用域應該在控制域之內

A:定義

  • 作用域:指受該模塊內一個判定影響的所有模塊的集合
  • 控制域:是這個模塊本身以及所有直接或者間接從屬于它的模塊的集合

B:規則

在一個設計得很好的系統中,所有受判定影響的模塊應該都從屬于做出判定的那個模塊,最好局限于做出判定的那個模塊本身及它的直屬下級模塊

C:修改方法(了解)

  • 把做判定的點往上移
  • 把在作用域內但不在控制域內的模塊移到控制域內

(5)力爭降低模塊接口的復雜程度

模塊接口復雜是軟件發生錯誤的一個主要原因。應該仔細設計模塊接口,使得信息傳遞簡單并且和模塊的功能一致。接口復雜或不一致(即看起來傳遞的數據之間沒有聯系)是緊耦合或低內聚的征兆,應該重新分析這個模塊的獨立性

(6)設計單入口單出口的模塊

這條規則警告軟件工程師不要使模塊間出現內容耦合。當從頂部進入模塊并且從底部退出來時,軟件是比較容易理解的,因此也是比較容易維護的

(7)模塊功能應該可以預測但要防止過分局限

模塊的功能應該能夠預測,但也要防止模塊功能過分局限。

  • 可預測:如果一個模塊可以當做一個黑盒子,即只要輸入的數據相同就產生同樣的輸出,這個模塊的功能就是可以預測的。由于內部存儲器對于上級模塊而言是不可見的,所以這樣的模塊既不易理解又難于測試和維護
  • 過分局限:如果一個模塊任意限制局部數據結構的大小,過分限制在控制流中可以做出的選擇或者外部接口的模式,那么這種模塊的功能就過分局限,使用范圍也就過分狹窄了。

總結

以上是生活随笔為你收集整理的(软件工程复习核心重点)第四章总体设计-第三节:启发规则的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。