軟件工程概論期末復(fù)習(xí)題_第1頁(yè)
軟件工程概論期末復(fù)習(xí)題_第2頁(yè)
軟件工程概論期末復(fù)習(xí)題_第3頁(yè)
軟件工程概論期末復(fù)習(xí)題_第4頁(yè)
軟件工程概論期末復(fù)習(xí)題_第5頁(yè)
已閱讀5頁(yè),還剩2頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、1、軟件危機(jī)定義:軟件危機(jī)是指在計(jì)算機(jī)軟件的開發(fā)和維護(hù)過程中所遇到的一系列嚴(yán)重問題。2、軟件危機(jī)的兩個(gè)主要問題:如何開發(fā)軟件,以滿足對(duì)軟件日益增長(zhǎng)的需求;如何維護(hù)數(shù)量不斷膨脹的已有軟件。3、軟件危機(jī)的典型表現(xiàn):(1) 對(duì)軟件開發(fā)成本和進(jìn)度的估計(jì)常常很不準(zhǔn)確。(2) 用戶對(duì)“已完成的”軟件系統(tǒng)不滿意的現(xiàn)象經(jīng)常發(fā)生。(3) 軟件產(chǎn)品的質(zhì)量往往靠不住。(4) 軟件常常是不可維護(hù)的。(5) 軟件通常沒有適當(dāng)?shù)奈臋n資料。(6) 軟件成本在計(jì)算機(jī)系統(tǒng)總成本中所占的比例逐年上升。(7) 軟件開發(fā)生產(chǎn)率提高的速度,遠(yuǎn)遠(yuǎn)跟不上計(jì)算機(jī)應(yīng)用迅速普及深入的趨勢(shì)。4、根據(jù)軟件危機(jī)的典型表現(xiàn),分析軟件危機(jī)案例:傳統(tǒng)工業(yè)中

2、知名的生產(chǎn)方式可算是“手工作坊式”生產(chǎn)方式。過去的一段時(shí)間里,甚至到現(xiàn)在,中國(guó)軟件業(yè)中還有一部分公司的開發(fā)方式與之類似。公正地說,以此方式還是成就了好多成功的應(yīng)用開發(fā)項(xiàng)目,甚至可以說此法支撐起了軟件開發(fā)的初期事業(yè)。但是,在我們的“作坊”里還有太多的項(xiàng)目失敗,例如開發(fā)周期的不可控制、項(xiàng)目結(jié)果為用戶所不認(rèn)可、項(xiàng)目最終的嚴(yán)重虧損,這種失敗的慘痛出乎我們的意料,以至于我們無(wú)所適從。再加上技術(shù)人員、資金嚴(yán)重匱乏的困擾,軟件開發(fā)管理舉步維艱。你認(rèn)為“軟件就是程序”這一個(gè)觀點(diǎn)正確嗎?如果不正確,請(qǐng)批駁之。1. 請(qǐng)從以下幾個(gè)方面結(jié)合自己的經(jīng)驗(yàn)實(shí)例加以論述。軟件就是程序的觀點(diǎn)是不正確的,因?yàn)檐浖扔诔绦蚣游臋n加

3、數(shù)據(jù)。(1) 文檔是軟件的一個(gè)非常重要的組成部分,在軟件的開發(fā)過程中起著非常重要的作用。(2) 在軟件開發(fā)的每一個(gè)階段都應(yīng)有相應(yīng)的文檔。它是開發(fā)人員與用戶以及開發(fā)人員與項(xiàng)目管理人員之間交流的媒介(3) 文檔是軟件在不同階段的表現(xiàn)形式。(4) 程序與文檔必須一致,文檔才有價(jià)值。(5) 文檔質(zhì)量直接決定軟件質(zhì)量的高低。(6) 文檔也是軟件測(cè)試和維護(hù)的依據(jù)。在沒有文檔或文檔不全的情況下對(duì)大型軟件進(jìn)行測(cè)試與維護(hù)是不可思議的事情。(7) 文檔是軟件可重用的依據(jù)。5、軟件工程定義:軟件工程是指導(dǎo)計(jì)算機(jī)軟件開發(fā)和維護(hù)的一門工程學(xué)科。采用工程的概念、原理、技術(shù)和方法來開發(fā)與維護(hù)軟件,把經(jīng)過時(shí)間考驗(yàn)而證明正確的

4、管理技術(shù)和當(dāng)前能夠得到的最好的技術(shù)方法結(jié)合起來,以經(jīng)濟(jì)地、高效的開發(fā)出高質(zhì)量的軟件并有效地維護(hù)它,這就是軟件工程。6、軟件工程的基本原理,案例分析(嚴(yán)格管理,階段評(píng)審、審查和brooks原則)某公司開發(fā)一個(gè)企業(yè)信息化項(xiàng)目,隨著項(xiàng)目的進(jìn)展,該項(xiàng)目經(jīng)理發(fā)現(xiàn)項(xiàng)目進(jìn)度沒有按照計(jì)劃在進(jìn)展,于是開始計(jì)劃招聘相關(guān)人員,但是由于特殊原因,沒有招到理想的人員,沒有辦法只能降低要求招聘,新員工到來后,項(xiàng)目經(jīng)理發(fā)現(xiàn)項(xiàng)目進(jìn)展反而更慢,該經(jīng)理百思不得其解。請(qǐng)用軟件工程基本原理分析問題。 軟件開發(fā)不同于傳統(tǒng)的機(jī)械制造,人多不見得力量大。如果給落后于計(jì)劃的項(xiàng)目增加新人,可能會(huì)更加延誤項(xiàng)目。因?yàn)樾氯藭?huì)產(chǎn)生很多新的錯(cuò)誤,使項(xiàng)目

5、混亂,并且原有的開發(fā)人員向新人解釋工作和交流思想都要花費(fèi)時(shí)間,使實(shí)際的開發(fā)時(shí)間更少,所以制定恰如其分的項(xiàng)目計(jì)劃是很重要的。l 7、軟件工程方法學(xué),三要素:方法、工具和過程8、軟件生命周期(概念、三時(shí)期,八階段)軟件生命周期由軟件定義、軟件開發(fā)和運(yùn)行維護(hù)(也稱為軟件維護(hù))3個(gè)時(shí)期組成。軟件定義時(shí)期通常進(jìn)一步劃分成3個(gè)階段,即問題定義、可行性研究和需求分析。1問題定義2可行性研究3需求分析4總體設(shè)計(jì)5詳細(xì)設(shè)計(jì)6編碼和單元測(cè)試7綜合測(cè)試8軟件維護(hù)可行性分析 1、可行性研究的目的:在明確了所要研究問題定義之后,分析員應(yīng)該在明確目標(biāo)系統(tǒng)所有限制和約束的前提下,去確定該問題是否值得去解決。2、可行性研究實(shí)

6、質(zhì): 技術(shù)可行性l 經(jīng)濟(jì)可行性l 社會(huì)可行性l4、如何做可行性研究(結(jié)合案例分析)5、系統(tǒng)流程圖的定義和作用可行性研究對(duì)現(xiàn)有系統(tǒng)做概括的物理模型描述,如用圖形工具表示則更加直觀簡(jiǎn)潔。系統(tǒng)流程圖是描繪物理系統(tǒng)的傳統(tǒng)工具,它的基本思想是用圖形符號(hào)以黑盒子形式描繪系統(tǒng)里面的每個(gè)部件(程序、文件、數(shù)據(jù)庫(kù)、表格、人工過程等)。系統(tǒng)流程圖表達(dá)的是部件的信息流程,而不是對(duì)信息進(jìn)行加工處理的控制過程。在可行性研究過程中,利用系統(tǒng)流程圖來描述所建議系統(tǒng)的物理模型。 6、數(shù)據(jù)流程圖的定義和作用:數(shù)據(jù)流程圖有兩個(gè)特征:抽象性和概括性。 抽象性指的是數(shù)據(jù)流程圖把具體的組織機(jī)構(gòu)、工作場(chǎng)所、物質(zhì)流都去掉,只剩下信息和數(shù)據(jù)

7、存儲(chǔ)、流動(dòng)、使用以及加工情況。l 概括性則是指數(shù)據(jù)流程圖把系統(tǒng)對(duì)各種業(yè)務(wù)的處理過程了解起來考慮,形成一個(gè)總體l7、數(shù)據(jù)流程圖的組成元素?cái)?shù)據(jù)流圖可以用來抽象地表示系統(tǒng)或軟件。它從信息傳遞和加工的角度,以圖形的方式刻畫數(shù)據(jù)流從輸入到輸出的移動(dòng)變換過程,同時(shí)可以按自頂向下、逐步分解的方法表示內(nèi)容不斷增加的數(shù)據(jù)流和功能細(xì)節(jié)。因此,數(shù)據(jù)流圖既提供了功能建模的機(jī)制,也提供了信息流建模的機(jī)制,從而可以建立起系統(tǒng)或軟件的功能模型。8、數(shù)據(jù)流程圖的組成:外部實(shí)體(外部實(shí)體是指系統(tǒng)之外的人或單位,它們和本系統(tǒng)有信息傳遞關(guān)系)數(shù)據(jù)流,處理、數(shù)據(jù)存儲(chǔ)。如何繪制數(shù)據(jù)流程圖(1)識(shí)別系統(tǒng)的輸入和輸出,畫出頂層圖(2)畫系

8、統(tǒng)內(nèi)部的數(shù)據(jù)流、加工與文件,畫出一級(jí)細(xì)化圖(3)加工的進(jìn)一步分解,畫出二級(jí)細(xì)化圖(4)其它注意事項(xiàng)8、數(shù)據(jù)流程圖的注意點(diǎn)1、每個(gè)處理都必須有流入的數(shù)據(jù)流和流出的數(shù)據(jù)流,如果沒有,是錯(cuò)誤的。(數(shù)據(jù)守恒) 2、每個(gè)數(shù)據(jù)存儲(chǔ)應(yīng)該有流入的數(shù)據(jù)流和流出的數(shù)據(jù)流,如果缺了一種,是Warning的;缺兩種就錯(cuò)了。 3、數(shù)據(jù)流只能在處理與處理、數(shù)據(jù)存儲(chǔ)或者外部實(shí)體之間流動(dòng)。、數(shù)據(jù)存儲(chǔ)到數(shù)據(jù)存儲(chǔ)、外部實(shí)提到外部實(shí)體、外部實(shí)提到數(shù)據(jù)存儲(chǔ)之間的數(shù)據(jù)流都是錯(cuò)誤的。 4、 一個(gè)處理可以細(xì)分成多個(gè)子處理,分成若干個(gè)層次(均勻分解) 5、良好命名9、數(shù)據(jù)字典1 數(shù)據(jù)字典是在數(shù)據(jù)流程圖的基礎(chǔ)上,對(duì)數(shù)據(jù)流程圖中的各個(gè)元素進(jìn)行詳

9、細(xì)的定義與描述,起到對(duì)數(shù)據(jù)流程圖進(jìn)行補(bǔ)充說明的作用。 2 數(shù)據(jù)字典的內(nèi)容包括:數(shù)據(jù)項(xiàng)、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)流、數(shù)據(jù)存貯、處理邏輯和外部實(shí)體。 10、可行性分析的結(jié)果需求分析1、為什么要做需求分析可行性分析研究階段已經(jīng)粗略的描述了用戶的需求,甚至還提出了一些可行的方案,但是,許多細(xì)節(jié)被忽略了,在最終目標(biāo)系統(tǒng)中是不能忽略、遺漏任何一個(gè)微小細(xì)節(jié)的,所以,可行性研究不能代替需求分析。 2、需求分析的任務(wù)需求分析的主要任務(wù)不是確定系統(tǒng)如何完成它的具體工作,而是確定系統(tǒng)必須完成哪些工作,在用戶的參與下提出目標(biāo)系統(tǒng)的完整、準(zhǔn)確、清晰、具體的實(shí)際要求,軟件應(yīng)完成的具體功能和性能,確定軟件設(shè)計(jì)受到的限制及軟件同其它系

10、統(tǒng)的接口細(xì)節(jié),描述軟件用到的數(shù)據(jù)形式,逐步細(xì)化到詳細(xì)定義,并為軟件驗(yàn)收和質(zhì)量評(píng)價(jià)提供依據(jù)3、如何做需求分析(1)確定被開發(fā)系統(tǒng)的綜合要求:系統(tǒng)分析員與用戶共同討論,澄清模糊要求,刪除做不到的要求,改正錯(cuò)誤的要求,確定具體的功能要求和性能要求。如:精確度要求,運(yùn)行要求,軟硬件限定條件要求,出錯(cuò)率限定要求,文件使用權(quán)限要求與讀寫保護(hù)要求,資源使用要求,運(yùn)行維護(hù)成本消耗要求等; (2)分析系統(tǒng)信息,抽象出系統(tǒng)的數(shù)據(jù)要求:通過系統(tǒng)的調(diào)查分析,由系統(tǒng)的信息流歸納、匯集,抽象出系統(tǒng)的數(shù)據(jù)模型(ER圖),包括數(shù)據(jù)的組成元素、數(shù)據(jù)間的邏輯關(guān)系、數(shù)據(jù)的輸入、輸出、存儲(chǔ)的形式及數(shù)據(jù)結(jié)構(gòu)關(guān)系等;(3)由描述的系統(tǒng)問

11、題結(jié)構(gòu)導(dǎo)出系統(tǒng)的目標(biāo)邏輯模型:利用軟件需求工具和數(shù)據(jù)流分析方法導(dǎo)出系統(tǒng)的目標(biāo)邏輯模型(數(shù)據(jù)流程圖)。如:利用結(jié)構(gòu)化分析工具、數(shù)據(jù)流程圖進(jìn)行描述和表達(dá);功能模型和行為模型 (4)根據(jù)系統(tǒng)實(shí)際需求審定和修正軟件項(xiàng)目的開發(fā)計(jì)劃:一般可由用戶、開發(fā)方、專家組成的小組對(duì)項(xiàng)目預(yù)算、開發(fā)成本估計(jì)、計(jì)劃安排、進(jìn)度安排、人員和資源安排進(jìn)行審定和修正,看其是否一致,是否符合軟件的實(shí)際認(rèn)定范圍,確定出切實(shí)可行的開發(fā)計(jì)劃; (5)審定系統(tǒng)需求分析的正確性:利用原型、需求分析驗(yàn)證工具、或人工的方法進(jìn)行審定; (6)提交軟件需求規(guī)格說明書,作為系統(tǒng)的開發(fā)和驗(yàn)收的依據(jù)。 4、需求分析的難點(diǎn)(1)問題空間理解(2)人與人之間

12、的通信(3)需求的不斷變化5、ER圖:可以把實(shí)體-了解圖簡(jiǎn)稱為ER圖,相應(yīng)地可把用ER圖描繪的數(shù)據(jù)模型稱為ER模型。 ER圖中包含了實(shí)體(即數(shù)據(jù)對(duì)象)、關(guān)系和屬性等3種基本成分,通常用矩形框代表實(shí)體,用連接相關(guān)實(shí)體的菱形框表示關(guān)系,用橢圓形或圓角矩形表示實(shí)體(或關(guān)系)的屬性,并用直線把實(shí)體(或關(guān)系)與其屬性連接起來。6、狀態(tài)轉(zhuǎn)換圖:指明了作為外部事件結(jié)果的系統(tǒng)行為。為此,狀態(tài)轉(zhuǎn)換圖描繪了系統(tǒng)的各種行為模式(稱為“狀態(tài)”)和在不同狀態(tài)間轉(zhuǎn)換的方式。狀態(tài)轉(zhuǎn)換圖是行為建模的基礎(chǔ)。7、軟件需求的驗(yàn)證: 需求分析階段的工作結(jié)果是開發(fā)軟件系統(tǒng)的重要基礎(chǔ),大量統(tǒng)計(jì)數(shù)字表明,軟件系統(tǒng)中15%的錯(cuò)誤起源于錯(cuò)誤的

13、需求。為了提高軟件質(zhì)量,確保軟件開發(fā)成功,降低軟件開發(fā)成本,一旦對(duì)目標(biāo)系統(tǒng)提出一組要求之后,必須嚴(yán)格驗(yàn)證這些需求的正確性。一般說來,應(yīng)該從下述4個(gè)方面進(jìn)行驗(yàn)證:(1) 一致性所有需求必須是一致的,任何一條需求不能和其他需求互相矛盾。 (2) 完整性需求必須是完整的,規(guī)格說明書應(yīng)該包括用戶需要的每一個(gè)功能或性能。 (3) 現(xiàn)實(shí)性指定的需求應(yīng)該是用現(xiàn)有的硬件技術(shù)和軟件技術(shù)基本上可以實(shí)現(xiàn)的。對(duì)硬件技術(shù)的進(jìn)步可以做些預(yù)測(cè),對(duì)軟件技術(shù)的進(jìn)步則很難做出預(yù)測(cè),只能從現(xiàn)有技術(shù)水平出發(fā)判斷需求的現(xiàn)實(shí)性。 (4) 有效性必須證明需求是正確有效的,確實(shí)能解決用戶面對(duì)的問題。8、利用DFD圖進(jìn)行需求分析:在結(jié)構(gòu)化分析

14、方法中,用以表達(dá)系統(tǒng)內(nèi)數(shù)據(jù)的運(yùn)動(dòng)情況的工具有( A )。供選擇的答案: A. 數(shù)據(jù)流圖 B. 數(shù)據(jù)詞典 C. 結(jié)構(gòu)化英語(yǔ) D. 判定表與判定樹在結(jié)構(gòu)化分析方法中用狀態(tài)遷移圖表達(dá)系統(tǒng)或?qū)ο蟮男袨?。在狀態(tài)遷移圖中,由一個(gè)狀態(tài)和一個(gè)事件所決定的下一狀態(tài)可能會(huì)有( A )個(gè)。供選擇的答案: A. 1 B. 2 C. 多個(gè) D. 不確定在結(jié)構(gòu)化分析方法中用實(shí)體關(guān)系圖表達(dá)系統(tǒng)中的對(duì)象及其關(guān)系。在實(shí)體關(guān)系圖中,表達(dá)對(duì)象的實(shí)例之間的關(guān)聯(lián)有三種類型:一對(duì)一了解、( B )了解、多對(duì)多了解。供選擇的答案: A. 多對(duì)一 B. 一對(duì)多分析:使用實(shí)體關(guān)系圖,可以建立系統(tǒng)中各個(gè)數(shù)據(jù)對(duì)象及對(duì)象之間的關(guān)系。對(duì)象的實(shí)例間的關(guān)

15、聯(lián)稱為“基數(shù)”,共有3種類型的基數(shù):一對(duì)一,一對(duì)多,多對(duì)多。它反映了現(xiàn)實(shí)世界中實(shí)體之間的了解,多對(duì)一的情況可以歸入一對(duì)多的關(guān)聯(lián)中去。在軟件需求分析時(shí),首先建立當(dāng)前系統(tǒng)的物理模型,再根據(jù)物理模型建立當(dāng)前系統(tǒng)的邏輯模型。試問:什么是當(dāng)前系統(tǒng)?當(dāng)前系統(tǒng)的物理模型與邏輯模型有什么差別?所謂當(dāng)前系統(tǒng)可能是需要改進(jìn)的某個(gè)已在計(jì)算機(jī)上運(yùn)行的數(shù)據(jù)處理系統(tǒng),也可能是一個(gè)人工的數(shù)據(jù)處理過程。當(dāng)前系統(tǒng)的物理模型客觀地反映當(dāng)前系統(tǒng)實(shí)際的工作情況。但在物理模型中有許多物理的因素,隨著分析工作的深入,有些非本質(zhì)的物理因素就成為不必要的負(fù)擔(dān),因而需要對(duì)物理模型進(jìn)行分析,區(qū)分出本質(zhì)的和非本質(zhì)的因素,去掉那些非本質(zhì)的因素即可獲

16、得反映系統(tǒng)本質(zhì)的邏輯模型。所以當(dāng)前系統(tǒng)的邏輯模型是從當(dāng)前系統(tǒng)的物理模型抽象出來的。需求分析的結(jié)果總體設(shè)計(jì)1、總體設(shè)計(jì)的目的:總體設(shè)計(jì)的基本目的就是回答“概括地說,系統(tǒng)應(yīng)該如何實(shí)現(xiàn)?”這個(gè)問題,因此,總體設(shè)計(jì)又稱為概要設(shè)計(jì)或初步設(shè)計(jì)。1、面向結(jié)構(gòu)設(shè)計(jì)(SD)2、面向?qū)ο笤O(shè)計(jì)(OOD)2、總體設(shè)計(jì)的階段組成:兩個(gè)主要階段(1)系統(tǒng)設(shè)計(jì)階段,確定系統(tǒng)的具體實(shí)現(xiàn)方案;(2)結(jié)構(gòu)設(shè)計(jì)階段,確定軟件結(jié)構(gòu)3、設(shè)計(jì)原理分析(模塊化,在模塊化程序設(shè)計(jì)中,按功能劃分模塊的原則是,模塊化和軟件成本關(guān)系)模塊化:就是把程序劃分成獨(dú)立命名且可獨(dú)立訪問的模塊,每個(gè)模塊完成一個(gè)子功能,把這些模塊集成起來構(gòu)成一個(gè)整體,可以完

17、成指定的功能滿足用戶的需求.模塊化的根據(jù):把復(fù)雜的問題分解成許多容易解決的小問題,原來的問題也就容易解決了.模塊化和軟件成本關(guān)系:根據(jù)總成本曲線,每個(gè)程序都相應(yīng)地有一個(gè)最適當(dāng)?shù)哪K數(shù)目M,使得系統(tǒng)的開發(fā)成本最小.為什么使用模塊:復(fù)雜問題簡(jiǎn)單化,降低成本抽象的概念:抽出事務(wù)的本質(zhì)特性而暫時(shí)不考慮它們的細(xì)節(jié).衡量模塊獨(dú)立的兩個(gè)標(biāo)準(zhǔn)是什么?它們各表示什么含義? 衡量模塊的獨(dú)立性的標(biāo)準(zhǔn)是兩個(gè)定性的度量標(biāo)準(zhǔn):耦合性和內(nèi)聚性。 (1)耦合性。也稱塊間了解。指軟件系統(tǒng)結(jié)構(gòu)中各模塊間相互了解緊密程度的一種度量。模塊之間了解越緊密,其耦合性就越強(qiáng),模塊的獨(dú)立性則越差。模塊間耦合高低取決于模塊間接口的復(fù)雜性、調(diào)用

18、的方式及傳遞的信息。 (2)內(nèi)聚性。又稱塊內(nèi)了解。指模塊的功能強(qiáng)度的度量,即一個(gè)模塊內(nèi)部各個(gè)元素彼此結(jié)合的緊密程度的度量。若一個(gè)模塊內(nèi)各元素(語(yǔ)句之間、程序段之間)了解得越緊密,則它的內(nèi)聚性就越高。 耦合性與內(nèi)聚性是模塊獨(dú)立性的兩個(gè)定性標(biāo)準(zhǔn),將軟件系統(tǒng)劃分模塊時(shí),盡量做到高內(nèi)聚低耦合,提高模塊的獨(dú)立性,為設(shè)計(jì)高質(zhì)量的軟件結(jié)構(gòu)奠定基礎(chǔ)。4、啟發(fā)規(guī)則(案例分析)詳細(xì)設(shè)計(jì)1、詳細(xì)設(shè)計(jì)目的:對(duì)模塊的算法設(shè)計(jì)和數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)(設(shè)計(jì)出的處理過程應(yīng)該盡可能簡(jiǎn)明易懂)2、過程設(shè)計(jì)的工具,具體有那些:程序流程圖,盒圖(NS),PAD(問題分析圖)圖,判定表,判定樹,過程設(shè)計(jì)語(yǔ)言(PDL)也稱偽碼3、Jackson

19、設(shè)計(jì)方法:(1)分析并確定輸入數(shù)據(jù)和輸出數(shù)據(jù)的邏輯結(jié)果,并用Jackson圖描繪這些數(shù)據(jù)結(jié)構(gòu).(2)找出輸入數(shù)據(jù)結(jié)構(gòu)和輸出數(shù)據(jù)結(jié)構(gòu)中有對(duì)應(yīng)關(guān)系的數(shù)據(jù)單元。(3)從描繪數(shù)據(jù)結(jié)構(gòu)的Jackson圖導(dǎo)出描繪程序結(jié)構(gòu)的Jackson圖(4)列出所有操作和條件(包括分支條件和循環(huán)結(jié)束條件),并且把他們分配到程序結(jié)構(gòu)圖的適當(dāng)位置(5)用偽代碼表示程序4、程序復(fù)雜程度的定量度量實(shí)現(xiàn)1、實(shí)現(xiàn)定義: 通常把編碼和測(cè)試統(tǒng)稱為實(shí)現(xiàn)2、軟件測(cè)試定義: 為了發(fā)現(xiàn)程序中的錯(cuò)誤而執(zhí)行程序的過程3、軟件測(cè)試目標(biāo): 測(cè)試是為了發(fā)現(xiàn)程序中的錯(cuò)誤而執(zhí)行程序的過程4、軟件測(cè)試方法: 第一種方法是黑盒測(cè)試,第二種方法是白盒測(cè)試5、軟件

20、測(cè)試步驟: 1單元測(cè)試(模塊測(cè)試) 2.子系統(tǒng)測(cè)試3. 系統(tǒng)測(cè)試4. 驗(yàn)收測(cè)試5. 平行運(yùn)行5、軟件測(cè)試和軟件生命周期的關(guān)系:軟件測(cè)試在軟件生命周期中橫跨兩個(gè)階段,編碼和單元測(cè)試屬于軟件生命周期的同一個(gè)階段。在這個(gè)階段結(jié)束之后,對(duì)軟件系統(tǒng)還應(yīng)該進(jìn)行各種綜合測(cè)試,這是軟件生命周期的另一個(gè)獨(dú)立的階段。6、白盒測(cè)試技術(shù): 白盒測(cè)試時(shí)將程序看作是一個(gè)透明的盒子,也就是說測(cè)試人員完全了解程序的內(nèi)部結(jié)構(gòu)和處理過程。所以測(cè)試時(shí)按照程序內(nèi)部的邏輯測(cè)試程序、檢驗(yàn)程序中的每條通路是否都能按預(yù)定的要求正確工作。白盒測(cè)試又稱為結(jié)構(gòu)測(cè)試。7、測(cè)試用例: 輸入的數(shù)據(jù)和預(yù)期的結(jié)果8、黑盒測(cè)試技術(shù): 黑盒測(cè)試時(shí)完全不考慮程序

21、內(nèi)部的結(jié)構(gòu)和處理過程,只按照規(guī)格說明書的規(guī)定來檢查程序是否符合它的功能要求。黑盒測(cè)試是在程序接口進(jìn)行的測(cè)試,又稱為功能測(cè)試。9、軟件可靠性分析: :軟件可靠性是程序在給定的時(shí)間間隔內(nèi),按照規(guī)格說明書的規(guī)定成功地運(yùn)行的概率。軟件可靠性可以根據(jù)與技術(shù)系統(tǒng)可靠性接近的平行定義來表示。我們可以這樣來定義軟件可靠性:程序故障的頻率和臨界值。這里,故障是指在許可的運(yùn)行條件下一個(gè)不可接受的結(jié)果或行為。同硬件一樣,軟件可靠性可以用錯(cuò)誤出現(xiàn)和被糾正的速率來表示。維護(hù)1、軟件維護(hù)定義:就是在軟件已經(jīng)交付使用之后,為了改正錯(cuò)誤或滿足新的需要而修改軟件的過程.2、軟件維護(hù)分類:改正性維護(hù);適應(yīng)性維護(hù);完善性維護(hù);預(yù)防

22、性維護(hù)3、為什么軟件難維護(hù):因?yàn)榻Y(jié)構(gòu)化維護(hù)與非結(jié)構(gòu)化維護(hù)差別巨大;維護(hù)的代價(jià)高昂;維護(hù)的問題很多.4、決定軟件課維護(hù)性的因素:可理解性;可測(cè)試性;可修改性;可移植性;可重用性;面向?qū)ο蠓椒▽W(xué)引論1、為什么提出面向?qū)ο蟮姆椒ǎ弘S著大型軟件系統(tǒng)的出現(xiàn),在中小型軟件系統(tǒng)取得成功的傳統(tǒng)的軟件工程方法面臨巨大的危機(jī): 1、軟件生產(chǎn)率無(wú)法滿足市場(chǎng)需求 2、軟件復(fù)用率不高 3、軟件維護(hù)困難 4、軟件往往不能真正滿足用戶需求2、面向?qū)ο蠓椒▽W(xué)的優(yōu)點(diǎn):與人類習(xí)慣的思維方法一致;穩(wěn)定性好;可重用性好;較易開發(fā)大型軟件產(chǎn)品;可維護(hù)性好3、面向?qū)ο蟮幕靖拍?對(duì)象是由描述該對(duì)象屬性的數(shù)據(jù)以及可以對(duì)這些數(shù)據(jù)施加的所有操

23、作封裝在一起構(gòu)成的統(tǒng)一體.4、模型定義:模型,就是為了理解事物而對(duì)事物作出的一種抽象,是對(duì)事物的一種無(wú)歧義的書面描述。5、面向?qū)ο箝_發(fā)軟件的三種模型以及關(guān)系::對(duì)象模型;動(dòng)態(tài)模型;功能模型; 它使用數(shù)據(jù)結(jié)構(gòu)(對(duì)象模型),執(zhí)行操作(動(dòng)態(tài)模型),并且完成數(shù)據(jù)值的變化(功能模型)。關(guān)系:功能模型指明了系統(tǒng)應(yīng)該”做什么”;動(dòng)態(tài)模型明確規(guī)定了什么時(shí)候(即在何種狀態(tài)下接受了什么事件的觸發(fā))做;對(duì)象模型則定義了做事情的實(shí)體.6、對(duì)象模型:描述系統(tǒng)數(shù)據(jù)結(jié)構(gòu)7、功能模型:描述系統(tǒng)控制結(jié)構(gòu)8、動(dòng)態(tài)模型:描述系統(tǒng)功能面向?qū)ο蠓治?、面向?qū)ο箝_發(fā)方法主要包括面向?qū)ο蠓治?、面向?qū)ο笤O(shè)計(jì)和面向?qū)ο髮?shí)現(xiàn)2、00A的主要任務(wù):是識(shí)別出問題域內(nèi)的類與對(duì)象,并分析

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論