products
產品分類 BECKHOFF模塊獨立性的度量是否存在哪些為重要
BECKHOFF模塊的可理解性就會迅速下降。但是對過大的功能模塊分解時,也不應降低BECKHOFF模塊的獨立性。因為當對一個大的功能模塊分解時,有可能增加功能模塊之間的依賴。
BECKHOFF模塊深度、寬度、扇出和扇入要適當
如果深度過大則說明有的控制模塊可能簡單了。如果寬度過大則說明系統(tǒng)的控制過于集中。而扇出過大則意味著功能模塊過于復雜,需要控制和協(xié)調過多的下模塊,這時應適當地增加中間層次,扇出太小則可以把下模塊進一步分解成若干個子功能模塊,或者合并到上功能模塊中去。一個BECKHOFF模塊的扇入是表明有多少個上功能模塊直接調用它,扇入越大則該模塊的上模塊數目越多,這是有好處的。
要使BECKHOFF模塊的作用范圍保持在該模塊的控制范圍內
BECKHOFF模塊的作用范圍是指受該功能模塊內一個判定影響的所有功能模塊的集合。功能模塊的控制范圍是指這個功能模塊本身以及所有直接或間接從屬于它的功能模塊的集合。在一個設計得很好的系統(tǒng)中,所有受判定影響的功能模塊應該都從屬于作出判定的那個功能模塊,局限于做出判定的那個功能模塊本身及它的直接下模塊。對于那些不滿足這一條件的軟件結構修改的辦法是:將判定點上移或者將那些在作用范圍內但是不在控制范圍內的功能模塊移植到控制范圍內。
BECKHOFF模塊非直接耦合。若兩個模塊沒有直接關系,他們之間的*是通過主程序的控制和調用來實現(xiàn)的,便稱這兩個功能模塊為非直接耦合,獨立性zui強。
上面只是對耦合機制進行了一個分類。原則上講,功能模塊化設計總是希望功能模塊之間的耦合表現(xiàn)為非直接耦合方式。但是,由于問題所固有的復雜性和空間方面的考慮,有時則要根據實際情況,全面權衡,選用其它類型的耦合。
功能模塊內聚
BECKHOFF模塊功能角度來度量功能模塊內的,一個好的內聚功能模塊應當恰好做一件事。它描述的是功能模塊內的功能。
內聚有如下的種類,其內聚度由弱到強排列:
BECKHOFF模塊中的代碼無法定義其不同功能的調用。但它使該功能模塊能執(zhí)行不同的功能,這種功能模塊稱為巧合強度功能模塊。
BECKHOFF模塊把幾種相關的功能組合在一起,每次被調用時,有傳送給功能模塊參數來確定該功能模塊應完成那一種功能。
BECKHOFF模塊塊順序完成一類相關功能,比如初始化功能模塊,它順序為變量置初值。
如果一個BECKHOFF模塊內的處理元素是相關的,而且必須以特定次序執(zhí)行則稱為過程內聚。
這種功BECKHOFF模塊了具有過程內聚的特點外,還有另外一種關系,則它的所有功能都通過使用公共數據而發(fā)生關系。
BECKHOFF模塊內的處理元素和同一個功能密切相關,而且這些處理必須順序執(zhí)行,通常一個處理元素的輸出數據作為下一個處理元素的輸入數據,則稱為順序內聚。
BECKHOFF模塊包括并僅包括未完成某一具體任務所必需的所有成分,或者說功能模塊中所有成分結合起來是為了完成一個具體的任務,此功能模塊稱為功能強度模塊。