2023年軟件工程試卷試題復(fù)習(xí)資料集錦_第1頁(yè)
2023年軟件工程試卷試題復(fù)習(xí)資料集錦_第2頁(yè)
2023年軟件工程試卷試題復(fù)習(xí)資料集錦_第3頁(yè)
2023年軟件工程試卷試題復(fù)習(xí)資料集錦_第4頁(yè)
2023年軟件工程試卷試題復(fù)習(xí)資料集錦_第5頁(yè)
已閱讀5頁(yè),還剩27頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第一章軟件工程概述

1.軟件產(chǎn)品的特性是什么?

產(chǎn)品特性:

⑴是一種邏輯產(chǎn)品,與物質(zhì)產(chǎn)品有很大的區(qū)別。

⑵軟件產(chǎn)品的生產(chǎn)重要是研制,生產(chǎn)成本重要在開(kāi)發(fā)和研制,開(kāi)發(fā)研制完畢后,通過(guò)復(fù)制就

產(chǎn)生了大量軟件產(chǎn)品。

⑶軟件產(chǎn)品不會(huì)用壞,不存在磨損,消耗。

⑷生產(chǎn)重要是腦力勞動(dòng),還末完全擺脫手工開(kāi)發(fā)方式,大部分產(chǎn)品是"定做"的

⑸開(kāi)發(fā)軟件的費(fèi)用不斷增長(zhǎng),致使生產(chǎn)成本相稱昂貴。

2,軟件生產(chǎn)有幾個(gè)階段?各有何特性?

⑴程序設(shè)計(jì)時(shí)代:這個(gè)階段生產(chǎn)方式是個(gè)體勞動(dòng),使用的生產(chǎn)工具是機(jī)器語(yǔ)言,匯編語(yǔ)言。

⑵程序系統(tǒng)時(shí)代:這個(gè)階段生產(chǎn)方式是小集團(tuán)合作生產(chǎn),使用的生產(chǎn)工具是高級(jí)語(yǔ)言,開(kāi)

發(fā)方法仍依靠個(gè)人技巧,但開(kāi)始提出結(jié)構(gòu)化方法。

⑶軟件工程時(shí)代:這個(gè)階段生產(chǎn)方式是工程化的生產(chǎn),使用數(shù)據(jù)庫(kù)、開(kāi)發(fā)工具、開(kāi)發(fā)環(huán)

境、網(wǎng)絡(luò)、分布式、面向?qū)ο蠹夹g(shù)來(lái)開(kāi)發(fā)軟件。

3、什么是軟件危機(jī)?重要表現(xiàn)在哪些方面?

軟件開(kāi)發(fā)技術(shù)的進(jìn)步未能滿足發(fā)展的規(guī)定。在軟件開(kāi)發(fā)中碰到的問(wèn)題找不到解決的辦法,問(wèn)

題積累起來(lái),形態(tài)鋒利的矛盾,導(dǎo)致了軟件危機(jī)。

表現(xiàn)方面:

(1)用戶對(duì)開(kāi)發(fā)出的軟件很難滿意。

(2)軟件產(chǎn)品的質(zhì)量往往靠不住。

(3)一般軟件很難維護(hù)。

(4)軟件生產(chǎn)效率很低。

(5)軟件開(kāi)發(fā)成本越來(lái)越大。

(6)軟件成本與開(kāi)發(fā)進(jìn)度難以估計(jì)。

(7)軟件技術(shù)的發(fā)展遠(yuǎn)遠(yuǎn)滿足不了計(jì)算機(jī)應(yīng)用的普及與進(jìn)一步的需要。

4、什么是軟件工程?它目的和內(nèi)容是什么?

軟件工程:就是用科學(xué)的知識(shí)工程和技術(shù)原理來(lái)定義,開(kāi)發(fā),維護(hù)軟件的一門學(xué)科。

軟件工程的目的:付出較低開(kāi)發(fā)成本;達(dá)成規(guī)定的功能;取得較好的性能;開(kāi)發(fā)的軟件易于移

植;只需較低的維護(hù)費(fèi)用;能準(zhǔn)時(shí)完畢開(kāi)發(fā)任務(wù),及時(shí)交付使用;開(kāi)發(fā)的

軟件可靠性高。

軟件工程的內(nèi)容:研究?jī)?nèi)容涉及開(kāi)發(fā)技術(shù)和開(kāi)發(fā)管理兩個(gè)方面。開(kāi)發(fā)技術(shù)重要研究:軟件開(kāi)

發(fā)方法,開(kāi)發(fā)過(guò)程,開(kāi)發(fā)工具和環(huán)境。開(kāi)發(fā)管理重要研究:軟件管理學(xué),軟件

經(jīng)濟(jì)學(xué),軟件心理學(xué)。

5、軟件工程面臨的問(wèn)題是什么?

軟件工程需要解決的問(wèn)題:軟件的費(fèi)用,可靠性,可維護(hù)性,軟件生產(chǎn)率和軟件的重用。

6、什么是軟件生存周期?它有哪幾個(gè)活動(dòng)?

軟件生存周期:一個(gè)軟件從提出開(kāi)發(fā)規(guī)定開(kāi)始直到該軟件報(bào)廢為止的整個(gè)時(shí)期。

涉及:可行性分析和項(xiàng)目開(kāi)發(fā)計(jì)劃,需求分析,概要設(shè)計(jì),具體設(shè)計(jì),編碼,測(cè)試,維護(hù)。

7、什么是軟件生存周期模型?有哪些重要模型?

生存周期模型:描述軟件開(kāi)發(fā)過(guò)程中各種活動(dòng)如何執(zhí)行的模型。對(duì)軟件開(kāi)發(fā)提供強(qiáng)有力

的支持,為開(kāi)發(fā)過(guò)程中的活動(dòng)提供統(tǒng)一的政策保證,為參與開(kāi)發(fā)的人員提供幫助和指導(dǎo),是軟

件生存周期模型化技術(shù)的基礎(chǔ),也是建立軟件開(kāi)發(fā)環(huán)境的核心。

重要有:瀑布模型,增量模型,螺旋模型,噴泉模型,基于知識(shí)的模型,變換模型。

8、什么是軟件開(kāi)發(fā)方法?有哪些重要方法?

使用早已定義好的技術(shù)集及符號(hào)表達(dá)習(xí)慣來(lái)組織軟件生產(chǎn)的過(guò)程。通過(guò)使用成功的軟件

開(kāi)發(fā)方法,在規(guī)定的投資和時(shí)間內(nèi),開(kāi)發(fā)出符合用戶需求的高質(zhì)量的軟件。軟件開(kāi)發(fā)方法是

克服軟件危機(jī)的重要方面之一,對(duì)軟件工程及軟件包產(chǎn)業(yè)的發(fā)展起了不可估量的作用。

重要有:結(jié)構(gòu)化方法,JACKSON方法,維也納開(kāi)發(fā)方法(VDM),面向?qū)ο箝_(kāi)發(fā)方法。

9、軟件工程方法學(xué)包含3個(gè)要素分別是什么?

分別是:方法、工具和過(guò)程。

>方法是完畢軟件開(kāi)發(fā)的各項(xiàng)任務(wù)的技術(shù)方法,回答“如何做”的問(wèn)題;

A工具是為運(yùn)用方法而提供的自動(dòng)的或半自動(dòng)的軟件工程支撐環(huán)境;

>過(guò)程是為了獲得高質(zhì)量的軟件所需要完畢的一系列任務(wù)的框架,它規(guī)定了完畢各項(xiàng)

任務(wù)的工作環(huán)節(jié)。

10、什么是軟件過(guò)程?

為了獲得高質(zhì)量軟件所需要完畢的一系列任務(wù)的框架,規(guī)定了完畢各項(xiàng)任務(wù)的工作環(huán)

節(jié)。在完畢開(kāi)發(fā)任務(wù)時(shí)必須進(jìn)行一些開(kāi)發(fā)活動(dòng),并且使用適當(dāng)?shù)馁Y源,在過(guò)程結(jié)束時(shí)將把輸

入轉(zhuǎn)化為輸出。

11、瀑布模型的特點(diǎn)及優(yōu)點(diǎn)?

特點(diǎn):

>(1)各個(gè)階段的順序性和依賴性;

>(2)劃分邏輯設(shè)計(jì)與物理設(shè)計(jì),盡也許推遲程序的物理實(shí)現(xiàn);

>(3)每個(gè)階段必須完畢規(guī)定的文檔,對(duì)其中問(wèn)題通過(guò)復(fù)審及早發(fā)現(xiàn),及早解決。

優(yōu)點(diǎn):

>可逼迫開(kāi)發(fā)人員采用規(guī)范的方法(例如,結(jié)構(gòu)化技術(shù));

>嚴(yán)格地規(guī)定了每個(gè)階段必須提交的文檔;

>規(guī)定每個(gè)階段交出的所有產(chǎn)品都必須通過(guò)質(zhì)量保證小組的仔細(xì)驗(yàn)證。

12、螺旋模型的優(yōu)點(diǎn)?

>對(duì)可選方案和約束條件的強(qiáng)調(diào)有助于已有軟件的重用,也有助于把軟件質(zhì)量作為軟

件開(kāi)發(fā)的一個(gè)重要目的;

>減少了過(guò)多測(cè)試(浪費(fèi)資金)或測(cè)試局限性(產(chǎn)品故障多)所帶來(lái)的風(fēng)險(xiǎn);

>在螺旋模型中維護(hù)只是模型的另一個(gè)周期,在維護(hù)和開(kāi)發(fā)之間并沒(méi)有本質(zhì)區(qū)別。

螺旋模型重要合用于內(nèi)部開(kāi)發(fā)的大規(guī)模軟件項(xiàng)目。項(xiàng)目越大,風(fēng)險(xiǎn)也越大,因此,

進(jìn)行風(fēng)險(xiǎn)分析的必要性也越大。此外,只有內(nèi)部開(kāi)發(fā)的項(xiàng)目,才干在風(fēng)險(xiǎn)過(guò)大時(shí)方便

地中止項(xiàng)目。

13、快速原型的分類、特點(diǎn)及使用策略?

分類:探索型、實(shí)驗(yàn)型、進(jìn)化型

特點(diǎn):盡快向用戶提供一個(gè)可在計(jì)算機(jī)上運(yùn)營(yíng)的目的系統(tǒng)的模型,以便使用戶和開(kāi)發(fā)者在

目的系統(tǒng)應(yīng)當(dāng)“做什么”這個(gè)問(wèn)題上盡也許快地達(dá)成共識(shí)。

>快速原型應(yīng)當(dāng)具有的第一個(gè)特點(diǎn)是“快速”;

>快速原型應(yīng)當(dāng)具有的第二個(gè)特點(diǎn)是“容易修改原型的“修改一試用一反饋”過(guò)程也

許反復(fù)多遍。

使用策略:廢棄策略和追加策略。

14、軟件工程的目的?

付出較低開(kāi)發(fā)成本;達(dá)成規(guī)定的功能;取得較好的性能;開(kāi)發(fā)的軟件易于移植;只需較低的維護(hù)

費(fèi)用;能準(zhǔn)時(shí)完畢開(kāi)發(fā)任務(wù),及時(shí)交付使用;開(kāi)發(fā)的軟件可靠性高。

15、軟件開(kāi)發(fā)技術(shù)重要研究?jī)?nèi)容?

軟件開(kāi)發(fā)方法,開(kāi)發(fā)過(guò)程,開(kāi)發(fā)工具和環(huán)境。

16、軟件開(kāi)發(fā)管理重要研究?jī)?nèi)容?

軟件管理學(xué),軟件經(jīng)濟(jì)學(xué),軟件心理學(xué)。

17、快速原型開(kāi)發(fā)的環(huán)節(jié)?

快速開(kāi)發(fā)、需求、構(gòu)造原形、原形、運(yùn)營(yíng)原形、評(píng)價(jià)原形、修改意見(jiàn)。

18、某計(jì)算機(jī)系統(tǒng)投入使用后、5年內(nèi)每年可節(jié)省人民幣2000元,假設(shè)系統(tǒng)的投資額為

5000元,年利率為12%。試計(jì)算投資回收期和純收入。

年將來(lái)值F(元)(1+I)a現(xiàn)在值P(元)累計(jì)的現(xiàn)在值(元)

120001.121785.711785.71

220001.251600.003385.71

320001.401428.574814.28

420001.571273.896088.17

520001.761136.367224.53

第二章可行性研究

1、可行性研究的任務(wù)是什么?

可行研究的任務(wù):一方面需要進(jìn)行概要的分析研究,初步擬定項(xiàng)目的規(guī)模,目的,約束和限制。

分析員再進(jìn)行簡(jiǎn)要的需求分析,抽象出項(xiàng)目的邏輯結(jié)構(gòu),建立邏輯模型。從邏輯模型出發(fā),

通過(guò)壓縮的設(shè)計(jì),探索出若干種可供選擇的解決方法,對(duì)每種解決方法都要研究它的可行性。

重要從四個(gè)方面考慮:

⑴.技術(shù)可行性:一般要考慮的情況涉及開(kāi)發(fā)的風(fēng)險(xiǎn)即設(shè)計(jì)出的系統(tǒng)能否達(dá)成規(guī)定的功能和

性能;資源的有效性:相關(guān)技術(shù)的發(fā)展是否支持;

⑵.經(jīng)濟(jì)可行性:進(jìn)行開(kāi)發(fā)成本的估算以及了解取得效益的評(píng)估,擬定要開(kāi)發(fā)的項(xiàng)目是否值得

投資。

⑶.法律可行性:要開(kāi)發(fā)的項(xiàng)目是否存在任何侵權(quán)問(wèn)題。

(4).管理可行性:運(yùn)營(yíng)方式在用戶組織內(nèi)是否可行,現(xiàn)有管理制度、人員素質(zhì)、操作方式是否

可行。

2、可行性研究有哪些環(huán)節(jié)?

⑴.擬定項(xiàng)目規(guī)模和目的;

⑵.研究正在運(yùn)營(yíng)的系統(tǒng);收集、研究、分析現(xiàn)有系統(tǒng)的文檔資料,實(shí)地考察系統(tǒng)訪問(wèn)有關(guān)

人員,然后描繪現(xiàn)有系統(tǒng)的高層系統(tǒng)流程圖。

(3).建立新系統(tǒng)的高層邏輯模型;使用數(shù)據(jù)流圖和數(shù)據(jù)字典描述數(shù)據(jù)在系統(tǒng)中的流動(dòng)和解決

情況。

(4).導(dǎo)出和評(píng)價(jià)各種方案;導(dǎo)出若干較高層次的物理解決方法,根據(jù)技術(shù)可行性、經(jīng)濟(jì)可行性

、社會(huì)可行性進(jìn)行評(píng)估,得到可行的解決方法。

⑸.推薦可行方案;進(jìn)行成本?效益分析,決定該項(xiàng)目是否值得開(kāi)發(fā),若值得開(kāi)發(fā)那么解決方案

是什么,并且說(shuō)明該方案可行的因素和理由。

⑹.編寫可行性研究報(bào)告;將上述可行性過(guò)程的結(jié)果寫成相應(yīng)文檔,即可行性研究報(bào)告。

3、可行性研究過(guò)程涉及哪些?

1.復(fù)查系統(tǒng)規(guī)模和目的

2.研究目前正在使用的系統(tǒng)

3.導(dǎo)出新系統(tǒng)的高層邏輯模型

4.進(jìn)一步定義問(wèn)題

5.導(dǎo)出和評(píng)價(jià)供選擇的解法

6.推薦行動(dòng)方針

7.草擬開(kāi)發(fā)計(jì)劃

8.書(shū)寫文檔提交審查

4、什么是數(shù)據(jù)流圖?其作用是什么?

數(shù)據(jù)流圖(DFD):以圖形的方式描述數(shù)據(jù)在系統(tǒng)中流動(dòng)和解決的邏輯過(guò)程。只反映系統(tǒng)必須

完畢的邏輯功能,是一種功能模型。

5、什么是數(shù)據(jù)字典?其作用是什么?共有哪些條目?

數(shù)據(jù)字典(DD)用來(lái)定義數(shù)據(jù)庫(kù)流圖中的各個(gè)成分的具體含義。有以下四類條目:數(shù)據(jù)流,數(shù)

據(jù)項(xiàng),數(shù)據(jù)存儲(chǔ),基本加工。

6、成本-效益分析可用哪些指標(biāo)進(jìn)行度量?

⑴.投資回收率:通常把建立系統(tǒng)若干年后能取得的收益折算成現(xiàn)在的價(jià)值和開(kāi)發(fā)系統(tǒng)所需

的費(fèi)用進(jìn)行比較得出投資回收率。

⑵.投資回收期:就是使累計(jì)的經(jīng)濟(jì)效益等于最初的投資費(fèi)用所需的時(shí)間。

⑶.純收入:整個(gè)生存周期之內(nèi)的累計(jì)經(jīng)濟(jì)效益(折成現(xiàn)在值)與投資之差。

7、某圖書(shū)管理系統(tǒng)有以下功能:

⑴借書(shū):輸入讀者借書(shū)證。系統(tǒng)一方面檢查借書(shū)證是否有效,若有效,對(duì)于第一次借書(shū)的讀者,

在借書(shū)證上建立檔案。否則,查閱借書(shū)文獻(xiàn),檢查該讀者所借圖書(shū)是否超過(guò)10本,若已達(dá)10,

拒借,末達(dá)10本,辦理借書(shū)(檢查庫(kù)存,修改庫(kù)存目錄并將讀者借書(shū)情況錄入借書(shū)文獻(xiàn)。)

⑵還書(shū):從借書(shū)文獻(xiàn)中讀出與讀者有關(guān)的記錄,查閱所借日期,如超期(3個(gè)月)作罰款解決。

否則,修改庫(kù)存目錄與借書(shū)文獻(xiàn)。

⑶查詢:通過(guò)借書(shū)文獻(xiàn),庫(kù)存目錄文獻(xiàn)查詢讀者情況、圖書(shū)借閱及庫(kù)存情況,打印登記表。

解:

頂層圖

借書(shū)./拒絕借書(shū)

還書(shū)圖書(shū)管借書(shū)信息讀

\理系統(tǒng)罰款單

統(tǒng)計(jì)表\

管理員

借書(shū)信息

統(tǒng)計(jì)表

查詢4

1層圖

圖1

第一次借書(shū)

借書(shū)文件

審核借書(shū)證L1

借無(wú)

效借書(shū)信意

證,借書(shū)通知

超過(guò)10本或庫(kù)存無(wú)

惜書(shū)審核13

拒絕借書(shū)

庫(kù)存記錄

A

圖2

圖3

8、某銀行的計(jì)算機(jī)儲(chǔ)蓄系統(tǒng)功能是:將儲(chǔ)戶的存戶填寫的存款單或存款單輸入系統(tǒng),假如是

存款,系統(tǒng)記錄存款人姓名、住址、存款類型、存款日期.利率等信息,并打印出存款單給

儲(chǔ)戶;假如是取款,系記錄算清單給儲(chǔ)戶。請(qǐng)用DFDJDEFO描繪該功能的需求,并建立相

應(yīng)數(shù)據(jù)字典。

儲(chǔ)右系筑的DFO圖

9、一個(gè)考務(wù)解決系統(tǒng)的規(guī)定如下,試畫(huà)出該系統(tǒng)的數(shù)據(jù)流圖。

(1)對(duì)考生送來(lái)的報(bào)名表進(jìn)行檢查;

(2)對(duì)合格的報(bào)名表編好準(zhǔn)考證號(hào)碼后將準(zhǔn)考證送給考生,并將匯總后的考

生名單送給閱卷站;

(3)對(duì)閱卷站送來(lái)的成績(jī)表進(jìn)行檢查,并根據(jù)考試中心指定的合格標(biāo)準(zhǔn)審定

合格者;

(4)填寫考生告知單(內(nèi)容包含考試成績(jī)及合格/不合格標(biāo)志),送給考生;

(5)按地區(qū)、年齡、文化限度、職業(yè)、考試級(jí)別等進(jìn)行成績(jī)分類記錄及試題

難度分析,產(chǎn)生記錄分析表。

(1)頂層數(shù)據(jù)流圖

A-錯(cuò)

績(jī)

績(jī)

(a)頂層數(shù)據(jù)流圖表

,

閱卷站

A

(2)第1層數(shù)據(jù)流圖

(3)第2層數(shù)據(jù)流圖

加工1子圖:

報(bào)名表

考生名冊(cè)名

V

A加工2子圖:

成績(jī)表合格標(biāo)準(zhǔn)

正確

2.1成績(jī)表2.2

檢查審定

成績(jī)表合格者

錯(cuò)誤

經(jīng)成

成頸表審績(jī)

試題得分表

定表

2.5

分析試

題難度2.423

分類統(tǒng)埴S

通Z

計(jì)成績(jī)-3

0考

統(tǒng)知

分考生名冊(cè)生

計(jì)單

關(guān)表

10、系統(tǒng)流程圖

是概括地描繪物理系統(tǒng)的傳統(tǒng)工具,表達(dá)的是數(shù)據(jù)在系統(tǒng)各部件之間流動(dòng)的情況,

11、原型化方法重要用于解決什么問(wèn)題?試說(shuō)明這種方法的重要優(yōu)缺陷。

原型化方法重要用于解決在產(chǎn)品開(kāi)發(fā)的初期階段需求不擬定的問(wèn)題,用戶、經(jīng)理和其他非技

術(shù)項(xiàng)目風(fēng)險(xiǎn)承擔(dān)者發(fā)現(xiàn)在擬定和開(kāi)發(fā)產(chǎn)品時(shí),原型可以使他們的想象更具體化。這種方法的

重要優(yōu)點(diǎn)如下:

(1)明確并完善需求原型作為一種需求工具,它初步實(shí)現(xiàn)所理解的系統(tǒng)的一部分,用I戶對(duì)

原型的評(píng)價(jià)可以指出需求中的許多問(wèn)題。

(2)探索設(shè)計(jì)選擇方案原型作為一種設(shè)計(jì)工具,可以探索不同的用戶界面技術(shù),使系統(tǒng)達(dá)成

最佳的可用性,并且可以評(píng)價(jià)也許的技術(shù)方案。

(3)發(fā)展為最終的產(chǎn)品原型作為一種構(gòu)造工具,是產(chǎn)品最初子集的完整功能實(shí)現(xiàn),通過(guò)一系

列小規(guī)模的開(kāi)發(fā)循環(huán),你可以完畢整個(gè)產(chǎn)品的開(kāi)發(fā)。

(4)這種方法的重要缺陷涉及:

(1)用戶看到一個(gè)正在運(yùn)營(yíng)的原型便認(rèn)為產(chǎn)品即將完畢,他們會(huì)規(guī)定不再進(jìn)行產(chǎn)品重建,而只

是對(duì)原型進(jìn)行一些修改就交付。由于原型沒(méi)有考慮軟件的總體

質(zhì)量和可維護(hù)性,交付原型往往導(dǎo)致"欲速則不達(dá)"的情況。

(2)開(kāi)發(fā)人員為了快速構(gòu)造原型,也許會(huì)采用不合適的操作系統(tǒng)或程序設(shè)計(jì)語(yǔ)言,也也許

使用一些效率低的算法。在一段時(shí)間的開(kāi)發(fā)之后,他們往往已經(jīng)習(xí)慣了這些選擇,于是便在系

統(tǒng)中參雜了這些不抱負(fù)的選擇。

第三章需求分析

1、什么是需求分析?需求分析階段的基本任務(wù)是什么?

需求分析:開(kāi)發(fā)人員準(zhǔn)確地理解用戶的規(guī)定,進(jìn)行細(xì)致的調(diào)查分析,將用戶非形式的需求陳

述轉(zhuǎn)化為完整的需求定義,再由需求定義轉(zhuǎn)換到相應(yīng)的需求規(guī)格說(shuō)明的過(guò)程。

基本任務(wù):

⑴問(wèn)題辨認(rèn):雙方擬定對(duì)問(wèn)題的綜合需求,這些需求涉及功能需求,性能需求,環(huán)境需求,用戶界

面需求。

⑵分析與綜合,導(dǎo)出軟件的邏輯模型。

⑶編寫文檔:涉及編寫"需求規(guī)格說(shuō)明書(shū)","初步用戶使用手冊(cè)",”確認(rèn)測(cè)試計(jì)劃"修改完

善軟件開(kāi)發(fā)計(jì)劃"。

2、什么是結(jié)構(gòu)分析方法?該方法使用什么描述工具?

結(jié)構(gòu)化分析:簡(jiǎn)稱SA,面向數(shù)據(jù)流進(jìn)行數(shù)據(jù)分析的方法。采用自頂向下逐層分解的分析策略。

頂層抽象地描述整個(gè)系統(tǒng),底層具體地畫(huà)出系統(tǒng)工程的每個(gè)細(xì)節(jié)。中間層則是從抽象到具體

的過(guò)渡。

使用數(shù)據(jù)流圖,數(shù)據(jù)字典,作為描述工具,使用結(jié)構(gòu)化語(yǔ)言,鑒定表,鑒定樹(shù)描述加工邏輯。

3、結(jié)構(gòu)化分析方法通過(guò)哪些環(huán)節(jié)來(lái)實(shí)現(xiàn)?

⑴了解當(dāng)前系統(tǒng)的工作流程,獲得當(dāng)前系統(tǒng)的物理模型。⑵抽象出當(dāng)前系統(tǒng)的邏輯模型。⑶

建立目的系統(tǒng)的邏輯模型。⑷作進(jìn)一步補(bǔ)充和優(yōu)化。

4、E-R圖中包含哪幾種種基本成分?

實(shí)體(即數(shù)據(jù)對(duì)象)、關(guān)系和屬性

5、聯(lián)系可分為哪幾種類型?

一對(duì)一聯(lián)系(1:1),一對(duì)多聯(lián)系(1:N),多對(duì)多聯(lián)系(M:N)

6、為什么要進(jìn)行數(shù)據(jù)結(jié)構(gòu)規(guī)范化?

為減少數(shù)據(jù)冗余,避免出現(xiàn)插入異?;騽h除異常,簡(jiǎn)化修改數(shù)據(jù)的過(guò)程。

7、第一范式

每個(gè)屬性值都必須是原子值,即僅僅是一個(gè)簡(jiǎn)樸值而不含內(nèi)部結(jié)構(gòu)。

8、第二范式

滿足第一范式條件,并且每個(gè)非關(guān)鍵字屬性都由整個(gè)關(guān)鍵字決定(而不是由關(guān)鍵字的一部分

來(lái)決定),消除了非關(guān)鍵字屬性對(duì)關(guān)鍵字屬性的部分依賴。

9、第三范式

符合第二范式的條件,每個(gè)非關(guān)鍵字屬性都僅由關(guān)鍵字決定,并且一個(gè)非關(guān)鍵字屬性不能僅僅

是對(duì)另一個(gè)非關(guān)鍵字屬性的進(jìn)一步描述(即一個(gè)非關(guān)鍵字屬性值不依賴于另一個(gè)非關(guān)鍵字屬

性值),消除了非關(guān)鍵字屬性對(duì)關(guān)鍵字屬性的傳遞依賴。

10、S—L-C(SNO,SDEPT,SLOC,CNO,G),這里SNO表達(dá)學(xué)號(hào),SDEPT表達(dá)系名,SLOC

表達(dá)樓號(hào),CNO表達(dá)課程號(hào),G表達(dá)成績(jī)。函數(shù)依賴有:(SNO,CNO)-G;SDEPTf

SLOC;SNO-SDEPT,對(duì)關(guān)系進(jìn)行規(guī)范化,達(dá)成三范式規(guī)定。

(1)SC(SNO,CNO,G)和(2)S-D(SNO,SDEPT,)(3)S-L(SDEPT,SLOC)

11、狀態(tài)轉(zhuǎn)換圖

狀態(tài)轉(zhuǎn)換圖(簡(jiǎn)稱為狀態(tài)圖)通過(guò)描繪系統(tǒng)的狀態(tài)及引起系統(tǒng)狀態(tài)轉(zhuǎn)換的事件,來(lái)表達(dá)系統(tǒng)的

行為。提供了行為建模機(jī)制。

I2、層次方框圖

層次方框圖用樹(shù)形結(jié)構(gòu)的一系列多層次的矩形框描繪數(shù)據(jù)的層次結(jié)構(gòu)。樹(shù)形結(jié)構(gòu)的頂層是一

個(gè)單獨(dú)的矩形框,它代表完整的數(shù)據(jù)結(jié)構(gòu),下面的各層矩形框代表這個(gè)數(shù)據(jù)的子集,最底層的

各個(gè)框代表組成這個(gè)數(shù)據(jù)的實(shí)際數(shù)據(jù)元素(不能再分割的元素)。

13、IPO圖

IPO圖是輸入、解決、輸出圖的簡(jiǎn)稱,可以方便地描繪輸入數(shù)據(jù)、對(duì)數(shù)據(jù)的解決和輸出數(shù)據(jù)

之間的關(guān)系。

14、從哪些方面驗(yàn)證軟件需求的對(duì)的性

(1)一致性所有需求必須是一致的,任何一條需求不能和其他需求互相矛盾。

(2)完整性需求必須是完整的,規(guī)格說(shuō)明書(shū)應(yīng)當(dāng)涉及用戶需要的每一個(gè)功能或性能。

(3)現(xiàn)實(shí)性指定的需求應(yīng)當(dā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)有效性必須證明需求是對(duì)的有效的,的確能解決用戶面對(duì)的問(wèn)題。

第四章總體設(shè)計(jì)

1、什么是總體設(shè)計(jì)?總體設(shè)計(jì)的任務(wù)是什么?

總體設(shè)計(jì)又稱為概要設(shè)計(jì)或初步設(shè)計(jì)。擬定系統(tǒng)功能是實(shí)現(xiàn)。基本任務(wù)是:建立軟件系統(tǒng)結(jié)

構(gòu)(劃分模塊、定義模塊功能、模塊間的調(diào)用關(guān)系、定義模塊的接口、評(píng)價(jià)模塊的質(zhì)量)、

數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)庫(kù)的設(shè)計(jì)(數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)、概念設(shè)計(jì)、邏輯設(shè)計(jì)、物理設(shè)計(jì))、編寫概要設(shè)計(jì)

文檔(概要設(shè)計(jì)說(shuō)明書(shū)、用戶手冊(cè)、數(shù)據(jù)庫(kù)設(shè)計(jì)說(shuō)明書(shū)、修訂測(cè)試計(jì)劃)。

2、總體設(shè)計(jì)分為哪兩個(gè)階段?

系統(tǒng)設(shè)計(jì)階段,擬定系統(tǒng)的具體實(shí)現(xiàn)方案;結(jié)構(gòu)設(shè)計(jì)階段,擬定軟件結(jié)構(gòu)。

3、總體設(shè)計(jì)過(guò)程涉及幾個(gè)環(huán)節(jié)?

1.設(shè)想供選擇的方案

2.選取合理的方案

3.推薦最佳方案

4.功能分解

5.設(shè)計(jì)軟件結(jié)構(gòu)

6.設(shè)計(jì)數(shù)據(jù)庫(kù)

7.制定測(cè)試計(jì)劃

8.書(shū)寫文檔

9.審查和復(fù)審

4、模塊化

是把程序劃提成獨(dú)立命名且可獨(dú)立訪問(wèn)的模塊,每個(gè)模塊完畢一個(gè)子功能,把這些模塊

集成起來(lái)構(gòu)成一個(gè)整體,可以完畢指定的功能滿足用戶的需求。

5、模塊化的優(yōu)點(diǎn)

(1)模塊化使軟件容易測(cè)試和調(diào)試,因而有助于提高軟件的可靠性。

(2)模塊化也有助于軟件開(kāi)發(fā)工程的組織管理。

6、抽象

就是抽出事物的本質(zhì)特性而暫時(shí)不考慮它們的細(xì)節(jié)。

7、抽象化涉及哪些?

過(guò)程的抽象、數(shù)據(jù)抽象。

8、模塊的獨(dú)立限度的定性標(biāo)準(zhǔn)度量是什么?好的模塊應(yīng)滿足什么標(biāo)準(zhǔn)?

內(nèi)聚和耦合;高內(nèi)聚低耦合。

9、什么耦合?模塊間的耦合有哪些?

指衡量不同模塊彼此間互相依賴(連接)的緊密限度;有非直接耦合、標(biāo)記耦合、數(shù)據(jù)耦

合、控制耦合、外部耦合、公共耦合和內(nèi)容耦合。

10、非直接耦合

假如兩個(gè)模塊之間沒(méi)有直接關(guān)系,它們之間的聯(lián)系完全是通過(guò)主模塊的控制和調(diào)用來(lái)實(shí)現(xiàn)

的,這就是非直接耦合。這種耦合的模塊獨(dú)立性最強(qiáng)。

11、標(biāo)記耦合

假如一組模塊通過(guò)參數(shù)表傳遞記錄信息,就是標(biāo)記耦合。這個(gè)記錄是某一數(shù)據(jù)結(jié)構(gòu)的子結(jié)構(gòu),

而不是簡(jiǎn)樸變量。

12、數(shù)據(jù)耦合

假如一個(gè)模塊訪問(wèn)另一個(gè)模塊時(shí)孩此之間是通過(guò)簡(jiǎn)樸數(shù)據(jù)參數(shù)(不是控制參數(shù)、公共數(shù)據(jù)

結(jié)構(gòu)或外部變量)來(lái)互換輸入、輸出信息的,則稱這種耦合為數(shù)據(jù)耦合。

13、控制耦合

假如一個(gè)模塊通過(guò)傳送開(kāi)關(guān)、標(biāo)志、名字等控制信息,明顯地控制選擇另一模塊的功能,就

是控制耦合。

14、外部耦合

一組模塊都訪問(wèn)同一全局簡(jiǎn)樸變量而不是同一全局?jǐn)?shù)據(jù)結(jié)構(gòu),并且不是通過(guò)參數(shù)表傳遞該全

局變量的信息,則稱之為外部耦合。

15、公共耦合

若一組模塊都訪問(wèn)同一個(gè)公共數(shù)據(jù)環(huán)境,則它們之間的耦合就稱為公共耦合。公共的數(shù)據(jù)環(huán)

境可以是全局?jǐn)?shù)據(jù)結(jié)構(gòu)、共享的通信區(qū)、內(nèi)存的公共覆蓋區(qū)等。

16>內(nèi)容耦合

假如發(fā)生下列情形,兩個(gè)模塊之間就發(fā)生了內(nèi)容耦合

(1)一個(gè)模塊直接訪問(wèn)另一個(gè)模塊的內(nèi)部數(shù)據(jù);

(2)一個(gè)模塊不通過(guò)正常入口轉(zhuǎn)到另一模塊內(nèi)部;

(3)兩個(gè)模塊有一部分程序代碼重迭(只也許出現(xiàn)在匯編語(yǔ)言中)泠(4)一個(gè)模塊

有多個(gè)入口。

17、內(nèi)聚

衡量一個(gè)模塊內(nèi)部各個(gè)元素彼此結(jié)合的緊密限度。功能內(nèi)聚,信息內(nèi)聚,通信內(nèi)聚,

過(guò)程內(nèi)聚,時(shí)間內(nèi)聚,邏輯內(nèi)聚,巧合內(nèi)聚。

19、功能內(nèi)聚

一個(gè)模塊中各個(gè)部分都是完畢某一具體功能必不可少的組成部分,或者說(shuō)該模塊中所有部分

都是為了完畢一項(xiàng)具體功能而協(xié)同工作,緊密聯(lián)系,不可分割的。則稱該模塊為功能內(nèi)聚模

塊。

20、信息內(nèi)聚

這種模塊完畢多個(gè)功能,各個(gè)功能都在同一數(shù)據(jù)結(jié)構(gòu)上操作,每一項(xiàng)功能有一個(gè)唯一的入口

點(diǎn)。這個(gè)模塊將根據(jù)不同的規(guī)定,擬定該執(zhí)行哪一個(gè)功能。由于這個(gè)模塊的所有功能都是基

于同一個(gè)數(shù)據(jù)結(jié)構(gòu)(符號(hào)表),因此,它是一個(gè)信息內(nèi)聚的模塊。

21、通信內(nèi)聚

假如一個(gè)模塊內(nèi)各功能部分都使用了相同的輸入數(shù)據(jù),或產(chǎn)生了相同的輸出數(shù)據(jù),則稱之為

通信內(nèi)聚模塊。通常,通信內(nèi)聚模塊是通過(guò)數(shù)據(jù)流圖來(lái)定義的。

22、過(guò)程內(nèi)聚

使用流程圖做為工具設(shè)計(jì)程序時(shí).,把流程圖中的某一部分劃出組成模塊,就得到過(guò)程內(nèi)聚模

塊。例如,把流程圖中的循環(huán)部分、鑒定部分、計(jì)算部分提成三個(gè)模塊,這三個(gè)模塊都是過(guò)

程內(nèi)聚模塊。

23、時(shí)間內(nèi)聚

時(shí)間內(nèi)聚又稱為經(jīng)典內(nèi)聚。這種模塊大多為多功能模塊,但模塊的各個(gè)功能的執(zhí)行與時(shí)間有

關(guān),通常規(guī)定所有功能必須在同一時(shí)間段內(nèi)執(zhí)行。例如初始化模塊和終止模塊。

24、邏輯內(nèi)聚

這種模塊把幾種

相關(guān)的功能組合在一起,每次被調(diào)用時(shí),由傳送給模塊的鑒定參數(shù)來(lái)擬定該模塊應(yīng)執(zhí)

行哪一種功能。

25、巧合內(nèi)聚

巧合內(nèi)聚又稱為偶爾內(nèi)聚。當(dāng)模塊內(nèi)各部分之間沒(méi)有聯(lián)系,或者即使有聯(lián)系,這種聯(lián)系也很

松散,則稱這種模塊為巧合內(nèi)聚模塊,它是內(nèi)聚限度最低的模塊。

26、扇出

是一個(gè)模塊直接控制(調(diào)用)的模塊數(shù)目。

27、扇入

一個(gè)模塊的扇入表白有多少個(gè)上級(jí)模塊直接調(diào)用它。

28、模塊的作用域

定義為受該模塊內(nèi)一個(gè)鑒定影響的所有模塊的集合。

29、模塊的控制域

是這個(gè)模塊自身以及所有直接或間接從屬于它的模塊的集合。

30、模塊化的優(yōu)點(diǎn)。

>模塊化使軟件容易測(cè)試和調(diào)試,因而有助于提高軟件的可靠性,提高軟件的可修改性。

>模塊化也有助于軟件開(kāi)發(fā)工程的組織管理。

31、逐步求精、分層過(guò)程與抽象等概念之間的互相關(guān)系如何?

“自頂向下,逐步求精”是NiklausWirth提出的設(shè)計(jì)策略:即將軟件的體系結(jié)構(gòu)按自頂

向下方式,對(duì)各個(gè)層次的過(guò)程細(xì)節(jié)和數(shù)據(jù)細(xì)節(jié)逐層細(xì)化,直到用程序設(shè)計(jì)語(yǔ)言的語(yǔ)句可以實(shí)

現(xiàn)為止,從而最后確立整個(gè)的體系結(jié)構(gòu)。

這樣的結(jié)構(gòu)實(shí)際就是一個(gè)模塊的分層結(jié)構(gòu),即分層的過(guò)程。在實(shí)行時(shí),采用抽象化的方

法,自頂向下,給出不同的抽象層次。在最高的抽象層次上,可以使用問(wèn)題所處環(huán)境的語(yǔ)言概

括地描述問(wèn)題的解法。而在較低的抽象層次上,則采用過(guò)程化的方法。在描述問(wèn)題的解法時(shí),

我們可以配合使用面向問(wèn)題的術(shù)語(yǔ)和面向現(xiàn)實(shí)的術(shù)語(yǔ)。但最后在最低的抽象層次上,應(yīng)使用

可以直接實(shí)現(xiàn)的方式來(lái)描述這個(gè)解法。

32、什么是軟件結(jié)構(gòu)圖?簡(jiǎn)述軟件結(jié)構(gòu)設(shè)計(jì)優(yōu)化準(zhǔn)則。

軟件系統(tǒng)的模塊層次結(jié)構(gòu),反映了整個(gè)系統(tǒng)的功能實(shí)現(xiàn),即將來(lái)程序的控制體系。準(zhǔn)則:高內(nèi)

聚低耦合、作用范圍在控制范圍內(nèi)、軟件的深度、寬度、扇入、扇出適當(dāng)、模塊大小適中、

接口簡(jiǎn)樸清楚易懂。

33、什么是模塊的控制范圍和作用范圍?他們的關(guān)系如何?

控制范圍:是模塊自身和它的下屬模塊的集合。作用范圍:模塊中的一個(gè)鑒定影響的所有模

塊的集合。作用范圍應(yīng)當(dāng)在控制范圍內(nèi)。

33、什么是變換流?什么是事物流?

變換流由輸入、變換(或解決)、輸出三部分組成。

事物流某個(gè)加工將它的輸入流分離成許多發(fā)散的數(shù)據(jù)流,形成許多加工途徑,并根據(jù)輸入選

擇其中一個(gè)途徑來(lái)執(zhí)行。

34、試述“變換分析"事物分析"設(shè)計(jì)環(huán)節(jié)。

變換分析設(shè)計(jì)環(huán)節(jié):

⑴擬定變換中心,邏輯輸入和輸出。

⑵設(shè)計(jì)軟件結(jié)構(gòu)的頂層和第一層-變換結(jié)構(gòu):頂層的功能是完畢所有模塊的控制(名稱應(yīng)

是系統(tǒng)名,以體現(xiàn)完畢整個(gè)系統(tǒng)功能)

第一層至少有三種功能模塊:輸入、輸出和變換模塊

⑶設(shè)計(jì)中、下層模塊,對(duì)第一層的模塊自頂向下分解。

輸入模塊由兩部分組成:接受數(shù)據(jù).轉(zhuǎn)換成調(diào)用模塊所需信息。

輸出模塊由兩部分組成:將數(shù)據(jù)轉(zhuǎn)換成下屬模塊所需的形式、發(fā)送數(shù)據(jù)

變換模塊:對(duì)每個(gè)基本加工建立一功能模塊

⑷設(shè)計(jì)的優(yōu)化:輸入部分求精,每個(gè)物理輸入設(shè)立專門模塊,以體現(xiàn)系統(tǒng)的外部接口。

其它輸入模塊與轉(zhuǎn)換數(shù)據(jù)模塊都很簡(jiǎn)樸時(shí),可將它們合并。

輸出部分求精:每個(gè)物理輸出設(shè)立專門模塊,其它也可適當(dāng)合并。

變換部分求精:根據(jù)設(shè)計(jì)準(zhǔn)則,對(duì)模塊適當(dāng)合并。

事務(wù)分析的設(shè)計(jì)環(huán)節(jié):

⑴擬定事務(wù)中心和加工途徑

⑵設(shè)計(jì)頂層(事務(wù)機(jī)構(gòu))和第一層頂層模塊有兩個(gè)功能:接受數(shù)據(jù)和根據(jù)事務(wù)類型調(diào)動(dòng)

相應(yīng)解決模塊。

⑶中下層模塊的設(shè)計(jì)、優(yōu)化工作與變換結(jié)構(gòu)相同。

事務(wù)型軟件結(jié)構(gòu)涉及兩部分:接受分支發(fā)送分支出通常涉及一調(diào)度模塊,當(dāng)事務(wù)類型

不多時(shí),可與主模塊合并。

35、請(qǐng)將下圖的DFD轉(zhuǎn)換為軟件結(jié)構(gòu)圖。

解:

第五章具體設(shè)計(jì)

1、具體設(shè)計(jì)的基本任務(wù)是什么?有那幾種描述方法?

設(shè)計(jì)模塊的數(shù)據(jù)結(jié)構(gòu)、設(shè)計(jì)數(shù)據(jù)庫(kù)的物理結(jié)構(gòu)、設(shè)計(jì)模塊的具體算法、其它(代碼設(shè)計(jì)、輸

入/輸出格式設(shè)計(jì)、人機(jī)對(duì)話設(shè)計(jì))、編寫具體設(shè)計(jì)說(shuō)明書(shū)、評(píng)審。

程序流程圖、PAD圖、PDLo

2、請(qǐng)使用流程圖、PAD圖和PDL語(yǔ)言描述下列程序的算法。

(1)在數(shù)據(jù)A(l)?A(10)中求最大數(shù)和次大數(shù)。

PDL語(yǔ)言描述:

GET(a[l],a[2]>...a[10])

max=allJ;

max2=a[2];

FORi=2TO10

IFa[i]>max

max2=max;

max=a[i];

ELSE

IFa[i]>max2

max2=a[i];

ENDIF

ENDIF

ENDFOR

PUT(max,max2)

END

3、輸入三個(gè)正整數(shù)作為邊長(zhǎng),判斷該三條邊構(gòu)成的三角形是等邊、等腰還是一般三角形。

使用流程圖、PAD圖和PDL語(yǔ)言描述。

解:如圖:

PDL語(yǔ)言描述如下:

GET(a,b,c)

IF(a+b>candb+c>aandc+a>b)

IF(a=b)

IF(a=c)

PUTP等邊三角形")

ELSE

PUT("等腰三角形”)

ENDIF

ELSE

IF(a=c)

PUT("等腰三角形”)

ELSE

IF(b=c)

PUT("等腰三角形”)

ELSE

PUT("一般三角形”)

ENDIF

ENDIF

ENDIF

ELSE

PUT("這不是一個(gè)三角形M)

ENDIF

4、畫(huà)出下面用PDL寫出的程序的PAD圖。

WHILEPDO

IFA>OTHENAlELSEA2ENDIF;

SI;

IFB>0THENBl;

WHILECDOS2;S3ENDWHILE;

ELSEB2

ENDIF;

B3

ENDWHILE;

第六章編碼與測(cè)試

1、軟件測(cè)試的目的是什么?軟件測(cè)試中,應(yīng)注意哪些原則?

答:軟件測(cè)試的目的是為了發(fā)現(xiàn)軟件的錯(cuò)誤。

軟件測(cè)試中應(yīng)注意的原則有:

(1)測(cè)試用例應(yīng)由輸入數(shù)據(jù)和預(yù)期的輸出數(shù)據(jù)兩部分組成。這樣便于對(duì)照檢查,做到有的

放矢。

(2)測(cè)試且例不僅選用合理輸入數(shù)據(jù),還要選擇不合理的輸入數(shù)據(jù)。這樣能更多地發(fā)現(xiàn)錯(cuò)誤,

提高程序的可靠性。對(duì)于不合理的輸入數(shù)據(jù),程序應(yīng)拒絕接受,并給出相應(yīng)的提醒。

(3)除了檢查程序是否做了它應(yīng)當(dāng)做的事,還應(yīng)當(dāng)檢查程序是否做了它不應(yīng)當(dāng)做的事。

(4)應(yīng)制定測(cè)試計(jì)劃并嚴(yán)格執(zhí)行,排除隨意性。

(5)長(zhǎng)期保存測(cè)試用例。

(6)對(duì)發(fā)現(xiàn)錯(cuò)誤較多的程序段,應(yīng)進(jìn)行更進(jìn)一步的測(cè)試。

(7)程序員應(yīng)避免測(cè)試自己的程序。測(cè)試是一種"挑剔性"的行為,心理狀態(tài)是測(cè)試自己程

序的障礙。

2、什么是白盒測(cè)試法?有哪些覆蓋標(biāo)準(zhǔn)?試對(duì)他們的檢錯(cuò)能力進(jìn)行比較?

答:白盒法測(cè)試法把測(cè)試對(duì)象看作一個(gè)打開(kāi)的盒子,測(cè)試人員須了解程序內(nèi)部結(jié)構(gòu)和解決過(guò)

程,以檢查解決過(guò)程的細(xì)節(jié)為基礎(chǔ),對(duì)程序中盡也許多的邏輯途徑進(jìn)行測(cè)試,檢查內(nèi)部控制

結(jié)構(gòu)和數(shù)據(jù)結(jié)構(gòu)是否有錯(cuò),實(shí)際的運(yùn)營(yíng)狀態(tài)與預(yù)期的狀態(tài)是否一致。

白盒法有下列幾種覆蓋標(biāo)準(zhǔn):

>語(yǔ)句覆蓋:設(shè)計(jì)若干個(gè)測(cè)試用例,運(yùn)營(yíng)被測(cè)程序,使得每一可執(zhí)行語(yǔ)句至少執(zhí)行一次。

>鑒定覆蓋:設(shè)計(jì)若干個(gè)測(cè)試用例,運(yùn)營(yíng)被測(cè)程序,使得程序中每個(gè)判斷的取真分支和取

假分支至少經(jīng)歷一次。

>條件覆蓋:設(shè)計(jì)若干個(gè)測(cè)試用例,運(yùn)營(yíng)被測(cè)程序,使得程序中每個(gè)判斷的每個(gè)條件的也許

取值至少執(zhí)行一次。

>鑒定/條件覆蓋:設(shè)計(jì)足夠的測(cè)試用例,使得判斷中每個(gè)條件的所有也許取值至少執(zhí)行

一次,同時(shí)每個(gè)判斷中的每個(gè)條件的也許取值至少執(zhí)行一次。

>條件組合覆蓋:設(shè)計(jì)足夠的測(cè)試用例,運(yùn)營(yíng)被測(cè)程序,使得每個(gè)判斷的所有也許的條件取

值組合至少執(zhí)行一次。

>途徑覆蓋:設(shè)計(jì)足夠的測(cè)試用例,覆蓋程序中所有也許的途徑。

從上到下的覆蓋標(biāo)準(zhǔn)其檢錯(cuò)能力也從弱到強(qiáng),其中條件組合發(fā)現(xiàn)錯(cuò)誤的能力較強(qiáng),凡滿足其標(biāo)

準(zhǔn)的測(cè)試用例,也必然滿足前四種覆蓋標(biāo)準(zhǔn)。在實(shí)際的邏輯測(cè)試中,一般以條件組合覆蓋為

主設(shè)計(jì)測(cè)試用例,然后再補(bǔ)充部分用例來(lái)達(dá)成途徑覆蓋的測(cè)試標(biāo)準(zhǔn)。

3、什么是黑盒測(cè)試法?采用黑盒技術(shù)測(cè)試用例有哪幾種方法?這些方法各有什么特點(diǎn)?

答:黑盒測(cè)試法把被測(cè)試對(duì)象當(dāng)作是一個(gè)黑盒子,測(cè)試人員完全不考慮程序的內(nèi)部結(jié)構(gòu)和解

決過(guò)程,只在軟件接口處進(jìn)行測(cè)試,依據(jù)需求規(guī)格說(shuō)明書(shū),檢查程序是否滿足功能規(guī)定。

采用黑盒技術(shù)測(cè)試用例的方法有:

等價(jià)類的劃分、邊界值分析、錯(cuò)誤推測(cè)和因果圖。

>等價(jià)類的劃分:是將輸入數(shù)據(jù)按有效的或無(wú)效的(也稱合理的或不合理的)劃提成若干個(gè)

等價(jià)類,測(cè)試每個(gè)等價(jià)類的代表值就等于對(duì)該類其他值的測(cè)試。這樣就把漫無(wú)邊跡的隨

機(jī)測(cè)試改為有針對(duì)性的等價(jià)類測(cè)試,用少量有代表性的例子代替大量測(cè)試目的相同的例

子,能有效地提高測(cè)試效率。但這個(gè)方法的缺陷是沒(méi)有注意選擇某些高效的、可以發(fā)現(xiàn)

更多錯(cuò)誤的測(cè)試用例。

>邊界值分析法:是將測(cè)試邊界情況作為重點(diǎn)目的,選取正好等于、剛剛大于和剛剛小于

邊界值的測(cè)試數(shù)據(jù)。(邊界情況是指輸入等價(jià)類和輸入等價(jià)類邊界上的情況。)這種方法

可以查出更多的錯(cuò)誤,由于在程序中往往在解決邊界情況時(shí)易發(fā)生錯(cuò)誤。

>錯(cuò)誤推測(cè)法:是在測(cè)試程序時(shí),人們根據(jù)經(jīng)驗(yàn)或直覺(jué)推測(cè)程序中也許存在的錯(cuò)誤,從而

有針對(duì)性地編寫檢查這些錯(cuò)誤的測(cè)試用例。

>因果圖:可以有效地檢測(cè)輸入條件的各種組合也許會(huì)引起的錯(cuò)誤。它的基本原理是通過(guò)

畫(huà)因果圖,把用自然語(yǔ)言描述的功能說(shuō)明轉(zhuǎn)換為鑒定表,最后為鑒定表的每一列設(shè)計(jì)一個(gè)

測(cè)試用例。

這幾種方法都不能提供一組完整的測(cè)試用例,在實(shí)際測(cè)試中應(yīng)把各種方法結(jié)合起來(lái)使用。

綜合策略:就是聯(lián)合使用上述幾種測(cè)試方法,盡也許多地發(fā)現(xiàn)程序中的錯(cuò)誤。

4、軟件測(cè)試要通過(guò)哪些環(huán)節(jié)?這些測(cè)試與軟件開(kāi)發(fā)各階段之間有什么關(guān)系?

答:軟件測(cè)試要通過(guò)的環(huán)節(jié)是:?jiǎn)卧獪y(cè)試一集成測(cè)試一確認(rèn)測(cè)試一系統(tǒng)測(cè)試。

>單元測(cè)試:對(duì)源程序中每一個(gè)程序單元進(jìn)行測(cè)試,檢查各個(gè)模塊是否正的確現(xiàn)規(guī)定的功

能,從而發(fā)現(xiàn)模塊在編碼中或算法中的錯(cuò)誤。該階段涉及編碼和具體設(shè)計(jì)文檔。

>集成測(cè)試:是為了檢查與設(shè)計(jì)相關(guān)的軟件體系結(jié)構(gòu)的有關(guān)問(wèn)題,也就是檢查概要設(shè)計(jì)是

否合理有效。

>確認(rèn)測(cè)試:重要是檢查已實(shí)現(xiàn)的軟件是否滿足需求規(guī)格說(shuō)明書(shū)中擬定了的各種需求。

>系統(tǒng)測(cè)試:是把已確認(rèn)的軟件與其他系統(tǒng)元素(如硬件、其他支持軟件、數(shù)據(jù)、人工等)

結(jié)合在一起進(jìn)行測(cè)試。以擬定軟件是否可以支付使用。

5、單元測(cè)試有哪些內(nèi)容?測(cè)試中采用什么方法?

答:?jiǎn)卧獪y(cè)試重要針對(duì)模塊的以下五個(gè)基本特性進(jìn)行測(cè)試:

(1)模塊接口

(2)局部數(shù)據(jù)結(jié)構(gòu)

(3)重要的執(zhí)行途徑

(4)錯(cuò)誤解決

(5)邊界條件

測(cè)試的方法是為被測(cè)試模塊編寫驅(qū)動(dòng)模塊和樁模塊來(lái)實(shí)現(xiàn)被測(cè)試單元的可運(yùn)營(yíng)。通過(guò)驅(qū)動(dòng)模

塊來(lái)模擬被測(cè)試模塊的上級(jí)調(diào)用模塊,以上級(jí)模塊調(diào)用被測(cè)模塊的格式驅(qū)動(dòng)被測(cè)模塊,接受

被測(cè)模塊的測(cè)試結(jié)構(gòu)并輸出。樁模塊則用來(lái)代替被測(cè)試模塊所調(diào)用的模塊。它的作用是返回

被測(cè)模塊所需的信息。

6、什么是集成測(cè)試?非漸增式測(cè)試與漸增式測(cè)試有什么區(qū)別?漸增式測(cè)試如何組裝模塊?

答:集成測(cè)試是指在單元測(cè)試的基礎(chǔ)上,將所有模塊按照設(shè)計(jì)規(guī)定組裝成一個(gè)完整的系統(tǒng)進(jìn)行

的測(cè)試。

非漸增式測(cè)試是指一方面對(duì)每個(gè)模塊分別進(jìn)行單元測(cè)試,再把所有模塊組裝成一個(gè)完整的系

統(tǒng)進(jìn)行的測(cè)試。而漸增式測(cè)試就是逐個(gè)把未經(jīng)測(cè)試的模塊組裝到已通過(guò)測(cè)試的模塊上去進(jìn)行

集成測(cè)試,每加入一個(gè)新模塊進(jìn)行一次集成測(cè)試,反復(fù)此過(guò)程直到程序組裝完畢。漸增式測(cè)

試有兩種不同的組裝方法:自頂向下和自底向上結(jié)合。

兩者區(qū)別是:

(1)非漸增式方法把單元測(cè)試和集成測(cè)試提成兩個(gè)不同的階段,前一階段完畢模塊的單元

測(cè)試,后一階段完畢集成測(cè)試。而漸增式測(cè)試往往把單元測(cè)試和集成測(cè)試合在一起,同時(shí)完

畢。

(2)非漸增式需要更多的工作量,由于每個(gè)模塊都需要驅(qū)動(dòng)模塊和樁模塊,而漸增式運(yùn)用已

測(cè)試過(guò)的模塊作為驅(qū)動(dòng)模塊或樁模塊,因此工作量少。

(3)漸增式可以較早地發(fā)現(xiàn)接口之間的錯(cuò)誤,非漸增式最后組裝時(shí)才發(fā)現(xiàn)。

(4)漸增式有助于排錯(cuò),發(fā)生錯(cuò)誤往往和最近新加入的模塊有關(guān),而非漸增式發(fā)現(xiàn)接口錯(cuò)誤推

遲到最后彳艮難判斷是哪一部分接口犯錯(cuò)。

(5)漸增式比較徹底,已測(cè)試的模塊和新的模塊再測(cè)試。

(6)漸增式點(diǎn)用時(shí)間較多,但非漸增式所需更多的驅(qū)動(dòng)模塊和樁模塊也占用一些時(shí)間。

(7)非漸增式開(kāi)始可并行測(cè)試所有模塊,能充足運(yùn)用人力,對(duì)測(cè)試大型軟件很故意義。

7、什么是確認(rèn)測(cè)試?該階段有哪些工作?

答:確認(rèn)測(cè)試又稱有效性測(cè)試。它的任務(wù)是檢查軟件的功能與性能是否與需求規(guī)格說(shuō)明書(shū)中

擬定的指標(biāo)相符合。因而需求說(shuō)明是確認(rèn)測(cè)試的基礎(chǔ)。確認(rèn)測(cè)試階段有兩項(xiàng)工作:進(jìn)行確認(rèn)

測(cè)試與軟件配置審查。

8、調(diào)試的目的是什么?調(diào)試有哪些技術(shù)手段?

答:調(diào)試則是在進(jìn)行了成功的測(cè)試之后才開(kāi)始的工作。調(diào)試的目的是擬定錯(cuò)誤的因素和位置,

并改正錯(cuò)誤,因此調(diào)試也稱為糾錯(cuò)(Debug)。調(diào)試的技術(shù)手段有簡(jiǎn)樸的調(diào)試方法、歸納法、

演繹法和回溯法等。

9、將對(duì)的答案的編號(hào)填入題目空白處:

在白盒測(cè)試用例中,有語(yǔ)句覆蓋、條件覆蓋、鑒定覆蓋、途徑覆蓋等,其中(A)是最強(qiáng)的覆蓋

準(zhǔn)則。為了對(duì)下圖所示的程序進(jìn)行覆蓋測(cè)試,必須適本地選取測(cè)試數(shù)據(jù)。若X,Y是兩個(gè)變

量,可供選擇的測(cè)試數(shù)據(jù)組共有I,II,HI,IV四組(如表中給出),則實(shí)現(xiàn)語(yǔ)句覆蓋至少應(yīng)

采用的測(cè)試數(shù)據(jù)組是(B);實(shí)現(xiàn)條件覆蓋至少應(yīng)采用的測(cè)試數(shù)據(jù)組是(C);實(shí)現(xiàn)途徑覆蓋至少

應(yīng)采用的測(cè)試數(shù)據(jù)組是(D)或(E)。

XY

測(cè)試數(shù)據(jù)組I03

測(cè)試數(shù)據(jù)組II12

測(cè)試數(shù)據(jù)組m-12

測(cè)試數(shù)據(jù)組IV31

可供選擇的答案:

A:(1)語(yǔ)句覆蓋(2)條件覆蓋(3)鑒定覆蓋(4)途徑覆蓋

B~E:(1)I和II組(2)11和III級(jí)(3)III和IV組(4)I和IV組(5)I、II和III

組(6)11,III和IV組

(7)1,111和IV組(8)1、II和IV組

答:A:(4)B:(1)C:(4)D:(5)E:(8)

10、請(qǐng)對(duì)“鑒定三角形類別”程序算法用等價(jià)類劃分和邊界值分析法設(shè)計(jì)測(cè)試用例,并檢查

邏輯覆蓋標(biāo)準(zhǔn)。

解:先劃分等價(jià)類并編號(hào):

輸入數(shù)據(jù)合理等價(jià)類不合理等價(jià)類

2有.非正整數(shù)

A.B.C1.正整數(shù)3.某兩個(gè)數(shù)相加小于等于剩下的那個(gè)數(shù)

比有非數(shù)字字符

5.三邊相等

6.只有兩邊相等

7.三邊不相等

為合理等價(jià)類設(shè)計(jì)測(cè)試用例,對(duì)于表中相應(yīng)的四個(gè)合理等價(jià)類,用三個(gè)測(cè)試用例覆蓋。

測(cè)試數(shù)據(jù)期望結(jié)果覆蓋范圍

3,4,5輸出“一股三角形”1,7

3,3,3輸出“等邊三角形”5

3,3,2輸出”等腰三角形”6

為每一個(gè)不合理等價(jià)類設(shè)計(jì)一個(gè)測(cè)試用例:

測(cè)試數(shù)據(jù)期望結(jié)果覆蓋范圍

-3,33,-4輸入無(wú)效2

2,3,8輸入無(wú)效3

A.B.C輸入無(wú)效4

3川邊界值法設(shè)計(jì)測(cè)試用

輸入等價(jià)類測(cè)試用例說(shuō)明測(cè)試數(shù)據(jù)期望結(jié)果

全不是數(shù)字A.B.C輸入無(wú)效

1個(gè)正整數(shù)3,38,C輸入無(wú)效

1個(gè)不是正整數(shù)3,4,0k輸入無(wú)效

輸入值

全是正整數(shù)且兩邊之和大于第三邊3,4,5輸入有效

全是正整數(shù)且有兩個(gè)數(shù)之和等于第三個(gè)數(shù)3,3,6輸入無(wú)效

有兩個(gè)數(shù)之和小于第三個(gè)數(shù)3,3,7輸入無(wú)效

三潮目等3,3,3輸出“等邊三角形”

A=B,A/C

3,3,2

A=C,A#B

兩邊相等

溫馨提示

  • 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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)論