軟件工程 軟件項目的詳細設計PPT課件_第1頁
軟件工程 軟件項目的詳細設計PPT課件_第2頁
軟件工程 軟件項目的詳細設計PPT課件_第3頁
軟件工程 軟件項目的詳細設計PPT課件_第4頁
軟件工程 軟件項目的詳細設計PPT課件_第5頁
已閱讀5頁,還剩40頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第4章 軟件項目的詳細設計 本章要點 1、掌握常用的詳細設計的表達方法 2、了解軟件設計規(guī)格說明和設計評審的主要內(nèi)容第1頁/共45頁一、詳細設計 詳細設計階段的根本目標是確定怎樣具體的實現(xiàn)所要求的系統(tǒng)。 詳細設計的結(jié)果基本上決定了最終的程序代碼的質(zhì)量。 第2頁/共45頁一、詳細設計 詳細設計以總體設計階段的工作為基礎,但又不同于總體設計階段,表現(xiàn)為: 1、在總體設計階段,數(shù)據(jù)項和數(shù)據(jù)結(jié)構(gòu)以比較抽象的方式描述 2、詳細設計要提供關(guān)于算法的更多的細節(jié)第3頁/共45頁一、詳細設計 3、詳細設計的模塊包含實現(xiàn)對應的總體設計的模塊所需要的處理邏輯,主要有: (1) 詳細的算法 (2) 數(shù)據(jù)表示和數(shù)據(jù)結(jié)構(gòu)

2、 (3) 實施的功能和使用的數(shù)據(jù)之間的關(guān)系 (4) 每個模塊被編碼成過程、子程序、函數(shù)或其它類型的命名實體。第4頁/共45頁二、詳細設計的基本任務 1、算法設計 用某種圖形、表格、語言等工具將每個模塊處理過程的詳細算法描述出來。 2、數(shù)據(jù)結(jié)構(gòu)設計 對于需求分析、概要設計確定的概念性的數(shù)據(jù)類型進行確切的定義。第5頁/共45頁二、詳細設計的基本任務 3、物理設計 對數(shù)據(jù)庫進行物理設計,即確定數(shù)據(jù)庫的物理結(jié)構(gòu)。物理結(jié)構(gòu)主要指數(shù)據(jù)庫的存儲記錄格式、存儲記錄安排和存儲方法,這些都依賴于具體所使用的數(shù)據(jù)庫系統(tǒng)。 第6頁/共45頁二、詳細設計的基本任務 4、其他設計 (1)代碼設計:為了提高數(shù)據(jù)的輸入、分類

3、、存儲及檢索等操作的效率,以及節(jié)約內(nèi)存空間,對數(shù)據(jù)庫中的某些數(shù)據(jù)項的值要進行代碼設計。 (2)輸入/輸出格式設計。 (3)人機對話設計:對于一個實時系統(tǒng),用戶與計算機頻繁對話,因此要進行對話方式、內(nèi)容及格式的具體設計。第7頁/共45頁二、詳細設計的基本任務 5、編寫詳細設計說明書 (1)引言:包括編寫目的、背景、定義、參考資料。 (2)程序系統(tǒng)的組織結(jié)構(gòu)。 (3)程序1(標識符)設計說明:包括功能、性能、輸入、輸出、算法、流程邏輯、接口。 (4)程序2(標識符)設計說明。 (5)程序N(標識符)設計說明。 6、評審 對處理過程的算法和數(shù)據(jù)庫的物理結(jié)構(gòu)都要評審。第8頁/共45頁三、詳細設計方法

4、1、采用自頂向下、逐步求精的程序設計方法 2、使用三種基本控制結(jié)構(gòu)構(gòu)造程序 3、主程序員的組織形式第9頁/共45頁四、詳細設計的工具 詳細設計的任務是給出軟件模塊結(jié)構(gòu)中各個模塊的內(nèi)部過程描述,也就是模塊內(nèi)部的算法設計。 詳細設計的工具可以分為圖形、表格和語言三種。第10頁/共45頁四、詳細設計的工具 1、程序流程圖 程序流程圖又稱為程序框圖,它是歷史最悠久、使用最廣泛的一種描述程序邏輯結(jié)構(gòu)的工具。 (1)程序流程圖的三種基本控制結(jié)構(gòu)第11頁/共45頁第12頁/共45頁第13頁/共45頁四、詳細設計的工具 (2)程序流程圖的主要缺點如下: 程序流程圖誘使程序員過早地考慮程序的控制流程,而不去考慮

5、程序的全局結(jié)構(gòu)。 程序流程圖中的箭頭代表控制流,程序員可以不加限制的使用GOTO語句,導致基本控制塊多入口多出口。 程序流程圖不易表示數(shù)據(jù)結(jié)構(gòu)。第14頁/共45頁四、詳細設計的工具 2、盒圖(N-S圖) 它以一種結(jié)構(gòu)化的方式嚴格地限制從一個處理到另一個處理的控制轉(zhuǎn)移。 (1)盒圖的基本符號第15頁/共45頁第16頁/共45頁第17頁/共45頁第18頁/共45頁四、詳細設計的工具 (2)每一個NS圖開始于一個大的矩形,表示它所描述的模塊。該矩形的內(nèi)部被分成不同的部分,分別表示不同的子處理過程,這些子處理過程又可以進一步分解成更小的部分。 第19頁/共45頁四、詳細設計的工具 3、問題分析圖(PA

6、D圖,Problem Analysis Diagram) 是日本日立公司于1979年提出的一種算法描述工具,它是一種由左往右展開的二維樹型結(jié)構(gòu)。 (1)PAD圖的基本符號 第20頁/共45頁第21頁/共45頁第22頁/共45頁四、詳細設計的工具 (2)PAD圖的控制流程為自上而下,從左到右地執(zhí)行。 (3)實例:將數(shù)組A(1)到A(10)進行排序的PAD圖。第23頁/共45頁第24頁/共45頁第25頁/共45頁四、詳細設計的工具 (4)PAD圖的優(yōu)點 1)清晰地反映了程序的層次結(jié)構(gòu),圖中的豎線為程序的層次線,最左邊豎線是程序的主線,其后一層一層展開,層次關(guān)系一目了然。 2)支持逐步求精的設計方法

7、,左邊層次中的內(nèi)容可以抽象,然后由左到右逐步細化。 3)易讀易寫,使用方便。 4)支持結(jié)構(gòu)化的程序設計原理。 5)可自動生成程序。第26頁/共45頁四、詳細設計的工具 4、類程序設計語言(PDL) 類程序設計語言(Program Design Language)、過程設計語言(Process Design Language),也稱為偽碼。第27頁/共45頁四、詳細設計的工具 (1)PDL特點 所有關(guān)鍵字都有固定語法,以便提供結(jié)構(gòu)化控制結(jié)構(gòu)、數(shù)據(jù)說明和模塊的特性。 描述處理過程的說明性語言沒有嚴格的語法。 具有數(shù)據(jù)說明機制,包括簡單的與復雜的數(shù)據(jù)說明。 具有模塊定義和調(diào)用機制,開發(fā)人員應根據(jù)系統(tǒng)

8、編程所用的語種,說明PDL表示有關(guān)程序結(jié)構(gòu)。第28頁/共45頁四、詳細設計的工具 (2)程序結(jié)構(gòu) 1)順序結(jié)構(gòu) 采用自然語言描述順序結(jié)構(gòu): 處理S1 處理S2 處理Sn第29頁/共45頁四、詳細設計的工具 2)選擇結(jié)構(gòu) IFElSE結(jié)構(gòu) IF 條件 IF 條件 處理S1 或 處理S ELSE ENDIF 處理S2 ENDIF第30頁/共45頁四、詳細設計的工具 IFORIFElSE結(jié)構(gòu) IF 條件1 處理 S1 ORIF 條件2 處理 S2 ELSE 處理Sn ENDIF 第31頁/共45頁四、詳細設計的工具 CASE結(jié)構(gòu) CASE OF CASE(1) 處理S1 CASE(2) 處理S2 E

9、LSE 處理Sn ENDCASE第32頁/共45頁四、詳細設計的工具 3)重復結(jié)構(gòu) FOR結(jié)構(gòu) FOR i=1 TO n 循環(huán)體 ENDFOR 第33頁/共45頁四、詳細設計的工具 WHILE結(jié)構(gòu) WHILE 條件 循環(huán)體 ENDWHILE UNTIL結(jié)構(gòu) REPEAT 循環(huán)體 UNTIL 條件第34頁/共45頁四、詳細設計的工具 4)擴充結(jié)構(gòu) 模塊定義 PROCEDURE 模塊名(參數(shù)) RETURN END第35頁/共45頁四、詳細設計的工具 模塊調(diào)用 CALL 模塊名(參數(shù)) 數(shù)據(jù)定義 DECLAER 屬性 變量名, 屬性有:字符、整型、實型、雙精度、指針、數(shù)組及結(jié)構(gòu)等類型。第36頁/共

10、45頁四、詳細設計的工具 輸入/輸出 GET(輸入變量表) PUT(輸出變量表)第37頁/共45頁四、詳細設計的工具 (3)PDL應用示例 系統(tǒng)主控模塊詳細設計為例,說明如何用PDL來描述。第38頁/共45頁四、詳細設計的工具 PROCEDURE 模塊名() 清屏; 顯示系統(tǒng)用戶界面; PUT(“請輸入用戶口令:”); GET(password); IF password 系統(tǒng)口令 提示警告信息; 退出運行 ENDIF第39頁/共45頁四、詳細設計的工具 顯示本系統(tǒng)主菜單; WHILE(true) 接收用戶選擇ABC; IF ABC=“退出” Break; ENDIF 調(diào)用相應下層模塊完成用戶選擇功能; ENDWHILE; 清屏; RETURN END第40頁/共45頁四、詳細設計的工具 (4)優(yōu)點: 1)提供的機制較圖形全面,為保證詳細設計與編碼的質(zhì)量創(chuàng)造了有利條件。 2)可作為注釋嵌入在源程序中一起作為程序的文檔,并可同高級程序設計語言一樣進行編輯、修改,有利于軟件的維護。 3)可自動生成程序代碼,提高軟件生產(chǎn)率。目前已有PDL多種版本(如PDL/pascal,PDL/C,PDL/Ada等),為自動生成相應代碼提供了便利條件。第41頁/共45頁五、軟件設計說明書 1、概要設計說明書 2、詳

溫馨提示

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

最新文檔

評論

0/150

提交評論