武漢理工軟件工程導(dǎo)論期末_第1頁
武漢理工軟件工程導(dǎo)論期末_第2頁
武漢理工軟件工程導(dǎo)論期末_第3頁
武漢理工軟件工程導(dǎo)論期末_第4頁
武漢理工軟件工程導(dǎo)論期末_第5頁
已閱讀5頁,還剩12頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

軟件工程導(dǎo)論復(fù)習(xí)

題型及分值

單選題(20分)20x1

推斷題(10分)10x1

問答題(25分)5x5

應(yīng)用題(45分)7+8+8+10+12

一、軟件工程的基本概念(PPT1-2章)

L軟件危機(jī)(產(chǎn)生的緣由)

(1)軟件危機(jī)是指在計(jì)算機(jī)軟件的開發(fā)和維護(hù)過程中所遇到的一系

列嚴(yán)峻問題。

(2)軟件危機(jī)主要有以下表現(xiàn):

a.對軟件開發(fā)成本和進(jìn)度的估計(jì)常常不精確。開發(fā)成本超出預(yù)算,

實(shí)際進(jìn)度比預(yù)定安排一再拖延的現(xiàn)象并不罕見。

b.用戶對“已完成”系統(tǒng)不滿足的現(xiàn)象常常發(fā)生。

c.軟件產(chǎn)品的質(zhì)量往往靠不住。Bug一大堆,Patch一個(gè)接一個(gè)。

d.軟件的可維護(hù)程度特別之低。

e.軟件通常沒有適當(dāng)?shù)奈臋n資料。

f.軟件的成木不斷提高。

g.軟件開發(fā)生產(chǎn)率的提高趕不上硬件的發(fā)展和人們需求的增長。

(3)產(chǎn)生緣由:一方面是及軟件本身的特點(diǎn)有關(guān);另一方面是由軟

件開發(fā)和維護(hù)的方法不正確有關(guān)。

(4)消退軟件危機(jī)的途徑:

a.對計(jì)算機(jī)軟件有一個(gè)正確的相識(軟件W程序)。

b.必需充分相識到軟件開發(fā)不是某種個(gè)體勞動的神奇技巧,而應(yīng)當(dāng)

是一種組織良好、管理嚴(yán)密、各類人員協(xié)同協(xié)作、共同完成的工程項(xiàng)

目。

c.推廣運(yùn)用在實(shí)踐中總結(jié)出來的開發(fā)軟件的勝利技術(shù)和方法。

d.開發(fā)和運(yùn)用更好的軟件工具。

e.加強(qiáng)軟件管理。

2.軟件的特點(diǎn)有哪些?

(1)軟件是一種邏輯實(shí)體,而不是具體的物理實(shí)體,它具有抽象性;

(2)軟件的生產(chǎn)及硬件不同;

(3)大多數(shù)軟件是定制的;

(4)在軟件的運(yùn)行和運(yùn)用期間,沒有硬件那樣的機(jī)械磨損、老化問

題;

(5)軟件的開發(fā)和運(yùn)行常常受到計(jì)算機(jī)系統(tǒng)的限制對計(jì)算機(jī)系統(tǒng)有

著不同程度的依靠性;

(6)軟件開發(fā)至今尚未完全擺脫手工藝的開發(fā)方式;

(7)軟件是困難的;

(8)軟件成木相當(dāng)昂貴;

(9)相當(dāng)多的軟件工作涉及到社會因素。

3.軟件工程?軟件工程的目標(biāo)?(……)

(1)定義:軟件工程是應(yīng)用計(jì)算機(jī)科學(xué)、數(shù)學(xué)及管理科學(xué)等原理開

發(fā)軟件的工程。它借鑒傳統(tǒng)工程的原則、方法,以提高質(zhì)量,降低成

本為目的。

(2)軟件工程旨在開發(fā)滿足用戶須要、剛好交付、不超過預(yù)算和無

故障的軟件,其主要目標(biāo)如下:

a.實(shí)現(xiàn)預(yù)期的軟件功能,達(dá)到較好的軟件性能,滿足用戶的需求。

b.增加軟件過程的可見性和可控性,保證軟件的質(zhì)量。

c.提高所開發(fā)軟件的可維護(hù)性,降低維護(hù)費(fèi)用。

d.提高軟件開發(fā)生產(chǎn)率,剛好交付運(yùn)用。

e.合理預(yù)算開發(fā)成本,付出較低的開發(fā)費(fèi)用。

4.軟件生存周期模型?主要的模型類型?(……)

(1)軟件生命周期:軟件生存周期大體可分為如下幾個(gè)活動:問題

定義、可行性探討、需求分析、設(shè)計(jì)、編碼、測試、運(yùn)行和維護(hù)。

(2)典型的軟件過程模型有:

瀑布模型(waterfallmodel)

演化模型(evolutionarymodel)

增量模型(incrementalmodel)

原型模型(prototypingmodel)

螺旋模型(spiralmodel)

噴泉模型(waterfountainmodel)

基于構(gòu)件的開發(fā)模型(component-baseddevelopmentmodel)

形式方法模型(formalmethodsmodel)

5.軟件工程強(qiáng)調(diào)(文檔化、規(guī)范化)?(……)

(1)軟件工程強(qiáng)調(diào)規(guī)范化和文檔化。規(guī)范化的目的是使眾多的開發(fā)

者遵守相同的規(guī)范,使軟件生產(chǎn)擺脫個(gè)人生產(chǎn)方式,進(jìn)入標(biāo)準(zhǔn)化、工

程化的生產(chǎn)方式。

(2)文檔化是將軟件的設(shè)計(jì)思想、設(shè)計(jì)過程和實(shí)現(xiàn)過程完整地記錄

下來,以便于后人的運(yùn)用和維護(hù),在開發(fā)過程中各類相關(guān)人員借助于

文檔進(jìn)行溝通和溝通。另外,在開發(fā)過程中產(chǎn)生的各類文檔使得軟件

的生產(chǎn)過程由不行見變?yōu)榭梢?,便于管理者對軟件生產(chǎn)進(jìn)度和開發(fā)過

程進(jìn)行管理。在用戶最終驗(yàn)收時(shí)可以通過對提交的文檔進(jìn)行技術(shù)審查

和管理審查,保證軟件的質(zhì)量。

二、可行性探討及需求分析

1.可行性探討的目的

(1)用最小的代價(jià)在盡可能短的時(shí)間內(nèi)確定問題是否能夠解決。不

是解決問題,而是確定問題是否值得去解決。

(2)說明該軟件開發(fā)項(xiàng)目的實(shí)現(xiàn)在技術(shù)上、經(jīng)濟(jì)上和社會條件上的

可行性;評述為合理地達(dá)到開發(fā)目標(biāo)可能選擇的各種方案。

2.需求分析的任務(wù)、方法、工具

(1)任務(wù):需求分析的任務(wù)就是借助于當(dāng)前系統(tǒng)的邏輯模型導(dǎo)出目

標(biāo)系統(tǒng)的邏輯模型,解決目標(biāo)系統(tǒng)的“做什么”的問題。

(2)方法:

a.訪談

b.面對數(shù)據(jù)流自頂向下求精

c.簡易的應(yīng)用規(guī)格說明技術(shù)

d.快速建立軟件原型

(3)工具:

3.數(shù)據(jù)流圖(作用)

(1)定義:

數(shù)據(jù)流圖(DataFlowDiagram):簡稱DFD,它從數(shù)據(jù)傳遞和加工

角度,以圖形方式來表達(dá)系統(tǒng)的邏輯功能、數(shù)據(jù)在系統(tǒng)內(nèi)部的邏輯流

向和邏輯變換過程,是結(jié)構(gòu)化系統(tǒng)分析方法的主要表達(dá)工具及用于表

示軟件模型的一種圖示方法。

數(shù)據(jù)流圖是結(jié)構(gòu)化分析方法中運(yùn)用的工具,它以圖形的方式描繪

數(shù)據(jù)在系統(tǒng)中流淌和處理的過程,由于它只反映系統(tǒng)必需完成的邏輯

功能,所以它是一種功能模型。

數(shù)據(jù)流圖英文縮寫DFD(DataFlowDiagram)它是描繪信息流和

數(shù)據(jù)從輸入移動到輸出的過程中所經(jīng)受的變換。數(shù)據(jù)流圖從數(shù)據(jù)傳遞

和加工的角度,以圖形的方式刻畫數(shù)據(jù)流從輸入到輸出的移動變換過

程。

(2)作用:

a.便于用戶表達(dá)功能需求和數(shù)據(jù)需求及其聯(lián)系;

b.便于兩類人員共同理解現(xiàn)行系統(tǒng)和規(guī)劃系統(tǒng)的框架;

c.清楚表達(dá)數(shù)據(jù)流的狀況;

d.有利于系統(tǒng)建模.

4.推斷表、推斷樹

(1)推斷表:假如數(shù)據(jù)流圖的加工須要依靠于多個(gè)邏輯條件的取值,

運(yùn)用判定表來描述比較合適。

以“檢查發(fā)貨單”為例:

(2)推斷樹:判定樹也是用來表達(dá)加工邏輯的一種工具。有時(shí)侯它

比判定表更直觀。

以“檢查發(fā)貨單”為例:

三、概要設(shè)計(jì)

1.劃分模塊的標(biāo)準(zhǔn)(高內(nèi)聚低耦合)

(1)什么是耦合?模塊的耦合包括哪些類型?

耦合是對一個(gè)軟件結(jié)構(gòu)內(nèi)不同模塊之間互連程度的度量。

模塊的耦合包括以下幾種類型:數(shù)據(jù)耦合,限制耦合,特征耦合,公

共環(huán)境耦合,內(nèi)容耦合,標(biāo)記耦合,無耦合/非干脆耦合

(2)什么是內(nèi)聚?模塊的內(nèi)聚包括哪些類型?

內(nèi)聚標(biāo)記著一個(gè)模塊內(nèi)各個(gè)元素彼此結(jié)合的緊密程度,它是信息

隱藏和局部化概念的自然擴(kuò)展。模塊的內(nèi)聚包括以下幾種類型:低內(nèi)

聚一偶然內(nèi)聚,邏輯內(nèi)聚,時(shí)間內(nèi)聚中內(nèi)聚一過程內(nèi)聚,通信內(nèi)聚;

高內(nèi)聚一依次內(nèi)聚,功能內(nèi)聚。

2.模塊獨(dú)立性?衡量的標(biāo)準(zhǔn)?(……)

⑴模塊的獨(dú)立性是指軟件系統(tǒng)中每個(gè)模塊只涉及軟件要求的具體的

子功能,而和軟件系統(tǒng)中其他模塊的接口是簡潔的。

(2)模塊的獨(dú)立程度可以由兩個(gè)定性標(biāo)準(zhǔn)度量:

a.耦合:模塊之間的相對獨(dú)立性的度量。

b.內(nèi)聚:模塊功能強(qiáng)度的度量

耦合及內(nèi)聚都是模塊獨(dú)立性的定性標(biāo)準(zhǔn),都反映模塊獨(dú)立性的良好程

度。

3.啟發(fā)性規(guī)則

給軟件工程師以有益的啟示,往往能幫助他們找到改進(jìn)軟件設(shè)計(jì)

提高軟件質(zhì)量的途徑。下面介紹幾條啟發(fā)式規(guī)則:

(1)改進(jìn)軟件結(jié)構(gòu)提高模塊獨(dú)立性

設(shè)計(jì)出軟件的初步結(jié)構(gòu)以后,應(yīng)當(dāng)審查分析這個(gè)結(jié)構(gòu),通過模塊

分解或合并,力求降低耦合提高內(nèi)聚。例如,多個(gè)模塊公有的一個(gè)子

功能可以獨(dú)立成一個(gè)模塊,由這些模塊調(diào)用;有時(shí)可以通過分解或合

并模塊以削減限制信息的傳遞及對全程數(shù)據(jù)的引用,并且降低接口的

困難程度。

⑵模塊規(guī)模應(yīng)當(dāng)適中

閱歷表明,一個(gè)模塊的規(guī)模不應(yīng)過大,最好能寫在一頁A4紙內(nèi)

(通常不超過60行語句)。有人從心理學(xué)角度探討得知,當(dāng)一個(gè)模塊

包含的語句數(shù)超過30以后,模塊的可理解程度快速下降。過大的模

塊往往是由于分解不充分,但是進(jìn)一步分解必需符合問題結(jié)構(gòu),一般

說來,分解后不應(yīng)當(dāng)降低模塊獨(dú)立性。過小的模塊開銷大于有效操作,

而且模塊數(shù)目過多將使系統(tǒng)接口困難。因此過小的模塊有時(shí)不值得單

獨(dú)存在,特殊是只有一個(gè)模塊調(diào)用它時(shí),通常可以把它合并到上級模

塊中去而不必單獨(dú)存在。

(3)深度、寬度、扇出和扇入都應(yīng)適當(dāng).

深度:軟件結(jié)構(gòu)中限制的層數(shù);

寬度:軟件結(jié)構(gòu)內(nèi)同一個(gè)層次上的模塊總數(shù)的最大值;

扇出:一個(gè)模塊干脆限制(調(diào)用)其它模塊的數(shù)目;

扇入:一個(gè)模塊被其它模塊調(diào)用的數(shù)目。

(4)模塊的作用域應(yīng)當(dāng)在限制域之內(nèi)

作用域:受該模塊內(nèi)一個(gè)判定影響的全部模塊的集合。

限制域:模塊本身以及全部從屬于它的模塊的集合。

(5)力爭降低模塊接口的困難度

模塊接口困難是軟件發(fā)生錯(cuò)誤的一個(gè)主要緣由。應(yīng)當(dāng)細(xì)致設(shè)計(jì)模塊接

口,使得信息傳遞簡潔并且和模塊的功能一樣。

如:QUAD-ROOT(TBL,X)

求一元二次方程的根的模塊,其中TBL,X都為數(shù)組,分別代

表方程的系數(shù)和方程的根。

應(yīng)當(dāng)使接口更簡潔,如:

QUAD-ROOT(A,B,C,ROOT1,ROOT2)

A、B、C是方程的系數(shù),ROOTLROOT2是方程的根。

(6)設(shè)計(jì)單入口單出口的模塊

(7)模塊功能應(yīng)當(dāng)可以預(yù)料

以上列出的啟發(fā)式規(guī)則多數(shù)是閱歷規(guī)律,對改進(jìn)設(shè)計(jì),提高軟件

質(zhì)量,往往有重要的參考價(jià)值;但是,它們既不是設(shè)計(jì)的目標(biāo)也不是

設(shè)計(jì)時(shí)應(yīng)當(dāng)普遍遵循的原理。

4.深度、寬度、扇出和扇入

⑴深度往往能粗略地標(biāo)記一個(gè)系統(tǒng)的大小和困難程度。深度和程序

長度之間應(yīng)當(dāng)有粗略的對應(yīng)關(guān)系,當(dāng)然這個(gè)對應(yīng)關(guān)系是在肯定范圍內(nèi)

改變的。假如層數(shù)過多則應(yīng)當(dāng)考慮是否有很多管理模塊過分簡潔了,

能否適當(dāng)合并。

(2)一般說來,寬度越大系統(tǒng)越困難。對寬度影響最大的因素是模塊

的扇出。

(3)扇出過大意味著模塊過分困難,須要限制和協(xié)調(diào)過多的下級模塊;

扇出過小(例如總是1)也不好。閱歷表明,一個(gè)設(shè)計(jì)得好的典型系統(tǒng)

的平均扇出通常是3或4(扇出的上限通常是5?9)。

(4)扇出太大一般是因?yàn)槿狈χ虚g層次,應(yīng)當(dāng)適當(dāng)增加中間層次的限

制模塊。扇出太小時(shí)可以把下級模塊進(jìn)一步分解成若干個(gè)子功能模

塊,或者合并到它的上級模塊中去。當(dāng)然分解模塊或合并模塊必需符

合問題結(jié)構(gòu),不能違反模塊獨(dú)立原理。

⑸扇入越大則共享該模塊的上級模塊數(shù)目越多,這是有好處的,但

是,不能違反模塊獨(dú)立原理單純追求高扇入。

⑹視察大量軟件系統(tǒng)后發(fā)覺,設(shè)計(jì)得很好的軟件結(jié)構(gòu)通常頂層扇出

比較高,中層扇出較少,底層扇入到公共的好用模塊中去(底層模塊

有高扇入)。

5.面對數(shù)據(jù)流的設(shè)計(jì)方法

(1)面對數(shù)據(jù)流設(shè)計(jì)(DataFlow-OrientecDesign,DFOD)是及數(shù)據(jù)

流分析(DFA)對應(yīng)的結(jié)構(gòu)化軟件設(shè)計(jì)技術(shù)。

⑵面對數(shù)據(jù)流的設(shè)計(jì)要解決的任務(wù),就是在需求分析的基礎(chǔ)上,將

表示系統(tǒng)邏輯模型的DFD圖映射(Mapping)成軟件系統(tǒng)結(jié)構(gòu)的初始

設(shè)計(jì)描述。

6.變換設(shè)計(jì)

(1)變換設(shè)計(jì)就是從變換型數(shù)據(jù)流圖映射出軟件模塊結(jié)構(gòu)的過程,也

稱以變換為中心的設(shè)計(jì)。

(2)變換型數(shù)據(jù)處理問題的工作過程大致分為三步,即取得數(shù)據(jù),變

換數(shù)據(jù)和給出數(shù)據(jù)。

⑶相應(yīng)于取得數(shù)據(jù)、變換數(shù)據(jù)、給出數(shù)據(jù),變換型系統(tǒng)結(jié)構(gòu)圖由輸

入、中心變換和輸出等三部分組成。

(4)變換分析方法由以下四步組成:

a.重畫數(shù)據(jù)流圖;

b.區(qū)分有效(邏輯)輸入、有效(邏輯)輸出和中心變換部分;

c.進(jìn)行一級分解,設(shè)計(jì)上層模塊。把整個(gè)變換分解成輸入限制模塊

Ci、輸出限制模塊C。和變換中心限制模塊Ct,由主控模塊限制;

d.進(jìn)行二級分解,設(shè)計(jì)輸入、輸出和中心變換部分的中、下層模塊。

7.事物設(shè)計(jì)

⑴事務(wù)設(shè)計(jì)就是從事務(wù)型數(shù)據(jù)流圖映射出軟件模塊結(jié)構(gòu)的過程,也

稱為以事務(wù)為中心的設(shè)計(jì)。

⑵它接受一項(xiàng)事務(wù),依據(jù)事務(wù)處理的特點(diǎn)和性質(zhì),選擇分派一個(gè)適

當(dāng)?shù)奶幚韱卧?,然后給出結(jié)果。

⑶在事務(wù)型系統(tǒng)結(jié)構(gòu)圖中,事務(wù)

—(571事務(wù)中心又

中心模塊按所接受的事務(wù)的類型,

選擇某一事務(wù)處理模塊執(zhí)行。各事

務(wù)處理模塊并列。每個(gè)事務(wù)處理模主模塊

_____________u、

輸入類型分析1調(diào)度

Hil111y11芋1

112II13I1A2IIB2I|C21

塊可能要調(diào)用若干個(gè)操作模塊,而操作模塊又可能調(diào)用若干個(gè)細(xì)微環(huán)

節(jié)模塊。

(4)事務(wù)設(shè)計(jì)的基本方法有兩步:

a.建立主控模塊、接收輸入類型分析模塊和事務(wù)調(diào)度模塊.

b.分別設(shè)計(jì)輸入類型分析模塊和調(diào)度模塊的下層模塊結(jié)構(gòu)。

方法是:將輸出的每條通路作為調(diào)度模塊的一個(gè)推斷分支,而輸

入類型分析模塊的下層模塊及變換設(shè)計(jì)類似。

四、具體設(shè)計(jì)

LSA方法(基本思想)

2,面對對象分析方法建立的模型(對象模型、行為模型、功能模型)

(1)對象模型

(2)行為模型

⑶功能模型

3.結(jié)構(gòu)化程序設(shè)計(jì)的限制結(jié)構(gòu)(依次、分支、循環(huán))

(1)依次結(jié)構(gòu)

(2)分支結(jié)構(gòu)

(3)循環(huán)結(jié)構(gòu)

4.程序流程圖、N-S盒圖、PAD圖、PDL語言

(1)程序流程圖:程序流程圖也稱為程序框圖,它運(yùn)用五種基本限制

結(jié)構(gòu)。

(2)N-S盒圖:出于要有一種不允許違反結(jié)構(gòu)程序設(shè)計(jì)精神的圖形工

具的考慮,Nassi和Shneiderman提出了盒圖,又稱為N-S圖。它有

下述特點(diǎn):

a.功能域(即,一個(gè)特定限制結(jié)構(gòu)的作用域)明確,可以從盒圖上

一眼就看出來。

b.不行能隨意轉(zhuǎn)移限制。

c.很簡潔確定局部和全程數(shù)據(jù)的作用域。

d.很簡潔表現(xiàn)嵌套關(guān)系,也可以表示模塊的層次結(jié)構(gòu)。

(3)PAD圖:用二維樹形結(jié)構(gòu)的圖來表示程序的限制流,將這種圖翻

譯成程序代碼比較簡潔。它即克服了傳統(tǒng)的流程圖不能清楚表現(xiàn)程序

結(jié)構(gòu)的缺點(diǎn),又不像N-S圖那樣受到把全部程序約束在一個(gè)方框內(nèi)的

限制,這就是其優(yōu)勢所在。

(6)PDL語言:PDL是一種用于描述功能模塊的算法設(shè)計(jì)和加工細(xì)微

環(huán)節(jié)的語言。稱為過程設(shè)計(jì)語言。它是一種偽碼。偽碼的語法規(guī)則分

為“外語法”和“內(nèi)語法”。

PDL具有嚴(yán)格的關(guān)鍵字外語法,用于定義限制結(jié)構(gòu)和數(shù)據(jù)結(jié)構(gòu),同時(shí)

它的表示實(shí)際操作和條件的內(nèi)語法可運(yùn)用芻然語言的詞匯。

5.計(jì)算McCabe環(huán)路困難性度量(3種方法)

McCabe度量法,又稱環(huán)路困難性度量,是一種基于程序限制流的

困難性度量方法。它基于一個(gè)程序模塊的程序圖中環(huán)路的個(gè)數(shù),因此

計(jì)算它先要畫出程序圖。

程序圖是退化的程序流程圖。流程圖中每個(gè)處理都退化成一個(gè)結(jié)

點(diǎn),流線變成連接不同結(jié)點(diǎn)的有向弧(邊)。

程序圖僅描述程序內(nèi)部的限制流程,

完全不表現(xiàn)對數(shù)據(jù)的具體操作,以及分支

和循環(huán)的具體條件。

⑴流圖中的區(qū)域數(shù)等于環(huán)形困難度

區(qū)域:由邊和結(jié)點(diǎn)圍成的面積稱為區(qū)域,

當(dāng)計(jì)算區(qū)域數(shù)時(shí)應(yīng)當(dāng)包括圖外部未被圍

起來的那個(gè)區(qū)域.

(2)流圖G的環(huán)形困難度V(G)=E-N+2.

其中,E是流圖中邊的條數(shù),N是結(jié)點(diǎn)數(shù)。

(3)流圖G的環(huán)形困難度V(G)=P+1

V(G)=4

PDL

procedure:sort其中,P是流圖中判定

I:dowhilerecordsremain

2:readrecord;結(jié)點(diǎn)的數(shù)目。

ifrecordHeldI-0

3.thenpivcessicccHd.

storeinbutler;五、編碼及測試

incrcmcrtcounter:

4:elseifrecordHeld2O

5:ihenresetcounter;L序言性注釋的作用

6:elseprocessrecord;

storeinfile;

7a:endif通常置于每個(gè)程序

eiKlif

7b:enddo

8:end模塊的開頭部分,它應(yīng)

當(dāng)給出程序的整體說

明,對于理解程序本身具有引導(dǎo)作用。

⑴夾在程序中的注釋是程序員及日后的程序讀者之間通信的重要手

段。

注釋決不是可有可無的。

⑵一些正規(guī)的程序文本中,注釋行的數(shù)量占到整個(gè)源程序的1/3到

1/2,甚至更多。

(3)注釋分為序言性注釋和功能性注釋。

2.軟件測試的目的

(1)想以最少的時(shí)間和人力,系統(tǒng)地找出軟件中潛在的各種錯(cuò)誤和缺

陷。假如勝利地實(shí)施了測試,就能夠發(fā)覺軟件中的錯(cuò)誤。

⑵測試的附帶收獲是,它能夠證明軟件的功能和性能及需求說明相

符合。

(3)實(shí)施測試收集到的測試結(jié)果數(shù)據(jù)為牢靠性分析供應(yīng)了依據(jù)。

⑷證明軟件有錯(cuò)。

3.集成測試策略(驅(qū)動模塊、樁模塊)

⑴集成測試是測試和組裝軟件的系統(tǒng)化技術(shù),其主要目標(biāo)是發(fā)覺及

接口有關(guān)的問題。

如:數(shù)據(jù)穿過接口時(shí)可能丟失;一個(gè)模塊對另一個(gè)模塊可能由于

疏忽而造成有害影響;把子功能組合起來可能不產(chǎn)生預(yù)期的主功能;

個(gè)別看來是可以接受的誤差可能積累到不能接受的程度;全程數(shù)據(jù)結(jié)

構(gòu)可能有問題等等。

⑵計(jì)算機(jī)測試:模塊并不是一個(gè)獨(dú)立的程序,在考慮測試模塊時(shí),

同時(shí)要考慮它和外界的聯(lián)系,用一些協(xié)助模塊去模擬及被測模塊相聯(lián)

系的其它模塊。要運(yùn)行它就必需為其開發(fā)驅(qū)動軟件和(或)存根(樁)

軟件。

驅(qū)動程序也就是一個(gè)“主程序”,它接收測試數(shù)據(jù),把這些數(shù)據(jù)

傳送給被測試的模塊,并且印出有關(guān)的結(jié)果。

存根(樁)程序代替被測試的模塊所調(diào)用的模塊,也稱為“虛擬

子程序”。它運(yùn)用被它代替的模塊的接口,可能做最少量的數(shù)據(jù)操作,

印出對入口的檢驗(yàn)或操作結(jié)果,并且把限制歸還給調(diào)用它的模塊。

⑶方法:

a.非漸增式測試方法,即:先分別測試每個(gè)模塊,再把全部模塊按設(shè)

計(jì)要求放在一起結(jié)合成所要的程序進(jìn)行測試。

b.漸增式測試,即:先把下一個(gè)要測試的模塊同已經(jīng)測試好的那些模

塊結(jié)合起來進(jìn)行測試,測試完以后再把下一個(gè)應(yīng)當(dāng)測試的模塊結(jié)合進(jìn)

來測試。

這種每次增加一個(gè)模塊的方法事實(shí)上同時(shí)完成單元測試和集成

測試,目前在進(jìn)行集成測試時(shí)普遍采納漸增式測試方法。

(4)漸增方式把模塊結(jié)合到程序中去時(shí),有自頂向下和自底向上兩種

集成策略。但在實(shí)踐中常采納混合的策略。

4.黑盒測試?黑盒測試方法(等價(jià)類劃分、邊界值分析、錯(cuò)誤推想、

因果圖法)

(1)定義:假如已經(jīng)知道了產(chǎn)品應(yīng)當(dāng)具有的功能,可以通過測試來

檢驗(yàn)是否每個(gè)功能都

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論