《軟件工程》學(xué)習(xí)輔導(dǎo)4(3)

字號(hào):

1、模塊的劃分:要做到高內(nèi)聚,低耦合,保持相對獨(dú)立性。
    2、模塊的控制:模塊的作用范圍要在他的控制范圍內(nèi),判定所在的模塊應(yīng)與受其影響的模塊在層次上盡量靠近)
    3、形成的結(jié)構(gòu);軟件結(jié)構(gòu)的深度、寬度、扇出、扇入要適當(dāng)
    4、模塊的大小: 要適中。
    5、模塊的接口:模塊的接口要簡單、清晰、含義明確,便于理解、易于實(shí)現(xiàn)、測試與維護(hù))。
    五、概要設(shè)計(jì)的設(shè)計(jì)方法。
    (一)面向數(shù)據(jù)流的設(shè)計(jì)方法(這是需要我們熟練掌握的方法)
     面向數(shù)據(jù)流的設(shè)計(jì)方法是以需求階段產(chǎn)生的數(shù)據(jù)流圖為基礎(chǔ),按一定的步驟映射成軟件結(jié)構(gòu),因此又稱為結(jié)構(gòu)化設(shè)計(jì)(structured design sd)。這是目前使用廣泛的軟件設(shè)計(jì)方法之一,應(yīng)該熟練掌握它。
    1、首先要研究數(shù)據(jù)流圖(dfd)的類型,無論何種軟件系統(tǒng),dfd一般都可分為變換型和事務(wù)型兩類。(課本第51頁)
     先來看變換型數(shù)據(jù)流圖,顧名思義,變換就是把輸入的數(shù)據(jù)處理后變成另外的數(shù)據(jù)輸出,所以變換型數(shù)據(jù)的工作過程就是三步:取得數(shù)據(jù)、變換數(shù)據(jù)和輸出數(shù)據(jù)。在圖4-6中,可以看到兩股數(shù)據(jù)流經(jīng)過交換中心變成一股數(shù)據(jù)流進(jìn)行輸出。虛線為標(biāo)出的流界。
    再來看事務(wù)型數(shù)據(jù)流圖,所謂事務(wù)也是一個(gè)處理,但不是數(shù)據(jù)變換,而是將輸入數(shù)據(jù)流分離成許多發(fā)散的數(shù)據(jù)流,形成許多加工路徑,并根據(jù)值選擇其中一個(gè)路徑來執(zhí)行。舉個(gè)例子,好比有一個(gè)郵件分發(fā)中心,把收進(jìn)的郵件根據(jù)其發(fā)送地址進(jìn)行分流,有的用飛機(jī)郵送,有的用汽車來運(yùn)輸?shù)鹊取?BR>     在大型軟件系統(tǒng)中的dfd數(shù)據(jù)流圖中,這兩種類型特征都有可能存在。
    2、sd方法設(shè)計(jì)過程
    1)精化dfd。
    2)確定dfd類型并進(jìn)行相應(yīng)的映射。
    3)分解上層模塊,設(shè)計(jì)中下層模塊結(jié)構(gòu)
    4)根據(jù)優(yōu)化準(zhǔn)則對軟件結(jié)構(gòu)求精。
    5)描述模塊功能、接口及全局?jǐn)?shù)據(jù)結(jié)構(gòu)
    6)復(fù)查,如果有錯(cuò)則轉(zhuǎn)向2)修改完善,否則進(jìn)入詳細(xì)設(shè)計(jì)。
    下面我們通過例子來說明變換分析設(shè)計(jì)和事務(wù)分析設(shè)計(jì)方法。