軟件開發(fā)過程與質(zhì)量保證-4-軟件設(shè)計(jì)2009(3)復(fù)習(xí)進(jìn)程_第1頁
軟件開發(fā)過程與質(zhì)量保證-4-軟件設(shè)計(jì)2009(3)復(fù)習(xí)進(jìn)程_第2頁
軟件開發(fā)過程與質(zhì)量保證-4-軟件設(shè)計(jì)2009(3)復(fù)習(xí)進(jìn)程_第3頁
軟件開發(fā)過程與質(zhì)量保證-4-軟件設(shè)計(jì)2009(3)復(fù)習(xí)進(jìn)程_第4頁
軟件開發(fā)過程與質(zhì)量保證-4-軟件設(shè)計(jì)2009(3)復(fù)習(xí)進(jìn)程_第5頁
已閱讀5頁,還剩44頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

軟件開發(fā)過程與質(zhì)量保證-4-軟件設(shè)計(jì)2009(3)1.分析過程2.分解結(jié)構(gòu)銀行計(jì)算機(jī)儲(chǔ)蓄系統(tǒng)的工作過程大致如下:儲(chǔ)戶填寫的存款單或取款單由業(yè)務(wù)員鍵入系統(tǒng),如果是存款則系統(tǒng)記錄存款人相關(guān)信息,并印出存款收據(jù)給用戶;如果是取款,則系統(tǒng)首先核對儲(chǔ)戶密碼,若密碼正確,則系統(tǒng)計(jì)算利率并印利息清單給儲(chǔ)戶。結(jié)構(gòu)化設(shè)計(jì)過程從軟件的需求規(guī)格說明中弄清數(shù)據(jù)流加工的過程,修改數(shù)據(jù)流圖,明確新系統(tǒng)做什么?確定新系統(tǒng)的邏輯模型四、結(jié)構(gòu)化設(shè)計(jì)方法概述結(jié)構(gòu)化設(shè)計(jì)思想主要是在20世紀(jì)70年代由Constantine和Yourdon等總結(jié)了一些優(yōu)秀的程序設(shè)計(jì)實(shí)踐而發(fā)展起來的。其最大的好處就是極大的增加了代碼的復(fù)用能力。它的主要表示方法是一種分層次的結(jié)構(gòu)圖。認(rèn)為一個(gè)程序、一組程序或者一組系統(tǒng)無非是由一組功能操作來構(gòu)成的,并進(jìn)而吸取了結(jié)構(gòu)化分析的“黑盒子”的概念。結(jié)構(gòu)化設(shè)計(jì)的目標(biāo)將軟件設(shè)計(jì)為結(jié)構(gòu)互相獨(dú)立、功能單一的模塊,建立系統(tǒng)的模塊結(jié)構(gòu)圖結(jié)構(gòu)化設(shè)計(jì)模型從分析模型到設(shè)計(jì)模型之間的對應(yīng)關(guān)系五、軟件結(jié)構(gòu)圖軟件結(jié)構(gòu)圖的組成傳入模塊─從下屬模塊取得數(shù)據(jù),經(jīng)過某些處理,再將其傳送給上級模塊。它傳送的數(shù)據(jù)流叫做邏輯輸入數(shù)據(jù)流。傳出模塊─從上級模塊獲得數(shù)據(jù),進(jìn)行某些處理,再將其傳送給下屬模塊。它傳送的數(shù)據(jù)流叫做邏輯輸出數(shù)據(jù)流。變換模塊─它從上級模塊取得數(shù)據(jù),進(jìn)行特定的處理,轉(zhuǎn)換成其它形式,再傳送回上級模塊。它加工的數(shù)據(jù)流叫做變換數(shù)據(jù)流。協(xié)調(diào)模塊─對所有下屬模塊進(jìn)行協(xié)調(diào)和管理的模塊。軟件結(jié)構(gòu)圖的類型軟件結(jié)構(gòu)圖的類型源于數(shù)據(jù)流圖的類型,根據(jù)不同的數(shù)據(jù)流類型將會(huì)產(chǎn)生對應(yīng)的軟件結(jié)構(gòu)圖。數(shù)據(jù)流圖的類型變換型數(shù)據(jù)流圖事務(wù)性數(shù)據(jù)流圖對應(yīng)的軟件結(jié)構(gòu)圖變換型軟件結(jié)構(gòu)圖事務(wù)性軟件結(jié)構(gòu)圖1.軟件結(jié)構(gòu)圖類型(1)變換型軟件結(jié)構(gòu)圖變換型軟件結(jié)構(gòu)變換型數(shù)據(jù)處理問題的工作過程大致分為三步,即取得數(shù)據(jù),變換數(shù)據(jù)和給出數(shù)據(jù);相應(yīng)于取得數(shù)據(jù)、變換數(shù)據(jù)、給出數(shù)據(jù),變換型系統(tǒng)結(jié)構(gòu);圖由輸入、中心變換和輸出等三部分組成。(2)事務(wù)型軟件結(jié)構(gòu)圖事務(wù)型系統(tǒng)結(jié)構(gòu)它接受一項(xiàng)事務(wù),根據(jù)事務(wù)處理的特點(diǎn)和性質(zhì),選擇分派一個(gè)適當(dāng)?shù)奶幚韱卧缓蠼o出結(jié)果。在事務(wù)型系統(tǒng)結(jié)構(gòu)圖中,事務(wù)中心模塊按所接受的事務(wù)的類型,選擇某一事務(wù)處理模塊執(zhí)行。各事務(wù)處理模塊并列。每個(gè)事務(wù)處理模塊可能要調(diào)用若干個(gè)操作模塊,而操作模塊又可能調(diào)用若干個(gè)細(xì)節(jié)模塊。2.變換分析變換分析步驟重畫數(shù)據(jù)流圖;區(qū)分有效(邏輯)輸入、有效(邏輯)輸出和中心變換部分;進(jìn)行一級分解,設(shè)計(jì)上層模塊;進(jìn)行二級分解,設(shè)計(jì)輸入、輸出和中心變換部分的中、下層模塊。進(jìn)行變換分析時(shí)需注意的內(nèi)容在選擇模塊設(shè)計(jì)的次序時(shí),必須對一個(gè)模塊的全部直接下屬模塊都設(shè)計(jì)完成之后,才能轉(zhuǎn)向另一個(gè)模塊的下層模塊的設(shè)計(jì)。在設(shè)計(jì)下層模塊時(shí),應(yīng)考慮模塊的耦合和內(nèi)聚問題,以提高初始結(jié)構(gòu)圖的質(zhì)量。使用“黑箱”技術(shù)在設(shè)計(jì)當(dāng)前模塊時(shí),先把這個(gè)模塊的所有下層模塊定義成“黑箱”,在設(shè)計(jì)中利用它們時(shí),暫時(shí)不考慮其內(nèi)部結(jié)構(gòu)和實(shí)現(xiàn)。在這一步定義好的“黑箱”,在下一步就可以對它們進(jìn)行設(shè)計(jì)和加工。這樣,又會(huì)導(dǎo)致更多的“黑箱”。最后,全部“黑箱”的內(nèi)容和結(jié)構(gòu)應(yīng)完全被確定。在模塊劃分時(shí),一個(gè)模塊的直接下屬模塊一般在5個(gè)左右。如果直接下屬模塊超過10個(gè),可設(shè)中間層次。如果出現(xiàn)了以下情況,就停止模塊的功能分解:當(dāng)模塊不能再細(xì)分為明顯的子任務(wù)時(shí);當(dāng)分解成用戶提供的模塊或程序庫的子程序時(shí);當(dāng)模塊的界面是輸入/輸出設(shè)備傳送的信息時(shí);當(dāng)模塊不宜再分解得過小時(shí)。變換分析是軟件系統(tǒng)結(jié)構(gòu)設(shè)計(jì)的主要方法。例子1格式檢查3產(chǎn)生收據(jù)2計(jì)算匯費(fèi)4記賬匯款單合格的匯款單處理后的匯款單收據(jù)明細(xì)賬變換中心輸出輸入業(yè)務(wù)數(shù)據(jù)練習(xí)匯款處理系統(tǒng)取得合格匯款單計(jì)算匯費(fèi)記賬輸出處理后的匯款單輸入?yún)R款單格式檢查產(chǎn)生收據(jù)打印收據(jù)合格的匯款單處理后的匯款單合格的匯款單業(yè)務(wù)數(shù)據(jù)處理后的匯款單匯款單合格的匯款單匯款單處理后的匯款單收據(jù)收據(jù)業(yè)務(wù)數(shù)據(jù)3.事務(wù)分析事務(wù)分析在很多軟件應(yīng)用中,存在某種作業(yè)數(shù)據(jù)流,它可以引發(fā)一個(gè)或多個(gè)處理,這些處理能夠完成該作業(yè)要求的功能。這種數(shù)據(jù)流就叫做事務(wù)。與變換分析一樣,事務(wù)分析也是從分析數(shù)據(jù)流圖開始,自頂向下,逐步分解,建立系統(tǒng)到結(jié)構(gòu)圖。事務(wù)分析具體步驟識別事務(wù)源利用數(shù)據(jù)流圖和數(shù)據(jù)詞典,從問題定義和需求分析的結(jié)果中,找出各種需要處理的事務(wù)。通常,事務(wù)來自物理輸入裝置。有時(shí),設(shè)計(jì)人員還必須區(qū)別系統(tǒng)的輸入、中心加工和輸出中產(chǎn)生的事務(wù)。規(guī)定適當(dāng)?shù)氖聞?wù)型結(jié)構(gòu)在確定了該數(shù)據(jù)流圖具有事務(wù)型特征之后,根據(jù)模塊劃分理論,建立適當(dāng)?shù)氖聞?wù)型結(jié)構(gòu)。識別各種事務(wù)和它們定義的操作從問題定義和需求分析中找出的事務(wù)及其操作所必需的全部信息,對于系統(tǒng)內(nèi)部產(chǎn)生的事務(wù),必須仔細(xì)地定義它們的操作。注意利用公用模塊在事務(wù)分析的過程中,如果不同事務(wù)的一些中間模塊可由具有類似的語法和語義的若干個(gè)低層模塊組成,則可以把這些低層模塊構(gòu)造成公用模塊。對每一事務(wù),或?qū)β?lián)系密切的一組事務(wù),建立一個(gè)事務(wù)處理模塊;

如果發(fā)現(xiàn)在系統(tǒng)中有類似的事務(wù),可以把它們組成一個(gè)事務(wù)處理模塊。對事務(wù)處理模塊規(guī)定它們?nèi)康南聦硬僮髂K對操作模塊規(guī)定它們的全部細(xì)節(jié)模塊一般,一個(gè)大型的軟件系統(tǒng)是變換型結(jié)構(gòu)和事務(wù)型結(jié)構(gòu)的混合結(jié)構(gòu)。所以,我們通常利用以變換分析為主,事務(wù)分析為輔的方式進(jìn)行軟件結(jié)構(gòu)設(shè)計(jì)。例子調(diào)整后的軟件結(jié)構(gòu)圖要求類型處理圖書管理要求無效輸入1.1新書入庫1.2還入庫單罰款單1.5注銷圖書1.3還書1.4目錄文件借書單書單注銷單借書借書文件罰款單事務(wù)中心圖書處理系統(tǒng)取得圖書處理要求修改目錄文件操作層細(xì)節(jié)層新書入庫注銷圖書借書還書打印罰款單修改借書文件………………圖書管理要求入庫單借書單還書單注銷單4.優(yōu)化設(shè)計(jì)優(yōu)化設(shè)計(jì)將初始結(jié)構(gòu)圖根據(jù)模塊獨(dú)立性原則進(jìn)行精化,對模塊進(jìn)行合并、分解修改、調(diào)整,得到高內(nèi)聚、低耦合模塊,得到易于實(shí)現(xiàn)、易于測試和易于維護(hù)的軟件結(jié)構(gòu),產(chǎn)生設(shè)計(jì)文檔的系統(tǒng)最終結(jié)構(gòu)圖。優(yōu)化設(shè)計(jì)基本原則合理控制系統(tǒng)的深度與寬度合理控制模塊的扇出數(shù)(扇出數(shù)5—7)模塊的大小要適當(dāng)消除重復(fù)的功能作用范圍要在控制范圍之內(nèi)設(shè)計(jì)單入口單出口模塊例子步驟1:評審和精化軟件的數(shù)據(jù)流圖。步驟2:確定DFD含有變換流還是事務(wù)流步驟3:刻畫輸入和輸出流的邊界,隔離變換中心。輸入流被描述成信息從外部形式變換為內(nèi)部信息的路徑。輸出流是信息從內(nèi)部形式變換為外部形式的路徑。步驟4:完成軟件結(jié)構(gòu)的頂層模塊和第一層結(jié)構(gòu)圖步驟5:完成軟件結(jié)構(gòu)的第二層結(jié)構(gòu)轉(zhuǎn)化完成軟件結(jié)構(gòu)的第一次迭代步驟6:用提高軟件質(zhì)量的啟發(fā)信息,精化第一次迭代得到的程序結(jié)構(gòu)事務(wù)分析事務(wù)分析方法的具體步驟重畫數(shù)據(jù)流圖確定事務(wù)流和變換流標(biāo)識事務(wù)中心、事務(wù)接收路徑和事務(wù)處理路徑設(shè)計(jì)軟件結(jié)構(gòu)的頂層和第一層設(shè)計(jì)軟件結(jié)構(gòu)的第二層具有邊界的用戶交互子系統(tǒng)的第2層DFD步驟1:評審和精化軟件的數(shù)據(jù)流圖步驟2:確定DFD含有變換流還是事務(wù)流特征。步驟3:標(biāo)識事務(wù)中心和每條動(dòng)作路徑上的流特征。軟件結(jié)構(gòu)第一層圖軟件結(jié)構(gòu)第二層圖事務(wù)映射過程步驟4:將DFD映射到一個(gè)適合于進(jìn)行事務(wù)處理的程序結(jié)構(gòu)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論