總體設(shè)計與詳細設(shè)計.ppt
《總體設(shè)計與詳細設(shè)計.ppt》由會員分享,可在線閱讀,更多相關(guān)《總體設(shè)計與詳細設(shè)計.ppt(102頁珍藏版)》請在裝配圖網(wǎng)上搜索。
總體設(shè)計與詳細設(shè)計,,系統(tǒng)設(shè)計的任務(wù),根據(jù)已批準的系統(tǒng)分析報告,依照系統(tǒng)邏輯模型和實際運行環(huán)境以及經(jīng)濟技術(shù)條件,確定新系統(tǒng)的物理實施方案將邏輯模型轉(zhuǎn)換為物理模型的過程,邏輯模型,物理模型,系統(tǒng)設(shè)計的原則,系統(tǒng)性,靈活性,可靠性,經(jīng)濟性,5.1.3系統(tǒng)設(shè)計的主要內(nèi)容,1、系統(tǒng)總體結(jié)構(gòu)設(shè)計2、代碼設(shè)計3、數(shù)據(jù)庫(文件)設(shè)計4、輸入/輸出設(shè)計5、處理流程設(shè)計6、程序流程設(shè)計7、系統(tǒng)設(shè)計文檔,系統(tǒng)設(shè)計的步驟,1、系統(tǒng)總體設(shè)計2、詳細設(shè)計3、系統(tǒng)實施進度與計劃的制定4、系統(tǒng)設(shè)計說明書的編寫,系統(tǒng)總體結(jié)構(gòu)設(shè)計,1系統(tǒng)總體功能結(jié)構(gòu)設(shè)計概述2模塊和模塊結(jié)構(gòu)3模塊分解的原則4控制結(jié)構(gòu)圖的繪制5系統(tǒng)平臺設(shè)計,系統(tǒng)總體功能結(jié)構(gòu)設(shè)計概述,1.系統(tǒng)總體設(shè)計的任務(wù)根據(jù)系統(tǒng)分析文檔資料和系統(tǒng)的邏輯模型設(shè)計新系統(tǒng)的物理模型和物理結(jié)構(gòu)。2.系統(tǒng)總體設(shè)計的基本要求能夠?qū)崿F(xiàn)邏輯模型所規(guī)定的信息服務(wù)功能系統(tǒng)具有一定的適應(yīng)性和可修改性和可擴充性3.系統(tǒng)總體設(shè)計的主要問題及其解決方法主要問題:系統(tǒng)各部分之間的信息關(guān)聯(lián),造成“波動效應(yīng)”,使系統(tǒng)設(shè)計、修改和維護困難解決方法:采用結(jié)構(gòu)化設(shè)計和模塊化設(shè)計的思想方法,系統(tǒng)總體功能結(jié)構(gòu)設(shè)計概述,結(jié)構(gòu)化設(shè)計的三個要點:系統(tǒng)性自頂向下分解層次性模塊化設(shè)計的基本思想:把一個信息系統(tǒng)設(shè)計成若干模塊的方法稱為模塊化將系統(tǒng)設(shè)計成由相對獨立、單一功能的模塊組成的結(jié)構(gòu)圖示,,模塊和模塊結(jié)構(gòu),1.概述結(jié)構(gòu)化設(shè)計借助一套標準的設(shè)計原則和圖表工具,把系統(tǒng)分成若干模塊,各模塊可通過結(jié)構(gòu)化語言、N-S圖、IPO圖、決策表、決策樹等工具進行描述。(UC矩陣逐層分析:系統(tǒng)-子系統(tǒng)-模快)2.模塊模塊是可以組合、分解和更換的基本單元。(1)輸入和輸出(2)功能(3)位置(4)內(nèi)部數(shù)據(jù)(5)處理邏輯(6)程序代碼,模塊和模塊結(jié)構(gòu),3.控制結(jié)構(gòu)圖(1)基本符號圖示(2)表示方式(3)模塊調(diào)用規(guī)則每個模塊都有特定的任務(wù),只有上級模塊才能調(diào)用下級模塊只有上下級模塊之間才能通信相鄰模塊必須通過各自的上級模塊傳遞才能間接通信模塊按照自上而下的順序調(diào)用,,,,模塊和模塊結(jié)構(gòu),(4)數(shù)據(jù)傳送圖示(5)控制信息傳送(6)轉(zhuǎn)接符號的使用4.模塊分解的基本結(jié)構(gòu)類型順序結(jié)構(gòu)+選擇結(jié)構(gòu)+循環(huán)結(jié)構(gòu)圖示,,模塊分解的原則,1.模塊的獨立性2.模塊的凝聚性(1)偶然凝聚(2)邏輯凝聚(3)時間凝聚(4)數(shù)據(jù)凝聚(5)功能凝聚3.模塊耦合(1)數(shù)據(jù)耦合(2)控制耦合(3)內(nèi)容耦合,控制結(jié)構(gòu)圖的繪制,1.繪制的依據(jù)和過程依據(jù):數(shù)據(jù)流程圖。過程:首先將上層數(shù)據(jù)流程圖映射為上層控制結(jié)構(gòu)圖,由頂層數(shù)據(jù)流程圖開始,逐級下推,每一層數(shù)據(jù)流程圖中的處理功能映射為相應(yīng)的模塊。圖示2.以轉(zhuǎn)換為中心結(jié)構(gòu)的模塊分解分解為輸入、處理、輸出三大部分。教材P173圖5-11圖示3.以業(yè)務(wù)為中心結(jié)構(gòu)的模塊分解分解一個檢查業(yè)務(wù)類型模塊和一個調(diào)度類型模塊,調(diào)度類型模塊可以繼續(xù)分為不同處理邏輯的子模塊。教材P174圖5-13圖示,系統(tǒng)平臺設(shè)計,管理信息系統(tǒng)平臺設(shè)計包括計算機處理方式,網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計,網(wǎng)絡(luò)操作系統(tǒng)的選擇,數(shù)據(jù)庫管理系統(tǒng)的選擇等軟、硬件選擇與設(shè)計工作等。1、按管理信息系統(tǒng)的目標選擇系統(tǒng)平臺單項業(yè)務(wù)系統(tǒng)綜合業(yè)務(wù)管理系統(tǒng)集成管理系統(tǒng)信息處理模式2、計算機處理方式的選擇和設(shè)計選擇根據(jù)選擇方式3、計算機網(wǎng)絡(luò)系統(tǒng)的設(shè)計有關(guān)內(nèi)容請參考計算機網(wǎng)絡(luò)的技術(shù)書籍,系統(tǒng)平臺設(shè)計,4、數(shù)據(jù)庫管理系統(tǒng)的選擇選擇原則5、軟、硬件選擇根據(jù)系統(tǒng)需要和資源約束進行選擇采用采購招標方式進行硬件的選擇原則軟件的選擇原則,數(shù)據(jù)庫設(shè)計,1文件設(shè)計2數(shù)據(jù)庫設(shè)計的要求和步驟3概念結(jié)構(gòu)設(shè)計4邏輯結(jié)構(gòu)設(shè)計說明:關(guān)系模型在第二章已講,數(shù)據(jù)庫的物理實現(xiàn)用VFP,機房上機。,文件設(shè)計,文件設(shè)計就是根據(jù)文件的使用要求、處理方式、存儲量、數(shù)據(jù)的活動性以及硬件設(shè)備的條件等,合理地確定文件類別,選擇文件介質(zhì),決定文件的組織方式和存取方法。1、文件的分類主文件(靜態(tài)文件+動態(tài)文件)業(yè)務(wù)文件輸入文件輸出文件工作文件轉(zhuǎn)存文件,5.3.1文件設(shè)計,2、文件設(shè)計的步驟了解已有的或可提供的計算機系統(tǒng)功能確定文件設(shè)計的基本指標與其他文件的接口文件的數(shù)據(jù)量文件的邏輯結(jié)構(gòu)文件的處理方式文件的使用率文件的存取時間文件的保密確定合適的文件組織方式、存取方式和介質(zhì)編寫文件設(shè)計說明書,數(shù)據(jù)庫設(shè)計的要求和步驟,1.數(shù)據(jù)庫設(shè)計的要求滿足用戶要求滿足數(shù)據(jù)庫管理系統(tǒng)要求具有較高的范式2.數(shù)據(jù)庫設(shè)計的步驟(1)數(shù)據(jù)庫的概念結(jié)構(gòu)設(shè)計(2)數(shù)據(jù)庫的邏輯結(jié)構(gòu)設(shè)計(3)數(shù)據(jù)庫的物理結(jié)構(gòu)設(shè)計,,,,,,5.3.3概念結(jié)構(gòu)設(shè)計,1.概念模型的表示方法E-R圖+實例分析2.確定系統(tǒng)實體、屬性與聯(lián)系3.確定局部E-R圖(含屬性圖)4.確定完整E-R圖將各個局部E-R圖合并為完整E-R圖5.優(yōu)化E-R圖,概念結(jié)構(gòu)設(shè)計,具體操作:通讀文字描述,確定所有實體,用矩形表示通讀文字描述,逐一確定各實體之間的聯(lián)系,并用菱形表示標出各聯(lián)系的類型用橢圓添加實體屬性,并用下劃線注明主屬性,,,工廠物資管理(較完整的E-R圖示例),實體倉庫、零件、供應(yīng)商、項目、職工實體間的聯(lián)系一個倉庫可以存放多種零件,一種零件可存放在多個倉庫中一個倉庫有多個職工當倉庫保管員,一個職工只能在一個倉庫工作職工中有領(lǐng)導(dǎo):倉庫主任供應(yīng)關(guān)系中都是多對多的關(guān)系,工廠物資管理實體及其屬性圖,工廠物資管理實體及其屬性圖,工廠物資管理實體及其聯(lián)系圖,完整的E-R圖,主碼?,邏輯結(jié)構(gòu)設(shè)計,1.概念模型轉(zhuǎn)換為關(guān)系數(shù)據(jù)模型的原則一個實體轉(zhuǎn)換為一個關(guān)系,實體的屬性就是關(guān)系的屬性,實體的碼就是關(guān)系的碼一個聯(lián)系也轉(zhuǎn)換為一個關(guān)系,聯(lián)系的屬性以及聯(lián)系所連接的實體的屬性轉(zhuǎn)換為關(guān)系的屬性,碼的轉(zhuǎn)換:1:1聯(lián)系——兩端實體的碼都成為關(guān)系的候選碼1:n聯(lián)系——n端實體的碼成為關(guān)系的碼m:n聯(lián)系——兩端實體的碼組合成為關(guān)系的碼2.關(guān)系的轉(zhuǎn)換實體——關(guān)系;聯(lián)系——關(guān)系;碼屬性用下劃線3.關(guān)系的合并將具有相同碼的關(guān)系合并關(guān)系模型的優(yōu)化——范式理論,代碼設(shè)計,1代碼概述2代碼設(shè)計方法3管理信息系統(tǒng)中的代碼,代碼設(shè)計,代碼社會現(xiàn)象:全國公民的身份證號碼學生的學號職工的職工號銀行操作員編號數(shù)據(jù)流程圖中的代碼,代碼概述,1、定義代碼(Code)是人為確定的代表客觀事物(實體)名稱、屬性或狀態(tài)的符號或者是這些符號的組合。2、作用唯一化+規(guī)范化+系統(tǒng)化+快速化,代碼設(shè)計方法,1.代碼設(shè)計的原則(1)足夠的容量;(2)按屬性系統(tǒng)化;(3)分類的柔性;(4)系統(tǒng)間的協(xié)調(diào)2.代碼的類型(1)順序碼以某種順序形式編碼。(2)數(shù)字碼(成組碼)即以純數(shù)字符號形式編碼。區(qū)間碼+層次碼。(3)字符碼(表意碼)即以純字符形式編碼(英文、漢語拼音等)。(4)混合碼即以數(shù)字和字符混合形式編碼。(5)其他重復(fù)碼+專用碼+組合碼。,代碼設(shè)計方法,3.代碼的設(shè)計方法(1)線分類方法線分類方法的主要出發(fā)點是:首先給定母項,母項下分若干子項,由對象的母項分大集合,由大集合確定小集合……,最后落實到具體對象。舉例。(2)面分類方法主要從面角度來考慮分類。舉例。代碼3212表示材料為鋼的Φ1.0mm圓頭的鍍鉻螺釘。,,,代碼設(shè)計方法,4.代碼的校驗(1)錄入代碼時的可能錯誤:識別錯誤+易位錯誤+雙易位錯誤+隨機錯誤(2)避免代碼錄入出現(xiàn)錯誤的辦法增加校驗位。(3)校驗位的確定步驟理論+舉例。,代碼設(shè)計方法,4.代碼的校驗原設(shè)計的一組代碼為五位:32456,確定權(quán)數(shù)為7,6,5,4,3求代碼每一位Ci與其對應(yīng)的權(quán)數(shù)Pi的乘積之和SS=C1*P1+C2*P2+……+C5*P5=3*7+2*6+4*5+5*4+6*3=21+12+20+20+18=91確定模M,M=11取余R,R=SMOD(M)=91MOD(11)=3校驗位C6=R=3最終代碼為:C1C2C3CC5C6,即324563使用時為:324563,管理信息系統(tǒng)中的代碼,1.部門代碼采用成組碼。前兩位為部門編碼,后兩位為科室編碼。2.人員代碼可以采用順序碼或組合碼。3.物資代碼采用成組碼,并用表意碼輔助。4.設(shè)備代碼采用組合碼。產(chǎn)品代碼+部門代碼+順序號構(gòu)成的物資碼。,管理信息系統(tǒng)中的代碼,5.產(chǎn)品代碼采用成組碼或表意碼。EWH-69C。6.工程代碼采用成組碼。序列號+年份+工程性質(zhì)7.會計科目代碼采用成組碼。分段分級設(shè)計代碼。,詳細設(shè)計,,概述結(jié)構(gòu)化構(gòu)造圖形設(shè)計工具偽碼與程序設(shè)計語言各種詳細設(shè)計工具的比較詳細設(shè)計文件與復(fù)審,概述,概要設(shè)計完成了程序的總體結(jié)構(gòu)設(shè)計,規(guī)定了各個模塊的功能及各模塊之間的相互聯(lián)系,再進一步,要考慮每個模塊內(nèi)部的算法問題。從軟件開發(fā)的工程化觀點來看,在使用程序設(shè)計語言編寫程序以前,需要對算法的邏輯關(guān)系進行分析,并給出清晰的表達,使之成為編碼的依據(jù)。這一步工作不僅編碼工作容易多了,而且給軟件的維護帶來了很多的方便。,在理想的情況下,詳細設(shè)計步驟需要的過程描述應(yīng)當用自然語言來表達。但是,詳細設(shè)計必須是無歧義地描述過程的細節(jié),而自然語言卻不具有單一性。必須使用更有約束性的方式來表示過程細節(jié)。在概要設(shè)計期間,每個模塊被定義為軟件總體結(jié)構(gòu)的組成部分,用自然語言編寫結(jié)構(gòu)圖和接口說明、模塊的處理說明和性能說明。為了把這些簡明的、無歧義的一般處理步驟的描述轉(zhuǎn)換為準確的、結(jié)構(gòu)過程的描述,就需要使用設(shè)計描述工具。,結(jié)構(gòu)化構(gòu)造,過程規(guī)格說明的工具稱之為詳細設(shè)計工具,可分為:圖形工具:把過程的細節(jié)表示成一個“圖”的組成部分,在這個圖上,邏輯構(gòu)造用具體的圖形來表示。列表工具:用一個表來表示過程的細節(jié),表列出了各種操作及相應(yīng)的條件。語言工具:用類語言來表示過程的細節(jié),類語言很接近編程語言。不管屬于哪一類,一種設(shè)計工具應(yīng)表現(xiàn)出控制的流程、處理功能、數(shù)據(jù)的組織及實現(xiàn)的細節(jié)。,詳細設(shè)計的基礎(chǔ)在60年代初期開始奠定和充實的。60年代后期,提出了一組邏輯構(gòu)造,利用這組邏輯構(gòu)造可以構(gòu)成任何程序。這組構(gòu)造強調(diào)“維持一定的功能域”。也就是說,每個構(gòu)造有一個預(yù)定的邏輯結(jié)構(gòu),每個構(gòu)造都從頂部進入并從底部離去。順序構(gòu)造是實現(xiàn)任何一個算法的基本處理步驟。條件構(gòu)造根據(jù)某種邏輯條件的出現(xiàn)而選擇相應(yīng)的處理步驟。重復(fù)構(gòu)造則是為循環(huán)而設(shè)置的。這三種構(gòu)造是結(jié)構(gòu)程序設(shè)計——軟件工程領(lǐng)域中的一種重要方法——的基礎(chǔ)。,提出這些結(jié)構(gòu)化構(gòu)造的目的是限制軟件的過程設(shè)計,只允許采用幾種預(yù)定的操作。采用這些結(jié)構(gòu)化構(gòu)造將減少程序的復(fù)雜性,從而提高軟件的可讀性、可測試性和可維護性。使用有限的幾種邏輯構(gòu)造還有助于人們用“成塊識別”的方式去理解進程。任何一個程序,不管它的應(yīng)用領(lǐng)域或技術(shù)復(fù)雜性如何,都可以僅僅用這3種結(jié)構(gòu)化構(gòu)造來設(shè)計和實現(xiàn)。,詳細設(shè)計中的圖形工具有:流程圖方塊圖(N-S圖)HIPO圖PAD圖等這些圖形工具提供了極好的圖形樣式,通過它們,可以方便地描述過程的細節(jié)。,圖形設(shè)計工具,流程圖獨立于各種程序設(shè)計語言,比較直觀、清晰,易于學習掌握。然而,它也是經(jīng)常被誤用的一種方法。為使流程圖能描述結(jié)構(gòu)化程序,限制流程圖只能由幾種基本控制結(jié)構(gòu)組成,或者說任一程序流程圖都應(yīng)能由幾種基本控制結(jié)構(gòu)嵌套而成。ISO5807《信息處理——數(shù)據(jù)流程圖、程序流程圖、系統(tǒng)流程圖、程序網(wǎng)絡(luò)圖和系統(tǒng)資源圖的文件編制符號及約定》中對程序流程圖的符號做出了規(guī)定。,,【例】畫出實現(xiàn)符號函數(shù)的流程圖。,通常,當需要從一組嵌套的循環(huán)構(gòu)造或者嵌套的條件構(gòu)造中離去時,只簡單地采用結(jié)構(gòu)化構(gòu)造有可能使效率降低,甚至沿著離去路徑使所有邏輯測試復(fù)雜化,從而使軟件的控制流程變得模糊不清,增加了出錯的可能性,并且對可讀性和可維護性也有不良影響。這時,可以有兩種選擇:重新設(shè)計程序流程,使得在控制流程的嵌套部位不需要出現(xiàn)離去分支。有控制地采用非結(jié)構(gòu)化的構(gòu)造;也就是說,設(shè)計成有限制地從嵌套流程中往外分支。,方塊圖是一種強制使用結(jié)構(gòu)化構(gòu)造的圖示工具,具有下列特點:明確規(guī)定功能域(即某一具體構(gòu)造的功能范圍),并且很直觀地從圖形表示中看出來。不可能隨意分支或轉(zhuǎn)移??梢院苋菀椎卮_定局部數(shù)據(jù)和(或)全程數(shù)據(jù)的作用域。容易表示出遞歸結(jié)構(gòu)。,NS圖是一種不允許破壞結(jié)構(gòu)化的圖形算法描述工具。在NS圖中去掉了流程圖中易引起麻煩的流程線,全部算法都寫在一個框內(nèi),每一種結(jié)構(gòu)也是一個框。,,【例】畫出實現(xiàn)符號函數(shù)的NS圖。,對應(yīng)與一個結(jié)構(gòu)化流程圖的方塊圖,HIPO(層次加輸入-處理-輸出)是根據(jù)IBM公司研制的軟件設(shè)計與文件編制技術(shù)發(fā)展而來的一種圖示工具。在概要設(shè)計、詳細設(shè)計、設(shè)計評審、測試和維護的不同階段,都可以使用HIPO圖對設(shè)計進行描述。HIPO圖的最重要的特征是它能夠表示輸入/輸出數(shù)據(jù)(外部數(shù)據(jù)和內(nèi)部數(shù)據(jù)流程)與軟件的過程之間的關(guān)系。完整的一組HIPO圖由下列各部分組成:層次圖(H圖):以層次方框形式表達程序主功能模塊與次功能模塊的關(guān)系。高層IPO圖:針對H圖中的主功能模塊和次功能模塊,描述其輸入,處理功及輸出等。低層IPO圖:給出H圖中最低層次的具體設(shè)計。,在畫H圖時要注意幾個問題:根據(jù)經(jīng)驗,一般每層畫3-10個功能模塊為宜。對于畫到第幾層為止則無統(tǒng)一標準,視具體情況而定。畫高層IPO時,從H層第一層開始畫,按自上而下,從左到右的順序畫出H圖中每個方框(除最底層外)的IPO圖。在IPO圖上給出哪些是輸入,處理的功能是什么,輸出什么。為了避免規(guī)模和維護上的復(fù)雜性問題,大多數(shù)項目的HIPO圖只深入到某一層。,PAD(問題分析圖)是一種用于軟件詳細設(shè)計的表達形式:綜合流程圖、Warnier圖(類似判定樹)、方塊圖和偽碼等技術(shù)的一些特點;以二維樹的形式描述程序的邏輯;主要優(yōu)點是程序結(jié)構(gòu)清晰,能夠直接導(dǎo)出程序代碼,并對其一致性進行檢查;可應(yīng)用于BASIC、FORTRAN、COBOL、PASCAL等高級語言;支持軟件需求分析和概要設(shè)計階段。,PAD圖采用自頂向下、逐步求精和結(jié)構(gòu)化設(shè)計的原則:力求將模糊的問題解的概念逐步轉(zhuǎn)換成確定的、詳盡的過程。最終可采用計算機進行處理。PAD為軟件設(shè)計提供了3種基本控制結(jié)構(gòu)(順序、循環(huán)和選擇)描述,首先要從系統(tǒng)設(shè)計的一種模糊的概念出發(fā),將過程描述為:過程順序部分的表示過程重復(fù)部分的表示過程選擇部分的表示重復(fù)上述步驟,直到過程完全確定和詳盡為止。,PAD圖對應(yīng)的程序執(zhí)行的步驟:PAD的執(zhí)行順序是從最左主干線的上端結(jié)點,自上而下依次執(zhí)行。當遇到判斷或循環(huán)時,就自左而右進入下一層從表示下一層的縱線上端開始執(zhí)行,直到該縱線下端,再返回上一層的縱線的轉(zhuǎn)入處。如此繼續(xù),直到執(zhí)行到主干線的下端為止。,,【例】畫出實現(xiàn)符號函數(shù)的PAD圖。,偽碼是控制結(jié)構(gòu)和某些編程語言元素的簡寫符號,可以任意插入注釋,實質(zhì)上是“文字流程圖”。熟悉某種程序設(shè)計語言的設(shè)計人員所用的偽碼可能就是該語言的簡化版本。實際使用時,設(shè)計人員可以隨意增加偽碼的詳細程度,特別是針對可能產(chǎn)生二義性的地方。偽碼的缺點是不標準,而且只有控制結(jié)構(gòu),對數(shù)據(jù)描述能力很差。,偽碼設(shè)計語言,程序設(shè)計語言(PDL,又稱詳細設(shè)計語言DDL)彌補了偽碼的缺點,它是一種“混雜式語言”。它采用某種語言(例如英語)的詞匯但卻采用另一種語言(即一種結(jié)構(gòu)化編程語言)的全部語法,它用文本格式提供一種描述數(shù)據(jù)和處理的方法。PDL有正規(guī)的句法,指出數(shù)據(jù)和處理結(jié)構(gòu),并用自然語言說明細節(jié)。雖然程序設(shè)計語言是不可執(zhí)行的,但可以對之開發(fā)出評價設(shè)計和轉(zhuǎn)換為源程序的自動化技術(shù)。,為了實現(xiàn)從詳細設(shè)計到編碼的自動轉(zhuǎn)換,各種程序設(shè)計語言都開發(fā)了相應(yīng)的PDL,如PDL/PASCAL,PDL/C,以及PDL/Ada等,它們利用程序設(shè)計語言的語法結(jié)構(gòu),用自然語言表示某些控制信息,使面向設(shè)計的部分減少,面向?qū)崿F(xiàn)的部分增加,從而使程序設(shè)計語言更件接近可執(zhí)行代碼。程序設(shè)計語言可分為三個部分:數(shù)據(jù)說明處理說明I/O對特殊的應(yīng)用,如多任務(wù)語句或?qū)崟r應(yīng)用等,可以提供專用的結(jié)構(gòu)和語句。,,PROCEDUREspellcheckIS查找錯拼單詞BEGINsplitdocumentintosinglewords將整個文檔分解成單詞lookupwordsindictionary在字典中查找這些單詞displaywordswhicharenotindictionary顯示找不到單詞createanewdictionary造一個新字典ENDspellcheck,在總體結(jié)構(gòu)上它和高級語言程序的相似之處主要在于:關(guān)鍵字起到了骨架作用。按程序結(jié)構(gòu)縮格書寫。主要差別表現(xiàn)在:除去特定的若干關(guān)鍵字外,所描述的內(nèi)容也使用了簡單的自然語言,沒有高級語言那樣嚴格的語法限制。程序設(shè)計語言是用于詳細設(shè)計階段的工具,這個階段的任務(wù)顯然與用高級語言編寫程序的任務(wù)完全不同。程序設(shè)計語言把敘述性說明文直接插入到PDL語句中。由于混合使用敘述性說明文和形式化的過程形式,故一般無法對其進行編譯。,PDL可以是一種稍作變動的編程語言,或者是為程序設(shè)計而專門研制的語言。作為一種程序設(shè)計語言,PDL應(yīng)當具有以下特征:其關(guān)鍵字有固定語法,以便提供全部結(jié)構(gòu)化構(gòu)造、數(shù)據(jù)說明和模塊化特性。一種自然語言的自由文法,用來描述處理性能。有數(shù)據(jù)說明機制,包括簡單的(標量與數(shù)組)與復(fù)雜的數(shù)據(jù)結(jié)構(gòu)(鏈表或?qū)哟谓Y(jié)構(gòu))。有子程序定義與調(diào)用方法,用來表達各種方式的接口說明。一個用程序設(shè)計語言描述的軟件設(shè)計應(yīng)當可以轉(zhuǎn)換成匯編語言、FORTRAN或者Pascal,只是難易程度有所不同而已。,任何一種詳細設(shè)計工具如果使用得當,對設(shè)計有很大幫助;如果使用不當,則即便是最好的工具也不會有什么幫助。一個詳細設(shè)計工具應(yīng):可以用來得到便于理解和復(fù)審的過程表示。應(yīng)增強編程的能力,以便使程序事實上成為設(shè)計的一個自然的產(chǎn)物。得到的設(shè)計表達還必須便于維護,以使設(shè)計總是能夠正確地表達程序。,根據(jù)上面介紹的一般特性,設(shè)計工具應(yīng)具有:模塊性:支持模塊化軟件的開發(fā)。簡明性:應(yīng)易學、易用、易讀。便于編輯:在設(shè)計、測試和維護階段便于修改。機器可讀性:應(yīng)能直接輸入到計算機內(nèi)處理??删S護性:軟件配置的維護意味對詳細設(shè)計的維護。強行結(jié)構(gòu)化:會使人們養(yǎng)成良好的設(shè)計習慣。自動處理:使設(shè)計人員對軟件的正確性與質(zhì)量有新的深入了解。數(shù)據(jù)表示:應(yīng)具有直接地表示局部和全程數(shù)據(jù)的能力。邏輯驗證:要達到設(shè)計邏輯的自動驗證這個首要目標。編程能力:所表示的設(shè)計可以很容易轉(zhuǎn)換成源程序。,設(shè)計工具的選擇更大程度上取決于人的因素,而不是取決于技術(shù)特性。,詳細設(shè)計完畢,應(yīng)交付的文件有:詳細設(shè)計說明書初步的模塊開發(fā)卷宗。,詳細設(shè)計文件與復(fù)審,詳細設(shè)計說明書又稱程序設(shè)計說明書。編制本說明書的目的是說明一個軟件系統(tǒng)各個層次中的每一個程序(每個模塊或子程序)的設(shè)計考慮,如實現(xiàn)算法、邏輯流程等。,軟件的詳細設(shè)計完成以后,必須從正確性和可維護性兩個方面,對它的邏輯、數(shù)據(jù)結(jié)構(gòu)和界面等進行檢查。詳細設(shè)計的復(fù)審可用下列形式之一完成:設(shè)計者和設(shè)計組的另一個成員一起進行靜態(tài)檢查。由一個檢查小組進行的較正式的“結(jié)構(gòu)設(shè)計檢查”。由檢查小組進行的正式的“設(shè)計檢查”,對軟件設(shè)計質(zhì)量給出嚴肅的評價。軟件開發(fā)的實踐表明,正式的詳細設(shè)計復(fù)審在發(fā)現(xiàn)某些類型的設(shè)計錯誤方面和測試一樣有效。正確的態(tài)度是:在詳細設(shè)計復(fù)審中,不為設(shè)計辯護,而是揭短,揭露出設(shè)計中的缺點錯誤。,任何一個程序,都可以僅僅用順序、條件和重復(fù)三種結(jié)構(gòu)化構(gòu)造來設(shè)計和實現(xiàn),并且將減少程序的復(fù)雜性,提高可讀性、可測試性和可維護性。用來表示詳細設(shè)計的工具分成三個大類——圖形、列表和語言。詳細設(shè)計中的設(shè)計工具主要有程序流程圖、方塊圖、HIPO圖和PAD圖、程序設(shè)計語言PDL以及判定表等。詳細設(shè)計產(chǎn)生的主要文件是詳細設(shè)計說明書,它為編寫源代碼提供了必要的說明。,小結(jié),思考與習題,5-1舉例說明你對概要設(shè)計與詳細設(shè)計的理解。有不需要概要設(shè)計的情況嗎?5-2請為一個程序進行詳細設(shè)計,該程序接收一串任意長度的字符串文本作為輸入,并列表輸出文本中出現(xiàn)的字和每個字出現(xiàn)的次數(shù)。5-3本題是供小組完成的題目。請為一個自動化詳細設(shè)計工具進行需求分析、概要設(shè)計與詳細設(shè)計。這種自動化工具可以是:(1)一個以計算機為基礎(chǔ)的繪圖系統(tǒng),用來產(chǎn)生流程圖的方塊圖。(2)一個判定表分析程序。(3)一個PDL縮進編排輔助程序和流程分析程序。5-4某些人主張,如果詳細設(shè)計的詳細程度與包含在源程序中的細節(jié)十分接近時,也可以刪去詳細設(shè)計這個步驟,直接編寫程序就行了。對嗎?,5-5從供選擇的答案中選出應(yīng)填入下列關(guān)于軟件詳細設(shè)計敘述的()內(nèi)的正確答案。軟件詳細設(shè)計工具可分為三類,即:圖示工具、設(shè)計語言和表格工具。圖示工具中,(A)簡單而應(yīng)用廣泛、(B)表示法中,每一個處理過程用一個盒子表示,盒子可以嵌套。(C)可以縱橫延伸,圖形的空間效果好。(D)是一種設(shè)計語言,它是一種面向(E)的語言。若用判定表來描述圖5-14所示的流程圖。將b1,b2,b3作為條件欄s1,s2作為操作欄,則化簡后的判定表中應(yīng)有(F)個規(guī)則。圖5-14習題5-5供選擇的答案:A-C:①NS圖②流程圖③HIPO圖④PAD圖D:①C②PDL③PROLOG④PASCALE:①人②機器③數(shù)據(jù)結(jié)構(gòu)④對象F:①8②4③6④2,5-6從供選擇的答案中選出應(yīng)該填入下列關(guān)于軟件的敘述的()內(nèi)的正確答案。軟件設(shè)計階段可劃分為概要設(shè)計階段和(A)設(shè)計階段。用結(jié)構(gòu)化設(shè)計方法進行設(shè)計時,用來表示模塊間的調(diào)用關(guān)系的圖叫做(B)圖。根據(jù)輸入輸出的數(shù)據(jù)結(jié)構(gòu)產(chǎn)生程序結(jié)構(gòu)的設(shè)計方法叫做(C)方法。用來描述軟件設(shè)計結(jié)果的一種著名的語言是(D)??梢杂?E)圖描述輸入、處理、輸出三者之間的關(guān)系。供選擇的答案:A:①邏輯②詳細③程序④一般B,E:①PAD②HCP③SC④SADT⑤HIPO⑥NSC:①Dijkstra②Parnas③Wirth④JacksonD:①PDL②APL③PSL④SDL,- 1.請仔細閱讀文檔,確保文檔完整性,對于不預(yù)覽、不比對內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請點此認領(lǐng)!既往收益都歸您。
下載文檔到電腦,查找使用更方便
14.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁顯示word圖標,表示該PPT已包含配套word講稿。雙擊word圖標可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計者僅對作品中獨創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 總體 設(shè)計 詳細
鏈接地址:http://www.820124.com/p-3660078.html