資源描述:
《軟件工程-6-詳細(xì)設(shè)計(jì)概要.ppt》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、第六章詳細(xì)設(shè)計(jì)-過程設(shè)計(jì)主要內(nèi)容6.1結(jié)構(gòu)化程序設(shè)計(jì)中的三種結(jié)構(gòu)結(jié)構(gòu)化程序設(shè)計(jì)思想的提出概念最早由Dijkstra提出,他是鑒于高級(jí)語(yǔ)言Fortran中的”GOTO語(yǔ)句有害”順序(Sequence);條件(Condition);重復(fù)(Repetition)6.2設(shè)計(jì)表示法圖形設(shè)計(jì)表達(dá)式表格設(shè)計(jì)表達(dá)式過程設(shè)計(jì)語(yǔ)言表達(dá)式6.3面向數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)方法6.4程序復(fù)雜程度的定量度量6.1結(jié)構(gòu)化程序設(shè)計(jì)結(jié)構(gòu)程序設(shè)計(jì)的特點(diǎn):①自頂向下逐步求精;②具有單入、單出的控制結(jié)構(gòu)(取消GOTO語(yǔ)句)結(jié)構(gòu)程序設(shè)計(jì)①順序,選擇和循環(huán);②具有單入、單出的控制結(jié)構(gòu)成
2、功的結(jié)構(gòu)化程序設(shè)計(jì):1971,IBM,紐約時(shí)報(bào)信息庫(kù)管理系統(tǒng),8萬(wàn)3千行美國(guó)宇航局空間實(shí)驗(yàn)室飛行模擬系統(tǒng),40萬(wàn)行6.2過程設(shè)計(jì)工具圖形設(shè)計(jì)表達(dá)式流程圖盒圖PAD圖(在PAD開發(fā)方法講)表格設(shè)計(jì)表達(dá)式判定表/樹過程設(shè)計(jì)語(yǔ)言表達(dá)式過程設(shè)計(jì)語(yǔ)言(ProcedureDesignLanguage,PDL)(1)順序結(jié)構(gòu)(sequentialstructure)(2)選擇結(jié)構(gòu)(selectivestructure)ABPBAFT(3)先判定型循環(huán)結(jié)構(gòu)(while-loopstructure)(4)后判定型循環(huán)結(jié)構(gòu)(until-loopstruct
3、ure)TPSFFSTP(5)多情況選擇(casestructure)TA1FP=1TA2FP=2…TAnFP=n1、程序流程圖(ProgramFlowChart)注:1-3經(jīng)典程序設(shè)計(jì);1-5修正的程序設(shè)計(jì)?任何復(fù)雜的程序流程圖都應(yīng)由以上五種基本結(jié)構(gòu)組合而成。?缺點(diǎn):本質(zhì)上不具備逐步求精的特點(diǎn),對(duì)于提高大型系統(tǒng)的可理解性作用甚微;不易表示數(shù)據(jù)結(jié)構(gòu);轉(zhuǎn)移控制太方便。?優(yōu)點(diǎn):容易掌握,且歷史“悠久”,使用廣泛。?畫出下列3個(gè)偽碼程序的程序流程圖偽碼1:STARTIFpTHENWHILEqDOfENDDOELSEBLOCKgnENDBLOC
4、KENDIFSTOP偽碼2:TPSFSTART1:INPUT(A,B,C,D)2:IF(A>0)AND(B>0)THEN3:X=A+BELSE4:X=A-B5:END6:IF(C>A)OR(D
5、erman1973年提出,又稱為N-S.Charts。x4TFDo-Untilx5ighfkx1TFbDo-Untilx6ajx21cDo-Whilex323dek:例:特點(diǎn):①?zèng)]有箭頭,不允許隨意轉(zhuǎn)移控制;②每個(gè)矩形框(Case中條件取值例外)都是一個(gè)功能域(即一個(gè)特定結(jié)構(gòu)的作用域),結(jié)構(gòu)表示明確;③局部及全程數(shù)據(jù)的作用域易見;④易表現(xiàn)嵌套關(guān)系(embeddedstructure)以及模塊的層次結(jié)構(gòu)。?盒圖--〉流程圖3PAD圖的設(shè)計(jì)PAD圖的提出PAD圖由日本日立制作所中央研究所主任研究員小村良彥等提出PAD圖是一種用于過程設(shè)計(jì)的士
6、表達(dá)式PAD圖的特點(diǎn)PAD圖綜合了流程圖、盒圖、Warnier圖和偽碼等技術(shù)的一些優(yōu)點(diǎn),在Pascal語(yǔ)言基礎(chǔ)上發(fā)展而成基于Pascal的控制結(jié)構(gòu),用二維樹形成描述程序的邏輯結(jié)構(gòu)清晰PAD圖的應(yīng)用可應(yīng)用于多種編程語(yǔ)言不僅支持軟件的詳細(xì)設(shè)計(jì)階段,還支持軟件的概要設(shè)計(jì)和需求分析階段PAD圖基本符號(hào)符號(hào)名稱說明輸入框框內(nèi)寫出輸入變量名輸出框框內(nèi)寫出輸出變量名處理框框內(nèi)寫出處理名或語(yǔ)句名重復(fù)框先判定,再重復(fù),框內(nèi)寫重復(fù)條件重復(fù)框先執(zhí)行,后判定,再重復(fù),…選擇框可一路、二路或多路選擇,…子程序框子程序處理框,框內(nèi)寫子程序名PAD圖基本符號(hào)(續(xù))符
7、號(hào)名稱說明定義框框內(nèi)寫定義名語(yǔ)句標(biāo)號(hào)圈內(nèi)寫出語(yǔ)句標(biāo)號(hào)定義用于PAD圖的增加或分解defPAD圖的基本圖式和語(yǔ)言的標(biāo)準(zhǔn)模式構(gòu)造PADC順序H1;H2;選擇if-thenif(Q){H;}if-then-elseif(Q){H1;}else{H2;}do-case(switch)switchi{casei1:H1;break;casei2:H2;break;casein:Hn;break;default:Hd;}PAD圖的基本圖式和語(yǔ)言的標(biāo)準(zhǔn)模式(續(xù))構(gòu)造PADC重復(fù)do-whilewhile(Q){H;}repeat-un
8、tildo{H;}while(Q)for(e1;e2;e3){H;}x4TFDo-Untilx5ighfkx1TFbDo-Untilx6aj例:N-S圖與PAD的轉(zhuǎn)換開始?結(jié)束?ajUntilx5iUnti