6EP1931-2FC21西門子電源模塊
- 公司名稱 黑雁(上海)自動化設(shè)備有限公司
- 品牌 Siemens/西門子
- 型號
- 產(chǎn)地
- 廠商性質(zhì) 代理商
- 更新時間 2024/7/11 13:27:59
- 訪問次數(shù) 274
聯(lián)系方式:謝經(jīng)理13671849076 查看聯(lián)系方式
聯(lián)系我們時請說明是化工儀器網(wǎng)上看到的信息,謝謝!
供貨周期 | 現(xiàn)貨 | 應(yīng)用領(lǐng)域 | 能源,電子,電氣,綜合 |
---|
在軟件結(jié)構(gòu)中,功能模塊可以分為以下幾類:
順序功能模塊:它在沒有明顯中斷情況下被應(yīng)用軟件調(diào)用和執(zhí)行。
增量功能模塊:它在調(diào)用結(jié)束之前可以被應(yīng)用程序中斷,然后在中斷點(diǎn)重新啟動。
并行功能模塊:它在并行多處理機(jī)環(huán)境中與別的功能模塊同時執(zhí)行。
1.提高功能模塊獨(dú)立性
在得到軟件結(jié)構(gòu)之后,就應(yīng)首先著眼于改善功能模塊的獨(dú)立性,考驗(yàn)是否應(yīng)該把一些功能模塊提取或合并,力求降低耦合提高內(nèi)聚。例如,多個功能模塊共有的一個子功能可以獨(dú)立成一個功能模塊,由這些功能模塊調(diào)用,有時可以通過分解或合并功能模塊以減少控制信息的傳遞及對全局?jǐn)?shù)據(jù)的引用,并且降低接口的復(fù)雜度。
2.功能模塊規(guī)模適度
經(jīng)驗(yàn)表明,當(dāng)功能模塊過大時,功能模塊的可理解性就會迅速下降。但是對過大的功能模塊分解時,也不應(yīng)降低功能模塊的獨(dú)立性。因?yàn)楫?dāng)對一個大的功能模塊分解時,有可能增加功能模塊之間的依賴。
3.深度、寬度、扇出和扇入要適當(dāng)
如果深度過大則說明有的控制模塊可能簡單了。如果寬度過大則說明系統(tǒng)的控制過于集中。而扇出過大則意味著功能模塊過于復(fù)雜,需要控制和協(xié)調(diào)過多的下級模塊,這時應(yīng)適當(dāng)?shù)卦黾又虚g層次,扇出太小則可以把下級模塊進(jìn)一步分解成若干個子功能模塊,或者合并到上級功能模塊中去。一個功能模塊的扇入是表明有多少個上級功能模塊直接調(diào)用它,扇入越大則共享該模塊的上級模塊數(shù)目越多,這是有好處的。
4.要使模塊的作用范圍保持在該模塊的控制范圍內(nèi)
功能模塊的作用范圍是指受該功能模塊內(nèi)一個判定影響的所有功能模塊的集合。功能模塊的控制范圍是指這個功能模塊本身以及所有直接或間接從屬于它的功能模塊的集合。在一個設(shè)計(jì)得很好的系統(tǒng)中,所有受判定影響的功能模塊應(yīng)該都從屬于作出判定的那個功能模塊,局限于做出判定的那個功能模塊本身及它的直接下級模塊。對于那些不滿足這一條件的軟件結(jié)構(gòu)修改的辦法是:將判定點(diǎn)上移或者將那些在作用范圍內(nèi)但是不在控制范圍內(nèi)的功能模塊移植到控制范圍內(nèi)。
5.應(yīng)減少功能模塊的接口的復(fù)雜性和冗余度,并改善一致性
功能模塊接口復(fù)雜是軟件發(fā)生錯誤的一個主要原因。應(yīng)該仔細(xì)設(shè)計(jì)模塊接口,使得信息傳遞簡單并且和模塊的功能一致。
6.設(shè)計(jì)成單入口、單出口的功能模塊,避免病態(tài)連接
要防止內(nèi)容耦合性,如果功能模塊都是從頂部入口、從底部出口的話,這樣的軟件也更易于理解和易于維護(hù)。病態(tài)連接關(guān)系是指從中部進(jìn)入或訪問一個模塊。
7.電源模塊的功能可預(yù)測
如果一個功能模塊可以當(dāng)做一個黑箱,即只要輸入的數(shù)據(jù)相同就產(chǎn)生同樣的輸出,這個模塊的功能就是可以預(yù)測的。而那些具有內(nèi)部記憶的功能模塊則可能是不可預(yù)知的,因?yàn)樗赡苡涊d了某個內(nèi)部標(biāo)志并且利用這個標(biāo)志去選擇處理方案。由于這個標(biāo)志對上級功能模塊來說是看不見的,因而可能引起混亂。
8.組裝軟件根據(jù)設(shè)計(jì)的約束和移植的需要
組裝是指用來把軟件組合起來,以便把軟件放入特定的處理環(huán)境或送往其他的地方。有時,設(shè)計(jì)約束要求一個程序要在內(nèi)存中覆蓋自己。如果有這種要求的話,原設(shè)計(jì)結(jié)構(gòu)就可能必須重新組織以便按照重復(fù)的次數(shù)、存取的頻率以及各次調(diào)用之間的間隔來把功能模塊組合起來。