版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、軟件工程復(fù)習(xí) 第一章:軟件危機(jī)與軟件工程 一軟件危機(jī)概念,軟件危機(jī)產(chǎn)生的原因,解決軟件危機(jī)的方法 二 軟件工程概念,軟件工程原理,軟件工程途徑 三 生命周期各階段及其基本任務(wù) 四軟件開發(fā)模型如:瀑布模型,演化模型,螺旋模型幾種模型的形式與特征第二章:可行性研究 一可行性研究的任務(wù),可行性研究的步驟, 二輔助工具如:數(shù)據(jù)流圖,數(shù)據(jù)字典的畫法及其在分析中的作用 三成本 / 效益分析第三章:需求分析 一需求分析的任務(wù),需求分析的步驟, ER模型, 二輔助工具 三驗(yàn)證軟件需求第四章:總體設(shè)計(jì) 一總體設(shè)計(jì)的任務(wù)和過程 二軟件設(shè)計(jì)原理及概念 模塊化,抽象化,信息隱蔽,模塊獨(dú)立性(耦合與內(nèi)聚) 三啟發(fā)式規(guī)則
2、(模塊的作用域與控制域)四輔助工具 五面向數(shù)據(jù)流的方法 變換型分析與設(shè)計(jì) 事務(wù)型分析與設(shè)計(jì)(結(jié)構(gòu)化分析方法建立模型 - 變換設(shè)計(jì)與事務(wù)設(shè)計(jì))第五章 : 詳細(xì)設(shè)計(jì) 一結(jié)構(gòu)化程序設(shè)計(jì) 二詳細(xì)設(shè)計(jì)工具(程序流程圖與盒圖,PAD圖之間的轉(zhuǎn)化)三 JACKSON程序設(shè)計(jì)方法 四程序復(fù)雜度的定量度量( McCabe方法)第六章 : 編碼設(shè)計(jì) 一選擇程序設(shè)計(jì)語(yǔ)言 二程序的編碼風(fēng)格三程序設(shè)計(jì)途徑第七章 : 測(cè)試一測(cè)試的有關(guān)概念二軟件測(cè)試的目的三軟件測(cè)試的策略四軟件測(cè)試用例設(shè)計(jì)兩種常用的測(cè)試方法白盒測(cè)試中邏輯覆蓋的各種測(cè)試方法(給定程序建立相應(yīng)的控制流程圖, 設(shè)計(jì)測(cè)試用例,實(shí)現(xiàn)邏輯覆蓋) 黑盒測(cè)試的各種測(cè)試方法
3、(等價(jià)類劃分、邊界值分析等)五調(diào)試 第八章 : 維護(hù)一維護(hù)的方法二維護(hù)的特點(diǎn)三維護(hù)的過程 四可維護(hù)性第九章 : 面向?qū)ο蟮挠嘘P(guān)概念與特性面向?qū)ο?、?duì)象、消息、類和實(shí)例、繼承、重載、多態(tài)第十章 : 面向?qū)ο蠓椒ǖ拈_發(fā)過程 一 軟 件開發(fā)模型 二 基 于復(fù)用的面向?qū)ο箝_發(fā)過程的幾個(gè)階段 三 面 向?qū)ο髴?yīng)用生存期與面向過程的軟件生存期 四 類 生存期、類的開發(fā)方法第十一章 : 面向?qū)ο蠓治雠c模型化對(duì)象模型、動(dòng)態(tài)模型、功能模型的功能描述二面向?qū)ο蠓治龇椒ń?duì)象 關(guān)系模型 三面向?qū)ο蠓治龇椒ń?dòng)態(tài)模型軟件工程期末復(fù)習(xí)第一章 第一章 軟件工程概述一、一、重點(diǎn)掌握的內(nèi)容:軟件和軟件工程的基本概念二、二、
4、 一般掌握內(nèi)容:軟件生存周期及軟件開發(fā)的各種模型。三、三、主要知識(shí)點(diǎn):軟件: 軟件定義由以下三部分組成:( 1) (1)在運(yùn)行中能提供所希望的功能和性能的指令集(即程序) ;( 2) (2)使程序能夠正確運(yùn)行的數(shù)據(jù)結(jié)構(gòu);( 3) (3)描述程序研制過程、方法所用的文擋。軟件是一種產(chǎn)品,同時(shí)又是開發(fā)和運(yùn)行產(chǎn)品的載體。作為一種產(chǎn)品,它表達(dá)了 由計(jì)算機(jī)硬件體現(xiàn)的計(jì)算潛能。作為開發(fā)運(yùn)行產(chǎn)品的載體,軟件是計(jì)算機(jī)工作的基 礎(chǔ)、信息通信的基礎(chǔ),也是創(chuàng)建和控制其他程序的基礎(chǔ)。軟件的特點(diǎn) : 軟件是一種邏輯實(shí)體,而不是具體的物理實(shí)體,因而它具有抽 象性。 軟件是通過人們的智力活動(dòng),把知識(shí)與技術(shù)轉(zhuǎn)化成信息的一種產(chǎn)
5、品,是在 研制、開發(fā)中被創(chuàng)造出來(lái)的。在軟件的運(yùn)行和使用期間,沒有硬件那樣的機(jī)械磨 損、老化問題。軟件的開發(fā)和運(yùn)行經(jīng)常受到計(jì)算機(jī)系統(tǒng)的限制,對(duì)計(jì)算機(jī)系統(tǒng)有 著不同程度的依賴性。軟件的開發(fā)至今尚未完全擺脫手工的開發(fā)方式。軟件的 開發(fā)費(fèi)用越來(lái)越高,成本相當(dāng)昂貴。軟件的分類 : 軟件依據(jù)不同的標(biāo)準(zhǔn) , 可劃分為不同的分類。軟件工程: 是指導(dǎo)計(jì)算機(jī)軟件開發(fā)和維護(hù)的工程學(xué)科。 采用工程的概念、 原理、 技術(shù)和方法來(lái)開發(fā)與維護(hù)軟件,把經(jīng)過時(shí)間考驗(yàn)而證明正確的管理技術(shù)和當(dāng)前能夠 得到的最好的技術(shù)方法結(jié)合起來(lái)。軟件工程準(zhǔn)則可以概括為六條基本原理:( 1)用分階段的生存周期計(jì)劃嚴(yán)格管理; (2)堅(jiān)持進(jìn)行階段評(píng)審;
6、 ( 3)實(shí)行嚴(yán)格的產(chǎn)品控 制;( 4)采用現(xiàn)代程序設(shè)計(jì)技術(shù); (5)應(yīng)能清楚地審查結(jié)果; (6)合理安排軟件開 發(fā)小組的人員。軟件危機(jī):指的是軟件開發(fā)和維護(hù)過程中遇到的一系列嚴(yán)重問題。 軟件工程的基本內(nèi)容:軟件工程學(xué)的內(nèi)容可包括理論、結(jié)構(gòu)、方法、工具、環(huán) 境、管理、規(guī)范等。軟件生存周期: 一個(gè)軟件從定義到開發(fā)、使用和維護(hù),直到最終被棄用,要經(jīng) 歷一個(gè)漫長(zhǎng)的時(shí)期,通常把軟件經(jīng)歷的這個(gè)漫長(zhǎng)的時(shí)期稱為生存周期。軟件生存周 期一般可分為以下階段:·問題定義·需求分析與可行性研究·設(shè)計(jì)·編碼·測(cè)試·運(yùn)行與維護(hù)軟件生存期也可以分為三個(gè)大的階段:
7、計(jì)劃階段。開發(fā)階段和維護(hù)階段。軟件開發(fā)模型: 軟件開發(fā)模型是跨越整個(gè)軟件生存周期的系統(tǒng)開發(fā)、運(yùn)作、維 護(hù)所實(shí)施的全部工作和任務(wù)的結(jié)構(gòu)框架。瀑布模型即生存周期模型,由 B.M.Boehm 提出,是軟件工程的基礎(chǔ)模型。其核心思想是按工序?qū)栴}化簡(jiǎn),將功能的實(shí)現(xiàn)與 設(shè)計(jì)分開,便于分工協(xié)作。采用結(jié)構(gòu)化的分析與設(shè)計(jì)方法,將邏輯實(shí)現(xiàn)與物理實(shí)現(xiàn) 分開。此外,還有螺旋模型、第四代技術(shù)模型、原型模型、構(gòu)件組裝模型、混合模 型等軟件開發(fā)模型。第二章 可行性研究一、重點(diǎn)掌握的內(nèi)容:可行性研究的系統(tǒng)流程圖二、二、 一般掌握內(nèi)容:可行性研究的任務(wù)和步驟,成本效益分析三、主要知識(shí)點(diǎn):系統(tǒng)流程圖: 系統(tǒng)流程圖是描繪物理系統(tǒng)
8、的傳統(tǒng)工具。它的基本思想是用圖形 符號(hào)以黑盒子形式描繪系統(tǒng)里面的每個(gè)部件(程序,文件,數(shù)據(jù)庫(kù),表格,人工過 程等等)。系統(tǒng)流程圖表達(dá)的是部件的信息流程, 而不表示對(duì)信息進(jìn)行加工處理的控 制過程。系統(tǒng)流程圖的功能: 1制作系統(tǒng)流程圖的過程是系統(tǒng)分析員全面了解系統(tǒng)業(yè)務(wù)處理 概況的過程,它是系統(tǒng)分析員作進(jìn)一步分析的依據(jù)。2系統(tǒng)流程圖是系統(tǒng)分析員、管理人員、業(yè)務(wù)操作人員相互交流的工具。 3系統(tǒng)分析員可直接利用系統(tǒng)流程圖畫 出可以實(shí)現(xiàn)計(jì)算機(jī)處理的部分。 4可利用系統(tǒng)流程圖來(lái)分析業(yè)務(wù)流程的合理性。可行性研究的任務(wù) : 是用最小的代價(jià)在盡可能短的時(shí)間內(nèi)確定問題是否能夠解 決。一般說(shuō)來(lái),應(yīng)從經(jīng)濟(jì)可行性、技術(shù)可
9、行性、運(yùn)行可行性、法律可行性和開發(fā)方 案等方面研究可行性??尚行匝芯康牟襟E: 可行性研究的步驟分為九個(gè)步驟。成本效益分析: 成本效益分析的目的是要從經(jīng)濟(jì)角度分析開發(fā)一個(gè)特定的新 系統(tǒng)是否可行,從而幫助使用部門負(fù)責(zé)人正確地做出是否投資于這項(xiàng)開發(fā)工程的決 定。幾種度量效益的方法: 1. 貨幣的時(shí)間價(jià)值; 2投資回收期; 3純收入。第三章 需求分析一、重點(diǎn)掌握的內(nèi)容:需求分析的方法和面向數(shù)據(jù)流的分析方法。二、一般掌握內(nèi)容:需求分析的任務(wù)和原則。三、主要知識(shí)點(diǎn):需求分析的方法: 需求分析方法由對(duì)軟件的數(shù)據(jù)域和功能域的系統(tǒng)分析過程及 其表示方法組成,它定義了表示系統(tǒng)邏輯視圖和物理視圖的方式,大多數(shù)的需求
10、分 析方法是由數(shù)據(jù)驅(qū)動(dòng)的,也就是說(shuō),這些方法提供了一種表示數(shù)據(jù)域的機(jī)制,分析 員根據(jù)這種表示, 確定軟件功能及其他特性, 最終建立一個(gè)待開發(fā)軟件的抽象模型, 即目標(biāo)系統(tǒng)的邏輯模型。面向數(shù)據(jù)流的需求分析方法: 結(jié)構(gòu)化分析方法是面向數(shù)據(jù)流進(jìn)行需求分析的方 法。結(jié)構(gòu)化分析方法使用數(shù)據(jù)流圖 DFD 與數(shù)據(jù)字典 DD 來(lái)描述, 面向數(shù)據(jù)流問題的 需求分析適合于數(shù)據(jù)處理類型軟件的需求描述。其核心思想是分解化簡(jiǎn)問題,將物 理與邏輯表示分開,對(duì)系統(tǒng)進(jìn)行數(shù)據(jù)與邏輯的抽象。具體來(lái)說(shuō),結(jié)構(gòu)化分析方法就 是用抽象模型的概念,按照軟件內(nèi)部數(shù)據(jù)傳遞、變換的關(guān)系,自頂向下逐層分解, 直到找到滿足功能要求的所有可實(shí)現(xiàn)的軟件為
11、止。重點(diǎn)掌握結(jié)合實(shí)例畫數(shù)據(jù)流圖和 定義數(shù)據(jù)字典。需求分析的任務(wù): 它的基本任務(wù)是準(zhǔn)確地回答 “系統(tǒng)必須做什么?” 這個(gè)問題。 需求分析所要做的工作是深入描述軟件的功能和性能,確定軟件設(shè)計(jì)的限制和軟件 同其它系統(tǒng)元素的接口細(xì)節(jié),定義軟件的其它有效性需求。需求分析的任務(wù)不是確 定系統(tǒng)如何完成它的工作,而是確定系統(tǒng)必須完成哪些工作,也就是對(duì)目標(biāo)系統(tǒng)提 出完整、準(zhǔn)確、清晰、具體的要求。一般說(shuō)來(lái),需求分析階段的任務(wù)包括下述幾方面: 確定對(duì)系統(tǒng)的綜合需求對(duì)系統(tǒng)的綜合需求主要有:系統(tǒng)功能需求、系統(tǒng)性能需求、運(yùn)行需求、將來(lái)可 能提出的需求。 分析系統(tǒng)的數(shù)據(jù)需求 導(dǎo)出系統(tǒng)的邏輯模型就是在理解當(dāng)前系統(tǒng)“怎樣做”的
12、基礎(chǔ)上,抽取其“做什么”的本質(zhì),明確目 標(biāo)系統(tǒng)要“做什么” ,可以導(dǎo)出系統(tǒng)的詳細(xì)的邏輯模型。具體做法是:首先確定目標(biāo) 系統(tǒng)與當(dāng)前系統(tǒng)的邏輯差別; 然后將變化部分看作是新的處理步驟 , 對(duì)功能圖 (一般 為數(shù)據(jù)流圖)及對(duì)象圖進(jìn)行調(diào)整;最后由外及里對(duì)變化的部分進(jìn)行分析,推斷其結(jié) 構(gòu),獲得目標(biāo)系統(tǒng)的邏輯模型。通常用數(shù)據(jù)流圖、數(shù)據(jù)字典和主要的處理算法描述 這個(gè)邏輯模型。 修正系統(tǒng)開發(fā)計(jì)劃在經(jīng)過需求分析階段的工作,分析員對(duì)目標(biāo)系統(tǒng)有了更深入更具體的認(rèn)識(shí),因 此可以對(duì)系統(tǒng)的成本和進(jìn)度做出更準(zhǔn)確的估計(jì),在此基礎(chǔ)上應(yīng)該對(duì)開發(fā)計(jì)劃進(jìn)行修 正。 開發(fā)原型系統(tǒng) 使用原型系統(tǒng)的主要目的是,使用戶通過實(shí)踐獲得關(guān)于未來(lái)的
13、系統(tǒng)將怎樣為他 們工作的更直接更具體的概念,從而可以更準(zhǔn)確地提出和確定他們的要求。需求分析的步驟: 1. 調(diào)查研究; 2分析與綜合; 3書寫文檔; 4需求分 析評(píng)審需求分析的原則: 其基本原則可概括為 : ( 1)必須能夠表達(dá)和理解問題的數(shù)據(jù) 域和功能域; (2)按自頂向下、逐層分解問題; (3)要給出系統(tǒng)的邏輯視圖和物理 視圖。第四章 概要設(shè)計(jì)一、重點(diǎn)掌握的內(nèi)容: 概要設(shè)計(jì)的過程和方法二、一般掌握內(nèi)容:概要設(shè)計(jì)的文檔與評(píng)審三、主要知識(shí)點(diǎn):概要設(shè)計(jì)任務(wù): 系統(tǒng)分析員審查軟件計(jì)劃、軟件需求分析提供的文檔,提出最佳推薦方案, 用系統(tǒng)流程圖,組成系統(tǒng)物理元素清單,成本效益分析,系統(tǒng)的進(jìn)度計(jì)劃,供專家
14、 審定,審定后進(jìn)入設(shè)計(jì)。 確定模塊結(jié)構(gòu),劃分功能模塊,將軟件功能需求分配給所劃分的最小單元模 塊。確定模塊間的聯(lián)系,確定數(shù)據(jù)結(jié)構(gòu)、文件結(jié)構(gòu)、數(shù)據(jù)庫(kù)模式,確定測(cè)試方法與 策略。 編寫概要設(shè)計(jì)說(shuō)明書, 用戶手冊(cè),測(cè)試計(jì)劃, 選用相關(guān)的軟件工具來(lái)描述軟 件結(jié)構(gòu), 結(jié)構(gòu)圖是經(jīng)常使用的軟件描述工具。 選擇分解功能與劃分模塊的設(shè)計(jì)原則, 例如模塊劃分獨(dú)立性原則,信息隱蔽原則等。概要設(shè)計(jì)過程 :概要設(shè)計(jì)要先進(jìn)行系統(tǒng)設(shè)計(jì),復(fù)審系統(tǒng)計(jì)劃與需求分析,確定系 統(tǒng)具體的實(shí)施方案;然后進(jìn)行結(jié)構(gòu)設(shè)計(jì),確定軟件結(jié)構(gòu)。軟件設(shè)計(jì)的概念與原則: 將軟件劃分成若干獨(dú)立成分的依據(jù)。 如何表示不同的成分內(nèi)的功能細(xì)節(jié)和數(shù)據(jù)結(jié)構(gòu)。 如何統(tǒng)
15、一衡量軟件設(shè)計(jì)的技術(shù)質(zhì)量。其中有幾個(gè)概念: 1.模塊化:就是把程序劃分成若干個(gè)模塊,每個(gè)模塊具有一 個(gè)子功能,把這些模塊集總起來(lái)組成一個(gè)整體,可以完成指定的功能,實(shí)現(xiàn)問題的 要求。 2. 抽象:就是抽出事物的本質(zhì)特性而暫時(shí)不考慮它們的細(xì)節(jié)。 3. 信息隱蔽: 模塊中所包括的信息不允許其它不需要這些信息的模塊調(diào)用。 4. 信息局部化:是指 把一些關(guān)系密切的軟件元素物理地放得彼此靠近。 5. 模塊獨(dú)立性:是軟件系統(tǒng)中每 個(gè)模塊只涉及軟件要求的具體子功能,而和軟件系統(tǒng)中其他的模塊接口是簡(jiǎn)單的。 模塊獨(dú)立的概念是模塊化、抽象、信息隱蔽和局部化概念的直接結(jié)果。 6. 耦合:是 對(duì)一個(gè)軟件結(jié)構(gòu)內(nèi)各個(gè)模塊之
16、間互連程度的度量。耦合強(qiáng)弱取決于模塊間接口的復(fù) 雜程度,調(diào)用模塊的方式,以及通過接口的信息。 7. 內(nèi)聚:標(biāo)志一個(gè)模塊內(nèi)各個(gè)元 素彼此結(jié)合的緊密程度,它是信息隱蔽和局部化概念的自然擴(kuò)展。概要設(shè)計(jì)的方法: 面向數(shù)據(jù)流的設(shè)計(jì)方法把信息流映射成軟件結(jié)構(gòu),信息流的 類型決定了映射的方法。面向數(shù)據(jù)流的設(shè)計(jì)要解決的任務(wù),就是上述需求分析的基 礎(chǔ)上,將 DFD 圖映射為軟件系統(tǒng)的結(jié)構(gòu)。換句話說(shuō),這類設(shè)計(jì)方法允許把用 DFD 圖表示的系統(tǒng)邏輯模型方便地轉(zhuǎn)換成對(duì)于軟件結(jié)構(gòu)的初始設(shè)計(jì)描述。 理解基本概念: 信息流(包括變換流和事務(wù)流) 、抽象與逐步求精;模塊化與信息隱藏;軟件總體結(jié)構(gòu)、數(shù)據(jù)結(jié)構(gòu)與軟件過程。面向數(shù)據(jù)
17、結(jié)構(gòu)的分析設(shè)計(jì)方法: Jackson 系統(tǒng)開發(fā)方法 ( JSD): Jackson 系統(tǒng)開發(fā)方法 ( JSD,Jackson System Development )是一種典型的面向數(shù)據(jù)結(jié)構(gòu)的分析設(shè)計(jì)方法, 它是以信息驅(qū)動(dòng)的, 是將信息轉(zhuǎn)換成軟件的程序結(jié)構(gòu)。 Warnier 方法 :Warnier 程序設(shè)計(jì)方法是由法國(guó)人 J.D.Warnier 提出的另一 種面向數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)方法,又稱為邏輯構(gòu)造程序的方法,簡(jiǎn)稱LCP( LogicalConstruction of Programs )方法。 Warnier 方法的原理和 Jackson 方法類似, 也是從數(shù)據(jù)結(jié)構(gòu)出發(fā)設(shè)計(jì)程序,但是這種方法的
18、邏輯更嚴(yán)格。學(xué)會(huì)撰寫概要設(shè)計(jì)的文檔并能評(píng)審出概要設(shè)計(jì)文檔是否符合要求。概要設(shè)計(jì) 說(shuō)明書的主要內(nèi)容及結(jié)構(gòu)。第五章 詳細(xì)設(shè)計(jì)一、重點(diǎn)掌握的內(nèi)容:詳細(xì)設(shè)計(jì)的任務(wù)和方法二、一般掌握內(nèi)容:詳細(xì)設(shè)計(jì)的原則及詳細(xì)設(shè)計(jì)規(guī)格與評(píng)審三、主要知識(shí)點(diǎn):詳細(xì)設(shè)計(jì)的任務(wù) :詳細(xì)設(shè)計(jì)就是要在概要設(shè)計(jì)的結(jié)果的基礎(chǔ)上,考慮“怎樣實(shí) 現(xiàn)”這個(gè)軟件系統(tǒng),直到對(duì)系統(tǒng)中的每個(gè)模塊給出足夠詳細(xì)的過程性描述。主要任 務(wù)如下:為每個(gè)模塊確定采用的算法,選擇某種適當(dāng)?shù)墓ぞ弑磉_(dá)算法的過程,寫 出模塊的詳細(xì)過程性描述;確定每一模塊使用的數(shù)據(jù)結(jié)構(gòu);確定模塊接口的細(xì) 節(jié),包括對(duì)系統(tǒng)外部的接口和用戶界面,對(duì)系統(tǒng)內(nèi)部其它模塊的接口,以及模塊輸 入數(shù)據(jù)、
19、輸出數(shù)據(jù)及局部數(shù)據(jù)的全部細(xì)節(jié)。 要為每一個(gè)模塊設(shè)計(jì)出一組測(cè)試用例, 以便在編碼階段對(duì)模塊代碼(即程序)進(jìn)行預(yù)定的測(cè)試,模塊的測(cè)試用例是軟件測(cè) 試計(jì)劃的重要組成部分,通常應(yīng)包括輸入數(shù)據(jù),期望輸出等內(nèi)容。詳細(xì)設(shè)計(jì)的方法 :程序流程圖、 N-S圖、 PAD圖、 HIPO圖 程序流程圖:程序流程圖又稱之為程序框圖,它是軟件開發(fā)者最熟悉的一種算 法表達(dá)工具。它獨(dú)立于任何一種程序設(shè)計(jì)語(yǔ)言,比較直觀和清晰地描述過程的控制 流程,易于學(xué)習(xí)掌握。在流程圖中只能使用下述的五種基本控制結(jié)構(gòu)。順序型; 選擇型; while 型循環(huán); until 型循環(huán); 多情況型選擇。N-S 圖: Nassi 和 Shneiderm
20、an 提出了一種符合結(jié)構(gòu)化程序設(shè)計(jì)原則的圖形描 述工具,稱為盒圖,又稱為 N-S 圖。在 N-S 圖中,為了表示五種基本控制結(jié)構(gòu),規(guī) 定了五種圖形構(gòu)件。 順序型; 選擇型; WHILE重復(fù)型; UNTIL 重復(fù)型; 多分支選擇型。PAD 圖:它是用結(jié)構(gòu)化程序設(shè)計(jì)思想表現(xiàn)程序邏輯結(jié)構(gòu)的圖形工具。PAD也設(shè)置了五種基本控制結(jié)構(gòu)的圖示,并允許遞歸使用。HIPO圖: HIPO圖是由一組 IPO 圖加一張 HC圖組成。它是美國(guó) IBM 公司在軟件 設(shè)計(jì)中使用的主要表達(dá)工具。HC 圖是層次圖( Hierarchy chart )的英文縮寫,用于表示軟件的分層結(jié)構(gòu)。 HC 圖中的每一個(gè)模塊,均可用一張 IP
21、O 圖來(lái)描述。 IPO 圖由輸入、處理和輸出三個(gè)框 組成,需要時(shí)還可以增加一個(gè)數(shù)據(jù)文件框,這種圖形的優(yōu)點(diǎn),是能夠直觀地顯示輸 入處理輸出三者之間的聯(lián)系。詳細(xì)設(shè)計(jì)的原則 :原則是過程描述是否易于理解、復(fù)審和維護(hù),進(jìn)而過程描述 能夠自然地轉(zhuǎn)換成代碼,并保證詳細(xì)設(shè)計(jì)與代碼完全一致。詳細(xì)設(shè)計(jì)規(guī)格與評(píng)審: 詳細(xì)設(shè)計(jì)說(shuō)明書的框架及評(píng)審。第六章 面向?qū)ο蟮姆治龊驮O(shè)計(jì)方法一、重點(diǎn)掌握的內(nèi)容:面向?qū)ο蟮幕靖拍詈吞卣鞫?、一般掌握?nèi)容:面向?qū)ο蠓治雠c設(shè)計(jì)方法三、主要知識(shí)點(diǎn):面向?qū)ο蟮幕靖拍?: 面向?qū)ο蟛粌H是一些具體的軟件開發(fā)技術(shù)與策略,而且 是一整套關(guān)于如何看待軟件系統(tǒng)與現(xiàn)實(shí)世界的關(guān)系,以什么觀點(diǎn)來(lái)研究問題并
22、進(jìn)行 求解,以及如何進(jìn)行系統(tǒng)構(gòu)造的軟件方法學(xué)。而面向?qū)ο蠓椒ㄊ且环N運(yùn)用對(duì)象、類、 繼承、封裝、聚合、消息傳送、多態(tài)性等概念來(lái)構(gòu)造系統(tǒng)的軟件開發(fā)方法。面向?qū)?象方法的基本思想是,從現(xiàn)實(shí)世界中客觀存在的事物(即對(duì)象)出發(fā)來(lái)構(gòu)造軟件系 統(tǒng),并在系統(tǒng)構(gòu)造中盡可能運(yùn)用人類的自然思維方式。面向?qū)ο蟮膸讉€(gè)重要概念 : 對(duì)象、消息、方法性、繼承性、封裝性等。面向?qū)ο蠓椒ǖ幕咎卣?: 從問題域中客觀存在的事物出發(fā)來(lái)構(gòu)造軟件系統(tǒng),用對(duì)象作為對(duì)這些事物的 抽象表示,并以此作為系統(tǒng)的基本構(gòu)成單位。 事物的靜態(tài)特征(即可以用一些數(shù)據(jù)來(lái)表達(dá)的特征)用對(duì)象的屬性表示,事 物的動(dòng)態(tài)特征(即事物的行為)用對(duì)象的服務(wù)(或操作)
23、表示。 對(duì)象的屬性與服務(wù)結(jié)合為一體,成為一個(gè)獨(dú)立的實(shí)體,對(duì)外屏蔽其內(nèi)部細(xì)節(jié) (稱作封裝) 。 對(duì)事物進(jìn)行分類。把具有相同屬性和相同服務(wù)的對(duì)象歸為一類,類是這些對(duì) 象的抽象描述,每個(gè)對(duì)象是它的類的一個(gè)實(shí)例。 通過在不同程度上運(yùn)用抽象的原則 (較多或較少地忽略事物之間的差異) ,可 以得到較一般的類和較特殊的類。特殊類繼承一般類的屬性與服務(wù),面向?qū)ο蠓椒?支持對(duì)這種繼承關(guān)系的描述與實(shí)現(xiàn),從而簡(jiǎn)化系統(tǒng)的構(gòu)造過程及其文檔。 復(fù)雜的對(duì)象可以用簡(jiǎn)單的對(duì)象作為其構(gòu)成部分,稱作聚合。 對(duì)象之間通過消息進(jìn)行通信,以實(shí)現(xiàn)對(duì)象之間的動(dòng)態(tài)聯(lián)系。 通過關(guān)聯(lián)表達(dá)對(duì)象之間的靜態(tài)關(guān)系。面向?qū)ο蠓治龇椒ǎ?目前出現(xiàn)有 OOA與
24、 OOD方法。面向?qū)ο笤O(shè)計(jì)方法: OOA 與 OOD 的職責(zé)劃分是: OOA 針對(duì)問題域運(yùn)用 OO 方 法,建立一個(gè)反映問題域的 OOA 模型, 不考慮與系統(tǒng)的具體實(shí)現(xiàn)有關(guān)的因素 (例如 采用什么編程語(yǔ)言、圖形用戶界面、數(shù)據(jù)庫(kù)等等) ,從而使 OOA 模型獨(dú)立于具體的 實(shí)現(xiàn)。OOD 則是針對(duì)系統(tǒng)的一個(gè)具體的實(shí)現(xiàn)運(yùn)用 OO 方法。其中包括兩方面的工作, 一是把 OOA 模型直接搬到 OOD(不經(jīng)過轉(zhuǎn)換, 僅作某些必要的修改和調(diào)整) ,作為 OOD 的一個(gè)部分;二是針對(duì)具體實(shí)現(xiàn)中的人機(jī)界面、數(shù)據(jù)存儲(chǔ)、任務(wù)管理等因素補(bǔ) 充一些與實(shí)現(xiàn)有關(guān)的部分。這些部分與 OOA 采用相同的表示法和模型結(jié)構(gòu)。第七章
25、編碼一、重點(diǎn)掌握的內(nèi)容:程序設(shè)計(jì)語(yǔ)言的特點(diǎn)、編程風(fēng)格、程序效率和編程安全二、一般掌握內(nèi)容:面向?qū)ο蟪绦蛟O(shè)計(jì)步驟三、主要知識(shí)點(diǎn):程序設(shè)計(jì)語(yǔ)言的特點(diǎn) : 程序設(shè)計(jì)語(yǔ)言是人與計(jì)算機(jī)交流的媒介。軟件工程師應(yīng) 該了解程序設(shè)計(jì)語(yǔ)言各方面的特點(diǎn),以及這些特點(diǎn)對(duì)軟件質(zhì)量的影響,以便在需要 為一個(gè)特定的開發(fā)項(xiàng)目選擇語(yǔ)言時(shí),能作出合理的技術(shù)抉擇。其特點(diǎn)表現(xiàn)為九個(gè)方 面:名字說(shuō)明;類型說(shuō)明;初始化;程序?qū)ο蟮木植啃裕怀绦蚰K; 循環(huán)控制結(jié)構(gòu);分支控制結(jié)構(gòu); 異常處理;獨(dú)立編譯。編程風(fēng)格: 編碼風(fēng)格又稱程序設(shè)計(jì)風(fēng)格或編程風(fēng)格,實(shí)際上指編程的原則。表 現(xiàn)為四個(gè)方面:源程序文檔化,數(shù)據(jù)說(shuō)明的方法,語(yǔ)句結(jié)構(gòu)和輸入輸出方法。
26、源程序文檔化:源程序文檔化又可從四個(gè)方面來(lái)闡述,符號(hào)名的命名;程 序的注釋;標(biāo)準(zhǔn)的書寫格式;數(shù)據(jù)說(shuō)明:數(shù)據(jù)說(shuō)明的次序應(yīng)當(dāng)規(guī)范化。使數(shù)據(jù)屬性容易查找,也有利于測(cè)試, 排錯(cuò)和維護(hù)。語(yǔ)句結(jié)構(gòu):語(yǔ)句構(gòu)造力求簡(jiǎn)單、直接,不能為了片面追求效率而使語(yǔ)句復(fù)雜化。 可從以下幾方面注意: 1使用標(biāo)準(zhǔn)的控制結(jié)構(gòu); 2盡可能使用庫(kù)函數(shù); 3程序編 寫首先應(yīng)當(dāng)考慮清晰性; 4注意使用 GOTO 語(yǔ)句;輸入輸出方法:輸入輸出的方式和格式應(yīng)當(dāng)盡量作到對(duì)用戶友善( User Friendly ),盡可能方便用戶的使用。程序效率: 程序效率是指程序的執(zhí)行速度及程序占用的存儲(chǔ)空間。影響程序效 率的因素是多方面的。編程安全: 提高
27、軟件質(zhì)量和可靠性的技術(shù)大致可分為兩類,一類是避開錯(cuò)誤技 術(shù),即在開發(fā)的過程中不讓差錯(cuò)潛入軟件的技術(shù);另一類是容錯(cuò)技術(shù),即對(duì)某些無(wú) 法避開的差錯(cuò),使其影響減至最小的技術(shù);避開錯(cuò)誤技術(shù)是進(jìn)行質(zhì)量管理,實(shí)現(xiàn)產(chǎn) 品應(yīng)有質(zhì)量所必不可少的技術(shù),也就是軟件工程中所討論的先進(jìn)的軟件分析和開發(fā) 技術(shù)和管理技術(shù)。但是,無(wú)論使用多么高明的避開錯(cuò)誤技術(shù),也無(wú)法做到完美無(wú)缺和絕無(wú)錯(cuò)誤, 這就需要采用容錯(cuò)技術(shù)。 實(shí)現(xiàn)容錯(cuò)的主要手段是冗余和防錯(cuò)程序設(shè)計(jì)。 面向?qū)ο蟪绦蛟O(shè)計(jì)步驟: 面向?qū)ο蟮脑O(shè)計(jì)方法一般適用于軟件設(shè)計(jì)和實(shí)現(xiàn)階 段。其基本步驟是:建立軟件系統(tǒng)的動(dòng)態(tài)模型;建立軟件系統(tǒng)的靜態(tài)模型; 實(shí)現(xiàn)。第八章 軟件質(zhì)量與質(zhì)量保證
28、一、重點(diǎn)掌握的內(nèi)容:軟件質(zhì)量的有關(guān)概念、結(jié)構(gòu)化的軟件測(cè)試二、一般掌握內(nèi)容:軟件維護(hù)過程三、主要知識(shí)點(diǎn):軟件質(zhì)量: 軟件質(zhì)量是各種特性的復(fù)雜組合。軟件質(zhì)量反映了以下三方面的問 題:( 1)軟件需求是度量軟件質(zhì)量的基礎(chǔ)。不符合需求的軟件就不具備質(zhì)量。( 2)在各種標(biāo)準(zhǔn)中定義了一些開發(fā)準(zhǔn)則, 用來(lái)指導(dǎo)軟件人員用工程化的方法來(lái) 開發(fā)軟件。如果不遵守這些開發(fā)準(zhǔn)則,軟件質(zhì)量就得不到保證。( 3)往往會(huì)有一些隱含的需求沒有明確地提出來(lái)。例如,軟件應(yīng)具備良好的可 維護(hù)性。如果軟件只滿足那些精確定義了的需求而沒有滿足這些隱含的需求,軟件 質(zhì)量也不能保證。軟件質(zhì)量保證策略: 為了在軟件開發(fā)過程中保證軟件的質(zhì)量,主
29、要采取下述措 施: 審查;復(fù)查和管理復(fù)審;測(cè)試。結(jié)構(gòu)化的軟件測(cè)試: 軟件測(cè)試在程序員對(duì)每一個(gè)模塊的編碼之后先做程序測(cè)試, 再做單元測(cè)試,然后再進(jìn)行集成(綜合或組裝)測(cè)試,系統(tǒng)測(cè)試,驗(yàn)收(確認(rèn))測(cè) 試,平行測(cè)試,人工測(cè)試,其中單元測(cè)試的一部分己在編碼階段就開始了。測(cè)試:就是用已知的輸入在已知環(huán)境中動(dòng)態(tài)地執(zhí)行系統(tǒng)(或系統(tǒng)的“部件” )。 如果測(cè)試結(jié)果和預(yù)期結(jié)果不一致,則很可能是發(fā)現(xiàn)了系統(tǒng)中的錯(cuò)誤。軟件測(cè)試:軟件測(cè)試是對(duì)軟件計(jì)劃、軟件設(shè)計(jì)、軟件編碼進(jìn)行查錯(cuò)和糾錯(cuò)的活 動(dòng)(包括代碼執(zhí)行活動(dòng)與人工活動(dòng)) 。程序測(cè)試:是對(duì)編碼階段的語(yǔ)法錯(cuò)、語(yǔ)義錯(cuò)、運(yùn)行錯(cuò)進(jìn)行查找的代碼執(zhí)行活動(dòng)。 找出編碼中錯(cuò)誤的代碼執(zhí)行活
30、動(dòng)稱程序測(cè)試。糾正編碼中的錯(cuò)誤的執(zhí)行活動(dòng)稱程序 調(diào)試。程序測(cè)試的目的是查找編碼錯(cuò)與糾正編碼錯(cuò),保證算法的正確實(shí)現(xiàn)。測(cè)試的原則:( 1)測(cè)試前要認(rèn)定被測(cè)試軟件有錯(cuò),不要認(rèn)為軟件沒有錯(cuò)。( 2)要預(yù)先確定被測(cè)試軟件的測(cè)試結(jié)果。( 3)要盡量避免測(cè)試自己編寫的程序。( 4)測(cè)試要兼顧合理輸入與不合理輸入數(shù)據(jù)。( 5)測(cè)試要以軟件需求規(guī)格說(shuō)明書為標(biāo)準(zhǔn)。( 6)要明確找到的新錯(cuò)與已找到的舊錯(cuò)成正比。( 7)測(cè)試是相對(duì)的,不能窮盡所有的測(cè)試,要據(jù)人力物力安排測(cè)試,并選擇好 測(cè)試用例與測(cè)試方法。( 8)測(cè)試用例留作測(cè)試報(bào)告與以后的反復(fù)測(cè)試用,重新驗(yàn)證糾錯(cuò)的程序是否有錯(cuò)。測(cè)試方法 : 按照測(cè)試過程是否在實(shí)際應(yīng)
31、用環(huán)境中來(lái)分,有靜態(tài)分析與動(dòng)態(tài)測(cè)試。 測(cè)試方法有分析方法(包括靜態(tài)分析法與白盒法)與非分析方法(稱黑盒法) 。靜態(tài)分析技術(shù):不執(zhí)行被測(cè)軟件,可對(duì)需求分析說(shuō)明書、軟件設(shè)計(jì)說(shuō)明書、源 程序做結(jié)構(gòu)檢查、流程分析、符號(hào)執(zhí)行來(lái)找出軟件錯(cuò)誤。動(dòng)態(tài)測(cè)試技術(shù):當(dāng)把程序作為一個(gè)函數(shù),輸入的全體稱為函數(shù)的定義域,輸出 的全體稱為函數(shù)的值域,函數(shù)則描述了輸入的定義域與輸出值域的關(guān)系。這樣動(dòng)態(tài) 測(cè)試的算法可歸納為:選取定義域中的有效值,或定義域外無(wú)效值。 對(duì)已選取值決定預(yù)期的結(jié)果。 用選取值執(zhí)行程序。 觀察程序行為,記錄執(zhí)行結(jié)果。 將的結(jié)果與的結(jié)果相比較,不吻合則程序有錯(cuò)。動(dòng)態(tài)測(cè)試既可以采用白盒法對(duì)模塊進(jìn)行邏輯結(jié)構(gòu)的
32、測(cè)試,又可以用黑盒法做功 能結(jié)枸的測(cè)試、接口的測(cè)試,都是以執(zhí)行程序并分析執(zhí)行結(jié)果來(lái)查錯(cuò)的。白盒法 : 是通過分析程序內(nèi)部的邏輯與執(zhí)行路線來(lái)設(shè)計(jì)測(cè)試用例, 進(jìn)行測(cè)試的方 法,白盒法也稱邏輯驅(qū)動(dòng)方法。白盒法的具體設(shè)計(jì)程序測(cè)試用例的方法有:語(yǔ)句覆 蓋、分支(判定)覆蓋、條件覆蓋、路徑覆蓋(或條件組合覆蓋) ,主要目的是提高 測(cè)試的覆蓋率。黑盒法 : 是功能驅(qū)動(dòng)方法, 僅根據(jù) I/O 數(shù)據(jù)條件來(lái)設(shè)計(jì)測(cè)試用例, 而不管程序的 內(nèi)部結(jié)構(gòu)與路徑如何。黑盒法的具體設(shè)計(jì)程序測(cè)試用例的方法有:等價(jià)類劃分法, 邊界值分析法,錯(cuò)誤推測(cè)法,主要目的是設(shè)法以最少測(cè)試數(shù)據(jù)子集來(lái)盡可能多的測(cè) 試軟件程序的錯(cuò)誤。設(shè)計(jì)測(cè)試方案
33、: 測(cè)試方案包括預(yù)定要測(cè)試的功能,應(yīng)該輸入的測(cè)試數(shù)據(jù)和預(yù)期 的結(jié)果, 其中最困難的問題是設(shè)計(jì)測(cè)試用的輸入數(shù)據(jù) (即測(cè)試用例) 。通常的做法是, 用黑盒法設(shè)計(jì)基本的測(cè)試方案,再用白盒法補(bǔ)充一些方案。軟件測(cè)試的步驟:?jiǎn)卧獪y(cè)試:?jiǎn)卧獪y(cè)試也稱模塊測(cè)試、邏輯測(cè)試、結(jié)構(gòu)測(cè)試,測(cè)試的方法一般采 用白盒法,以路徑覆蓋為最佳測(cè)試準(zhǔn)則。集成測(cè)試:?jiǎn)卧獪y(cè)試之后便進(jìn)入組裝測(cè)試。盡管模擬了驅(qū)動(dòng)模塊和存根模塊進(jìn) 行單元測(cè)試,由于測(cè)試不能窮盡,單元測(cè)試又會(huì)引入新錯(cuò)誤,單元測(cè)試后肯定會(huì)有 隱藏錯(cuò)誤,組裝不可能一次成功,必須經(jīng)測(cè)試后才能成功。集成測(cè)試分為增式組裝 測(cè)試和非增式組裝測(cè)試,所謂非增式組裝,按照結(jié)構(gòu)圖一次性將各單元模塊組裝起 來(lái)。所謂增式組裝是指按照結(jié)構(gòu)圖自頂向下或自底向上逐漸安裝。確認(rèn)測(cè)試: 確認(rèn)測(cè)試也稱合格測(cè)試或稱驗(yàn)收測(cè)試。 組裝后己成為完整的軟件包, 消除了接口的錯(cuò)誤。確認(rèn)測(cè)試主要由使用用戶參加測(cè)試,檢驗(yàn)軟件規(guī)格
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024版購(gòu)銷雙方產(chǎn)品交易協(xié)議3篇
- 2025年度倉(cāng)儲(chǔ)信息化系統(tǒng)建設(shè)與運(yùn)營(yíng)服務(wù)合同3篇
- 2024版裝修樣板間保密協(xié)議
- 2024融資租賃合作協(xié)議書范本適用于二零二四年度3篇
- 多媒體技術(shù)與應(yīng)用知到智慧樹章節(jié)測(cè)試課后答案2024年秋廣東警官學(xué)院
- 2024版挖掘機(jī)承包工程合同
- 自愿解除婚姻協(xié)議范本
- 醫(yī)院建筑彩鋼瓦維修合同
- 北京市攝影器材購(gòu)銷合同
- 美甲店門頭改造協(xié)議
- 竣工驗(yàn)收階段服務(wù)配合保障措施
- 2024年《大學(xué)語(yǔ)文》期末考試復(fù)習(xí)題庫(kù)(含答案)
- 電纜及電纜橋架安裝施工方案
- 跨部門溝通與協(xié)調(diào)課件
- 醫(yī)生進(jìn)修報(bào)告ppt通用模板
- 2022年版《義務(wù)教育信息科技技術(shù)新課程標(biāo)準(zhǔn)》試題與答案
- 汽車OTS工程樣件認(rèn)可流程課件
- 明細(xì)賬(三欄式)模板
- 三年級(jí)數(shù)學(xué)思維訓(xùn)練【奧數(shù)舉一反三】附部分答案解析
- 2023年數(shù)學(xué)競(jìng)賽AMC8真題A卷(含答案)
- 審計(jì)控制活動(dòng)方案
評(píng)論
0/150
提交評(píng)論