資源描述:
《程序設(shè)計(jì)與軟件開發(fā)基礎(chǔ)(六)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。
1、第32講程序設(shè)計(jì)與軟件開發(fā)基礎(chǔ)(六)教學(xué)目標(biāo)及基本要求:理解結(jié)構(gòu)化設(shè)計(jì)方法,能利用該方法提供的常用工具解決實(shí)際問題,掌握測(cè)試與調(diào)試的概念,了解白盒測(cè)試與黑盒測(cè)試的概念,能進(jìn)行簡單的測(cè)試用例設(shè)計(jì)和實(shí)施,了解靜態(tài)調(diào)試與動(dòng)態(tài)調(diào)試。教學(xué)重點(diǎn):測(cè)試和調(diào)試的棊木概念,口盒測(cè)試與黑盒測(cè)試。教學(xué)難點(diǎn):血向數(shù)據(jù)流的設(shè)計(jì)方法,白盒測(cè)試與黑盒測(cè)試。教學(xué)內(nèi)容:1.結(jié)構(gòu)化設(shè)計(jì)方法2.軟件測(cè)試及調(diào)試教學(xué)時(shí)間:1學(xué)時(shí)主要內(nèi)容:7.4.3結(jié)構(gòu)化設(shè)計(jì)方法1.軟件設(shè)計(jì)的基本概念(1)軟件設(shè)計(jì)的基礎(chǔ)?概念軟件設(shè)計(jì)是軟件工程的重要階段,是一個(gè)把軟件需求轉(zhuǎn)換為軟件表示的過程。?基本口標(biāo)軟件設(shè)計(jì)的基本忖標(biāo)是用比較抽象概括的方式確定H
2、標(biāo)系統(tǒng)如何完成預(yù)定的任務(wù),即軟件設(shè)計(jì)是確定系統(tǒng)的物理模型。?步驟從工程管理角度來看,軟件設(shè)計(jì)分兩步完成:概要設(shè)計(jì)和詳細(xì)設(shè)計(jì)。>概要設(shè)計(jì)(乂稱結(jié)構(gòu)設(shè)計(jì)):將軟件需求轉(zhuǎn)化為軟件體系結(jié)構(gòu)、確定系統(tǒng)級(jí)接口、全局?jǐn)?shù)據(jù)結(jié)構(gòu)或數(shù)據(jù)庫模式。>詳細(xì)設(shè)計(jì):確立每個(gè)模塊的實(shí)現(xiàn)算法和局部數(shù)據(jù)結(jié)構(gòu),川適當(dāng)方法表示算法和數(shù)據(jù)結(jié)構(gòu)的細(xì)節(jié)。(2)軟件設(shè)計(jì)的基本原則①抽象:是一種思維工具,就是把事物木質(zhì)的共同特性提取出來而不考慮其他細(xì)節(jié)。②模塊化:是指把一個(gè)待開發(fā)的軟件分解成若干小的簡單的部分。③信息隱蔽:是指在一個(gè)模塊內(nèi)包含的信息,對(duì)于不需耍這些信息的其他模塊來說是不能訪問的。④模塊獨(dú)立性:是指每個(gè)模塊只寫成系統(tǒng)要求的獨(dú)
3、立的子功能,并且與其他模塊的聯(lián)系瑕少且接口簡單。模塊的獨(dú)立程度是評(píng)價(jià)設(shè)計(jì)好壞的重要度量標(biāo)準(zhǔn)。衡杲軟件的模塊獨(dú)立性使用耦合性和內(nèi)聚性兩個(gè)定性的度量標(biāo)準(zhǔn)。一個(gè)優(yōu)秀的軟件設(shè)計(jì)應(yīng)盡量做到高內(nèi)聚、低耦合。2.概要設(shè)計(jì)(1)概要設(shè)計(jì)的任務(wù)①設(shè)計(jì)軟件系統(tǒng)結(jié)構(gòu):在需求分析階段,已經(jīng)把系統(tǒng)分解成層次結(jié)構(gòu),而在概耍設(shè)計(jì)階段,需要進(jìn)一步分解,劃分為模塊以及模塊的層次結(jié)構(gòu)。①數(shù)據(jù)結(jié)構(gòu)及數(shù)據(jù)庫設(shè)計(jì):數(shù)據(jù)設(shè)計(jì)是實(shí)現(xiàn)需求定義和規(guī)格說明過程屮提岀的數(shù)據(jù)對(duì)象的邏輯表示。②編寫概要設(shè)計(jì)文檔:需要編寫的文檔有概要設(shè)計(jì)說明書、數(shù)據(jù)庫設(shè)計(jì)說明書、集成測(cè)試計(jì)劃等。③概要設(shè)計(jì)文檔評(píng)審。(2)概要設(shè)計(jì)的圖形工具常用的軟件結(jié)構(gòu)設(shè)計(jì)工具是結(jié)
4、構(gòu)圖(SC),也稱程序結(jié)構(gòu)圖,它描述了軟件系統(tǒng)的層次和分塊結(jié)構(gòu)關(guān)系。模塊用一個(gè)矩形表示,矩形內(nèi)注明模塊的功能和名字;箭頭表示模塊間的調(diào)用關(guān)系。用帶實(shí)心圓的箭頭表示傳遞的是控制信息,用帶空心圓的箭頭表示傳遞的是數(shù)據(jù)。結(jié)構(gòu)圖的有關(guān)術(shù)語如下。>深度:表示控制的層數(shù)。>上級(jí)模塊、下級(jí)模塊:調(diào)用模塊中上級(jí)模塊,被調(diào)用模塊是下級(jí)模塊。>寬度:整體控制跨度(最大模塊數(shù)的層)的表示。>扇入:調(diào)川一個(gè)給定模塊的模塊個(gè)數(shù)。>扇出:一個(gè)模塊直接調(diào)用的其他模塊數(shù)。>原子模塊:樹中位于葉子節(jié)點(diǎn)的模塊。(3)而向數(shù)據(jù)流的設(shè)計(jì)方法典型的數(shù)據(jù)流類型有兩種:變換型和事務(wù)型。①變換型:是指信息沿輸入通道迓入系統(tǒng),同時(shí)由外部形
5、式變換成內(nèi)部形成,述入系統(tǒng)的信息通過變換中心,經(jīng)加工處理以后再沿輸出通路變換成外部形式離開軟件系統(tǒng)。②事務(wù)型:在很多軟件應(yīng)用中,存在某種作業(yè)數(shù)據(jù)流,它可以引發(fā)一個(gè)或多個(gè)處理,這些處理能夠完成該作業(yè)要求的功能,這種數(shù)據(jù)流就叫做事務(wù)。(4)設(shè)計(jì)的準(zhǔn)則①提高模塊獨(dú)立性。②模塊規(guī)模適屮。③深度、寬度、扇出和扇入適當(dāng)。④使模塊的作用域在該模塊的控制域內(nèi)。⑤應(yīng)減少模塊的接II和界面的復(fù)雜性。⑥設(shè)計(jì)成單入口、單岀口的模塊。⑦設(shè)計(jì)功能可預(yù)測(cè)的模塊。1.詳細(xì)設(shè)計(jì)詳細(xì)設(shè)計(jì)的任務(wù)是為軟件結(jié)構(gòu)圖中的每個(gè)模塊確定實(shí)現(xiàn)算法和局部數(shù)據(jù)結(jié)構(gòu),用某種選定的表達(dá)工具表示算法和數(shù)據(jù)結(jié)構(gòu)的細(xì)節(jié)。常用的過程圖形設(shè)計(jì)工具如下。(1)
6、程序流程圖稈序流程圖是一種傳統(tǒng)的、應(yīng)用廣泛的軟件過程設(shè)計(jì)表示工具,通常稱為程序框圖。程序流程圖表達(dá)直觀、清晰,易于學(xué)習(xí)掌握,且獨(dú)立于任何一種程序設(shè)計(jì)語言。構(gòu)成程序流程圖的最基木圖符及含義如下所示。f或I:控制流□:加工步驟O:邏輯條件(2)N-S圖為了避免程序圖在描述程序邏輯時(shí)的隨意性與靈活性,提岀了川方框圖來代替?zhèn)鹘y(tǒng)的程序流程圖,通常把這種圖稱為N-S圖。N-S圖的基木圖符及表示的5種控制結(jié)構(gòu)如圖7-20所示。判定條件循環(huán)體循環(huán)體判定條件圖7-20N-S圖圖符與構(gòu)成的5種控制結(jié)構(gòu)(3)PAD圖PAD圖是問題分析圖(ProblemAnalysisDiagram)的英文縮寫,它是繼程序流程圖
7、和方框圖之后,提出的又一種主要用于描述軟件詳細(xì)設(shè)計(jì)的圖形表示工具。PAD圖的基本圖符及表示的控制結(jié)構(gòu)如圖7-21所示。順序型選擇型WHILE直復(fù)型UNTIL重復(fù)型圖7-21PAD圖圖符與構(gòu)成的5種控制結(jié)構(gòu)除了以上3種工具外,還有判定表、判定樹和結(jié)構(gòu)化自然語言PDL等描述工具。7.4.4軟件測(cè)試及調(diào)試1.軟件測(cè)試的目的與任務(wù)軟件測(cè)試的目的是確保軟件的質(zhì)量,盡量找出軟件錯(cuò)誤并加以糾正,而不是證明軟件沒有錯(cuò)。因此,軟件測(cè)試的任