![軟件工程基礎(chǔ)與實例分析第05章-詳細設(shè)計_第1頁](http://file4.renrendoc.com/view/e40378dc15090b513cd9c920c7b9f785/e40378dc15090b513cd9c920c7b9f7851.gif)
![軟件工程基礎(chǔ)與實例分析第05章-詳細設(shè)計_第2頁](http://file4.renrendoc.com/view/e40378dc15090b513cd9c920c7b9f785/e40378dc15090b513cd9c920c7b9f7852.gif)
![軟件工程基礎(chǔ)與實例分析第05章-詳細設(shè)計_第3頁](http://file4.renrendoc.com/view/e40378dc15090b513cd9c920c7b9f785/e40378dc15090b513cd9c920c7b9f7853.gif)
![軟件工程基礎(chǔ)與實例分析第05章-詳細設(shè)計_第4頁](http://file4.renrendoc.com/view/e40378dc15090b513cd9c920c7b9f785/e40378dc15090b513cd9c920c7b9f7854.gif)
![軟件工程基礎(chǔ)與實例分析第05章-詳細設(shè)計_第5頁](http://file4.renrendoc.com/view/e40378dc15090b513cd9c920c7b9f785/e40378dc15090b513cd9c920c7b9f7855.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、主要學習內(nèi)容詳細設(shè)計的過程詳細設(shè)計階段使用的工具面向數(shù)據(jù)結(jié)構(gòu)的設(shè)計方法5.1 詳細設(shè)計的過程5.1.1 詳細設(shè)計的基本任務(wù)1算法設(shè)計用某種圖形、表格、語言等工具將每個模塊處理過程的詳細算法描述出來。2數(shù)據(jù)結(jié)構(gòu)設(shè)計對于需求分析、概要設(shè)計確定的概念性的數(shù)據(jù)類型進行確切的定義。3物理設(shè)計對數(shù)據(jù)庫講行物理設(shè)計,即確定數(shù)據(jù)庫的物理結(jié)構(gòu)。物理結(jié)構(gòu)主要指數(shù)據(jù)庫的存儲記錄格式、存儲記錄安排和存儲方法,這些都依賴于具體所使用的數(shù)據(jù)庫系統(tǒng)。5.1 詳細設(shè)計的過程5.1.1 詳細設(shè)計的基本任務(wù)4其他設(shè)計 (1)代碼設(shè)計:為了提高數(shù)據(jù)的輸入、分類、存儲及檢索等操作的效率,對數(shù)據(jù)庫中的某些數(shù)據(jù)項的值要進行代碼設(shè)計。 (
2、2)輸入/輸出格式設(shè)計:對輸入/輸出數(shù)據(jù)格式進行統(tǒng)一規(guī)格的設(shè)計。 (3)人機對話設(shè)計:對于一個實時系統(tǒng),用戶與計算機需頻繁對話,因此,要進行對話方式、內(nèi)容及格式的具體設(shè)計。5編寫詳細設(shè)計說明書6評審對處理過程的算法和數(shù)據(jù)庫的物理結(jié)構(gòu)要進行評審。5.1.2 詳細設(shè)計方法1、自頂向下逐步求精2、具有單入、單出的控制結(jié)構(gòu)(取消GOTO語句)3、五種控制結(jié)構(gòu)順序結(jié)構(gòu)選擇結(jié)構(gòu)先判斷循環(huán)結(jié)構(gòu)后判斷循環(huán)結(jié)構(gòu)多選擇結(jié)構(gòu)5.2.1 程序流程圖5.2 詳細設(shè)計階段使用的工具在程序流程圖中采用三種控制結(jié)構(gòu)來實現(xiàn)單入口、單出口的程序 5.2 詳細設(shè)計階段使用的工具5.2.2盒圖(N_S圖)5.2 詳細設(shè)計階段使用的工
3、具盒圖(N_S圖) 例子5.2 詳細設(shè)計階段使用的工具5.2.3問題分析圖(PDA圖)5.2 詳細設(shè)計階段使用的工具盒圖和PDA圖的轉(zhuǎn)換x4TFDo-Until x5ighfkx1TFbDo-Until x6aj5.2 詳細設(shè)計階段使用的工具開始 結(jié)束 aj Until x5i Until x6bx1kfx4gh盒圖和PDA圖的轉(zhuǎn)換5.2 詳細設(shè)計階段使用的工具5.2.4判定表與判定樹表示復(fù)雜的條件組合與應(yīng)做動作之間的對應(yīng)關(guān)系判定表與判定樹并不適用于作為一種通用的設(shè)計工具,通常將之用于輔助測試例: 航空行李托運費的算法按規(guī)定:重量不超過30公斤的行李可免費托運。重量超過30公斤時,對超運部分,
4、頭等艙國內(nèi)乘客收4元/公斤;其它艙位國內(nèi)乘客收6元/公斤;外國乘客收費為國內(nèi)乘客的2倍;殘疾乘客的收費為正常乘客的1/2。 5.2 詳細設(shè)計階段使用的工具規(guī)則 規(guī)則數(shù) 條件 動作5.2 詳細設(shè)計階段使用的工具行李費算法行李重量W 30行李重量W 30免費國內(nèi)乘客外國乘客頭等艙其他艙殘疾乘客正常乘客(W-30) 2(W-30) 4殘疾乘客正常乘客(W-30) 3(W-30) 6頭等艙其他艙殘疾乘客正常乘客(W-30) 4(W-30) 8殘疾乘客正常乘客(W-30) 6(W-30) 12用判定樹表示計算行李費的算法5.2 詳細設(shè)計階段使用的工具5.2.5 過程設(shè)計語言(PDL)1、PDL特點關(guān)鍵字
5、有固定的語法自然語言的自由語法,它描述處理特點。數(shù)據(jù)說明的手段。模塊定義和調(diào)用的技術(shù),應(yīng)該提供各種接口描述模式。2PDL程序結(jié)構(gòu)(1)順序結(jié)構(gòu)采用自然語言描述順序結(jié)構(gòu)處理S1處理S2處理Sn(2)選擇結(jié)構(gòu)1)IF-ELSE結(jié)構(gòu) IF 條件 IF 條件 處理S1 或 處理S1 ELSE ENDIF 處理S2 ENDIF3)CASE結(jié)構(gòu)CASE OFCASE(1)處理S1CASE(2)處理S2ELAE 處理SnENDCASE(4)循環(huán)結(jié)構(gòu)1)FOR結(jié)構(gòu) FOR i=1 TO n 循環(huán)體 ENDFOR2)WHILE結(jié)構(gòu) WHILE條件 循環(huán)體 ENDWHILE3)UNTIL結(jié)構(gòu) REPEAT循環(huán)體U
6、NTIL條件(5)出口結(jié)構(gòu) 1)ESCAPE結(jié)構(gòu)(退出本層結(jié)構(gòu)) WHILE條件 處理S1 ESCAPE L IF條件 處理S2 ENDWHILE L:2)CYCLE結(jié)構(gòu)(循環(huán)內(nèi)部進入循環(huán)的下一次) L: WHILE條件 處理S1 CYCLE L IF條件 處理S2 ENDWHILE(6)擴充結(jié)構(gòu)1)模塊定義 PROCEDURE 模塊名(參數(shù)) RETURN END2)模塊調(diào)用 CALL模塊名(參數(shù))3)數(shù)據(jù)定義 DECLARE 屬性 變量名, 屬性有字符、整型、實型、雙精度、指針、數(shù)組及結(jié)構(gòu)等類型。4)輸入輸出 GET(輸入變量表) PUT(輸出變量表) 3舉例理解PDL語言例如5.2查找拼
7、錯單詞的程序- PROCEDURE查找拼錯單詞 is BEGIN把這個文件分離成單詞查字典顯示字典中查不到的單詞造一新字典END 查找拼錯單詞 對上面的算法細化 PROCEDURE 查找拼錯單詞 BEGIN-* split document into single words LOOP get next word add word to word list in sortorder EXIT WHEN all words processed END LOOP -* look up words in dictionary LOOP get word from word list IF word
8、not in dictionary THEN -* display words not in dictionary display word prompt on user terminalIF user response says word OK THEN add word to good word lis ELSE add word to bad word list ENDIF ENDIF EXIT LOOP -* create a new words dictionary dictionary:= merge dictionary and good word list END spellc
9、heck5.2 詳細設(shè)計階段使用的工具過程設(shè)計語言(PDL)優(yōu)點易于實現(xiàn)由PDL到源代碼的自動轉(zhuǎn)換缺點不夠直觀模塊開發(fā)文件夾 記錄模塊開發(fā)過程的文檔5.3 面向數(shù)據(jù)結(jié)構(gòu)的設(shè)計方法5.3.1 改進的Jackson圖以數(shù)據(jù)結(jié)構(gòu)(data structure)為基礎(chǔ)設(shè)計每個模塊的處理過程ABCABoCoSAB*I 順序 選擇 重復(fù) 改進的Jackson圖5.3 面向數(shù)據(jù)結(jié)構(gòu)的設(shè)計方法5.3.2 Jackson方法步驟(1)用Jackson圖描述 I/O 的數(shù)據(jù)結(jié)構(gòu)。(2)在兩個圖中指出有直接因果關(guān)系(causality)、可以同時處理的單元(重復(fù)的次序,次數(shù)均相同)。(3)把有對應(yīng)關(guān)系的單元合為一個
10、處理框,畫在相應(yīng)的層次中。(4)列出所有操作條件,并分配到上幅程序結(jié)構(gòu)圖中。(5)用偽代碼表示程序。例5.3一個正文文件由若干個記錄組成,每個記錄是一個字符串。要求統(tǒng)計每個記錄中空格字符的個數(shù),以及文件中空格字符的總個數(shù)。要求的輸入數(shù)據(jù)格式是,每復(fù)制一行輸入字符串之后,另起一行印出這個字符串中的空格數(shù),最后印出文件中空格的總個數(shù)。第一步:用Jackson圖描述 I/O 的數(shù)據(jù)結(jié)構(gòu)第二步:在兩個圖中指出有直接因果關(guān)系(causality)、可以同時處理的單元。虛線帶箭頭部分指出相應(yīng)的因果關(guān)系及可處理的單元。第三步:把有對應(yīng)關(guān)系的單元合為一個處理框,畫在相應(yīng)的層次中。第四步:列出所有操作條件,并分
11、配到程序結(jié)構(gòu)圖中。(1)停止 (2)打開文件(3)關(guān)閉文件(4)印出字符串(5)印出空格數(shù)目(6)印出空格總數(shù)(7)SUM:=SUM+1(8)totalsum:=totalsum+sun(9)讀入字符串(10)sum:=0(11)totalsum:=0(12)pointer:=1(13)pointer:=pointer+1I(1)文件結(jié)束 I(2)字符串結(jié)束 S(3)字符是空格第五步:用偽代碼(Pseudocode) 表示程序。因為Jackson使用的偽碼和Jackson圖之間存在簡單的對應(yīng)關(guān)系,所以從圖5-11得出下面的偽碼: 統(tǒng)計空格seq 打開文件 讀入字符串 totalsum:=0 程序體iter until文件結(jié)束 處理字符串seq 印字符串seq 印出字符串 印字符串end sum:= 0 pointer:=1分析字符串iter until字符串結(jié)束 分析字符select字符是空格 處理空格seq sum:=sum + 1 pointer:=pointer + 1 處理
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度地下空間開發(fā)施工合同規(guī)范文本
- 2025年度印刷材料行業(yè)環(huán)保型采購與生產(chǎn)合同
- 低碳環(huán)保的活動方案范文(13篇)
- 2025年債務(wù)解決方案資產(chǎn)協(xié)議書
- 2025年企業(yè)電氣設(shè)施維護合同
- 2025年家用空氣調(diào)節(jié)器項目提案報告模稿
- 2025年電子脂肪秤項目立項申請報告模范
- 2025年芝士片項目立項申請報告模范
- 2025年空心槳葉干燥機項目立項申請報告模板
- 2025年臨時性雜工勞動合同
- 教育強國建設(shè)規(guī)劃綱要(2024-2035年)要點解讀(教育是強國建設(shè)民族復(fù)興之基)
- 2025年電梯專用電機項目可行性研究報告
- 煤礦安全生產(chǎn)方針及法律法規(guī)課件
- 建筑行業(yè)新員工試用期考核制度
- 2025年教科室工作計劃樣本(四篇)
- 2024年版古董古玩買賣合同:古玩交易稅費及支付規(guī)定
- 幼兒園費用報銷管理制度
- 【7歷期末】安徽省宣城市2023-2024學年七年級上學期期末考試歷史試題
- 髖部脆性骨折帶來的思考
- 馬桶采購合同范例
- 小學二年級有余數(shù)的除法口算題(共300題)
評論
0/150
提交評論