Ø 模塊的功能應(yīng)是可以預(yù)測(cè)的,相同輸入得到相同輸出
結(jié)構(gòu)化設(shè)計(jì)方法
結(jié)構(gòu)化設(shè)計(jì)(SD)方法是一種面向數(shù)據(jù)流的設(shè)計(jì)方法,它可以與SA方法銜接。
結(jié)構(gòu)化設(shè)計(jì)采用結(jié)構(gòu)圖(SC)來(lái)描述程序的結(jié)構(gòu)。其基本成分有模塊、調(diào)用和輸入/輸出數(shù)據(jù)。
結(jié)構(gòu)圖:
在需求分析階段用SA方法產(chǎn)生了數(shù)據(jù)流圖(DFD)。面向數(shù)據(jù)流的設(shè)計(jì)可以方便的將DFD轉(zhuǎn)換成程序結(jié)構(gòu)圖。DFD從系統(tǒng)的輸入數(shù)據(jù)流到系統(tǒng)的輸出數(shù)據(jù)流的一連串連續(xù)變換形成一條信息流。DFD的信息流大體可分為兩種類(lèi)型:變換流和事務(wù)流。與之對(duì)應(yīng)的也存在兩種分析,變換分析和事務(wù)分析。變換分析是從變換流型的DFD導(dǎo)出程序結(jié)構(gòu)圖,而事務(wù)分析則是從事務(wù)流行型的DFD導(dǎo)出程序結(jié)構(gòu)圖。
SD方法的具體設(shè)計(jì)步驟為:
Ø 復(fù)查并精化數(shù)據(jù)流圖
Ø 確定DFD的信息流類(lèi)型
Ø 根據(jù)信息流類(lèi)型分別將變換流或事務(wù)流轉(zhuǎn)換成程序結(jié)構(gòu)圖
Ø 根據(jù)軟件設(shè)計(jì)的原則對(duì)程序結(jié)構(gòu)圖作改進(jìn)
結(jié)構(gòu)化程序設(shè)計(jì)
結(jié)構(gòu)化程序(SP)設(shè)計(jì)采用自頂向下逐步求精的設(shè)計(jì)方法和單入口單出口的控制結(jié)構(gòu)。
結(jié)構(gòu)化程序設(shè)計(jì)的描述工具主要有圖形描述工具、語(yǔ)言描述工具和表格描述工具。常用的圖形描述工具有程序流程圖、盒圖(NS圖)和問(wèn)題分析圖(PAD)。典型的語(yǔ)言描述工具是PDL(program design language)。典型的表格描述工具是判定表和判定樹(shù)。
面向數(shù)據(jù)結(jié)構(gòu)的Jackson方法也十分常用:
Jackson方法是以數(shù)據(jù)結(jié)構(gòu)為設(shè)計(jì)基礎(chǔ),設(shè)計(jì)目標(biāo)是得出對(duì)程序處理過(guò)程的描述,其設(shè)計(jì)過(guò)程是從描繪數(shù)據(jù)結(jié)構(gòu)的Jackson圖推導(dǎo)出描繪程序結(jié)構(gòu)的Jackson圖。這種方法最適合于詳細(xì)設(shè)計(jì)階段使用。
Jackson方法的具體設(shè)計(jì)步驟為:
Ø 分析并確定輸入和輸出的數(shù)據(jù)的邏輯結(jié)構(gòu),并用Jackson圖表示
Ø 找出輸入數(shù)據(jù)結(jié)構(gòu)與輸出數(shù)據(jù)結(jié)構(gòu)間有對(duì)應(yīng)關(guān)系的數(shù)據(jù)單元
Ø 從描述數(shù)據(jù)結(jié)構(gòu)的Jackson圖導(dǎo)出描述程序結(jié)構(gòu)的Jackson圖
軟件編碼:
根據(jù)詳細(xì)設(shè)計(jì)說(shuō)明書(shū)編寫(xiě)程序,為開(kāi)發(fā)項(xiàng)目選擇程序設(shè)計(jì)語(yǔ)言需要考慮的因素有應(yīng)用領(lǐng)域、算法和計(jì)算的復(fù)雜性、軟件運(yùn)行環(huán)境、用戶需求、數(shù)據(jù)結(jié)構(gòu)和開(kāi)發(fā)人員的水平。軟件的設(shè)計(jì)質(zhì)量與程序設(shè)計(jì)語(yǔ)言的技術(shù)性能無(wú)關(guān),但在程序設(shè)計(jì)轉(zhuǎn)向程序代碼時(shí),轉(zhuǎn)化的質(zhì)量受語(yǔ)言性能的影響。
好的程序應(yīng)該具有模塊化結(jié)構(gòu),系統(tǒng)應(yīng)該有較高的模塊獨(dú)立性。
從應(yīng)用領(lǐng)域看,COBOL適合商業(yè)領(lǐng)域;FORTRAN適合科學(xué)計(jì)算;PROLOG和LISP適合人工智能領(lǐng)域;SMALLTALK、C++、JAVA是面向?qū)ο笳Z(yǔ)言;C是開(kāi)發(fā)系統(tǒng)的程序設(shè)計(jì)語(yǔ)言;
相關(guān)推薦:推薦:2010年計(jì)算機(jī)軟件水平考試必備完美攻略北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |