久久99精品久久久久久琪琪,久久人人爽人人爽人人片亞洲,熟妇人妻无码中文字幕,亚洲精品无码久久久久久久

軟件工程復(fù)習(xí)資料-2016-3-25分析

時(shí)間:2019-05-14 09:08:59下載本文作者:會員上傳
簡介:寫寫幫文庫小編為你整理了多篇相關(guān)的《軟件工程復(fù)習(xí)資料-2016-3-25分析》,但愿對你工作學(xué)習(xí)有幫助,當(dāng)然你在寫寫幫文庫還可以找到更多《軟件工程復(fù)習(xí)資料-2016-3-25分析》。

第一篇:軟件工程復(fù)習(xí)資料-2016-3-25分析

第一章 軟件工程概述

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

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

⑵軟件產(chǎn)品的生產(chǎn)主要是研制,生產(chǎn)成本主要在開發(fā)和研制,開發(fā)研制完成后,通過復(fù)制就產(chǎn)生了大量軟件產(chǎn)品。

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

⑷生產(chǎn)主要是腦力勞動,還末完全擺脫手工開發(fā)方式,大部分產(chǎn)品是“定做”的 ⑸開發(fā)軟件的費(fèi)用不斷增加,致使生產(chǎn)成本相當(dāng)昂貴。2﹑軟件生產(chǎn)有幾個(gè)階段?各有何特征?

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

⑵程序系統(tǒng)時(shí)代:這個(gè)階段生產(chǎn)方式是小集團(tuán)合作生產(chǎn),使用的生產(chǎn)工具是高級語言,開發(fā)方法仍依靠個(gè)人技巧,但開始提出結(jié)構(gòu)化方法。

⑶軟件工程時(shí)代:這個(gè)階段生產(chǎn)方式是工程化的生產(chǎn),使用數(shù)據(jù)庫﹑開發(fā)工具﹑開發(fā)環(huán)境﹑網(wǎng)絡(luò)﹑分布式﹑面向?qū)ο蠹夹g(shù)來開發(fā)軟件。3﹑什么是軟件危機(jī)?主要表現(xiàn)在哪些方面? 軟件開發(fā)技術(shù)的進(jìn)步未能滿足發(fā)展的要求。在軟件開發(fā)中遇到的問題找不到解決的辦法,問題積累起來,形態(tài)尖銳的矛盾,導(dǎo)致了軟件危機(jī)。表現(xiàn)方面:

(1)用戶對開發(fā)出的軟件很難滿意。(2)軟件產(chǎn)品的質(zhì)量往往靠不住。

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

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

(5)軟件開發(fā)成本越來越大。

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

(7)軟件技術(shù)的發(fā)展遠(yuǎn)遠(yuǎn)滿足不了計(jì)算機(jī)應(yīng)用的普及與深入的需要。4﹑什么是軟件工程?它目標(biāo)和內(nèi)容是什么?

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

軟件工程的目標(biāo):付出較低開發(fā)成本;達(dá)到要求的功能;取得較好的性能;開發(fā)的軟件易于移植;只需較低的維護(hù)費(fèi)用;能按時(shí)完成開發(fā)任務(wù),及時(shí)交付使用;開發(fā)的軟件可靠性高。

軟件工程的內(nèi)容:研究內(nèi)容包括開發(fā)技術(shù)和開發(fā)管理兩個(gè)方面。開發(fā)技術(shù)主要研究:軟件開發(fā)方法,開發(fā)過程,開發(fā)工具和環(huán)境。開發(fā)管理主要研究:軟件管理學(xué),軟件經(jīng)濟(jì)學(xué),軟件心理學(xué)。

5﹑軟件工程面臨的問題是什么?

軟件工程需要解決的問題:軟件的費(fèi)用,可靠性,可維護(hù)性,軟件生產(chǎn)率和軟件的重用。6﹑什么是軟件生存周期?它有哪幾個(gè)活動?

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

包括:可行性分析和項(xiàng)目開發(fā)計(jì)劃,需求分析,概要設(shè)計(jì),詳細(xì)設(shè)計(jì),編碼,測試,維護(hù)。7﹑什么是軟件生存周期模型?有哪些主要模型?

生存周期模型:描述軟件開發(fā)過程中各種活動如何執(zhí)行的模型。對軟件開發(fā)提供強(qiáng)有力的支持,為開發(fā)過程中的活動提供統(tǒng)一的政策保證,為參與開發(fā)的人員提供幫助和指導(dǎo),是軟件生存周期模型化技術(shù)的基礎(chǔ),也是建立軟件開發(fā)環(huán)境的核心。

主要有:瀑布模型,增量模型,螺旋模型,噴泉模型,基于知識的模型,變換模型。8﹑什么是軟件開發(fā)方法?有哪些主要方法?

使用早已定義好的技術(shù)集及符號表示習(xí)慣來組織軟件生產(chǎn)的過程。通過使用成功的軟件開發(fā)方法,在規(guī)定的投資和時(shí)間內(nèi),開發(fā)出符合用戶需求的高質(zhì)量的軟件。軟件開發(fā)方法是克服軟件危機(jī)的重要方面之一,對軟件工程及軟件包產(chǎn)業(yè)的發(fā)展起了不可估量的作用。主要有:結(jié)構(gòu)化方法,JACKSON方法,維也納開發(fā)方法﹙VDM﹚,面向?qū)ο箝_發(fā)方法。

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

? 方法是完成軟件開發(fā)的各項(xiàng)任務(wù)的技術(shù)方法,回答“怎樣做”的問題; ? 工具是為運(yùn)用方法而提供的自動的或半自動的軟件工程支撐環(huán)境;

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

10、什么是軟件過程?

為了獲得高質(zhì)量軟件所需要完成的一系列任務(wù)的框架,規(guī)定了完成各項(xiàng)任務(wù)的工作步驟。在完成開發(fā)任務(wù)時(shí)必須進(jìn)行一些開發(fā)活動,并且使用適當(dāng)?shù)馁Y源,在過程結(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ī)定的文檔,對其中問題通過復(fù)審及早發(fā)現(xiàn),及早解決。

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

? 可強(qiáng)迫開發(fā)人員采用規(guī)范的方法(例如,結(jié)構(gòu)化技術(shù));

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

? 要求每個(gè)階段交出的所有產(chǎn)品都必須經(jīng)過質(zhì)量保證小組的仔細(xì)驗(yàn)證。

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

? 對可選方案和約束條件的強(qiáng)調(diào)有利于已有軟件的重用,也有助于把軟件質(zhì)量作為軟件開發(fā)的一個(gè)重要目標(biāo);

? 減少了過多測試(浪費(fèi)資金)或測試不足(產(chǎn)品故障多)所帶來的風(fēng)險(xiǎn);

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

螺旋模型主要適用于內(nèi)部開發(fā)的大規(guī)模軟件項(xiàng)目。項(xiàng)目越大,風(fēng)險(xiǎn)也越大,因此,進(jìn)行風(fēng)險(xiǎn)分析的必要性也越大。此外,只有內(nèi)部開發(fā)的項(xiàng)目,才能在風(fēng)險(xiǎn)過大時(shí)方便地中止項(xiàng)目。

13、快速原型的分類、特點(diǎn)及使用策略? 分類:探索型、實(shí)驗(yàn)型、進(jìn)化型

特點(diǎn):盡快向用戶提供一個(gè)可在計(jì)算機(jī)上運(yùn)行的目標(biāo)系統(tǒng)的模型,以便使用戶和開發(fā)者在目標(biāo)系統(tǒng)應(yīng)該“做什么”這個(gè)問題上盡可能快地達(dá)成共識。? 快速原型應(yīng)該具備的第一個(gè)特點(diǎn)是“快速”;

? 快速原型應(yīng)該具備的第二個(gè)特點(diǎn)是“容易修改”。原型的“修改—試用—反饋”過程可能重復(fù)多遍。

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

14、軟件工程的目標(biāo)?

付出較低開發(fā)成本;達(dá)到要求的功能;取得較好的性能;開發(fā)的軟件易于移植;只需較低的維護(hù)費(fèi)用;能按時(shí)完成開發(fā)任務(wù),及時(shí)交付使用;開發(fā)的軟件可靠性高。

15、軟件開發(fā)技術(shù)主要研究內(nèi)容?

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

16、軟件開發(fā)管理主要研究內(nèi)容?

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

17、快速原型開發(fā)的步驟?

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

18、某計(jì)算機(jī)系統(tǒng)投入使用后、5年內(nèi)每年可節(jié)省人民幣 2O0O元,假設(shè)系統(tǒng)的投資額為5000元,年利率為 12%。試計(jì)算投資回收期和純收入。

第二章 可行性研究

1、可行性研究的任務(wù)是什么? 可行研究的任務(wù):首先需要進(jìn)行概要的分析研究,初步確定項(xiàng)目的規(guī)模,目標(biāo),約束和限制。分析員再進(jìn)行簡要的需求分析,抽象出項(xiàng)目的邏輯結(jié)構(gòu),建立邏輯模型。從邏輯模型出發(fā),經(jīng)過壓縮的設(shè)計(jì),探索出若干種可供選擇的解決方法,對每種解決方法都要研究它的可行性。主要從四個(gè)方面考慮:

⑴.技術(shù)可行性:一般要考慮的情況包括 開發(fā)的風(fēng)險(xiǎn)即設(shè)計(jì)出的系統(tǒng)能否達(dá)到要求的功能和性能;資源的有效性;相關(guān)技術(shù)的發(fā)展是否支持;⑵.經(jīng)濟(jì)可行性:進(jìn)行開發(fā)成本的估算以及了解取得效益的評估,確定要開發(fā)的項(xiàng)目是否值得投資。

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

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

2、可行性研究有哪些步驟? ⑴.確定項(xiàng)目規(guī)模和目標(biāo);

⑵.研究正在運(yùn)行的系統(tǒng);收集﹑研究﹑分析現(xiàn)有系統(tǒng)的文檔資料,實(shí)地考察系統(tǒng)訪問有關(guān)人員,然后描繪現(xiàn)有系統(tǒng)的高層系統(tǒng)流程圖。

⑶.建立新系統(tǒng)的高層邏輯模型;使用數(shù)據(jù)流圖和數(shù)據(jù)字典描述數(shù)據(jù)在系統(tǒng)中的流動和處理情況。

⑷.導(dǎo)出和評價(jià)各種方案;導(dǎo)出若干較高層次的物理解決方法,根據(jù)技術(shù)可行性﹑經(jīng)濟(jì)可行性﹑社會可行性進(jìn)行評估,得到可行的解決方法。

⑸.推薦可行方案;進(jìn)行成本~效益分析,決定該項(xiàng)目是否值得開發(fā),若值得開發(fā)那么解決方案是什么,并且說明該方案可行的原因和理由。

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

3、可行性研究過程包括哪些?

1.復(fù)查系統(tǒng)規(guī)模和目標(biāo) 2.研究目前正在使用的系統(tǒng)

45678示樓號,CNO表示課程號,G表示成績。函數(shù)依賴有:(SNO,CNO)→G;SDEPT→SLOC;SNO→SDEPT,對關(guān)系進(jìn)行規(guī)范化,達(dá)到三范式要求。

(1)SC(SNO,CNO,G)和

(2)S-D(SNO,SDEPT,)(3)S-L(SDEPT ,SLOC)

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

狀態(tài)轉(zhuǎn)換圖(簡稱為狀態(tài)圖)通過描繪系統(tǒng)的狀態(tài)及引起系統(tǒng)狀態(tài)轉(zhuǎn)換的事件,來表示系統(tǒng)的行為。提供了行為建模機(jī)制。

12、層次方框圖

層次方框圖用樹形結(jié)構(gòu)的一系列多層次的矩形框描繪數(shù)據(jù)的層次結(jié)構(gòu)。樹形結(jié)構(gòu)的頂層是一個(gè)單獨(dú)的矩形框,它代表完整的數(shù)據(jù)結(jié)構(gòu),下面的各層矩形框代表這個(gè)數(shù)據(jù)的子集,最底層的各個(gè)框代表組成這個(gè)數(shù)據(jù)的實(shí)際數(shù)據(jù)元素(不能再分割的元素)。

13、IPO圖

IPO圖是輸入、處理、輸出圖的簡稱,能夠方便地描繪輸入數(shù)據(jù)、對數(shù)據(jù)的處理和輸出數(shù)據(jù)之間的關(guān)系。

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

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

(2)完整性需求必須是完整的,規(guī)格說明書應(yīng)該包括用戶需要的每一個(gè)功能或性能。

(3)現(xiàn)實(shí)性指定的需求應(yīng)該是用現(xiàn)有的硬件技術(shù)和軟件技術(shù)基本上可以實(shí)現(xiàn)的。對硬件技術(shù)的進(jìn)步可以做些預(yù)測,對軟件技術(shù)的進(jìn)步則很難做出預(yù)測,只能從現(xiàn)有技術(shù)水平出發(fā)判斷需求的現(xiàn)實(shí)性。

(4)有效性必須證明需求是正確有效的,確實(shí)能解決用戶面對的問題。

第四章 總體設(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)系、定義模塊的接口、評價(jià)模塊的質(zhì)量)、數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)庫的設(shè)計(jì)(數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)、概念設(shè)計(jì)、邏輯設(shè)計(jì)、物理設(shè)計(jì))、編寫概要設(shè)計(jì)文檔(概要設(shè)計(jì)說明書、用戶手冊、數(shù)據(jù)庫設(shè)計(jì)說明書、修訂測試計(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ì)過程包括幾個(gè)步驟?

1.設(shè)想供選擇的方案 2.選取合理的方案 3.推薦最佳方案 4.功能分解 5.設(shè)計(jì)軟件結(jié)構(gòu) 6.設(shè)計(jì)數(shù)據(jù)庫 7.制定測試計(jì)劃 8.書寫文檔 9.審查和復(fù)審

4、模塊化

是把程序劃分成獨(dú)立命名且可獨(dú)立訪問的模塊,每個(gè)模塊完成一個(gè)子功能,把這些模塊集成起來構(gòu)成一個(gè)整體,可以完成指定的功能滿足用戶的需求。

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

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

011控制范圍:是模塊本身和它的下屬模塊的集合。作用范圍:模塊中的一個(gè)判定影響的所有模塊的集合。作用范圍應(yīng)該在控制范圍內(nèi)。

33、什么是變換流?什么是事物流? 變換流由輸入、變換(或處理)、輸出三部分組成。

事物流某個(gè)加工將它的輸入流分離成許多發(fā)散的數(shù)據(jù)流,形成許多加工路徑,并根據(jù)輸入選擇其中一個(gè)路徑來執(zhí)行。

34、試述“變換分析”﹑“事物分析”設(shè)計(jì)步驟。變換分析設(shè)計(jì)步驟:

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

⑵設(shè)計(jì)軟件結(jié)構(gòu)的頂層和第一層--變換結(jié)構(gòu):頂層的功能是完成所有模塊的控制(名稱應(yīng)是系統(tǒng)名,以體現(xiàn)完成整個(gè)系統(tǒng)功能)

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

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

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

輸出模塊由兩部分組成:將數(shù)據(jù)轉(zhuǎn)換成下屬模塊所需的形式﹑ 發(fā)送數(shù)據(jù) 變換模塊:對每個(gè)基本加工建立一功能模塊

⑷設(shè)計(jì)的優(yōu)化 :輸入部分求精,每個(gè)物理輸入設(shè)置專門模塊,以體現(xiàn)系統(tǒng)的外部接口。其它輸入模塊與轉(zhuǎn)換數(shù)據(jù)模塊都很簡單時(shí),可將它們合并。

輸出部分求精:每個(gè)物理輸出設(shè)置專門模塊,其它也可適當(dāng)合并。變換部分求精:根據(jù)設(shè)計(jì)準(zhǔn)則,對模塊適當(dāng)合并。

事務(wù)分析的設(shè)計(jì)步驟:

⑴確定事務(wù)中心和加工路徑

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

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

事務(wù)型軟件結(jié)構(gòu)包括兩部分: 接收分支 發(fā)送分支出 通常包括一調(diào)度模塊,當(dāng)事務(wù)類型不多時(shí),可與主模塊合并。

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

解:

第五章 詳細(xì)設(shè)計(jì)

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

設(shè)計(jì)模塊的數(shù)據(jù)結(jié)構(gòu)、設(shè)計(jì)數(shù)據(jù)庫的物理結(jié)構(gòu)、設(shè)計(jì)模塊的詳細(xì)算法、其它(代碼設(shè)計(jì)、輸入/輸出格式設(shè)計(jì)、人機(jī)對話設(shè)計(jì))、編寫詳細(xì)設(shè)計(jì)說明書、評審。

程序流程圖、PAD圖、PDL。

2、請使用流程圖、PAD圖和PDL語言描述下列程序的算法。(1)在數(shù)據(jù)A(1)~A(10)中求最大數(shù)和次大數(shù)。

PDL語言描述:

GET(a[1],a[2],...a[10])

max=a[1];

max2=a[2];

FOR i=2 TO 10

IF a[i]>max

max2=max;

max=a[i];

ELSE

IF a[i]>max2

max2=a[i];

ENDIF

ENDIF

ENDFOR

PUT(max,max2)

END

3、輸入三個(gè)正整數(shù)作為邊長,判斷該三條邊構(gòu)成的三角形是等邊、等腰還是一般三角形。使用流程圖、PAD圖和PDL語言描述。解:如圖:

PDL語言描述如下:

GET(a,b,c)

IF(a+b>c and b+c>a and c+a>b)

IF(a=b)

IF(a=c)

PUT(“等邊三角形”)

ELSE

PUT(“等腰三角形”)

ENDIF

ELSE

IF(a=c)

PUT(“等腰三角形”)

ELSE

IF(b=c)

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

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

2、什么是白盒測試法?有哪些覆蓋標(biāo)準(zhǔn)?試對他們的檢錯(cuò)能力進(jìn)行比較? 答:白盒法測試法把測試對象看作一個(gè)打開的盒子,測試人員須了解程序內(nèi)部結(jié)構(gòu)和處理過程,以檢查處理過程的細(xì)節(jié)為基礎(chǔ),對程序中盡可能多的邏輯路徑進(jìn)行測試,檢驗(yàn)內(nèi)部控制結(jié)構(gòu)和數(shù)據(jù)結(jié)構(gòu)是否有錯(cuò),實(shí)際的運(yùn)行狀態(tài)與預(yù)期的狀態(tài)是否一致。白盒法有下列幾種覆蓋標(biāo)準(zhǔn):

? 語句覆蓋:設(shè)計(jì)若干個(gè)測試用例,運(yùn)行被測程序,使得每一可執(zhí)行語句至少執(zhí)行一次。? 判定覆蓋:設(shè)計(jì)若干個(gè)測試用例,運(yùn)行被測程序,使得程序中每個(gè)判斷的取真分支和取假分支至少經(jīng)歷一次。

? 條件覆蓋:設(shè)計(jì)若干個(gè)測試用例,運(yùn)行被測程序,使得程序中每個(gè)判斷的每個(gè)條件的可能取值至少執(zhí)行一次。

? 判定/條件覆蓋:設(shè)計(jì)足夠的測試用例,使得判斷中每個(gè)條件的所有可能取值至少執(zhí)行一次,同時(shí)每個(gè)判斷中的每個(gè)條件的可能取值至少執(zhí)行一次。

? 條件組合覆蓋:設(shè)計(jì)足夠的測試用例,運(yùn)行被測程序,使得每個(gè)判斷的所有可能的條件取值組合至少執(zhí)行一次。

? 路徑覆蓋:設(shè)計(jì)足夠的測試用例,覆蓋程序中所有可能的路徑。從上到下的覆蓋標(biāo)準(zhǔn)其檢錯(cuò)能力也從弱到強(qiáng),其中條件組合發(fā)現(xiàn)錯(cuò)誤的能力較強(qiáng),凡滿足其標(biāo)準(zhǔn)的測試用例,也必然滿足前四種覆蓋標(biāo)準(zhǔn)。在實(shí)際的邏輯測試中,一般以條件組合覆蓋為主設(shè)計(jì)測試用例,然后再補(bǔ)充部分用例來達(dá)到路徑覆蓋的測試標(biāo)準(zhǔn)。

3、什么是黑盒測試法?采用黑盒技術(shù)測試用例有哪幾種方法?這些方法各有什么特點(diǎn)? 答:黑盒測試法把被測試對象看成是一個(gè)黑盒子,測試人員完全不考慮程序的內(nèi)部結(jié)構(gòu)和處理過程,只在軟件接口處進(jìn)行測試,依據(jù)需求規(guī)格說明書,檢查程序是否滿足功能要求。采用黑盒技術(shù)測試用例的方法有:

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

? 等價(jià)類的劃分:是將輸入數(shù)據(jù)按有效的或無效的(也稱合理的或不合理的)劃分成若干個(gè)等價(jià)類,測試每個(gè)等價(jià)類的代表值就等于對該類其他值的測試。這樣就把漫無邊跡的隨機(jī)測試改為有針對性的等價(jià)類測試,用少量有代表性的例子代替大量測試目的相同的例子,能有效地提高測試效率。但這個(gè)方法的缺點(diǎn)是沒有注意選擇某些高效的、能夠發(fā)現(xiàn)更多錯(cuò)誤的測試用例。

? 邊界值分析法:是將測試邊界情況作為重點(diǎn)目標(biāo),選取正好等于、剛剛大于和剛剛小于邊界值的測試數(shù)據(jù)。(邊界情況是指輸入等價(jià)類和輸入等價(jià)類邊界上的情況。)這種方法可以查出更多的錯(cuò)誤,因?yàn)樵诔绦蛑型谔幚磉吔缜闆r時(shí)易發(fā)生錯(cuò)誤。

? 錯(cuò)誤推測法:是在測試程序時(shí),人們根據(jù)經(jīng)驗(yàn)或直覺推測程序中可能存在的錯(cuò)誤,從而有針對性地編寫檢查這些錯(cuò)誤的測試用例。? 因果圖:能夠有效地檢測輸入條件的各種組合可能會引起的錯(cuò)誤。它的基本原理是通過畫因果圖,把用自然語言描述的功能說明轉(zhuǎn)換為判定表,最后為判定表的每一列設(shè)計(jì)一個(gè)測試用例。

這幾種方法都不能提供一組完整的測試用例,在實(shí)際測試中應(yīng)把各種方法結(jié)合起來使用。綜合策略:就是聯(lián)合使用上述幾種測試方法,盡可能多地發(fā)現(xiàn)程序中的錯(cuò)誤。

4、軟件測試要經(jīng)過哪些步驟?這些測試與軟件開發(fā)各階段之間有什么關(guān)系?

-***3-

第二篇:軟件工程復(fù)習(xí)資料

1.軟件是(程序及其文檔)。

2.從事物的組成部件及每個(gè)部件的屬性、功能來認(rèn)識事物。這種方法被稱為(面向?qū)ο?的方法。

3.程序的三種基本控制結(jié)構(gòu)是(順序、選擇和重復(fù))。

4.根據(jù)用戶在軟件使用過程中提出的建設(shè)性意見而進(jìn)行的維護(hù)活動稱為(改善性維護(hù))。

5.面向?qū)ο蟮姆治龇椒ㄖ饕墙⑷惸P停?對象模型、動態(tài)模型、功能模型)。

6.可行性研究的步驟中不包括的內(nèi)容是(導(dǎo)出新系統(tǒng)高層邏輯模型)。7.軟件測試的目標(biāo)是(發(fā)現(xiàn)錯(cuò)誤、降低錯(cuò)誤帶來的風(fēng)險(xiǎn))。8.將軟件組裝成系統(tǒng)的一種測試技術(shù)叫(集成測試)。

9.技術(shù)可行性是可行性研究的關(guān)鍵,其主要內(nèi)容一般不包括(人員分析)。10.軟件生命周期中所花費(fèi)用最多的階段是(軟件維護(hù))11.(軟件有效性)指軟件系統(tǒng)的時(shí)間和空間效率。

12.在E-R模型中,包含以下基本成分(實(shí)體、聯(lián)系、屬性)。

13.軟件工程中的各種方法是完成軟件工程項(xiàng)目的技術(shù)手段,它們支持軟件工程的(各個(gè))階段。

14.軟件需求規(guī)格說明的內(nèi)容不應(yīng)包括(算法的詳細(xì)描述)。

15.盒圖也稱為(N-S圖)。這種表達(dá)方式取消了流程線,它強(qiáng)迫程序員以結(jié)構(gòu)化方式思考和解決問題。

16.從事物的屬性側(cè)面來描述事物的方法就是(面向數(shù)據(jù))的方法。9.以下不屬于白盒測試技術(shù)的是(等價(jià)類劃分)。

17.為改正軟件系統(tǒng)中潛藏的錯(cuò)誤而進(jìn)行的維護(hù)活動稱為(糾錯(cuò)性維護(hù))18.一個(gè)模塊的(扇入數(shù))是指能直接控制該模塊的模塊數(shù)。19.軟件的發(fā)展經(jīng)歷了(三)個(gè)發(fā)展階段。

20.Jackson方法在需求分析階段的主要步驟不包括(了解實(shí)體行為)。21.實(shí)踐表明,確定發(fā)生錯(cuò)誤的位置和內(nèi)在原因所需的工作量幾乎占整個(gè)調(diào)試工作量的(90)%。

22.軟件工程過程中最普通應(yīng)用的是瀑布模型,下面敘述哪個(gè)不是它的主要特征(嚴(yán)格定義需求)

23.(類)是對具有共同特征的對象的進(jìn)一步抽象。13.為了進(jìn)一步改善軟件系統(tǒng)的可維護(hù)性和可靠性,并為以后的改進(jìn)奠定基礎(chǔ)的軟件維護(hù)稱為(預(yù)防性維護(hù))。

24.為了進(jìn)一步改善軟件系統(tǒng)的可維護(hù)性和可靠性,并為以后的改進(jìn)奠定基礎(chǔ)的軟件維護(hù)稱為(預(yù)防性維護(hù))。

25.按軟件的功能進(jìn)行劃分,軟件分為(系統(tǒng)軟件)、支撐軟件和應(yīng)用軟件。26.軟件定義的基本任務(wù)是確定軟件系統(tǒng)的工程(需求),也就是要搞清“做什么”。

27.數(shù)據(jù)流圖(DFD)是一種圖形化技術(shù),描繪信息和數(shù)據(jù)從輸入移動到輸出的過程所經(jīng)受的變換。

28.任何一個(gè)基于計(jì)算機(jī)系統(tǒng)都可以用輸入-處理-輸出(IPO)圖來描述,它將該系統(tǒng)轉(zhuǎn)換成一個(gè)信息變換模型。

29.純收入衡量工程價(jià)值的經(jīng)濟(jì)指標(biāo)之一,它等于(折合現(xiàn)價(jià)的總收入-當(dāng)前投資額)30.以詳細(xì)設(shè)計(jì)說明書為輸入,將該輸入用某種程序設(shè)計(jì)語言翻譯成計(jì)算機(jī)可以理解并最終可運(yùn)行的代碼的過程叫(編碼)過程。

31.驗(yàn)證軟件需求正確性的四個(gè)方面是一致性、完整性、現(xiàn)實(shí)性和(有效性)。32.(概要設(shè)計(jì)),將軟件需求轉(zhuǎn)化為數(shù)據(jù)結(jié)構(gòu)和軟件的系統(tǒng)結(jié)構(gòu)。33.改進(jìn)軟件結(jié)構(gòu)提高模塊獨(dú)立性爭取(低耦合、高內(nèi)聚)。

34.軟件定義過程可通過軟件系統(tǒng)的可行性研究和(需求分析)兩個(gè)階段來完成。

35.(調(diào)試)的目的是確定錯(cuò)誤的位置和引起錯(cuò)誤的原因,并加以改正。36.面向(數(shù)據(jù)流)的設(shè)計(jì)方法是把信息流映射成軟件結(jié)構(gòu)。37.(軟件維護(hù))是軟件生命周期的最后一個(gè)階段。38.(軟件測試)的目標(biāo)是發(fā)現(xiàn)錯(cuò)誤、降低錯(cuò)誤帶來的風(fēng)險(xiǎn)。

39.為了進(jìn)一步改善軟件系統(tǒng)的可維護(hù)性和可靠性,并為以后的改進(jìn)奠定基礎(chǔ)的軟件維護(hù)稱為(預(yù)防性維護(hù))。

40.文檔:一種數(shù)據(jù)媒體和其上所記錄的(數(shù)據(jù))。

41.程序的三種基本控制結(jié)構(gòu)是(順序)、(選擇)、(重復(fù))。42.軟件定義的基本任務(wù)是確定軟件系統(tǒng)的工程(需求),也就是要搞清“做什么”。

43.所有軟件維護(hù)申請報(bào)告要按規(guī)定方式提出,該報(bào)告也稱(軟件問題)報(bào)告。

44.軟件可靠性是指在給定的時(shí)間間隔內(nèi),程序成功運(yùn)行的(概率)。45.軟件工程過程中最普通應(yīng)用的是(瀑布)模型。46.軟件有效性,指軟件系統(tǒng)的時(shí)間和(空間)效率。47.高級語言:獨(dú)立于機(jī)器,面向過程或面向(對象)。

48.在軟件測試中,已知產(chǎn)品內(nèi)部工作過程,通過測試檢驗(yàn)產(chǎn)品內(nèi)部動作是否按照產(chǎn)品規(guī)格說明的規(guī)定正常進(jìn)行的方法稱為(白盒)測試法。

49.任何一個(gè)基于計(jì)算機(jī)系統(tǒng)都可以用輸入-處理-輸出(IPO)圖來描述,它將該系統(tǒng)轉(zhuǎn)換成一個(gè)信息變換模型。

50.面向?qū)ο蟮姆治龇椒ㄖ饕墙⑷惸P停磳ο竽P汀討B(tài)模型、(功能模型)。

51.軟件工程由方法、工具和過程三部分組成,稱為(軟件工程)的三要素。52.軟件工程由(方法)、工具和過程三部分組成,稱為軟件工程的三要素。53.軟件測試的目標(biāo)是(發(fā)現(xiàn)錯(cuò)誤、降低錯(cuò)誤帶來的風(fēng)險(xiǎn))。54.(耦合度)是對軟件結(jié)構(gòu)中模快間關(guān)聯(lián)程度的一種度量。

55.在E-R模型中,包含的基本成分有(實(shí)體)、聯(lián)系和屬性。

56.軟件定義過程可通過軟件系統(tǒng)的(可行性研究)和需求分析兩個(gè)階段來完成。

57.機(jī)器語言、匯編語言:依賴于機(jī)器,面向(機(jī)器)

58.調(diào)試的目的是確定錯(cuò)誤的位置和引起錯(cuò)誤的原因,并加以(改正)。59.將下面的關(guān)系按繼承關(guān)系、聚集關(guān)系或普通關(guān)聯(lián)進(jìn)行分類。

小汽車---------紅旗轎車(繼承)小汽車---------駕駛員(普通關(guān)聯(lián))班級------------學(xué)生(聚集)60.以詳細(xì)設(shè)計(jì)說明書為輸入,將該輸入用某種程序設(shè)計(jì)語言翻譯成計(jì)算機(jī)可以理解并最終可運(yùn)行的代碼的過程叫(編碼)過程。61.軟件維護(hù)是軟件生命周期的(最后)一個(gè)階段。62.將下列各項(xiàng)分為類或類的實(shí)例

我的汽車(實(shí)例)交通工具(類)63.用戶對軟件需求的描述不精確,往往是產(chǎn)生軟件危機(jī)的原因之一。64.一個(gè)好的開發(fā)人員應(yīng)具備的素質(zhì)和能力包括善于與周圍人員團(tuán)結(jié)協(xié)作,建立良好的人際關(guān)系,善于聽取別人的意見。

65.面向數(shù)據(jù)的設(shè)計(jì)方法的適用場合是具有明顯的層次信息結(jié)構(gòu)的應(yīng)用如:企事業(yè)的信息管理系統(tǒng);系統(tǒng)軟件如操作系統(tǒng)等。

66.如果在分析階段和設(shè)計(jì)階段采用的是面向?qū)ο蟮姆椒ǎ诰幋a階段采用的是面向過程的語言,那么這種翻譯就比較困難。67.類是對具有共同特征的對象的進(jìn)一步抽象。

68.軟件測試是對軟件規(guī)格說明、軟件設(shè)計(jì)和編碼的最全面也是最后的審查。69.軟件開發(fā)、設(shè)計(jì)幾乎都是從頭開始,成本和進(jìn)度很難估計(jì)。70.缺乏有力的方法學(xué)的指導(dǎo)和有效的開發(fā)工具的支持,這往往是產(chǎn)生軟件危機(jī)的原因之一。

71.流程圖也稱為程序框圖是最常用的一種表示法。

72.面向數(shù)據(jù)設(shè)計(jì)方法一般都包括下列任務(wù):確定數(shù)據(jù)結(jié)構(gòu)特征;用順序、選擇和重復(fù)三種基本形式表示數(shù)據(jù)等步驟。73.軟件工程的出現(xiàn)主要是由于軟件危機(jī)的出現(xiàn)。

74.結(jié)構(gòu)化分析方法是一種預(yù)先嚴(yán)格定義需求的方法,它在實(shí)施時(shí)強(qiáng)調(diào)的是分析對象的數(shù)據(jù)流。

75.在信息系統(tǒng)的物理模型中,表示系統(tǒng)各個(gè)物理組成部分之間的數(shù)據(jù)流動情況的工具是系統(tǒng)流程圖。

76.成本效益分析的目的是從經(jīng)濟(jì)角度評價(jià)開發(fā)一個(gè)項(xiàng)目是否可行。

第三篇:軟件工程復(fù)習(xí)資料

軟件工程復(fù)習(xí)資料

一、熟悉和理解

(一)軟件工程概述

1.螺旋模型是在瀑布模型和增量模型的基礎(chǔ)上增加了風(fēng)險(xiǎn)分析活動,關(guān)鍵不足在于不能適應(yīng)需求的動態(tài)變更。2.軟件不只是用程序設(shè)計(jì)語言(如PASCAL ,C,VISUAL BASIC 等)編寫的程序,編寫程序代碼只是軟件開發(fā)的一個(gè)部分。

3.快速原型模型可以有效地適應(yīng)用戶需求的動態(tài)變化。4.生產(chǎn)高質(zhì)量的軟件產(chǎn)品是軟件工程的首要目標(biāo)。5.軟件開發(fā)人員對用戶需求的理解有偏差,這將導(dǎo)致軟件產(chǎn)品與用戶的需求不一致,是產(chǎn)生軟件危機(jī)的一個(gè)原因。6.開發(fā)一個(gè)軟件項(xiàng)目總存在某些不確定性,即存在風(fēng)險(xiǎn).有些風(fēng)險(xiǎn)如果控制得不好,可能導(dǎo)致災(zāi)難性的后果。7.缺乏處理大型軟件項(xiàng)目的經(jīng)驗(yàn).是產(chǎn)生軟件危機(jī)的一個(gè)原因。

8.瀑布模型本質(zhì)上是一種線性順序模型,增量模型本質(zhì)上是一種快速原型模型。

9.可行性分析是在系統(tǒng)開發(fā)的早期所做的一項(xiàng)重要的論 證工作,它是決定該系統(tǒng)是否開發(fā)的決策依據(jù),因必須給出可行或不可行的回答。

10. 軟件生存周期模型包括瀑布模型、快速原型模型、增量模型、螺旋模型、噴泉模型等。11. 軟件是一種邏輯產(chǎn)品。

12. “軟件危機(jī)”是指軟件開發(fā)和維護(hù)中出現(xiàn)的一系列問題,成本高、生產(chǎn)率低、質(zhì)量得不到保證、需求不能充分理解都是是軟件危機(jī)的表現(xiàn)形式。

13. 原型化方法是用戶和設(shè)計(jì)者之間執(zhí)行的一種交互過程,適用于需求不確定性高的系統(tǒng)。

14. 軟件工程中的各種方法是完成軟件工程項(xiàng)目的技術(shù)手段,它們支持軟件工程的各個(gè)階段.15. 研究開發(fā)所需要的成本和資源是屬于可行性研究中的經(jīng)濟(jì)可行性研究的一方面。

16. 快速原型模型的主要特點(diǎn)之一是及早提供工作軟件。

17. 軟件工程由方法,工具和過程三部分組成,稱軟件工程的三要素.18. 基于計(jì)算機(jī)系統(tǒng)的軟件要素中的軟部件由程序,數(shù)據(jù)和文檔組成.19. 瀑布模型是以文檔為驅(qū)動、適合于軟件需求明確的軟件項(xiàng)目的模型。20. 螺旋模型是風(fēng)險(xiǎn)驅(qū)動的,而瀑布模型是文檔驅(qū)動的。21. 從事物的組成部件及每個(gè)部件的屬性,功能來認(rèn)識事物.這種方法被稱為面向?qū)ο蟮姆椒ā?/p>

22. 從事物的屬性側(cè)面來描述事物的方法就是面向數(shù)據(jù)的方法。

23. 面向?qū)ο?Object Oriented)方法是將現(xiàn)實(shí)世界的事物以對象的方式映射到計(jì)算機(jī)世界的方法。

(二)軟件項(xiàng)目管理

24. 一個(gè)好的開發(fā)人員應(yīng)具備的素質(zhì)和能力包括善于與周圍人員團(tuán)結(jié)協(xié)作,建立良好的人際關(guān)系,善于聽取別人的意見,具有良好的書面和口頭表達(dá)能力。

25. 為了充分發(fā)揮開發(fā)人員的潛力,縮短工期,軟件工程項(xiàng)目的任務(wù)分解與安排應(yīng)盡力挖掘可并行開發(fā)的部分。26. 任務(wù)是管理有關(guān)項(xiàng)目工作的最小的單元。27. 任務(wù)是一項(xiàng)已經(jīng)定義得很好的工作,該工作可分配給一個(gè)項(xiàng)目參與者或分配給一個(gè)團(tuán)隊(duì)。

(三)需求分析

28. 軟件需求是指用戶對目標(biāo)軟件系統(tǒng)在功能,性能,行為,設(shè)計(jì)約束等方面的期望.29. 數(shù)據(jù)流圖就是用來刻畫數(shù)據(jù)流和轉(zhuǎn)換的信息系統(tǒng)建 3 模技術(shù)。

30. 用戶對軟件需求的描述不精確,往往是產(chǎn)生軟件危機(jī)的原因之一。

31. 需求分析階段的成果主要是需求規(guī)格說明,該成果與軟件設(shè)計(jì),編碼,測試直至維護(hù)都有較大關(guān)系。

32. 需求規(guī)格說明書是需求分析階段最重要的技術(shù)文檔之一

33. 需求分析最終結(jié)果是產(chǎn)生需求規(guī)格說明書 34. DFD中的每個(gè)加工至少需要一個(gè)輸入流和一個(gè)輸出流。

35. 需求分析階段的任務(wù)是確定軟件系統(tǒng)的功能 36. 需求分析的任務(wù)不包括系統(tǒng)設(shè)計(jì)。

37. 需求規(guī)格說明書的作用包括:作為軟件驗(yàn)收的依據(jù)、用戶與開發(fā)人員對軟件要做什么的共同理解、作為軟件設(shè)計(jì)的依據(jù)等

38. 在結(jié)構(gòu)化分析方法中,用以表達(dá)系統(tǒng)內(nèi)數(shù)據(jù)的運(yùn)動情況的工具有數(shù)據(jù)流圖。

39. 結(jié)構(gòu)化分析方法(SA)是一種面向數(shù)據(jù)流的需求分析方法.

40. 驗(yàn)證軟件需求正確性的四個(gè)方面包括一致性、完整性、現(xiàn)實(shí)性、有效性。

41. 在面向?qū)ο筌浖_發(fā)方法中,類與類之間主要有繼 承和聚集的關(guān)系。

42. 面向?qū)ο蟮奶卣髦饕ǘ鄳B(tài)性、繼承性、封裝性。43. 軟件開發(fā)過程中,抽取和整理用戶需求并建立問題域精確模型的過程叫面向?qū)ο蟮姆治觥?/p>

(四)概要設(shè)計(jì)

44. 軟件概要設(shè)計(jì)的主要任務(wù)就是軟件結(jié)構(gòu)的設(shè)計(jì),面向數(shù)據(jù)流的設(shè)計(jì)方法是將數(shù)據(jù)流映射成軟件結(jié)構(gòu)。45. 軟件模塊之間的耦合性越弱越好。

46. 模塊化,信息隱藏,抽象和逐步求精的軟件設(shè)計(jì)原則有助于得到高內(nèi)聚,低耦合度的軟件產(chǎn)品。

47. 內(nèi)聚度標(biāo)志一個(gè)模塊內(nèi)部各成分彼此結(jié)合的緊密程度,按其高低程度可分為七級,內(nèi)聚度越高越好。

48. 在模塊耦合性類型中,模塊之間獨(dú)立性最差的類型是內(nèi)容耦合,在實(shí)際編程時(shí)一定要避免出現(xiàn),為了提高模塊的獨(dú)立性,模塊之間最好是數(shù)據(jù)耦合。模塊耦合越弱,則說明模塊的獨(dú)立性強(qiáng)。

49. 在軟件結(jié)構(gòu)圖中,扇入數(shù)大說明該模塊的重用率高。50. 為了提高模塊的獨(dú)立性,模塊內(nèi)部最好是功能內(nèi)聚,模塊的內(nèi)聚性最高的是功能內(nèi)聚。

51. 軟件結(jié)構(gòu)圖中,模塊框之間若有直線連接,表示它們之間存在調(diào)用關(guān)系一個(gè)軟件的寬度是指其控制的跨度,一個(gè) 軟件的深度是指其控制的層數(shù),一個(gè)模塊的扇入數(shù)是指能直接控制該模塊的模塊數(shù),一個(gè)模塊的“扇出數(shù)”是指該模塊直接控制的其他模塊數(shù)。

52. 當(dāng)一個(gè)模塊直接使用另一個(gè)模塊的內(nèi)部數(shù)據(jù),這種模塊之間的耦合為內(nèi)容耦合。

53. 在進(jìn)行軟件結(jié)構(gòu)設(shè)計(jì)時(shí)應(yīng)該遵循的最主要的原理是模塊獨(dú)立原理。

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

55. 按數(shù)據(jù)流的類型,結(jié)構(gòu)化設(shè)計(jì)方法有兩種設(shè)計(jì)策略,它們是變換分析設(shè)計(jì)和事務(wù)分析設(shè)計(jì)。

56. 衡量模塊的獨(dú)立性的兩個(gè)定性的度量標(biāo)準(zhǔn)是內(nèi)聚度和耦合度。

(五)詳細(xì)設(shè)計(jì)

57. 軟件詳細(xì)設(shè)計(jì)的主要任務(wù)是對算法和數(shù)據(jù)結(jié)構(gòu)進(jìn)行的詳細(xì)設(shè)計(jì),軟件詳細(xì)設(shè)計(jì)主要采用的方法是結(jié)構(gòu)化程序設(shè)計(jì)。

58. 過程描述語言可以用于算法和數(shù)據(jù)結(jié)構(gòu)的描述。59. 結(jié)構(gòu)化程序設(shè)計(jì)方法是使用三種基本控制結(jié)構(gòu)構(gòu)造程序,程序的三種基本控制結(jié)構(gòu)是順序,選擇和循環(huán)。60. 在詳細(xì)設(shè)計(jì)階段,經(jīng)常采用的工具有盒圖、PAD圖、PDL語言、判定表和判定樹等工具,其中PAD圖為自動分析數(shù)據(jù)提供了有力的工具.61. 盒圖也稱為N-S圖,種表達(dá)方式取消了流程線,它強(qiáng)迫程序員以結(jié)構(gòu)化方式思考和解決問題.62. 當(dāng)模塊中包含復(fù)雜的條件組合,只有判定表和判定樹能夠清晰地表達(dá)出各種動作之間的對應(yīng)關(guān)系.63. 模塊的內(nèi)部過程描述就是模塊內(nèi)部的算法設(shè)計(jì),它的表達(dá)形式就是詳細(xì)設(shè)計(jì)語言.

64. 程序的三種基本控制結(jié)構(gòu)的共同特點(diǎn)是只有一個(gè)入口和一個(gè)出口。

65. 調(diào)試的目的是確定錯(cuò)誤的位置和引起錯(cuò)誤的原因,并加以改正。

66. 匯編語言是面向機(jī)器的,可以完成高級語言無法完成的特殊功能,如與外部設(shè)備之間的一些接口工作。

(六)編碼、測試、維護(hù)

67. 以詳細(xì)設(shè)計(jì)說明書為輸入,將該輸入用某種程序設(shè)計(jì)語言翻譯成計(jì)算機(jī)可以理解并最終可運(yùn)行的代碼的過程叫編碼過程。

68. 面向?qū)ο蟮拈_發(fā)方法中,UML是面向?qū)ο蠹夹g(shù)領(lǐng)域內(nèi)占主導(dǎo)地位的標(biāo)準(zhǔn)建模語言。

69. 軟件測試是執(zhí)行程序發(fā)現(xiàn)并排除程序中潛伏的錯(cuò)誤 的過程。

70. 是對軟件規(guī)格說明,軟件設(shè)計(jì)和編碼的最全面也是最后的審查。

71. 軟件測試并不能發(fā)現(xiàn)軟件中所有潛伏的錯(cuò)誤,通過軟件測試沒有發(fā)現(xiàn)錯(cuò)誤,不能說明軟件是正確的。72. 動態(tài)測試方法中根據(jù)測試用例的設(shè)計(jì)方法不同,分為黑盒和白盒兩類.73. 黑盒測試無需考慮模塊內(nèi)部的執(zhí)行過程和程序結(jié)構(gòu),只要了解模塊的功能即可。

74. 自頂向下的漸增式測試初期一般不可以并行進(jìn)行。75. 在現(xiàn)實(shí)項(xiàng)目中,路徑測試和窮舉測試是經(jīng)常難以實(shí)現(xiàn)。

76. 單元測試的測試對象是程序模塊。

77. 計(jì)算機(jī)輔助靜態(tài)分析是軟件測試方法中的靜態(tài)測試方法之一。

78. 基本路徑測試、循環(huán)覆蓋測試、邏輯覆蓋測試屬于白盒測試技術(shù)。

79. 等價(jià)類劃分、邊界值分析測試等屬于黑盒測試技術(shù)。80. 邏輯覆蓋一般包括語句覆蓋、判定覆蓋、條件覆蓋、條件/判定覆蓋、邊覆蓋、路徑覆蓋等。

81. 將軟件組裝成系統(tǒng)的一種測試技術(shù)叫集成測試。82. 軟件測試中根據(jù)測試用例設(shè)計(jì)的方法的不同可分為 黑盒測試和白盒測試兩種,它們都屬于動態(tài)測試。83. 在設(shè)計(jì)測試用例時(shí),邊界值分析是用的最多的一種黑盒測試方法。

84. 在進(jìn)行軟件測試時(shí),首先應(yīng)當(dāng)進(jìn)行單元測試,然后再進(jìn)行集成測試,最后再進(jìn)行有效性測試。

85. 質(zhì)量保證是為了保證產(chǎn)品和服務(wù)充分滿足消費(fèi)者要求的質(zhì)量而進(jìn)行的有計(jì)劃.有組織的活動,質(zhì)量保證是為了使用產(chǎn)品實(shí)現(xiàn)用戶要求的功能。

86. 在結(jié)構(gòu)測試用例設(shè)計(jì)中,有語句覆蓋,條件覆蓋,判定覆蓋(即分支覆蓋),路徑覆蓋,其中路徑覆蓋是最強(qiáng)的覆蓋準(zhǔn)則.

87. 自頂向下結(jié)合的漸增式測試法,在組合模塊時(shí)有兩種組合策略:深度優(yōu)先策略和寬度優(yōu)先策略。

88. 為了提高測試的效率,應(yīng)該選擇發(fā)現(xiàn)錯(cuò)誤可能性大的數(shù)據(jù)作為測試數(shù)據(jù)。

89. 使用白盒測試方法時(shí),確定測試數(shù)據(jù)應(yīng)根據(jù)程序的內(nèi)部邏輯和指定的覆蓋標(biāo)準(zhǔn)。

90. 黑盒測試在設(shè)計(jì)測試用例時(shí),主要需要研究需求規(guī)格說明與概要設(shè)計(jì)說明。

91. 軟件按照設(shè)計(jì)的要求,在規(guī)定時(shí)間和條件下達(dá)到不出故障,持續(xù)運(yùn)行的要求的質(zhì)量特性稱為可靠性。92. 軟件維護(hù)是軟件生命周期的最后一個(gè)階段,軟件生 命周期中所花費(fèi)用最多的階段是軟件維護(hù)。

93. 在軟件維護(hù)的內(nèi)容中,有四種維護(hù):校正性維護(hù),完善性維護(hù),適應(yīng)性維護(hù),預(yù)防性維護(hù),其中占維護(hù)活動工作量比例最高的是完善性維護(hù),最少的一般是預(yù)防性維護(hù)。94. 為改正軟件系統(tǒng)中潛藏的錯(cuò)誤而進(jìn)行的維護(hù)活動稱為糾錯(cuò)性維護(hù)。

95. 根據(jù)用戶在軟件使用過程中提出的建設(shè)性意見而進(jìn)行的維護(hù)活動稱為完善性維護(hù),完善性維護(hù)可以提高或完善軟件的性能。

96. 為適應(yīng)軟件運(yùn)行環(huán)境的變化而修改軟件的活動稱為適應(yīng)性維護(hù)。

97. 為了進(jìn)一步改善軟件系統(tǒng)的可維護(hù)性和可靠性,并為以后的改進(jìn)奠定基礎(chǔ)的軟件維護(hù)稱為預(yù)防性維護(hù)。98. 軟件中因修改軟件而造成的錯(cuò)誤稱為維護(hù)的副作用。

99. 非結(jié)構(gòu)化維護(hù)用于軟件的配置中只有源代碼維護(hù)。100. 維護(hù)中,因誤刪除一個(gè)標(biāo)識符而引起的錯(cuò)誤是編碼副作用。

101. 軟件可維護(hù)性,是指軟件產(chǎn)品交付使用后,在實(shí)現(xiàn)改正潛伏的錯(cuò)誤,改進(jìn)性能等屬性,適應(yīng)環(huán)境變化等方面工作的難易程度。

102. 軟件可靠性是指在給定的時(shí)間間隔內(nèi),程序成功運(yùn) 行的概率。

103. 由于維護(hù)或在維護(hù)過程中其他一些不期望的行為引入的錯(cuò)誤稱為維護(hù)的 副作用。

104. 軟件可修改性,是指允許對軟件系統(tǒng)進(jìn)行修改而不增加其復(fù)雜性,105. 所有軟件維護(hù)申請報(bào)告要按規(guī)定方式提出,該報(bào)告也稱軟件問題報(bào)告。

二、掌握和記憶

(一)概念

1. 耦合性:也稱塊間聯(lián)系,指軟件系統(tǒng)結(jié)構(gòu)中各模塊間相互聯(lián)系緊密程度的一種度量。

2. 軟件生存周期模型:是描述軟件開發(fā)過程中各種活動如何執(zhí)行的模型.3. 數(shù)據(jù)字典(DD):是用來定義數(shù)據(jù)流圖中的各個(gè)成分的具體含義的.它以一種準(zhǔn)確的,無二義性的說明方式為系統(tǒng)的分析,設(shè)計(jì)及維護(hù)提供了有關(guān)元素的一致的定義和詳細(xì)的描述.4. 內(nèi)聚性:是模塊獨(dú)立性的衡量標(biāo)準(zhǔn)之一,它是模塊的功能強(qiáng)度的度量,即一個(gè)模塊內(nèi)部各個(gè)元素彼此結(jié)合的緊密程度的度量.5. 白盒測試:又稱結(jié)構(gòu)測試,是已經(jīng)知道產(chǎn)品內(nèi)部工作過程,檢驗(yàn)產(chǎn)品內(nèi)部動作是否按規(guī)定正常使用的測試方法。

6. 軟件生存周期:就是從提出軟件產(chǎn)品開始,直到該軟件產(chǎn)品被淘汰的全過程,具體包括問題定義、可行性研究、需求分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼與測試、運(yùn)行和維護(hù)。

7. 模塊化:就是將程序劃分為若干個(gè)獨(dú)立模塊的這樣一個(gè)過程,其中每個(gè)模塊完成一個(gè)特定子功能,每個(gè)模塊既是相對獨(dú)立的,又是相互聯(lián)系的,它們共同完成系統(tǒng)指定的各項(xiàng)功能。

8. 樁模塊:用于代替所測模塊調(diào)用的子模塊,樁模塊可以做少量的數(shù)據(jù)操作。

9. 驅(qū)動模塊:用于模擬被測模塊的上級模塊。它接收測試數(shù)據(jù),把這些數(shù)據(jù)傳送給所測模塊,最后再輸出實(shí)際測試結(jié)果。

10. 模塊:模塊是一個(gè)擁有明確定義的輸入、輸出和特性的程序?qū)嶓w。

11. 模塊獨(dú)立性:概括了把軟件劃分為模塊時(shí)要遵守的準(zhǔn)則,也是判斷模塊構(gòu)造是否合理的標(biāo)準(zhǔn),同時(shí)也是模塊化、抽象及信息隱藏概念的直接產(chǎn)物。

12. 軟件工程:即運(yùn)用工程學(xué)的基本原理和方法來組織和管理軟件生產(chǎn)。13. 程序的可移植性:指把一個(gè)軟件(或程序)從一臺計(jì)算機(jī)環(huán)境移植到另一臺計(jì)算機(jī)環(huán)境的容易程度。

14. 模塊的作用范圍:一個(gè)模塊的作用范圍是指受該模塊內(nèi)一個(gè)判定影響的所有模塊的集合。

15. 信息隱藏:信息隱蔽是指在設(shè)計(jì)和確定模塊時(shí),使得一個(gè)模塊內(nèi)包含的信息(過程或數(shù)據(jù)),對于不需要這些信息的其他模塊來說是不能訪問的。

16. 集成測試也稱組裝測試或聯(lián)合測試。是指在單元測試的基礎(chǔ)上,將所有模塊按照設(shè)計(jì)要求組裝成一個(gè)完整的系統(tǒng)進(jìn)行的測試。組裝模塊的方式有兩種:漸增式測試和非漸增式測試。

17. 類:某些對象共同特征(屬性和操作)的表示。18. 對象:是現(xiàn)實(shí)世界中個(gè)體或事物的抽象表示,是其屬性和相關(guān)操作的封裝。

19. 繼承:是現(xiàn)實(shí)世界中遺傳關(guān)系的直接模型,它表示類間的內(nèi)在聯(lián)系以及對屬性和操作的共享。

20. 聚集:現(xiàn)實(shí)世界中部分-整體關(guān)系的模擬。21. 消息:對象與外部世界相互關(guān)聯(lián)的唯一途徑。

(二)原理

1、螺旋模型的適應(yīng)場合:支持需求不明確,特別是大型軟件系統(tǒng)的開發(fā),并支持面向規(guī)格說明,面向過程,面向?qū)ο?等多種軟件開發(fā)方法,是一種具有廣闊前景的模型。

2、軟件開發(fā)風(fēng)險(xiǎn)分析實(shí)際上就是貫穿于軟件工程過程中的一系列風(fēng)險(xiǎn)管理步驟,它包括以下內(nèi)容:

1)風(fēng)險(xiǎn)標(biāo)識; 2)風(fēng)險(xiǎn)估算; 3)風(fēng)險(xiǎn)評價(jià); 4)風(fēng)險(xiǎn)駕馭和監(jiān)控。

3、需求分析的任務(wù)是確定待開發(fā)的軟件系統(tǒng)“做什么”.具體任務(wù)包括確定軟件系統(tǒng)的功能需求,性能需求和運(yùn)行環(huán)境約束,編制軟件需求規(guī)格說明書,軟件系統(tǒng)的驗(yàn)收測試準(zhǔn)則和初步的用戶手冊。

4、快速原型技術(shù)的基本思想是:在軟件開發(fā)的早期,快速開發(fā)一個(gè)目標(biāo)軟件系統(tǒng)的原型,讓用戶對其進(jìn)行評價(jià)并提出修改意見,然后開發(fā)人員根據(jù)用戶的意見對原型進(jìn)行改進(jìn)。

5、原型法模型一般適應(yīng)的場合:它適合于那些不能預(yù)先確切定義需求的軟件系統(tǒng)的開發(fā),更適合于那些項(xiàng)目組成員(包括分析員,設(shè)計(jì)員,程序員和用戶)不能很好交流或通信有困難的情況。

6、軟件復(fù)雜性度量的主要參數(shù)極其含義:1)規(guī)模:總共的指令數(shù)或源程序行數(shù);2)難度:通常由程序中出現(xiàn)的操作數(shù)的數(shù)目所決定的量來表示;3)結(jié)構(gòu):通常用與程序結(jié)構(gòu)有 關(guān)的度量來表示;4)智能度:即算法的難易程序。

7、非漸增式測試與漸增式測試的區(qū)別:

非漸增式測試:分別測試每個(gè)模塊,再放在一起結(jié)合成所要的程序;

漸增式測試:將下一個(gè)要測試的模塊同已測試好的模塊放在一起測試,類推結(jié)合成所要的程序;

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

? 漸增式測試可以較早發(fā)現(xiàn)模塊間的接口錯(cuò)誤 ? 非漸增式測試最后才組裝,因此錯(cuò)誤發(fā)現(xiàn)得晚。? 非漸增式測試中發(fā)現(xiàn)錯(cuò)誤后難以診斷定位 ? 漸增式測試中,出現(xiàn)的錯(cuò)誤往往跟最新加入的模塊有關(guān)。

? 漸增式測試在不斷集成的過程中使模塊不斷在新的條件下受到新的檢測,測試更徹底。? 漸增式測試較非漸增式測試費(fèi)時(shí)。? 非漸增式測試可以同時(shí)并行測試所有模塊,能充分利用人力。

8、軟件工程目標(biāo):是研制、開發(fā)與生產(chǎn)出具有良好軟件質(zhì)量和費(fèi)用合算的產(chǎn)品。軟件工程的內(nèi)容是:1)采用工程化方法和途徑來開發(fā)與維護(hù)軟件;2)應(yīng)該開發(fā)和使用更好的軟件工具;3)采取必要的管理措施。

9、模塊的內(nèi)聚性包括的一般類型:(1)偶然內(nèi)聚(2)邏輯內(nèi)聚(3)時(shí)間內(nèi)聚(4)通信內(nèi)聚(5)順序內(nèi)聚(6)功能內(nèi)聚

10、軟件測試的幾個(gè)主要步驟:

1)模塊測試 2)子系統(tǒng)測試 3)系統(tǒng)測試 4)驗(yàn)收測試 5)平行運(yùn)行

11、軟件測試和調(diào)試的目的的區(qū)別:測試的目的是判斷和發(fā)現(xiàn)軟件是否有錯(cuò)誤,調(diào)試的目的是定位軟件錯(cuò)誤并糾正錯(cuò)誤。

12、軟件的可行性研究的目的:就是用最小的代價(jià)在盡可能短的時(shí)間內(nèi)確定該軟件項(xiàng)目是否能夠開發(fā),是否值得去開發(fā)。其實(shí)質(zhì)是要進(jìn)行一次簡化、壓縮了的需求分析、設(shè)計(jì)過程,要在較高層次上以較抽象的方式進(jìn)行需求分析和設(shè)計(jì)過程。

13、文檔在軟件工程中的作用:(1)提高軟件開發(fā)過程的能見度;(2)提高開發(fā)效率;

(3)作為開發(fā)人員階段工作成果和結(jié)束標(biāo)志;(4)記錄開發(fā)過程的有關(guān)信息便于使用與維護(hù);(5)提供軟件運(yùn)行、維護(hù)和培訓(xùn)有關(guān)資料;(6)便于用戶了解軟件功能、性能。

(三)運(yùn)用

1、某單位工卡包含信息如下:

該卡包括工號、英文名、年齡、性別、部門,工號從001至200,英文名是任意長度為從3至20的字母,年齡范圍1至200,性別男或女,部門只能是“技術(shù)部”、“市場部”、“財(cái)務(wù)部”、“行政部”中的一個(gè)。

在數(shù)據(jù)字典中,工卡的數(shù)據(jù)條目定義如下:

工卡 = 工號 + 英文名 + 年齡 + 性別 + 部門 工號 = 001..200 英文名 = 3{字母}20 年齡 = 1..200 性別 = [男|女] 部門 = [技術(shù)部|市場部|財(cái)務(wù)部|行政部] 解析:先明確要說明數(shù)據(jù)條目是誰,由哪些分量組成,這些分量是“+”的關(guān)系,還是“或”的關(guān)系,如本例的第一條是“+”的關(guān)系,然后分析它的組成是什么,再對其各個(gè)組成部分依次說明,如本例的第二至六條,要一條一條地寫出來,不要都寫到一條中。

2、能根據(jù)文字描述畫出數(shù)據(jù)流圖。

3、掌握變換型和事務(wù)性數(shù)據(jù)流圖轉(zhuǎn)化為系統(tǒng)結(jié)構(gòu)圖的原理,能根據(jù)給定的數(shù)據(jù)流圖畫出系統(tǒng)結(jié)構(gòu)圖。

第四篇:軟件工程復(fù)習(xí)資料

選擇題:

1、軟件是一種(B)產(chǎn)品

A、有形

B、邏輯

C、物質(zhì)

D、消耗

2、軟件的主要功能和結(jié)構(gòu)是在(A)階段覺決定的

A、分析設(shè)計(jì)

B、編程

C、測試

D、維護(hù)

3、軟件工程學(xué)的目的應(yīng)該是解決軟件生成的(D)問題

A、提高軟件開發(fā)效率

B、使軟件生產(chǎn)工程化

C、消除軟件的生產(chǎn)危機(jī) d、加強(qiáng)軟件的質(zhì)量保證

4、研究開發(fā)所需要的成本和資源是屬于可行性研究中的(B)研究的一方面

A、技術(shù)可行性

B、經(jīng)濟(jì)可行性

c、社會可行性

d、法律可行性

5、經(jīng)濟(jì)可行性研究的范圍包括(C)

A、資源有效性

b、管理制度

c、效益分析

d、開發(fā)風(fēng)險(xiǎn)

6、系統(tǒng)流程圖是描述(D)的工具

A、邏輯系統(tǒng)

b、程序系統(tǒng)

c、體系結(jié)構(gòu)

d、物理系統(tǒng)

7、可行性研究的目的是用最小的代價(jià)在盡可能短的時(shí)間內(nèi)確定問題的(A)

A、能否可解

b、工程進(jìn)度

c、開發(fā)計(jì)劃

d、人員配置

8、需求分析階段的任務(wù)是確定(D)

A、軟件開發(fā)方法

b、軟件開發(fā)工具

c、軟件開發(fā)費(fèi)

d、軟件系統(tǒng)的功能

9、系統(tǒng)流程圖用于可行性分析中(A)的描述

A、當(dāng)前運(yùn)行系統(tǒng)

b、當(dāng)前邏輯模型

c、目標(biāo)系統(tǒng)

d、新系統(tǒng)

10、數(shù)據(jù)字典是用來定義(D)中的各個(gè)成分的具體含義的

A、流程圖

b、功能結(jié)構(gòu)圖

c、系統(tǒng)結(jié)構(gòu)圖

d、數(shù)據(jù)流圖

11、在數(shù)據(jù)流圖中,符號方框表示(B)

A、變換/加工

b、外部實(shí)體

c、數(shù)據(jù)流

d、數(shù)據(jù)存儲

12、數(shù)據(jù)字典是對數(shù)據(jù)定義信息的集合,他所定義的對象都包含于(A)

A、數(shù)據(jù)流圖

b、程序框圖

c、軟件結(jié)構(gòu)

d、方框圖

13、數(shù)據(jù)流圖是表示軟件模型的一種圖示方法,畫數(shù)據(jù)流圖應(yīng)遵循的原則是(B)

A、自底向上、分層繪制、逐步求精

B、自頂向下、分層繪制、逐步求精

C、自定向下、逐步求精

D、自頂向上、分層繪制

14、劃分模塊時(shí),一個(gè)模塊的(A)

A、作用范圍應(yīng)在其控制范圍之內(nèi)

b、控制范圍應(yīng)在其作用范圍內(nèi)

C、作用范圍與控制范圍互不包含

d、作用范圍矛控制范圍不受任何限制

15、結(jié)構(gòu)化設(shè)計(jì)方法在軟件開發(fā)中,用于(B)

A、測試用例設(shè)計(jì)

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

c、程序設(shè)計(jì)

d、詳細(xì)設(shè)計(jì)

16、在軟件結(jié)構(gòu)圖中,模塊框之間若有直線連接,表示他們之間存在著(A)關(guān)系

A、調(diào)用

b、組成 c、連接

d、順序執(zhí)行

17、在進(jìn)行軟件結(jié)構(gòu)設(shè)計(jì)時(shí)應(yīng)遵循的最主要的原理是(C)

A、抽象

b、模塊化

c、模塊獨(dú)立

d、信息隱藏

18、設(shè)計(jì)軟件結(jié)構(gòu)一般不確定(C)

A、模塊功能

b、模塊接口

c、模塊內(nèi)的局部數(shù)據(jù)

d、模塊間的調(diào)用關(guān)系

19、在軟件的結(jié)構(gòu)化設(shè)計(jì)方法中,一般分為概要設(shè)計(jì)和詳細(xì)設(shè)計(jì)兩階段,其中詳細(xì)設(shè)計(jì)主要要建立(D)

A、軟件結(jié)構(gòu)

b、軟件過程

c、軟件模型

d、軟件模塊 20、軟件詳細(xì)設(shè)計(jì)階段的任務(wù)是(A)

A、算法設(shè)計(jì)

b、功能設(shè)計(jì)

c、調(diào)用關(guān)系設(shè)計(jì)

d、輸入/輸出設(shè)計(jì)

21、軟件詳細(xì)設(shè)計(jì)階段主要采用的工具是(B)

A、DFD

B、PAD

C、DD

D、SA

22、軟件詳細(xì)設(shè)計(jì)階段采用自左向右的二維圖形結(jié)構(gòu)描述算法的是(C)

A、IPO

B、JSP

C、PAD

D、JSD

23、Jackson方法以(B)為中心

A、控制

b、數(shù)據(jù)結(jié)構(gòu)

c、活動事件

d、數(shù)據(jù)流

24、詳細(xì)設(shè)計(jì)與概要設(shè)計(jì)銜接的圖形工具是(D)

A、DFD圖

b、程序圖

c、PAD圖

d、SC圖

25、在確定屬性時(shí),所有(B)事候選屬性

A、動詞

b、名詞

c、修飾性名詞詞組

d、詞組

26、動態(tài)模型的構(gòu)成不包括(C)

A、事件

b、關(guān)聯(lián)

c、操作

d、狀態(tài)

27、對象模型的描述工具是(C)

A、狀態(tài)圖

b、數(shù)據(jù)流圖

c、對象圖

d、結(jié)構(gòu)圖

28、通過執(zhí)行對象的操作改變對象的屬性,但他必須通過(B)來執(zhí)行

A、接口

b、消息

c、信息

d、操作

29、描述對象的行為,反映對象的狀態(tài)與事件的關(guān)系是(A)

A、狀態(tài)圖

b、對象圖

c、流程圖

d、結(jié)構(gòu)圖 30、軟件測試可能發(fā)展軟件中的(),但不能證明軟件(B)

A、所有錯(cuò)誤、沒有錯(cuò)誤

b、錯(cuò)誤、沒有錯(cuò)誤

C、邏輯錯(cuò)誤、沒有錯(cuò)誤

d、設(shè)計(jì)錯(cuò)誤,沒有錯(cuò)誤

31、發(fā)現(xiàn)錯(cuò)誤能力最弱的是(A)

A、語句覆蓋

b、判定覆蓋

c、條件覆蓋

d、路徑覆蓋

32、從已經(jīng)發(fā)現(xiàn)故障的存在到找到準(zhǔn)確的故障位置并確定故障的性質(zhì),這一過程稱為(C)

A、邏輯檢測

b、故障排除

c、調(diào)試

d、測試

33、超出軟件工程范圍的測試是(D)

A、單元測試

b、集成測試

c、確定測試

d、系統(tǒng)測試

34、下列文檔與維護(hù)人員有關(guān)的有(C)

A、軟件需求說明書

b、項(xiàng)目開發(fā)計(jì)劃

c、概要設(shè)計(jì)說明書

d、操作手冊

35、在軟件生存周期中,工作量所占比例最大的階段是(D)階段

A、需求分析

b、設(shè)計(jì)

c、測試

d、維護(hù)

36、軟件維護(hù)困難的主要原因是(C)

A、費(fèi)用低

b、人員少

c、開發(fā)方法的缺陷

d、維護(hù)難

37、維護(hù)階段的文檔是(C)

A、軟件需求說明

b、操作手冊

c、軟件問題報(bào)告

d、測試分析報(bào)告

填空題:

1、在軟件的生存周期開發(fā)階段要經(jīng)過概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、軟件設(shè)計(jì)三個(gè)步驟。

2、軟件工程師指導(dǎo)軟件開發(fā)和維護(hù)的一門工程學(xué)科,采用工程的概念、原理、技術(shù)和方法來開發(fā)與維護(hù)軟件,把經(jīng)過時(shí)間考驗(yàn)而證明正確的管理技術(shù)和當(dāng)前能夠得到的最好的技術(shù)方法結(jié)合起來,就是是軟件工程。

3、軟件危機(jī)是在軟件發(fā)展的第二階段末期。

4、軟件生存期可分為三個(gè)大階段:軟件開發(fā)、使用、維護(hù)。

5、技術(shù)可行性研究包括風(fēng)險(xiǎn)分析、資源分析、技術(shù)分析

6、可行性研究實(shí)質(zhì)上進(jìn)行一次簡化、壓縮了的需求分析和設(shè)計(jì)。

7、需求分析的步驟有:調(diào)查研究、分析與綜合、書寫文檔、需求分析評審。

8、瀑布模型是以文檔為驅(qū)動、適合于需求很明確的軟件項(xiàng)目的模型。

9、模塊之間聯(lián)系越緊密,其耦合性就越強(qiáng),模塊的獨(dú)立性就越差。

10、將軟件系統(tǒng)劃分模塊時(shí),要盡量做到高內(nèi)聚低耦合,提高模塊的獨(dú)立性。

11、數(shù)據(jù)流圖一般可分為交換型和事物型兩類。事物型的DFD是一個(gè)順序結(jié)構(gòu)。

12、軟件結(jié)構(gòu)從形態(tài)上總的考慮是:頂層扇出數(shù)較高一些,中間層扇出數(shù)較少一些,底層扇入數(shù)較少一些。

13、一個(gè)模塊的作用范圍是指模塊內(nèi)一個(gè)判定影響的所有模塊的集合。

14、軟件的詳細(xì)設(shè)計(jì)可以用來采用圖形、表格、語言三種形式描述工具表示模塊的處理過程。

15、在詳細(xì)設(shè)計(jì)階段的文檔是詳細(xì)設(shè)計(jì)說明書,他是程序運(yùn)行過程的描述。

16、程序流程圖又稱程序框圖,他是軟件開發(fā)者最熟悉的一種算法表達(dá)工具。

17、對象之間通過接口互相聯(lián)系,以模擬現(xiàn)實(shí)世界中的不同事件彼此之間的聯(lián)系。

18、類的實(shí)例化是定義類的對象。

19、子類只繼承一個(gè)父類的屬性和操作,稱為單重繼承。20、類具有操作,它是對象的行為的抽象。

21、在用例圖中用例之間也存在一定的聯(lián)系,用例之間通常有執(zhí)行者、用例和用例之間三種關(guān)系。

22、在UML用例圖中,橢圓表示用例,方框表示系統(tǒng),小人狀圖案表示執(zhí)行者

23、軟件測試過程按測試的先后次序可先分為四個(gè)步驟進(jìn)行:單元測試、集成測試、確定測試和系統(tǒng)測試,最后進(jìn)行驗(yàn)收測試。

24、軟件測試的種類大致可以分為人工測試和基于計(jì)算機(jī)的測試。基于計(jì)算機(jī)的測試還有兩種方法,分別是黑盒測試和白盒測試。

25、軟件測試是為了發(fā)現(xiàn)錯(cuò)誤執(zhí)行程序的過程。

26、所有軟件維護(hù)申請報(bào)告要按規(guī)定方式提出,該報(bào)告也稱軟件問題報(bào)告。

27、維護(hù)階段是軟件生存周期中時(shí)期最長的階段,花費(fèi)精力和費(fèi)用最多的階段

名詞解釋:

軟件工程:指用科學(xué)的原理和理論定義,開發(fā)、維護(hù)軟件的學(xué)科。

軟件危機(jī):指計(jì)算機(jī)軟件的開發(fā)和維護(hù)過程中所遇到的一系列嚴(yán)重問題

瀑布模型:是將軟件生存各個(gè)活動規(guī)定為依線性順序聯(lián)接的若干階段的模型。它包括可行性分析、項(xiàng)目開發(fā)計(jì)劃、需求分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼、測試和維護(hù)。它規(guī)定了由前至后,相互銜接的固定次序,如同瀑布流水,逐級下落。

可行性研究:指對項(xiàng)目有關(guān)的運(yùn)行、經(jīng)濟(jì)、技術(shù)、法律和開發(fā)方案可行性等各方面研究可行性。

需求分析:需求分析是指開發(fā)人員要準(zhǔn)確理解用戶的需求,進(jìn)行細(xì)致的調(diào)查分析,將用戶非形式的需求陳述轉(zhuǎn)化成完整的需求定義,再由需求定義轉(zhuǎn)換到相應(yīng)的形式功能規(guī)約(需求規(guī)格說明)的過程。

數(shù)據(jù)流圖:一種圖形化技術(shù),它描繪信息流和數(shù)據(jù)從輸入移動到輸出過程中所經(jīng)受的變

耦合性: 耦合性也稱塊間關(guān)系,指軟件系統(tǒng)結(jié)構(gòu)中各模塊間相互聯(lián)系緊密程度的一種度量

簡答題:

10、軟件工程有哪些原則?

答:

1、分解

2、抽象和信息隱蔽

3、一致性

4、確定性

5、完備性

6、可嚴(yán)驗(yàn)證性

11、簡述軟件工程目標(biāo)和面臨的主要問題?

答:軟件工程是一門工程性的學(xué)科,其目標(biāo)主要是:付出較低的開發(fā)成本;達(dá)到要求的軟件功能;取得較好的軟件性能;開發(fā)的軟件易于移植;需要較低的維護(hù)費(fèi)用;能按時(shí)完成開發(fā)任務(wù),及時(shí)交付使用;開發(fā)的軟件可靠性高。

面臨的主要問題是:軟件費(fèi)用 軟件可靠性 軟件維護(hù) 軟件生產(chǎn)率 軟件重用。

第五篇:軟件工程復(fù)習(xí)資料(推薦)

1.軟件工程是什么?

軟件工程是一項(xiàng)解決問題的工程活動,通過分析對問題進(jìn)行研究, 將問題分解成可以理解并能夠處理的若干小部分。

軟件工程是一項(xiàng)建模活動,通過抽象找到事物的重要特征而忽略非 本質(zhì)的細(xì)節(jié),從不同側(cè)面建立系統(tǒng)模型,有效地簡化和處理復(fù)雜性。

軟件工程是一項(xiàng)受軟件工程原理指導(dǎo)的活動,軟件工程師要捕捉和 理解一個(gè)系統(tǒng)的基本原理模型,并根據(jù)評價(jià)標(biāo)準(zhǔn)提出合理開發(fā)決策。

2.軟件危機(jī)的概念

落后的軟件生產(chǎn)方式無法滿足迅速增長的計(jì)算機(jī)軟件需求,從而導(dǎo)致軟件開發(fā)與維護(hù)過程中出現(xiàn)一系列嚴(yán)重問題的現(xiàn)象。軟件危機(jī)泛指在計(jì)算機(jī)軟件的開發(fā)和維護(hù)過程中所遇到的一系列嚴(yán)重問題。3.軟件危機(jī)的表現(xiàn)

(1)軟件開發(fā)費(fèi)用和進(jìn)度失控。(2)軟件的可靠性差。

(3)生產(chǎn)出來的軟件難以維護(hù)。

(4)用戶對“已完成”的系統(tǒng)不滿意現(xiàn)象經(jīng)常發(fā)生。

(5)軟件產(chǎn)品質(zhì)量難以保證。

(6)軟件文檔不完備,并且存在文檔內(nèi)容與軟件產(chǎn)品不符情況。4.軟件危機(jī)的原因

軟件本身的特點(diǎn)(如:軟件規(guī)模龐大)導(dǎo)致開發(fā)和維護(hù)困難

軟件開發(fā)的方法不正確

開發(fā)人員與管理人員重視開發(fā)而輕視問題的定義和軟件維護(hù) 軟件開發(fā)技術(shù)落后

5.軟件管理技術(shù)差從軟件開發(fā)危機(jī)的種種表現(xiàn)和軟件開發(fā)作為邏輯產(chǎn)品的特殊性可以發(fā)現(xiàn)軟件開發(fā)危機(jī)的原因:(1)用戶需求不明確

(2)缺乏正確的理論指導(dǎo)(3)軟件開發(fā)規(guī)模越來越大(4)軟件開發(fā)復(fù)雜度越來越高

6.解決軟件危機(jī)的途徑:軟件工程學(xué) 采用工程化方法和工程途徑來研制與維護(hù)軟件

采用先進(jìn)的技術(shù)、方法與工具來開發(fā)與設(shè)計(jì)軟件

采用必要的組織管理措施 7.軟件生存周期

從一個(gè)軟件開始立項(xiàng)起,到廢棄不用止 一個(gè)周期被劃分為計(jì)劃、開發(fā)、運(yùn)行3個(gè)時(shí)期

計(jì)劃時(shí)期:問題定義——可行性分析 開發(fā)時(shí)期:需求分析——軟件分析——軟件設(shè)計(jì)——編碼(測試)——測試 運(yùn)行時(shí)期:軟件維護(hù)8.軟件可行性研究的步驟

(1)對當(dāng)前系統(tǒng)進(jìn)行調(diào)查和研究(2)導(dǎo)出新系統(tǒng)的解決方案(3)提出推薦的方案

(4)編寫可行性論證報(bào)告(系統(tǒng)概述、可

行性分析、結(jié)論意見)9.面向?qū)ο箝_發(fā)的有點(diǎn)

(1)提高軟件系統(tǒng)的可復(fù)用性

可復(fù)用性是面向?qū)ο箝_發(fā)的核心思路。軟件復(fù)用的途徑主要包括:創(chuàng)建類的實(shí)例對象;從已有類派生新的子類。派生類既可以繼承其父類的屬性、方法、也可以添加新的屬性和方法。

(2)提高軟件系統(tǒng)的可拓展性

開發(fā)人員可以根據(jù)對用戶需求的理解,不斷地修改及完善有關(guān)類的描述。既可以利用繼承對新的類添加屬性和方法;或者在征求用戶意見后加入新的累以及類的方法與屬性等。

(3)提高軟件系統(tǒng)的可維護(hù)性

一個(gè)系統(tǒng)是由對象組成的。當(dāng)系統(tǒng)的功能需求發(fā)生變化時(shí),通常僅需修改與之相關(guān)的對象或者類。10.軟件測試目的測試是一個(gè)為了發(fā)現(xiàn)錯(cuò)誤而執(zhí)行程序的過程 一個(gè)好的測試用例是指很可能找到迄今為至尚未發(fā)現(xiàn)的錯(cuò)誤的測試用例

一個(gè)成功的測試是指揭示了迄今為至尚未發(fā)現(xiàn)的錯(cuò)誤的測試 11.測試方法

黑盒測試:已經(jīng)知道了軟件產(chǎn)品應(yīng)該具有的功能,通過測試來檢驗(yàn)是否每個(gè)功能都能正常使用。這種測試方法又稱功能測試。白盒測試:知道軟件產(chǎn)品內(nèi)部的工作過程,通過測試來檢驗(yàn)產(chǎn)品內(nèi)部動作是否按照規(guī)格說明書的規(guī)定正常進(jìn)行。這種測試方法又稱結(jié)構(gòu)測試。

12.軟件維護(hù)的定義

什么是軟件維護(hù)

是指軟件系統(tǒng)交付使用以后,為了改正錯(cuò)誤或滿足新的需要而修改軟件的過程軟件維護(hù)的種類:

糾錯(cuò)性維護(hù):為了改正軟件系統(tǒng)中的錯(cuò)誤,使軟件能夠滿足預(yù)期的正常運(yùn)行狀態(tài)的要求而進(jìn)行的維護(hù)

適應(yīng)性維護(hù):為了使軟件適應(yīng)內(nèi)部或外部環(huán)境變化,而去修改軟件的過程

改善性維護(hù):滿足使用過程中用戶提出增加新功能或修改已有功能的建議維護(hù) 預(yù)防性維護(hù):為了提高軟件的可維護(hù)性、可靠性等,為以后進(jìn)一步改進(jìn)軟件打下良好基礎(chǔ)而修改軟件的活動

下載軟件工程復(fù)習(xí)資料-2016-3-25分析word格式文檔
下載軟件工程復(fù)習(xí)資料-2016-3-25分析.doc
將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
點(diǎn)此處下載文檔

文檔為doc格式


聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),未作人工編輯處理,也不承擔(dān)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)有涉嫌版權(quán)的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進(jìn)行舉報(bào),并提供相關(guān)證據(jù),工作人員會在5個(gè)工作日內(nèi)聯(lián)系你,一經(jīng)查實(shí),本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

相關(guān)范文推薦

    軟件工程--需求分析報(bào)告范文合集

    文檔名稱:需求分析 項(xiàng)目名稱:學(xué)生智能管理系統(tǒng) 一、引言: 1、編寫目的: 對龐大的信息隨著學(xué)校的規(guī)模不斷擴(kuò)大,學(xué)生數(shù)量急劇增加,有關(guān)學(xué)生的各種信息也成倍增長。有必要開發(fā)學(xué)生信......

    財(cái)務(wù)報(bào)表分析復(fù)習(xí)資料

    簡答題: 1. 財(cái)務(wù)報(bào)表分析原則:目的明確原則;實(shí)事求是原則;相關(guān)性原則;全面分析原則;動態(tài)分析原則;定量分析與定性分析相結(jié)合原則;成本效益原則;謹(jǐn)慎原則。 2. 流動比率局限性:①流動比......

    軟件工程專業(yè)介紹及前景分析

    軟件工程專業(yè)介紹及前景分析【代言小貼士】1.資料顯示,在我國IT行業(yè)十大人氣職位中,軟件工程師位列第一。 2.軟件工程專業(yè)對數(shù)學(xué)和英語要求較高,這兩科在高考錄取時(shí)會作為比較......

    2014年軟件工程就業(yè)前景分析

    2014年軟件工程就業(yè)前景分析 隨著信息時(shí)代的來臨,可視電話,手機(jī)視頻等等一些業(yè)務(wù)也豐富起來了,手機(jī)普及率為66%,越來越多的行業(yè)已經(jīng)與互聯(lián)網(wǎng)、軟件工程有著密不可分的牽絆。當(dāng)......

    軟件工程教學(xué) 第四章 需求分析(推薦)

    軟件需求 需求工程 分析建模 需求管理 本章小結(jié) 學(xué)習(xí)目標(biāo) 本章介紹需求分析的意義概念和方法了解結(jié)構(gòu)化分析方法和需求管理的關(guān)鍵活動要求學(xué)會運(yùn)用實(shí)體關(guān)系圖數(shù)據(jù)流圖和狀態(tài)......

    軟件工程

    1.軟件危機(jī)的概念 系統(tǒng)的數(shù)據(jù)要求,功能需求,性能需求,顯示出程序的輪廓。 軟件危機(jī)是指在計(jì)算機(jī)軟件開發(fā)、使用與可靠性需求,可用性需求,出錯(cuò)處理需求,混合方式 維護(hù)過程中遇到的......

    《軟件工程》

    《軟件工程》課程分析 本課程是軟件技術(shù)專業(yè)學(xué)生必修的一門專業(yè)必修課。根據(jù)培養(yǎng)軟件開發(fā)人員的需要,本課程的任務(wù)是使學(xué)生通過本課程的學(xué)習(xí),了解軟件項(xiàng)目開發(fā)和維護(hù)的一般過......

    軟件工程

    軟件工程 1. 談?wù)勀銓浖ぞ叩睦斫猓阌眠^什么軟件工具 軟件工具是指為支持計(jì)算機(jī)軟件的開發(fā)、維護(hù)、模擬、移植或管理而研制的程序系統(tǒng)。它是為專門目的而開發(fā)的,在軟件工......

主站蜘蛛池模板: 国产无遮挡又黄又爽免费网站| 国产免费极品av吧在线观看| 国产无遮挡A片又黄又爽小直播| 国产精品久久久久9999无码| 久久精品国产精品国产精品污| 久久99久久99精品免观看| 亚洲精品久久久久久久久久吃药| 久久人人爽人人爽人人片ⅴ| 亚洲性人人天天夜夜摸18禁止| 琪琪电影午夜理论片八戒八戒| 亚洲亚洲中文字幕无线码| 日韩国产成人无码av毛片蜜柚| 国产精品美女久久久久久丫| 无码精品黑人一区二区三区| 97国产揄拍国产精品人妻| 午夜无码无遮挡在线视频| 亚洲av无码一区二区三区性色| 国产人成视频在线观看| 精品亚洲一区二区三区四区五区| 99久久国产露脸精品竹菊传媒| 欧美孕妇xxxx做受欧美88| 国产综合有码无码中文字幕| 亚洲色在线无码国产精品| 隔壁人妻被水电工征服| 亚洲欧美日韩成人高清在线一区| 精品无码一区二区三区爱欲九九| 99精品久久99久久久久胖女人| 无码人妻久久一区二区三区app| 日韩人妻ol丝袜av一二区| 国产成人精品一区二区不卡| 色欲av亚洲一区无码少妇| 色欲天天婬色婬香综合网| 国产精品免费_区二区三区观看| 在线观看免费人成视频色9| 无码国产69精品久久久久同性| 无码中文av有码中文a| 人人妻人人添人人爽欧美一区| 性欧美老肥妇喷水| 无码无遮挡又大又爽又黄的视频| 国产精品对白刺激久久久| 欧洲美女黑人粗性暴交|