




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、第5章 軟件詳細(xì)設(shè)計,從軟件開發(fā)的工程化觀點來看,在使用程序設(shè)計語言編寫程序之前,需要對算法的邏輯關(guān)系進行分析,并給出清晰的表達(dá),使之成為編碼的依據(jù)。有了這一步,編碼工作就容易多了,更重要的是會給以后的軟件維護帶來方便。,5.1 概 述,在詳細(xì)設(shè)計階段,必須無歧義地描述必要的過程細(xì)節(jié),以便直接而簡單地導(dǎo)出源程序。為了把這些一般處理步驟的描述轉(zhuǎn)換為準(zhǔn)確的結(jié)構(gòu)和過程描述,就需要使用更具約束性的設(shè)計描述工具。,5.1 概 述,3種設(shè)計工具,5.1 概 述,過程規(guī)格說明工具可分為以下幾類: 圖示工具 列表工具 語言工具,5.2 結(jié)構(gòu)化構(gòu)造,20世紀(jì)60年代后期,針對詳細(xì)設(shè)計提出了一組邏輯構(gòu)造,這組構(gòu)造
2、強調(diào)“維持一定的功能域”,每個構(gòu)造有一個預(yù)定的邏輯結(jié)構(gòu),每個構(gòu)造都從頂部進入并從底部離開,利用這組邏輯構(gòu)造可以構(gòu)成任何程序。 這些構(gòu)造就是順序構(gòu)造、條件構(gòu)造和重復(fù)構(gòu)造。,5.3 圖形設(shè)計工具,詳細(xì)設(shè)計中的圖形設(shè)計工具有程序流程圖、方塊圖、HIPO圖和PAD圖等,這些圖形工具提供了多種圖形樣式,可以方便地描述過程的細(xì)節(jié)。,5.3.1 程序流程圖,程序流程圖又稱為程序框圖,是程序設(shè)計中應(yīng)用最廣泛的算法描述工具。流程圖獨立于各種程序設(shè)計語言,且比較直觀、清晰,易于學(xué)習(xí)掌握。 然而它也是經(jīng)常被誤用的一種方法,其最大不足就是不夠規(guī)范,所用符號不統(tǒng)一,特別是任意使用箭頭會使程序的質(zhì)量受到很大影響。為此,必
3、須對流程圖的符號及使用加以嚴(yán)格限制,使之成為一個精確的、規(guī)范化的算法表達(dá)工具。,5.3.1 程序流程圖,(1)限制流程圖只能由幾種基本控制結(jié)構(gòu)組成,以使流程圖能描述結(jié)構(gòu)化程序。 任一程序流程圖都應(yīng)能由以下幾種基本控制結(jié)構(gòu)嵌套而成。 順序構(gòu)造用兩個方框和控制線(箭頭)表示。 條件構(gòu)造,即if - then - else構(gòu)造,用菱形判斷框表示,如果判斷為真,就執(zhí)行then部分的處理,如果判斷為假,就執(zhí)行else部分的處理。 重復(fù)構(gòu)造用兩種稍有不同的形式表示。 選擇構(gòu)造(或者說select - case構(gòu)造)實際上是if - then- else構(gòu)造的一種擴充。,5.3.1 程序流程圖,基本控制結(jié)構(gòu)
4、,5.3.1 程序流程圖,嵌套構(gòu)造,5.3.2 方塊圖,方塊圖(又稱N-S圖、蔡平圖)是一種強制使用結(jié)構(gòu)化構(gòu)造的圖示工具 。,方塊圖表示的結(jié)構(gòu)化構(gòu)造,5.3.2 方塊圖,方塊圖具有下列特點: 明確規(guī)定功能域(即某一具體構(gòu)造的功能范圍),并且能很直觀地從圖形表示中看出來。 不能隨意分支或轉(zhuǎn)移。 可以很容易地確定局部數(shù)據(jù)和全程數(shù)據(jù)的作用域。 容易表示出遞歸結(jié)構(gòu)。,5.3.3 HIPO圖,HIPO(hierarchy plus input-process-output,層次加輸入-處理-輸出)圖是根據(jù)IBM公司研制的軟件設(shè)計與文件編制技術(shù)發(fā)展而來的。在概要設(shè)計、詳細(xì)設(shè)計、設(shè)計評審、測試和維護的不同階
5、段,都可以使用HIPO圖對設(shè)計進行描述。 HIPO圖是一種圖示工具,其最重要的特征是能夠表示輸入/輸出數(shù)據(jù)(外部數(shù)據(jù)和內(nèi)部數(shù)據(jù)流程)與軟件的過程之間的關(guān)系。,5.3.3 HIPO圖,一組完整的HIPO圖由下列各部分組成。 層次圖(H圖):以層次方框形式表達(dá)程序主功能模塊與次功能模塊的關(guān)系。 高層IPO圖:針對H圖中的主功能模塊和次功能模塊,描述其輸入、處理及輸出等。 低層IPO圖:給出H圖中最底層的具體設(shè)計。,5.3.3 HIPO圖,實例:“訂單處理子系統(tǒng)”的H圖,“訂單處理了系統(tǒng)”的H圖,5.3.4 PAD圖,PAD(problem analysis diagram,問題分析圖)是一種用于軟
6、件詳細(xì)設(shè)計的表達(dá)形式,它綜合了流程圖、Warnier圖、方塊圖和偽碼等技術(shù)的一些特點,以二維樹的形式描述程序的邏輯,其主要優(yōu)點是程序結(jié)構(gòu)清晰,能夠直接導(dǎo)出程序代碼。 PAD可應(yīng)用于BASIC、FORTRAN、C等高級語言。在軟件需求分析和概要設(shè)計階段,PAD圖是當(dāng)前廣泛使用的一種軟件設(shè)計方法。PAD采用自頂向下、逐步求精和結(jié)構(gòu)化設(shè)計的原則,力求將模糊的問題解的概念逐步轉(zhuǎn)換成確定的、詳盡的過程。,5.3.4 PAD圖,PAD方法的基本原理,5.3.4 PAD圖,PAD圖設(shè)置的4種基本控制結(jié)構(gòu)。,PAD圖的基本控制結(jié)構(gòu),5.4 偽碼與程序設(shè)計語言,偽碼(pseudo-code)是控制結(jié)構(gòu)和某些編程
7、語言元素的簡寫符號,可以任意插入注釋,而且常采用詞句而不是表達(dá)式,所以偽碼實質(zhì)上是“文字流程圖”。 使用偽碼時,控制結(jié)構(gòu)一般用鋸齒狀縮格書寫來表示控制的嵌套。熟悉某種程序設(shè)計語言的設(shè)計人員所用的偽碼可能就是該語言的簡化版本。,5.4 偽碼與程序設(shè)計語言,程序設(shè)計語言(program design language,PDL,又稱詳細(xì)設(shè)計語言DDL)彌補了上述缺點,它是一種“混雜式語言”。 在這種語言中,采用某種語言(例如英語)的詞匯,但卻采用另一種語言(即一種結(jié)構(gòu)化編程語言)的全部語法,它用文本格式提供一種描述數(shù)據(jù)和處理的方法。程序設(shè)計語言有正規(guī)的句法,指出數(shù)據(jù)和處理結(jié)構(gòu),并用自然語言說明細(xì)節(jié)。
8、,5.4 偽碼與程序設(shè)計語言,一個典型的結(jié)構(gòu)化程序設(shè)計語言子集 :,5.4 偽碼與程序設(shè)計語言,在總體結(jié)構(gòu)上它和高級語言程序的相似之處主要有以下幾點: 關(guān)鍵字起到了骨架作用。 按程序結(jié)構(gòu)縮格書寫。,5.4 偽碼與程序設(shè)計語言,高級語言與程序設(shè)計語言所描述的程序仍有顯著的差別,主要差別表現(xiàn)在: 除去特定的若干關(guān)鍵字外,所描述的內(nèi)容還使用了簡單的自然語言,沒有高級語言那樣嚴(yán)格的語法限制,也完全可以采用中文來敘述。,5.5 各種詳細(xì)設(shè)計工具的比較,任何一種詳細(xì)設(shè)計工具如果使用得當(dāng),對設(shè)計都有很大的幫助;如果使用不當(dāng),即便是最好的工具也不會有什么幫助。一個詳細(xì)設(shè)計工具應(yīng)當(dāng)可以用來得到便于理解和復(fù)審的過
9、程表示。 此外詳細(xì)設(shè)計工具還應(yīng)當(dāng)增強編程的能力,以使程序事實上成為設(shè)計的一個自然產(chǎn)物。最后,利用詳細(xì)設(shè)計工具得到的設(shè)計表示還必須便于維護,以使設(shè)計總是能夠正確地表達(dá)程序。,5.5 各種詳細(xì)設(shè)計工具的比較,根據(jù)上面介紹的一般特性,設(shè)計工具應(yīng)有下列屬性: 模塊性 簡明性 便于編輯 機器可讀性 可維護性 強行結(jié)構(gòu)化 自動處理 邏輯驗證 編程能力,5.6 詳細(xì)設(shè)計文件與復(fù)審,詳細(xì)設(shè)計完成后,計算機軟件產(chǎn)品開發(fā)文件編制指南中規(guī)定的這一階段應(yīng)交付的文件主要有: 詳細(xì)設(shè)計說明書。 初步的模塊開發(fā)卷宗。,5.6.1 詳細(xì)設(shè)計說明書,詳細(xì)設(shè)計說明書又稱程序設(shè)計說明書。編制本說明書的目的是,說明一個軟件系統(tǒng)各個層次中的每一個程序的設(shè)計考慮,如實現(xiàn)算法、邏輯流程等。,5.6.2 詳細(xì)設(shè)計的復(fù)審,軟
溫馨提示
- 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)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2030中國現(xiàn)場護理測試(POCT)行業(yè)產(chǎn)業(yè)運行態(tài)勢及投資規(guī)劃深度研究報告
- 2025至2030中國玉米油行業(yè)發(fā)展趨勢分析與未來投資戰(zhàn)略咨詢研究報告
- 家校聯(lián)結(jié)科技鋪路
- 智慧城市基礎(chǔ)設(shè)施的智能化運維策略
- 智慧城市公共空間LED照明的智能化管理
- 從文化交流角度看籃球教育的國際化
- 教育游戲化設(shè)計原則與挑戰(zhàn)共克
- 商業(yè)培訓(xùn)中LMS的效果評估與案例分享
- 增強教育行業(yè)的數(shù)據(jù)保護能力與技術(shù)創(chuàng)新研究
- 倫理引導(dǎo)下的教育技術(shù)創(chuàng)新與發(fā)展
- 金融學(xué)原理重點總結(jié)彭興韻
- Cmk設(shè)備能力指數(shù)分析表
- J17J177 鋼絲網(wǎng)架珍珠巖復(fù)合保溫外墻板建筑構(gòu)造
- 水泥檢測培訓(xùn)試題(附答案)
- 譯林版三年級英語上冊《全冊課件》ppt
- 高標(biāo)準(zhǔn)農(nóng)田建設(shè)上圖入庫(技術(shù)培訓(xùn))
- ma600學(xué)員座艙圖冊用戶培訓(xùn)中心
- 城鎮(zhèn)燃?xì)鈭稣窘?jīng)營企業(yè)安全生產(chǎn)標(biāo)準(zhǔn)化評分標(biāo)準(zhǔn)
- 液壓過濾器的設(shè)計和制造
- 不動產(chǎn)登記實務(wù)PPT完整版
- 《義務(wù)教育英語課程標(biāo)準(zhǔn)(2022年版)》自測題、綜合測試題、初中英語新課標(biāo)過關(guān)抽測試卷及優(yōu)秀答卷(共17套附答案)
評論
0/150
提交評論