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

軟件工程練習(xí)題

時(shí)間:2019-05-14 04:20:01下載本文作者:會(huì)員上傳
簡介:寫寫幫文庫小編為你整理了多篇相關(guān)的《軟件工程練習(xí)題》,但愿對你工作學(xué)習(xí)有幫助,當(dāng)然你在寫寫幫文庫還可以找到更多《軟件工程練習(xí)題》。

第一篇:軟件工程練習(xí)題

練習(xí)題

一、判斷題

1.螺旋模型是在瀑布模型和增量模型的基礎(chǔ)上增加了風(fēng)險(xiǎn)分析活動(dòng)。(錯(cuò))2.軟件的模塊數(shù)越少,其軟件成本越低。(錯(cuò))3.JAVA語言編譯器是一個(gè)CASE工具。(對)。

4.發(fā)現(xiàn)錯(cuò)誤多的程序模塊,一般殘留在模塊中的錯(cuò)誤也多。(對)

5..軟件是指用程序設(shè)計(jì)語言(如PASCAL ,C,VISUAL BASIC 等)編寫的程序,軟件開發(fā)實(shí)際上就是編寫程序代碼。(錯(cuò))

6.軟件模塊之間的耦合性越弱越好。(對)7.數(shù)據(jù)庫設(shè)計(jì)說明書是一個(gè)軟件配置項(xiàng)(對)8.軟件測試就是程序測試。(錯(cuò))

9.PDL的語法是開放式的,其內(nèi)層語法是確定的,而外層語法則不確定。(錯(cuò))10.根據(jù)編程規(guī)范,在對方法命名時(shí), 方法名稱的第一個(gè)單詞常常采用一個(gè)名詞。(錯(cuò))11.在面向?qū)ο蟮能浖_發(fā)方法中,每個(gè)類都存在其相應(yīng)的對象,類是對象的實(shí)例,對象是生成類的模板。(錯(cuò))

12.可行性研究的目的不是解決問題,而是確定問題是否值得去解決。13.過程描述語言可以用于描述軟件的系統(tǒng)結(jié)構(gòu)。(錯(cuò))

14.如果通過軟件測試沒有發(fā)現(xiàn)錯(cuò)誤,則說明軟件是正確的。(錯(cuò))

15.快速原型模型可以有效地適應(yīng)用戶需求的動(dòng)態(tài)變化。(對)

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

17.集成測試主要由用戶來完成。(錯(cuò))

18.隨著軟件技術(shù)的發(fā)展,人們逐漸認(rèn)識到編碼不僅要強(qiáng)調(diào)效率還要強(qiáng)調(diào)清晰。(對)19.確認(rèn)測試計(jì)劃應(yīng)該在可行性研究階段制定(錯(cuò))

20.白盒測試無需考慮模塊內(nèi)部的執(zhí)行過程和程序結(jié)構(gòu),只要了解模塊的功能即可。(錯(cuò))

21.軟件概要設(shè)計(jì)包括軟件系統(tǒng)結(jié)構(gòu)設(shè)計(jì)以及數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)庫設(shè)計(jì)。(對)

22.一個(gè)好的測試用例在于能發(fā)現(xiàn)至今未發(fā)現(xiàn)的錯(cuò)誤。(對)

23.在可行性研究中最難決斷和最關(guān)鍵的問題是經(jīng)濟(jì)可行性。(╳)24.耦合是指一個(gè)模塊內(nèi)各個(gè)元素彼此結(jié)合的緊密程度。(╳)25.一個(gè)好的測試用例在于能發(fā)現(xiàn)至今未發(fā)現(xiàn)的錯(cuò)誤。(√)

26.一筆交易、一個(gè)動(dòng)作、甚至操作人員按一個(gè)按鈕都可以看做是一次事物。(√)27.集成測試時(shí),一般希望較早地發(fā)現(xiàn)系統(tǒng)功能的錯(cuò)誤,所以經(jīng)常采用自底向上的漸增式測試。(錯(cuò))28.程序要能直截了當(dāng)?shù)卣f明程序員的用意。(對)

29.編程作業(yè)中,代碼的檢查是對程序進(jìn)行動(dòng)態(tài)分析。(錯(cuò))30.概要設(shè)計(jì)階段完成的主要文檔是概要設(shè)計(jì)說明書。(√)

31.發(fā)現(xiàn)錯(cuò)誤多的程序模塊,一般殘留在模塊中的錯(cuò)誤也多。(對)32.在做程序的單元測試時(shí),一般樁模塊比驅(qū)動(dòng)模塊容易編寫。(錯(cuò))

33.過大的模塊可能是由于分解不充分造成的,即使降低模塊獨(dú)立性也必須繼續(xù)分解。(╳)34.代碼版本控制的優(yōu)點(diǎn)之一是能獲得版本控制工具中保存的任何版本。(√)35.在設(shè)計(jì)模塊時(shí),其寬度和深度要適當(dāng)。(對)

36.37.38.39.40.程序設(shè)計(jì)語言中應(yīng)絕對禁止使用GOTO語句。(╳)類是關(guān)于對象性質(zhì)的描述,由方法和數(shù)據(jù)組成。(√)

隨著軟件技術(shù)的發(fā)展,人們逐漸認(rèn)識到編碼不僅要強(qiáng)調(diào)效率還要強(qiáng)調(diào)清晰。(√)為保證程序的安全,必須做到程序中沒有任何錯(cuò)誤存在,即容錯(cuò)。(╳)如果把軟件開發(fā)所需的資源畫成一個(gè)金字塔,人是最基本的資源。(√)

41.功能性注釋嵌在源程序體中,用以解釋其后的語句或程序段是在怎么做。(錯(cuò))42.模塊耦合的強(qiáng)弱取決于模塊間接口的復(fù)雜程度。(對)

二、名字解釋: 1.軟件: 2.軟件危機(jī): 3.軟件工程: 4.軟件生命周期: 5.軟件過程: 6.瀑布模型: 7.快速原型模型: 8.增量模型: 9.螺旋模型: 10.抽象: 11.模塊化: 12.逐步求精: 13.耦合: 14.內(nèi)聚: 15.模塊獨(dú)立: 16.信息隱蔽: 17.結(jié)構(gòu)程序設(shè)計(jì): 18.測試用例: 19.單元測試: 20.白盒測試: 21.黑盒測試: 22.對象: 23.等價(jià)劃分:

三、選擇題

1.軟件工程的概念是哪年提出的()。A.1988 B.1968 C.1948 D.1928 2.瀑布模型的關(guān)鍵不足在于()。

A.過于簡單 B.各個(gè)階段需要進(jìn)行評審 C.過于靈活 D.不能適應(yīng)需求的動(dòng)態(tài)變更 3.以下哪一項(xiàng)不是軟件危機(jī)的表現(xiàn)形式()。

A.開發(fā)的軟件不滿足用戶需要 B.開發(fā)的軟件可維護(hù)性差 C.開發(fā)的軟件價(jià)格便宜 D.開發(fā)的軟件可靠性差

4.軟件可行性研究實(shí)質(zhì)上是要進(jìn)行一次()需求分析、設(shè)計(jì)過程。A.簡化、壓縮的 B.詳細(xì)的 C.徹底的 D.深入的

5.結(jié)構(gòu)化設(shè)計(jì)是一種面向()的設(shè)計(jì)方法。A.數(shù)據(jù)流 B.模塊 C.數(shù)據(jù)結(jié)構(gòu) D.程序

6.與確認(rèn)測試階段有關(guān)的文檔是()。

A.需求規(guī)格說明書 B.概要設(shè)計(jì)說明書 C.詳細(xì)設(shè)計(jì)說明書 D.源程序

7.軟件開發(fā)的需求活動(dòng),其主要任務(wù)是()。A.給出軟件解決方案 B.給出系統(tǒng)模塊結(jié)構(gòu)

C.定義模塊算法 D.定義需求并建立系統(tǒng)模型 8.以下說法錯(cuò)誤的是()。

A.文檔僅僅描述和規(guī)定了軟件的使用范圍及相關(guān)的操作命令 B.文檔也是軟件產(chǎn)品的一部分,沒有文檔的軟件就不成軟件

C.軟件文檔的編制在軟件開發(fā)工作中占有突出的地位和相當(dāng)大的工作量 D.高質(zhì)量文檔對于發(fā)揮軟件產(chǎn)品的效益有著重要的意義

9.一個(gè)項(xiàng)目是否開發(fā),從經(jīng)濟(jì)上來說是否可行,歸根結(jié)底是取決于()。A.成本估算

B.項(xiàng)目計(jì)劃

C.工程管理

D.工程網(wǎng)絡(luò)圖

10.在面向?qū)ο蟮脑O(shè)計(jì)中,我們應(yīng)遵循的設(shè)計(jì)準(zhǔn)則除了模塊化、抽象、低耦合、高內(nèi)聚以外,還有()。

A.隱藏復(fù)雜性 B.信息隱蔽

C.經(jīng)常類的復(fù)用 D.類的開發(fā) 11.面向?qū)ο蟮闹饕卣鞒龑ο笪┮恍?、封裝、繼承外,還有()。A.多態(tài)性 B.完整性 C.可移植性 D.兼容性 12.下面說法正確的是()。

A.經(jīng)過測試沒有發(fā)現(xiàn)錯(cuò)誤說明程序正確 B.測試的目標(biāo)是為了證明程序沒有錯(cuò)誤

C.成功的測試是發(fā)現(xiàn)了迄今尚未發(fā)現(xiàn)的錯(cuò)誤的測試 D.成功的測試是沒有發(fā)現(xiàn)錯(cuò)誤的測試

13以下哪一條不屬于注釋的基本原則?()A.注釋應(yīng)該增加代碼的清晰度。B.避免使用裝飾性內(nèi)容。

C.注釋在源代碼中的比例至少為25%.D.注釋信息不僅要包括代碼的功能,還應(yīng)給出原因。

14.()有效地檢測輸入條件的各種組合可能會(huì)引起的錯(cuò)誤。A.等價(jià)類劃分 B.邊界值分析 C.錯(cuò)誤推測 D.因果圖

15火車是一種陸上交通工具。火車和陸上交通工具之間的關(guān)系是()關(guān)系。A.組裝 B.整體部分 C.has a D.一般特殊

16、軟件維護(hù)產(chǎn)生的副作用,是指()

A、開發(fā)時(shí)的錯(cuò)誤 B、隱含的錯(cuò)誤 C、因修改軟件而造成的錯(cuò)誤 D、運(yùn)行時(shí)誤操作

17、使用程序設(shè)計(jì)的控制結(jié)構(gòu)導(dǎo)出測試用例的測試方法是()A、黑盒測試 B、白盒測試

C、邊界測試 D、系統(tǒng)測試

18、軟件詳細(xì)設(shè)計(jì)的主要任務(wù)是確定每個(gè)模塊的()A、算法和使用的數(shù)據(jù)結(jié)構(gòu) B、外部接口 C、功能 D、編程

19、軟件結(jié)構(gòu)圖的形態(tài)特征能反映程序重用率的是()A、深度 B、寬度 C、扇入 D、扇出

20、為了提高模塊的獨(dú)立性,模塊內(nèi)部最好是()A、邏輯內(nèi)聚 B、時(shí)間內(nèi)聚 C、功能內(nèi)聚 D、通信內(nèi)聚

21、軟件是一種()

A、程序 B、數(shù)據(jù) C、邏輯產(chǎn)品 D、物理產(chǎn)品

22、需求分析最終結(jié)果是產(chǎn)生()

A、項(xiàng)目開發(fā)計(jì)劃 B、需求規(guī)格說明書 C、設(shè)計(jì)說明書 D、可行性分析報(bào)告

23、因計(jì)算機(jī)硬件和軟件環(huán)境的變化而作出的修改軟件的過程稱為()A、糾正性維護(hù)

B、適應(yīng)性維護(hù) C、完善性維護(hù)

D、預(yù)防性維護(hù)

24、下列屬于維護(hù)階段的文檔是()A、軟件規(guī)格說明

B、用戶操作手冊

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

D、軟件測試分析報(bào)告

25、若有一個(gè)計(jì)算類型的程序,它的輸入量只有一個(gè)X,其范圍是[-1.0,1.0],現(xiàn)從輸入的角度考慮一組測試用例:-1.001,-1.0,1.0,1.001。設(shè)計(jì)這組測試用例的方法是()A、條件覆蓋法

B、等價(jià)分類法

C、邊界值分析法

D、錯(cuò)誤推測法 26.如果一個(gè)程序常常需要根據(jù)多種條件的復(fù)雜組合,選擇執(zhí)行相應(yīng)的動(dòng)作,則以下哪種設(shè)計(jì)工具比較適合描述它?()

A.判定表

B.流程圖

C.PDL

D.N-S圖

28、經(jīng)過嚴(yán)密的軟件測試后所提交給用戶的軟件產(chǎn)品中()

A、軟件不再包含任何錯(cuò)誤 B、還可能包含少量軟件錯(cuò)誤 C、所提交給用戶的可執(zhí)行文件不會(huì)含有錯(cuò)誤 D、文檔中不會(huì)含有錯(cuò)誤。

29、等價(jià)劃分測試方法屬于()

A、黑盒測試 B、白盒測試

C、邊界測試 D、系統(tǒng)測試

30、軟件按照設(shè)計(jì)的要求,在規(guī)定時(shí)間和條件下達(dá)到不出故障,持續(xù)運(yùn)行的要求的質(zhì)量特性稱為()A.可用性

B.可靠性

C.正確性

D.完整性

31、確認(rèn)軟件的功能是否與需求規(guī)格說明書中所要求的功能相符的測試屬于()

A、集成測試 B、恢復(fù)測試

C、確認(rèn)測試 D、單元測試

33、從心理學(xué)角度看,一次大模塊分解為多少個(gè)子模塊為宜。()

A、3±1 B、7±2 C、15±1 D、18±2

34、結(jié)構(gòu)化程序設(shè)計(jì)主要強(qiáng)調(diào)的是()

A、程序的規(guī)模 B、程序的效率 C、程序設(shè)計(jì)語言的先進(jìn)性 D、程序易讀性

35、在用戶界面層次上對軟件進(jìn)行測試屬于哪種測試方法()

A、黑盒測試 B、白盒測試

C、邊界測試 D、系統(tǒng)測試

36、對象實(shí)現(xiàn)了數(shù)據(jù)和操作的結(jié)合,使數(shù)據(jù)和操作()于對象的統(tǒng)一體中。A、結(jié)合 B、隱藏

C、封裝 D、抽象

37、()是比較理想的可重用軟構(gòu)件。

A.子程序庫 B.源代碼包含文件 C.對象 D.類

38、軟件設(shè)計(jì)啟發(fā)規(guī)則不包括()A.在耦合方式上降低模塊間接口的復(fù)雜性 B.模塊功能應(yīng)該可以預(yù)測

C.將模塊的控制域保持在其作用域內(nèi)

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

39、軟件生存周期中時(shí)間最長的是()階段。

A、總體設(shè)計(jì) B、需求分析 C、軟件測試 D、軟件維護(hù)

40、為了提高模塊的獨(dú)立性,模塊之間的聯(lián)系最好的是()。

A、公共耦合 B、控制耦合 C、內(nèi)容耦合 D、數(shù)據(jù)耦合

41、軟件概要設(shè)計(jì)結(jié)束后得到()

A、初始化的軟件結(jié)構(gòu)圖 B、優(yōu)化后的軟件結(jié)構(gòu)圖 C、模塊的接口圖和詳細(xì)算法 D、程序編碼

42、為使得開發(fā)人員對軟件產(chǎn)品的各個(gè)階段工作都進(jìn)行周密的思考,從而減少返工,所以()的編制是很重要的。

A、需求說明 B、概要說明 C、軟件文檔 D、測試計(jì)劃

43、汽車有一個(gè)發(fā)動(dòng)機(jī),因而汽車與發(fā)動(dòng)機(jī)之間的關(guān)系是()關(guān)系。

A、一般與特殊 B、整體與部分 C、分類關(guān)系 D、is a 關(guān)系

44、軟件部件的內(nèi)部實(shí)現(xiàn)與外部可訪問性的分離,是指軟件的()。

A、繼承性 B、共享性 C、封裝性 D、抽象性

45、單元測試是發(fā)現(xiàn)編碼錯(cuò)誤,集成測試是發(fā)現(xiàn)模塊的接口錯(cuò)誤,確認(rèn)測試是為了發(fā)現(xiàn)功能錯(cuò)誤,那么系統(tǒng)測試是為了發(fā)現(xiàn)()的錯(cuò)誤。

A、接口錯(cuò)誤 B、編碼錯(cuò)誤

C、性能、質(zhì)量不合要求 D、功能錯(cuò)誤 46.模塊的基本屬性不包括()

A 功能 B 接口 C 獨(dú)立性 D 邏輯

47、許多產(chǎn)品的質(zhì)量問題源于新產(chǎn)品的開發(fā)設(shè)計(jì)階段,因此在產(chǎn)品()階段就應(yīng)采取有力措施來消滅由于設(shè)計(jì)原因而產(chǎn)生的質(zhì)量隱患。

A、軟件評審 B、軟件測試 C、開發(fā)設(shè)計(jì) D、軟件度量

48、下列幾種類型中,耦合性最弱的是()。

A、內(nèi)容型 B、控制型 C、公共型 D、數(shù)據(jù)型

50.瀑布模型的關(guān)鍵不足在于

A、過于簡單 B、不能適應(yīng)需求的動(dòng)態(tài)變更C、過于靈活 D、各個(gè)階段需要進(jìn)行評審

51.內(nèi)聚程度最高的是()A功能內(nèi)聚

B巧合內(nèi)聚

C 過程內(nèi)聚

D 信息內(nèi)聚

52.以下哪一項(xiàng)不是軟件危機(jī)的表現(xiàn)形式(3)(1)成本高(2)生產(chǎn)率低(3)技術(shù)發(fā)展快(4)質(zhì)量得不到保證 53.以下哪一項(xiàng)不是面向?qū)ο蟮奶卣鳎?)

(1)多態(tài)性(2)繼承性(3)封裝性(4)過程調(diào)用 55.軟件維護(hù)的副作用主要有以下哪幾種(3)

(1)編碼副作用、數(shù)據(jù)副作用、測試副作用(2)編碼副作用、數(shù)據(jù)副作用、調(diào)試副作用(3)編碼副作用、數(shù)據(jù)副作用、文檔副作用(4)編碼副作用、文檔副作用、測試副作用

56.軟件項(xiàng)目計(jì)劃一般不包括以下哪項(xiàng)內(nèi)容(4)

(1)培訓(xùn)計(jì)劃(2)人員安排(3)進(jìn)度安排(4)軟件開發(fā)標(biāo)準(zhǔn)的選擇和制定 58.以下哪種測試方法不屬于白盒測試技術(shù)(2)

(1)基本路徑測試(2)邊界值分析測試(3)循環(huán)覆蓋測試(4)邏輯覆蓋測試 59.“軟件危機(jī)”是指()A.計(jì)算機(jī)病毒的出現(xiàn)

B.利用計(jì)算機(jī)進(jìn)行經(jīng)濟(jì)犯罪活動(dòng)

C.軟件開發(fā)和維護(hù)中出現(xiàn)的一系列問題 D.人們過分迷戀計(jì)算機(jī)系統(tǒng)

61.為了提高模塊的獨(dú)立性,模塊之間最好是()A.控制耦合 B.公共耦合 C.內(nèi)容耦合 D.數(shù)據(jù)耦合 62.下面關(guān)于PDL語言不正確的說法是()A.PDL是描述處理過程怎么做 B.PDL是只描述加工做什么 C.PDL也稱為偽碼

D.PDL的外層語法應(yīng)符合一般程序設(shè)計(jì)語言常用的語法規(guī)則 63.詳細(xì)設(shè)計(jì)與概要設(shè)計(jì)銜接的圖形工具是()A.DFD圖 B.程序圖 C.PAD圖 D.SC圖 65.下列關(guān)于功能性注釋不正確的說法是()A.功能性注釋嵌在源程序中,用于說明程序段或語句的功能以及數(shù)據(jù)的狀態(tài) B.注釋用來說明程序段,需要在每一行都要加注釋 C.可使用空行或縮進(jìn),以便很容易區(qū)分注釋和程序 D.修改程序也應(yīng)修改注釋

66.下列關(guān)于效率的說法不正確的是()A.效率是一個(gè)性能要求,其目標(biāo)應(yīng)該在需求分析時(shí)給出

B.提高程序效率的根本途徑在于選擇良好的設(shè)計(jì)方法,數(shù)據(jù)結(jié)構(gòu)與算法 C.效率主要指處理機(jī)時(shí)間和存儲器容量兩個(gè)方面 D.程序的效率與程序的簡單性無關(guān) 67.測試的關(guān)鍵問題是()A.如何組織對軟件的評審 B.如何驗(yàn)證程序的正確性 C.如何采用綜合策略 D.如何選擇測試用例

68.結(jié)構(gòu)化維護(hù)與非結(jié)構(gòu)化維護(hù)的主要區(qū)別在于()A.軟件是否結(jié)構(gòu)化 B.軟件配置是否完整 C.程序的完整性 D.文檔的完整性

69.軟件維護(hù)困難的主要原因是()A.費(fèi)用低 B.人員少

C.開發(fā)方法的缺陷 D.得不到用戶支持 70.可維護(hù)性的特性中,相互矛盾的是()A.可理解性與可測試性 B.效率與可修改性 C.可修改性和可理解性 D.可理解性與可讀性

71.快速原型是利用原型輔助軟件開發(fā)的一種新思想,它是在研究()的方法和技術(shù)中產(chǎn)生的。

A.需求階段 B.設(shè)計(jì)階段

C.測試階段 D.軟件開發(fā)的各個(gè)階段

72.從目前情況來看,增量模型存在的主要問題是()A.用戶很難適應(yīng)這種系統(tǒng)開發(fā)方法 B.該方法的成功率很低

C.缺乏豐富而強(qiáng)有力的軟件工具和開發(fā)環(huán)境

D.缺乏對開發(fā)過程中的問題和錯(cuò)誤具有應(yīng)付變化的機(jī)制 73.下列文檔與維護(hù)人員有關(guān)的有()A.軟件需求說明書 B.項(xiàng)目開發(fā)計(jì)劃 C.概要設(shè)計(jì)說明書 D.操作手冊 D.實(shí)現(xiàn)錯(cuò)誤檢測和錯(cuò)誤恢復(fù)的程序

74.()是為了確保每個(gè)開發(fā)過程的質(zhì)量,防止把軟件差錯(cuò)傳遞到下一個(gè)過程而進(jìn)行的工作。

A.質(zhì)量檢測 B.軟件容錯(cuò) C.軟件維護(hù) D.系統(tǒng)容錯(cuò) 78.軟件開發(fā)過程來自用戶方面的主要干擾是()A.功能變化 B.經(jīng)費(fèi)減少 C.設(shè)備損壞 D.人員變化

81.為了提高軟件的可維護(hù)性或可靠性而對軟件進(jìn)行的修改稱為()A.糾錯(cuò)性維護(hù) B.適應(yīng)性維護(hù) C.完善性維護(hù) D.預(yù)防性維護(hù)

82.面向維護(hù)的技術(shù)涉及軟件開發(fā)的()階段。A.設(shè)計(jì) B.編碼 C.測試 D.所有

83.用白盒技術(shù)設(shè)計(jì)測試用例的方法包括()A.邊界值分析 B.條件組合覆蓋 C.因果圖 D.錯(cuò)誤推測

84.軟件測試的目的是()A.為了表明程序沒有錯(cuò)誤 B.為了說明程序能正確地執(zhí)行 C.為了發(fā)現(xiàn)程序中的錯(cuò)誤 D.為了評價(jià)程序的質(zhì)量

85.針對軟件需求分析所進(jìn)行的軟件測試是指()A.集成測試 B.確認(rèn)測試

C.黑盒子測試 D.白盒子測試

87.結(jié)構(gòu)化程序設(shè)計(jì)采用的三種基本控制結(jié)構(gòu)是()A.順序、分支、選擇 B.選擇、循環(huán)、重復(fù) C.順序、選擇、循環(huán) D.輸入、變換、輸出

88.在軟件設(shè)計(jì)中詳細(xì)描述處理過程常用的三種工具是()A.SA,SD,SP B.程序流程圖,IPO,PAD C.SA,SC,SD D.圖形,表格,語言

89.通信內(nèi)聚、邏輯內(nèi)聚、順序內(nèi)聚和時(shí)間內(nèi)聚的內(nèi)聚性從高到低順序是()

A.通信、邏輯、順序、時(shí)間 B.通信、時(shí)間、順序、邏輯 C.順序、通信、時(shí)間、邏輯 D.順序、通信、邏輯、時(shí)間

90.在下列四種模塊的耦合性中,信息隱蔽性能最好的是()A.控制耦合 B.內(nèi)容耦合 C.標(biāo)記耦合 D.數(shù)據(jù)耦合

91.結(jié)構(gòu)化方法是一種()的軟件開發(fā)方法。A.面向用戶 B.面向數(shù)據(jù)結(jié)構(gòu) C.面向?qū)ο?D.面向數(shù)據(jù)流

92.需求分析是回答系統(tǒng)必須()的問題。A.做什么 B.怎么做 C.何時(shí)做 D.為誰做

93.在軟件生產(chǎn)的(),使用的工具主要是機(jī)器語言和匯編語言。A.程序系統(tǒng)時(shí)代 B.軟件工程時(shí)代 C.面向?qū)ο髸r(shí)代 D.人工智能時(shí)代

.維護(hù)中因刪除一個(gè)標(biāo)識符而引起的錯(cuò)識是 _________ 副作用。()A .文檔 B .?dāng)?shù)據(jù) C .編碼 D .設(shè)計(jì)

98.軟件維護(hù)的困難主要原因是()A .費(fèi)用低 B .人員少

C .開發(fā)方法的缺陷 D .維護(hù)難

.用白盒法技術(shù)設(shè)計(jì)測試用例的方法包括()A .錯(cuò)誤推測 B .因果圖

C .基本路徑測試 D .邊界值分析

100.軟件測試中根據(jù)測試用例設(shè)計(jì)的方法的不同可分為黑盒測試和白盒測試兩種,它們()

A .前者屬于靜態(tài)測試,后者屬于動(dòng)態(tài)測試 B .前者屬于動(dòng)態(tài)測試,后者屬于靜態(tài)測試 C .都屬于靜態(tài)測試 D .都屬于動(dòng)態(tài)測試

101.程序的三種基本控制結(jié)構(gòu)的共同特點(diǎn)是()A .只能用來描述簡單程序 B .不能嵌套使用 C .單入口,單出口 D .僅用于自動(dòng)控制系統(tǒng) 102、代碼版本控制的基本操作不包括()A.檢入

B 檢出

C.刪除

D.更新

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

A .?dāng)?shù)據(jù)耦合 B .公共耦合 C .標(biāo)記耦合 D .內(nèi)容耦合 104 .軟件設(shè)計(jì)的方法有多種,_________ 方法不屬于面向數(shù)據(jù)流的設(shè)計(jì)方法。()

A .基于 Jackson 圖的設(shè)計(jì) B .基于 IDEF0圖的設(shè)計(jì) C .交換分析設(shè)計(jì) D .事務(wù)分析設(shè)計(jì) 105.為高質(zhì)量地開發(fā)軟件項(xiàng)目,在軟件結(jié)構(gòu)設(shè)計(jì)時(shí),必須遵循 _________ 原則。()

A .信息隱蔽 B .質(zhì)量控制 C .程序優(yōu)化 D .?dāng)?shù)據(jù)共享

107.螺旋模型是一種將瀑布模型和 _________ 結(jié)合起來的軟件開發(fā)模型。()

A .增量模型 B .專家系統(tǒng) C .噴泉模型 D .變換模型

108.需求規(guī)格說明書的作用不包括()A .軟件驗(yàn)收的依據(jù)

B .用戶與開發(fā)人員對軟件要做什么的共同理解 C .軟件可行性研究的依據(jù) D .軟件設(shè)計(jì)的依據(jù)

109.?dāng)?shù)據(jù)字典是用來定義 _________ 中的各個(gè)成份的具體含義的。()A .流程圖 B .功能結(jié)構(gòu)圖 C .系統(tǒng)結(jié)構(gòu)圖 D .?dāng)?shù)據(jù)流圖

.在軟件生產(chǎn)的程序系統(tǒng)時(shí)代由于軟件規(guī)模擴(kuò)大和軟件復(fù)雜性提高等原因?qū)е铝耍ǎ?/p>

A .軟件危機(jī) B .軟件工程

C .程序設(shè)計(jì)革命 D .結(jié)構(gòu)化程序設(shè)計(jì)

.對象實(shí)現(xiàn)了數(shù)據(jù)和操作的結(jié)合,使數(shù)據(jù)和操作()于對象的統(tǒng)一體中。A .結(jié)合 B .隱藏 C .封裝 D .抽象 117 .軟件調(diào)試技術(shù)包括()

A .邊界值分析 B .演繹法 C .循環(huán)覆蓋 D .集成測試 118 .瀑布模型的存在問題是()A .用戶容易參與開發(fā) B .缺乏靈活性

C .用戶與開發(fā)者易溝通 D .適用可變需求

.軟件測試方法中的靜態(tài)測試方法之一為()A .計(jì)算機(jī)輔助靜態(tài)分析 B .黑盒法 C .路徑覆蓋 D .邊界值分析

.軟件生命周期中所花費(fèi)用最多的階段是()

A .詳細(xì)設(shè)計(jì) B .軟件編碼 C .軟件測試 D .軟件維護(hù) 122 .程序的三種基本控制結(jié)構(gòu)是()A .過程、子程序和分程序 B .順序、選擇和重復(fù) C .遞歸、堆棧和隊(duì)列 D .調(diào)用、返回和轉(zhuǎn)移

.在詳細(xì)設(shè)計(jì)階段,經(jīng)常采用的工具有()A . PAD B . SA C . SC D . DFD 124 .詳細(xì)設(shè)計(jì)的結(jié)果基本決定了最終程序的()

A .代碼的規(guī)模 B .運(yùn)行速度 C .質(zhì)量 D .可維護(hù)性 125 .需求分析中開發(fā)人員要從用戶那里了解()

A .軟件做什么 B .用戶使用界面 C .輸入的信息 D .軟件的規(guī)模 126 .結(jié)構(gòu)化程序設(shè)計(jì)主要強(qiáng)調(diào)的是()A. 程序的規(guī)模 B .程序的效率

C. 程序設(shè)計(jì)語言的先進(jìn)性 D .程序易讀性

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

A .資源有效性 B .管理制度 C .效益分析 D .開發(fā)風(fēng)險(xiǎn) 129 .可行性分析是在系統(tǒng)開發(fā)的早期所做的一項(xiàng)重要的論證工作,它是決定該系統(tǒng)是否開 發(fā)的決策依據(jù),因必須給出()的回答。A .確定 B.行或不行 C.正確 D.無二義 130 .需求分析階段的任務(wù)是確定()A. 軟件開發(fā)方法 B. 軟件開發(fā)工具 C. 軟件開發(fā)費(fèi) D.軟件系統(tǒng)的功能

134.信息隱蔽概念與()這一概念直接的相關(guān)。A.模塊的獨(dú)立性 B.模塊類型的劃分 C.軟件結(jié)構(gòu)定義 D.軟件生命周期

135.在軟件的概要設(shè)計(jì)中,不使用的圖形工具是()圖。A.SC B.IPO C.PAD D.IDEF0

136.不屬于詳細(xì)設(shè)計(jì)的主要工具有()。A.IPO圖 B.PAD圖 C.PDL D.SC

137.不屬于序言性注釋的有()。A.模塊設(shè)計(jì)者 B.修改日期

C.程序的整體說明 D.語句功能

138.單元測試階段主要涉及()的文檔。A.需求設(shè)計(jì) B.編碼和詳細(xì)設(shè)計(jì) C.詳細(xì)設(shè)計(jì) D.概要設(shè)計(jì)

139.在軟件測試中,白盒測試方法是通過分析程序的()來設(shè)計(jì)測試用例的方法。

A.應(yīng)用范圍 B.內(nèi)部邏輯 C.功能 D.輸入數(shù)據(jù)

140.需求分析是分析員經(jīng)了解用戶的要求,認(rèn)真細(xì)致地調(diào)研、分析,最終建立目標(biāo)系統(tǒng)的邏輯模型并寫出()的過程。A.模塊說明書 B.軟件規(guī)格說明 C.項(xiàng)目開發(fā)計(jì)劃 D.合同文檔

141.數(shù)據(jù)耦合和控制耦合相比,則()成立。A.數(shù)據(jù)耦合的耦合性強(qiáng) B.控制耦合的耦合性強(qiáng)

C.兩者的耦合性相當(dāng) D.兩者的耦合性需要根據(jù)具體情況分析 142.魚是一種水生動(dòng)物。魚與水生生物之間的關(guān)系是()。A.分類關(guān)系 B.組裝關(guān)系 C.整體成員關(guān)系 D.has a 146 .用白盒法技術(shù)設(shè)計(jì)測試用例的方法包括()A .錯(cuò)誤推測 B .因果圖

C .基本路徑測試 D .邊界值分析 147 .軟件測試中根據(jù)測試用例設(shè)計(jì)的方法的不同可分為黑盒測試和白盒測試兩種,它們()

A .前者屬于靜態(tài)測試,后者屬于動(dòng)態(tài)測試 B .前者屬于動(dòng)態(tài)測試,后者屬于靜態(tài)測試 C .都屬于靜態(tài)測試 D .都屬于動(dòng)態(tài)測試

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

A .?dāng)?shù)據(jù)耦合 B .公共耦合 C .標(biāo)記耦合 D .內(nèi)容耦合 150.為高質(zhì)量地開發(fā)軟件項(xiàng)目,在軟件結(jié)構(gòu)設(shè)計(jì)時(shí),必須遵循 _________ 原則。()

A .信息隱蔽 B .質(zhì)量控制 C .程序優(yōu)化 D .?dāng)?shù)據(jù)共享

151 .螺旋模型是一種將瀑布模型和 _________ 結(jié)合起來的軟件開發(fā)模型。()

A .增量模型 B .專家系統(tǒng) C .噴泉模型 D .變換模型

152 .需求規(guī)格說明書的作用不包括()A .軟件驗(yàn)收的依據(jù)

B .用戶與開發(fā)人員對軟件要做什么的共同理解 C .軟件可行性研究的依據(jù) D .軟件設(shè)計(jì)的依據(jù)

157.單元測試階段主要涉及()的文檔。A.需求設(shè)計(jì) B.編碼和詳細(xì)設(shè)計(jì) C.詳細(xì)設(shè)計(jì) D.概要設(shè)計(jì)

158.在軟件測試中,白盒測試方法是通過分析程序的()來設(shè)計(jì)測試用例的方法。

A.應(yīng)用范圍 B.內(nèi)部邏輯 C.功能 D.輸入數(shù)據(jù)

159.需求分析是分析員經(jīng)了解用戶的要求,認(rèn)真細(xì)致地調(diào)研、分析,最終建立目標(biāo)系統(tǒng)的邏輯模型并寫出()的過程。A.模塊說明書 B.軟件規(guī)格說明

C.項(xiàng)目開發(fā)計(jì)劃 D.合同文檔

第二篇:軟件工程 練習(xí)題

演講稿 工作總結(jié) 調(diào)研報(bào)告 講話稿 事跡材料 心得體會(huì) 策劃方案

軟件工程

練習(xí)題

1.在軟件生產(chǎn)的程序系統(tǒng)時(shí)代由于軟件規(guī)模擴(kuò)大和軟件復(fù)雜性提高的原因?qū)е铝耍ㄜ浖C(jī))

2.面向?qū)ο蟮某绦蛟O(shè)計(jì)特征有(多態(tài) 繼承 封裝)

3.程序的三種控制結(jié)構(gòu)(順序結(jié)構(gòu)

選擇結(jié)構(gòu)

循環(huán)結(jié)構(gòu))4.白盒測試技術(shù)有(語句覆蓋

判斷覆蓋

條件覆蓋

條件組合 判斷/條件覆蓋)

5.數(shù)據(jù)字典是用來定義(數(shù)據(jù)流圖)中的各個(gè)成分的具體含義的6.結(jié)構(gòu)化分析方法(SA)的一個(gè)重要指導(dǎo)思想是(自頂向下,逐步分解)7.jackson設(shè)計(jì)方法是由英國的M.jackson提出的,它是一種面向(數(shù)據(jù)結(jié)構(gòu))的軟件設(shè)計(jì)方法

8.瀑布模型突出的缺點(diǎn)是不適應(yīng)(用戶需求)的變動(dòng)

9.汽車有一個(gè)發(fā)動(dòng)機(jī),汽車與發(fā)動(dòng)機(jī)的關(guān)系屬于(整體與部分)關(guān)系 10.進(jìn)行需求分析可使用多種工具,但(PAD圖)是不適用的 11.軟件結(jié)構(gòu)中兩個(gè)模塊之間有調(diào)用關(guān)系,傳遞簡單數(shù)值相當(dāng)于高級語言中的值傳遞,這兩個(gè)模塊之間的耦合是(數(shù)據(jù)耦合)12.總體設(shè)計(jì)的目的是確定整個(gè)系統(tǒng)的(功能及模塊結(jié)構(gòu))13.程序的三種基本結(jié)構(gòu)的共同特點(diǎn)是(只有一個(gè)入口和一個(gè)出口)14.白盒測試的方法一般適用于(單元)測試

15.軟件配置管理包括(變動(dòng)控制 配置顯示

配置審計(jì))

精心收集

精心編輯

精致閱讀

如需請下載!

演講稿 工作總結(jié) 調(diào)研報(bào)告 講話稿 事跡材料 心得體會(huì) 策劃方案

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

17.軟件測試方法有(白盒測試

黑盒測試

動(dòng)態(tài)測試

功能測試)18.軟件結(jié)構(gòu)圖的形態(tài)特征能反映程序重用率的是(扇入)19.為了提高模塊的獨(dú)立性,模塊的內(nèi)部最好的是(功能內(nèi)聚)20.軟件開發(fā)過程中,抽取盒整理用戶需求建立問題及模型的過程叫(面向?qū)ο蠓治觯?/p>

21.完成系統(tǒng)邏輯模型的開發(fā)階段是(分析設(shè)計(jì))22.屬于軟件開發(fā)工具的是(報(bào)表生成器)

23.系統(tǒng)可行性研究主要從(技術(shù)可行性

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

操作可行性)幾個(gè)方面進(jìn)行

24.數(shù)據(jù)字典定義數(shù)據(jù)流或數(shù)據(jù)存儲組成時(shí),使用了若干符號,其中(.....)的含義是(或)

25.劃分模塊時(shí)(作用范圍在其控制范圍之內(nèi))

26.(模塊)是指具有相對獨(dú)立的、由數(shù)據(jù)說明、執(zhí)行語句等程序?qū)ο髽?gòu)成的集合

27.軟件工程方法的目的是:使軟件生產(chǎn)規(guī)范化和工程化,而軟件工程的方法得以實(shí)施的主要保證是(軟件開發(fā)工具和軟件開發(fā)環(huán)境)28.(螺旋模型)引入了“風(fēng)險(xiǎn)驅(qū)動(dòng)”思想,使用于大規(guī)模的內(nèi)部開發(fā)項(xiàng)目

29.構(gòu)造原型時(shí),主要考慮(原型要體現(xiàn)的特征)

30.數(shù)據(jù)字典是軟件需求分析階段最重要的工具之一,最基本的功能

精心收集

精心編輯

精致閱讀

如需請下載!

演講稿 工作總結(jié) 調(diào)研報(bào)告 講話稿 事跡材料 心得體會(huì) 策劃方案

是(數(shù)據(jù)定義)

31.面向數(shù)據(jù)流的設(shè)計(jì)方法把(數(shù)據(jù)流)映射成軟件結(jié)構(gòu) 32.內(nèi)聚程度最低的是(偶然)內(nèi)聚

33.軟件需求規(guī)格說明的內(nèi)容不應(yīng)包括(算法的詳細(xì)描述)34.在E-R模型中,包含的基本成分是(實(shí)體

聯(lián)系

屬性)35.詳細(xì)設(shè)計(jì)的基本任務(wù)是確定每個(gè)模塊的(算法)設(shè)計(jì)

36.面向?qū)ο蟮脑O(shè)計(jì)方法主要是建立三類模型,即(對象模型

動(dòng)態(tài)模型

功能模型)

37.面向?qū)ο螅?0)由(對象+類+繼承+消息)組成 38.軟件維護(hù)組織成員不包括(編程人員)39.(代碼行技術(shù))定量估算。源程序行數(shù)

40.軟件生存中期由(分析

設(shè)計(jì)

實(shí)現(xiàn))三個(gè)時(shí)期組成41.軟件開發(fā)環(huán)境的目標(biāo)是(提高軟件成產(chǎn)率和提高軟件質(zhì)量)42.信息建模的核心概念是(和)43.數(shù)據(jù)流可分為(變換型和事務(wù)型)

44.面向?qū)ο笤O(shè)計(jì)主要包括(系統(tǒng)結(jié)構(gòu))設(shè)計(jì)、系統(tǒng)信息量設(shè)計(jì)和(數(shù)據(jù)結(jié)構(gòu))設(shè)計(jì)和劃分程序階段

45.在數(shù)據(jù)流圖中,沒有任何具體的物理元素,它僅僅描述數(shù)據(jù)在系統(tǒng)中的(流動(dòng)和處理)的情況

46.模塊獨(dú)立性可通過(內(nèi)聚和耦合)兩方面來衡量

47.軟件開發(fā)是一個(gè)自頂向下逐步細(xì)化和求精的過程,而軟件測試是一個(gè)(自低向上)的集成過程

精心收集

精心編輯

精致閱讀

如需請下載!

演講稿 工作總結(jié) 調(diào)研報(bào)告 講話稿 事跡材料 心得體會(huì) 策劃方案

48.常見的軟件開發(fā)模型有(瀑布

圓形

螺旋)三種

49.從軟件工程管理的角度,軟件設(shè)計(jì)分為(概念設(shè)計(jì)和詳細(xì)設(shè)計(jì))兩步完成

50.概要設(shè)計(jì)過程由(確定設(shè)計(jì)方案和結(jié)構(gòu)設(shè)計(jì))兩個(gè)階段組成 51.動(dòng)態(tài)測試既可以采用(白盒測試)對模塊進(jìn)行邏輯測試,又可以用(黑盒)做功能測試

52.類之間的結(jié)構(gòu)關(guān)系主要有兩種,(一般與特殊結(jié)構(gòu)關(guān)系和整體與部分結(jié)構(gòu)關(guān)系)

53.(工程網(wǎng)絡(luò)技術(shù))能顯示地表示各個(gè)作業(yè)彼此間的依賴關(guān)系,從中容易事變出來關(guān)鍵路行和關(guān)鍵任務(wù)

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

55.模塊是一般具有如下三個(gè)屬性(功能)描述該模塊實(shí)現(xiàn)什么功能,(邏輯)描述模塊內(nèi)部怎么做,(狀態(tài))描述該模塊使用條件和環(huán)境 56.為了便于對照檢測,測試用例應(yīng)由(輸入數(shù)據(jù)和預(yù)期輸出結(jié)果)兩部分組成

57.(軟件測試階段)是在軟件投入運(yùn)行前對軟件需求分析,軟件設(shè)計(jì)規(guī)格說明和軟件編碼進(jìn)行查錯(cuò)和糾錯(cuò)

58.軟件維護(hù)的四類維護(hù)活動(dòng)是(完善

預(yù)防

適應(yīng)性

改正)維護(hù)

59.軟件系統(tǒng)中常用(數(shù)據(jù)文件)存放數(shù)據(jù),供系統(tǒng)中各模塊共享系統(tǒng)外部做通信用,其設(shè)計(jì)主要是(數(shù)據(jù)格式)設(shè)計(jì)

精心收集

精心編輯

精致閱讀

如需請下載!

演講稿 工作總結(jié) 調(diào)研報(bào)告 講話稿 事跡材料 心得體會(huì) 策劃方案

60.(模塊)是指具有相對獨(dú)立性的,由數(shù)據(jù)說明,執(zhí)行語句等程序?qū)ο髽?gòu)成的集合

61.類是一組具有(相同數(shù)據(jù)結(jié)構(gòu)和相同數(shù)據(jù)類型)的對象集合 62.影響軟件可維護(hù)性的因素主要有(可理解性

可測試性

可修改性

可移植性

可使用性)

63.確認(rèn)測試可以發(fā)現(xiàn)軟件系統(tǒng)是否符合用戶的(功能和性能)需求的

64.從結(jié)構(gòu)化的瀑布模型看,在軟件生存周期的幾個(gè)階段中,對軟件影響最大的是(需求分析)階段

65.模塊內(nèi)聚最好的是(功能內(nèi)聚)最差的是(偶然內(nèi)聚)66.軟件文檔可分為(用戶文檔和系統(tǒng)文檔)兩類

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

68.(系統(tǒng)流程圖)中各個(gè)元素表達(dá)了系統(tǒng)中各種元素之間(信息流動(dòng))情況 簡答

1.軟件危機(jī)產(chǎn)生的原因 軟件日益復(fù)雜和龐大 軟件開發(fā)管理困難復(fù)雜 軟件開發(fā)技術(shù)落后 生產(chǎn)方式落后 開發(fā)工具落后

精心收集

精心編輯

精致閱讀

如需請下載!

演講稿 工作總結(jié) 調(diào)研報(bào)告 講話稿 事跡材料 心得體會(huì) 策劃方案

軟件開發(fā)費(fèi)用不斷增加

2.結(jié)構(gòu)化設(shè)計(jì)步驟

對數(shù)據(jù)流圖進(jìn)行復(fù)審,必要時(shí)修改或細(xì)化 根據(jù)流圖確定軟件結(jié)構(gòu)屬于變換型還是事務(wù)型 把數(shù)據(jù)流圖映射成初始結(jié)構(gòu)圖 改進(jìn)結(jié)構(gòu)圖,使設(shè)計(jì)更完善 3.結(jié)構(gòu)化程序設(shè)計(jì)的主要思想 自頂向下,逐步求精的設(shè)計(jì)方法

使用三種基本控制結(jié)構(gòu),單入口、單出口來構(gòu)造程序 4.決定軟件可維護(hù)性的因素 系統(tǒng)大小,系統(tǒng)年齡 結(jié)構(gòu)合理性,模塊化 層次組織 系統(tǒng)文檔結(jié)構(gòu) 命令的格式和約定 程序的復(fù)雜性等等

5.數(shù)據(jù)字典與數(shù)據(jù)流圖的關(guān)系

數(shù)據(jù)字典與數(shù)據(jù)流圖相輔相成,互相配合,分析員應(yīng)遵守以下約定,有關(guān)數(shù)據(jù)流向在數(shù)據(jù)流圖中,數(shù)據(jù)組成在數(shù)據(jù)字典中描述,有關(guān)數(shù)據(jù)的加工細(xì)節(jié)在數(shù)據(jù)字典中描述,編寫數(shù)據(jù)字典時(shí)不能遺漏和重復(fù) 6.軟件測試和調(diào)試的目的的區(qū)別 測試的目的是判斷和發(fā)現(xiàn)軟件是否有錯(cuò)

精心收集

精心編輯

精致閱讀

如需請下載!

演講稿 工作總結(jié) 調(diào)研報(bào)告 講話稿 事跡材料 心得體會(huì) 策劃方案

調(diào)試的目的是定位軟件錯(cuò)誤并糾正 7.如何提高程序的可維護(hù)性 建立明確的軟件質(zhì)量目標(biāo)和優(yōu)先級 進(jìn)行明確的質(zhì)量保證審查 選擇可維護(hù)的程序設(shè)計(jì)語言 改進(jìn)程序的文檔

8.靜態(tài)測試和動(dòng)態(tài)測試的區(qū)別

靜態(tài)分析技術(shù)不執(zhí)行被測試軟件,可對需求分析說明書、軟件設(shè)計(jì)說明書、源程序...9.需求分析與軟件設(shè)計(jì)二個(gè)階段的任務(wù)主要區(qū)別是什么 需求分析定義軟件的用戶需求即做什么 軟件設(shè)計(jì)定義軟件實(shí)現(xiàn)細(xì)節(jié)即研究如何實(shí)現(xiàn)軟件 10.軟件測試目的

發(fā)現(xiàn)程序錯(cuò)誤而執(zhí)行程序的過程

好的測試方案是極可能發(fā)現(xiàn)迄今為止尚未發(fā)現(xiàn)的錯(cuò)誤 成功的測試方案是發(fā)現(xiàn)至今未發(fā)現(xiàn)的錯(cuò)誤的測試 11.文檔在軟件工程中的作用 提高過程能見度 提高開發(fā)效率

作為階段工作成果和結(jié)束標(biāo)志 記錄有關(guān)信息便于使用于維護(hù) 提供運(yùn)行、維護(hù)、培訓(xùn)的有關(guān)資料

精心收集

精心編輯

精致閱讀

如需請下載!

演講稿 工作總結(jié) 調(diào)研報(bào)告 講話稿 事跡材料 心得體會(huì) 策劃方案

12.軟件測試步驟,說明這些步驟的測試對象是什么 單元測試

對象是段遠(yuǎn)模塊

集成測試

對象是組裝后的程序模塊 確認(rèn)測試

對象是可運(yùn)行的目標(biāo)軟件系統(tǒng)

精心收集

精心編輯 精致閱讀

如需請下載!

第三篇:軟件工程練習(xí)題1

《軟件工程概論》練習(xí)題

單選15 判斷10

一、概念解釋15

1.軟件2.軟件危機(jī)3.軟件生命周期4.概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)5.軟件測試

6.信息隱藏7.耦合8.內(nèi)聚9.黑盒測試10.白盒測試11.對象

12.繼承13.多態(tài)性14.數(shù)據(jù)字典(DD)15.單元測試、集成測試、確認(rèn)測試

二、簡答題30

1.簡述軟件工程方法學(xué)包括的三要素及其含義。

2.簡述繼承的含義,并通過一個(gè)具體例子加以說明。

3什么是軟件危機(jī)?軟件危機(jī)的表現(xiàn)是什么?其產(chǎn)生的原因是什么?如何消除軟件危機(jī)?

4.在軟件設(shè)計(jì)過程中需遵守一系列準(zhǔn)則和規(guī)則,模塊化是一條重要準(zhǔn)則:

(1)為什么說只有合理劃分模塊才能保證軟件的開發(fā)成本達(dá)到最?。?/p>

(2)什么是模塊獨(dú)立性?如何度量?

5.根據(jù)你了解的知識,簡述“信息隱藏”在軟件設(shè)計(jì)中的作用

6.簡述面向?qū)ο蠓治龅幕静襟E

7.需求分析的任務(wù)是什么?

8.快速原型技術(shù)的基本思想是什么?

9.簡述三種面向?qū)ο竽P偷闹饕δ?/p>

第四篇:《軟件工程》期末考試模擬練習(xí)題

期末考試模擬練習(xí)題

一、填空題

1、用軟件工程的觀點(diǎn)看,軟件=__程序____+____數(shù)據(jù)____+___系列文檔__。

2、軟件是計(jì)算機(jī)系統(tǒng)中與硬件相互依存的部分,它是包括_____程序_____,_____數(shù)據(jù)

____和___系列文檔___的完整集合。

3、可行性分析的內(nèi)容包括四個(gè)方面:__技術(shù)可行性_____,_經(jīng)濟(jì)可行性__,_操作可行

性____和___法律可行性__。

4、軟件開發(fā)的結(jié)構(gòu)化分析方法中,數(shù)據(jù)加工是組成內(nèi)容之一。常用的加工說明的描述

方法有__結(jié)構(gòu)化語言___、_____判定樹____和____判定表__。

5、面向數(shù)據(jù)流的軟件設(shè)計(jì)方法,一般將數(shù)據(jù)流圖分成兩種類型,一種稱為__變換型___,另一種稱為_事務(wù)型_。

6、內(nèi)聚和耦合是模塊獨(dú)立性的重要度量,內(nèi)聚是指__模塊內(nèi)部各軟件元素之間結(jié)合的緊密程度___,耦合是指__度量一個(gè)軟件結(jié)構(gòu)中模塊與模塊之間聯(lián)系程度強(qiáng)弱的一個(gè)指標(biāo)__,從設(shè)計(jì)策略講,模塊的分解應(yīng)遵循____高_(dá)__內(nèi)聚____低___耦合的原則。

7、程序設(shè)計(jì)語言的三個(gè)特性分別是_工程特性__,__技術(shù)特性__,_心理特性__。

8、大型軟件系統(tǒng)的測試基本上由以下幾個(gè)步驟組成,分別是__單元測試__,__集成測

試___,_確認(rèn)測試___,_系統(tǒng)測試__和__驗(yàn)收測試___,其中需要最終用戶參與的測試為___驗(yàn)收測試和系統(tǒng)測試__。

9、白盒子測試技術(shù)是從程序內(nèi)部的邏輯結(jié)構(gòu)及處理過程入手來設(shè)計(jì)測試用例,故

又稱為__結(jié)構(gòu)測試__測試;而黑盒子測試技術(shù)則相反,它是以需求規(guī)格說明書為根據(jù)來設(shè)計(jì)測試用例,故又稱為__功能測試__測試。

10、軟件維護(hù)的類型分為4種,分別是_改正性維護(hù)_,__適應(yīng)性維護(hù)_,___完善性維

護(hù)_,___預(yù)防性維護(hù)_。

11、在軟件運(yùn)行中發(fā)生異常或故障時(shí)進(jìn)行的維護(hù)工作稱為__改正性維護(hù)___維護(hù)。在軟

件的使用過程中,根據(jù)用戶提出的新增系統(tǒng)功能和改善性能的要求而對軟件進(jìn)行修改或再開發(fā),以擴(kuò)充軟件功能、增強(qiáng)軟件性能、改進(jìn)加工效率、提高軟件質(zhì)量的工作成為____完善性維護(hù)__維護(hù)。

12、面向?qū)ο缶褪沁\(yùn)用___對象___、___類____、____繼承______、___封裝____、___消息____等面向?qū)ο蟮母拍顚栴}進(jìn)行分析,求解的系統(tǒng)開發(fā)技術(shù)。

13、由Rumbaugh等人提出的一種面向?qū)ο蠓椒ń凶鰧ο竽P突夹g(shù)(OMT),它要求

把分析時(shí)收集的信息建立在3個(gè)模型中。第一個(gè)模型是__對象模型__,它的作用是描述系統(tǒng)的靜態(tài)結(jié)構(gòu),包括構(gòu)成系統(tǒng)的對象和類、它們的屬性和操作,以及它們之間的聯(lián)系。第二個(gè)模型是_動(dòng)態(tài)模型_,它描述系統(tǒng)的控制邏輯,主要涉及系統(tǒng)中各個(gè)對象和類的時(shí)序及變化狀況。第三個(gè)模型是_功能模型_,它著重于描述系統(tǒng)內(nèi)部數(shù)據(jù)的傳送與處理,它由多個(gè)數(shù)據(jù)流圖組成。

14、在軟件研制過程中,CASE是指__計(jì)算機(jī)輔助軟件工程_。

15、面向?qū)ο蟮能浖_發(fā)方法中,UML指__統(tǒng)一建模語言_。

二、選擇題

1、瀑布模型將軟件生命周期劃分為計(jì)劃、開發(fā)和運(yùn)行三個(gè)時(shí)期。在下述工作中,屬于

軟件開發(fā)期的內(nèi)容是_D___。

I 需求分析II 可行性分析III 結(jié)構(gòu)設(shè)計(jì)

A)都是C)只有I

B)I和IID)I和III2、軟件計(jì)劃的目的是提供一個(gè)框架,使主管人員對項(xiàng)目能在短時(shí)間內(nèi)進(jìn)行合理的估價(jià)。

在下述內(nèi)容中,不屬于計(jì)劃期的內(nèi)容是_C___。A)資源需求

C)功能需求

B)成本估算D)項(xiàng)目進(jìn)度

3、數(shù)據(jù)流圖是用于軟件需求分析的工具,下列元素中_C____是數(shù)據(jù)流圖的基本元素。

I 數(shù)據(jù)流II 數(shù)據(jù)加工III 數(shù)據(jù)存儲IV 外部實(shí)體 A)I、II和III C)全部

B)I和IIID)I、III和IV4、軟件開發(fā)的結(jié)構(gòu)化分析方法中,數(shù)據(jù)加工是組成內(nèi)容之一。在下列方法中,常采用

編寫加工說明方法的是__D__。

I 結(jié)構(gòu)化語言II 判定樹III判定表A)只有I

B)只有IID)都是

C)II和III5、軟件工程的結(jié)構(gòu)化分析方法強(qiáng)調(diào)的是分析開發(fā)對象的__A___。

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

B)控制流D)進(jìn)程通信

C)時(shí)間限制

6、原型化方法是用戶和軟件開發(fā)人員之間進(jìn)行的一種交互過程,適用于___A___系統(tǒng)。

A)需求不確定性高的C)管理信息

B)需求確定的 D)決策支持

7、軟件的設(shè)計(jì)分兩個(gè)階段,即結(jié)構(gòu)設(shè)計(jì)和詳細(xì)設(shè)計(jì),結(jié)構(gòu)設(shè)計(jì)又稱為_B__。

A)邏輯設(shè)計(jì)C)規(guī)劃設(shè)計(jì)

B)總體設(shè)計(jì) D)抽象設(shè)計(jì)

8、模塊本身的內(nèi)聚是模塊獨(dú)立性的重要度量因素之一,7類內(nèi)聚中具有最強(qiáng)內(nèi)聚的一

類是_D___。

A)順序性內(nèi)聚C)邏輯性內(nèi)聚

B)過程性內(nèi)聚 D)功能性內(nèi)聚

9、軟件測試的對象是___C___。A)程序

B)文檔 D)模塊算法

C)程序和各個(gè)軟件配置項(xiàng)

10、成功的測試是指___B___。

A)運(yùn)行測試實(shí)例后未發(fā)現(xiàn)錯(cuò)誤項(xiàng)

C)證明程序正確

B)發(fā)現(xiàn)程序中的錯(cuò)誤 D)改正程序中的錯(cuò)誤

11、若有一個(gè)計(jì)算類型的程序,它的輸入量只有一個(gè)X,其范圍是[-1.0,1.0],現(xiàn)在從輸入的角度考慮一組測試用例:-1.001,-1.0,1.0,1.001。設(shè)計(jì)這組測試用例的方法是__A_。A)邊界值分析法C)條件覆蓋法

B)等價(jià)分類法 D)錯(cuò)誤推測法

12、因計(jì)算機(jī)硬件和軟件環(huán)境的變化而做出的修改軟件的過程稱為______C______維

護(hù)。在軟件維護(hù)類型中占全部維護(hù)活動(dòng)一半以上的是______________維護(hù)。

I 改正性維護(hù)A)I,II

II 適應(yīng)性維護(hù) B)II,I

III 完善性維護(hù) C)II,III

IV 預(yù)防性維護(hù) D)II,IV13、在面向?qū)ο蠓治鲋校铝懈黜?xiàng)可列入類的實(shí)例的是____D_。

I 學(xué)生II 網(wǎng)上購物III白馬IV 張三A)I 和 II

B)II 和IV D)都是

C)II、II、IV14、下列哪些問題是項(xiàng)目管理工作應(yīng)該重點(diǎn)考慮的___C___。

I 風(fēng)險(xiǎn)分析和管理IV軟件項(xiàng)目計(jì)劃

II 項(xiàng)目進(jìn)度安排V 軟件配置管理

III 軟件需求分析 VI軟件測試

A)III,VIB)III,IV,VIC)I、II、IV、VD)都是

15、軟件文檔是軟件工程實(shí)施中的重要成分,它不僅是軟件開發(fā)各階段的重要依據(jù)而且

也影響軟件的_B____。

A)可理解性

B)可維護(hù)性 D)可移植性

C)可擴(kuò)展性

第五篇:軟件工程

2.2軟件開發(fā)的基本策略

人們都有自己的世界觀和方法論,能自然而然地運(yùn)用于生活和工作中。同樣,程序員腦子里的軟件工程觀念會(huì)無形地支配其怎么去做事情。軟件工程三十年的發(fā)展,已經(jīng)積累了相當(dāng)多的方法,但這些方法不是嚴(yán)密的理論。實(shí)踐人員不應(yīng)該教條地套用方法,更重要的是學(xué)會(huì)“選擇合適的方法”和“產(chǎn)生新方法”。有謀略才會(huì)有好的戰(zhàn)術(shù)。幾千年前,我們的祖先就在打鬧之際寫下了很多心得體會(huì),被現(xiàn)代人很好地運(yùn)用于工業(yè)和商業(yè)。本節(jié)講述軟件開發(fā)中的三種基本策略:“復(fù)用”、“分而治之”、“優(yōu)化——折衷”。

2.2.1復(fù)用

復(fù)用就是指“利用現(xiàn)成的東西”,文人稱之為“拿來主義”。被復(fù)用的對象可以是有形的物體,也可以是無形的成果。復(fù)用不是人類懶惰的表現(xiàn)而是智慧的表現(xiàn)。因?yàn)槿祟惪偸窃诶^承了前人的成果,不斷加以利用、改進(jìn)或創(chuàng)新后才會(huì)進(jìn)步。所以當(dāng)我們歡度國慶時(shí),要搞清楚祖國遠(yuǎn)不止50歲,我們今天享用到的財(cái)富還有上下五千年人民的貢獻(xiàn)。進(jìn)步只是應(yīng)該的,不進(jìn)步則就可恥了。

復(fù)用的內(nèi)涵包括了提高質(zhì)量與生產(chǎn)率兩者。由經(jīng)驗(yàn)可知,在一個(gè)新系統(tǒng)中,大部分的內(nèi)容是成熟的,只有小部分內(nèi)容是創(chuàng)新的。一般地可以相信成熟的東西總是比較可靠的(即具有高質(zhì)量),而大量成熟的工作可以通過復(fù)用來快速實(shí)現(xiàn)(即具有高生產(chǎn)率)。勤勞并且聰明的人們應(yīng)該把大部分的時(shí)間用在小比例的創(chuàng)新工作上,而把小部分的時(shí)間用在大比例的成熟工作中,這樣才能把工作做得又快又好。

把復(fù)用的思想用于軟件開發(fā),稱為軟件復(fù)用。據(jù)統(tǒng)計(jì),世上已有1000億多行程序,無數(shù)功能被重寫了成千上萬次,真是浪費(fèi)哪。面向?qū)ο螅∣bject Oriented)學(xué)者的口頭禪就是“請不要再發(fā)明相同的車輪子了”。

將具有一定集成度并可以重復(fù)使用的軟件組成單元稱為軟構(gòu)件(Software Component)。軟件復(fù)用可以表述為:構(gòu)造新的軟件系統(tǒng)可以不必每次從零做起,直接使用已有的軟構(gòu)件,即可組裝(或加以合理修改)成新的系統(tǒng)。復(fù)用方法合理化并簡化了軟件開發(fā)過程,減少了總的開發(fā)工作量與維護(hù)代價(jià),既降低了軟件的成本又提高了生產(chǎn)率。另一方面,由于軟構(gòu)件是經(jīng)過反復(fù)使用驗(yàn)證的,自身具有較高的質(zhì)量。因此由軟構(gòu)件組成的新系統(tǒng)也具有較高的質(zhì)量。利用軟構(gòu)件生產(chǎn)應(yīng)用軟件的過程如圖1.5所示。

軟件復(fù)用不僅要使自己拿來方便,還要讓別人拿去方便,是“拿來拿去主義”。面向?qū)ο蠓椒?,Microsoft公司的COM規(guī)范 [Rogerson 1999],都能很好地用于實(shí)現(xiàn)大規(guī)模的軟件復(fù)用。

2.2.2分而治之

分而治之是指把一個(gè)復(fù)雜的問題分解成若干個(gè)簡單的問題,然后逐個(gè)解決。這種樸素的思想來源于人們生活與工作的經(jīng)驗(yàn),完全適合于技術(shù)領(lǐng)域。軟件人員在執(zhí)行分而治之的時(shí)候,應(yīng)該著重考慮:復(fù)雜問題分解后,每個(gè)問題能否用程序?qū)崿F(xiàn)?所有程序最終能否集成為一個(gè)軟件系統(tǒng)并有效解決原始的復(fù)雜問題?

圖1.6表示了軟件領(lǐng)域的分而治之策略。諸如軟件的體系結(jié)構(gòu)設(shè)計(jì)、模塊化設(shè)計(jì)都是分而治之的具體表現(xiàn)。軟件的分而治之不可以“硬分硬治”。不像為了吃一個(gè)西瓜或是一只雞,揮刀斬成n塊,再把每塊塞進(jìn)嘴里粉碎攪拌,然后交由胃腸來消化吸收,象征復(fù)雜問題的西瓜或是雞也就此消失了。

2.2.3優(yōu)化——折衷

軟件的優(yōu)化是指優(yōu)化軟件的各個(gè)質(zhì)量因素,如提高運(yùn)行速度,提高對內(nèi)存資源的利用率,使用戶界面更加友好,使三維圖形的真實(shí)感更強(qiáng)等等。想做好優(yōu)化工作,首先要讓開發(fā)人員都有正確的認(rèn)識:優(yōu)化工作不是可有可無的事情,而是必須要做的事情。當(dāng)優(yōu)化工作成為一種責(zé)任時(shí),程序員才會(huì)不斷改進(jìn)軟件中的算法,數(shù)據(jù)結(jié)構(gòu)和程序組織,從而提高軟件質(zhì)量。

著名的3D游戲軟件Quake,能夠在PC機(jī)上實(shí)時(shí)地繪制高度真實(shí)感的復(fù)雜場景。Quake的開發(fā)者能把很多成熟的圖形技術(shù)發(fā)揮到極致,例如把Bresenham畫線、多邊形裁剪、樹遍歷等算法的速度提高近一個(gè)數(shù)量級。我第一次看到Quake時(shí)不僅感到震動(dòng),而且深受打擊。這個(gè)PC游戲軟件的技術(shù)水平已經(jīng)遠(yuǎn)勝于我所見識到的國內(nèi)領(lǐng)先的圖形學(xué)相關(guān)科研成果。這對我們?nèi)找媸⑿械狞c(diǎn)到完止的研發(fā)工作真是莫大的諷刺。所以當(dāng)我們開發(fā)的軟件表現(xiàn)出很多不可救藥的病癥時(shí),不要怨機(jī)器差。真的是我們自己沒有把工作做好,寫不好字卻嫌筆鈍。

就假設(shè)我們經(jīng)過思想教育后,精神抖擻,隨時(shí)準(zhǔn)備為優(yōu)化工作干上六天七夜。但愿意做并不意味著就能把事情做好。優(yōu)化工作的復(fù)雜之處是很多目標(biāo)存在千絲萬縷的關(guān)系,可謂數(shù)不清理還亂。當(dāng)不能夠使所有的目標(biāo)都得到優(yōu)化時(shí),就需要“折衷”策略。

軟件中的折衷策略是指通過協(xié)調(diào)各個(gè)質(zhì)量因素,實(shí)現(xiàn)整體質(zhì)量的最優(yōu)。就象黨支部副書記扮演和事佬的角色:“…為了使整個(gè)組織具有最好的戰(zhàn)斗力,我們要重用幾個(gè)人,照顧一些人,在萬不得已的情況下委屈一批人”。

軟件折衷的重要原則是不能使某一方損失關(guān)鍵的職能,更不可以象“舍魚而取熊掌”那樣拋棄一方。例如3D動(dòng)畫軟件的瓶頸通常是速度,但如果為了提高速度而在程序中取消光照明計(jì)算,那么場景就會(huì)喪失真實(shí)感,3D動(dòng)畫也就不再有意義了(如果人類全是色盲,計(jì)算機(jī)圖形學(xué)將變得異常簡單)。

人都有惰性,如果允許濫用折衷的話,那么一當(dāng)碰到困難,人們就會(huì)用拆東墻補(bǔ)西墻的方式去折衷,不再下苦功去做有意義的優(yōu)化。所以我們有必要為折衷制定嚴(yán)正的立場:在保證其它因素不差的前提下,使某些因素變得更好。

下面讓我們用“優(yōu)化——折衷”的策略解決“魚和熊掌不可得兼”的難題。

問題提出:假設(shè)魚每千克10元,熊掌每千克一萬元。有個(gè)倔脾氣的人只有20元錢,非得要吃上一公斤美妙的“熊掌燒魚”,怎么辦?

解決方案:化9元9角9分錢買999克魚肉,化10元錢買1克熊掌肉,可做一道“熊掌戲魚”菜。剩下的那一分錢還可建立獎(jiǎng)勵(lì)基金。

2.3一些不正確的觀念

本節(jié)例舉并分析一些不正確的軟件工程觀念,可幫助初學(xué)者少犯相似的錯(cuò)誤。

觀念之一:我們擁有一套講述如何開發(fā)軟件的書籍,書中充滿了標(biāo)準(zhǔn)與示例,可以幫助我們解決軟件開發(fā)中遇到的任何問題。

客觀情況:好的參考書無疑能指導(dǎo)我們的工作。充分利用書籍中的方法、技術(shù)和技巧,可以有效地解決軟件開發(fā)中大量常見的問題。但實(shí)踐者并不能因此依賴于書籍,這是因?yàn)椋海?)現(xiàn)實(shí)的工作中,由于條件千差萬別,即使是相當(dāng)成熟的軟件工程規(guī)范,常常也無法套用。(2)軟件技術(shù)日新月異,沒有哪一種軟件標(biāo)準(zhǔn)能長盛不衰。祖?zhèn)髅胤皆谀承╊I(lǐng)域很吃香,而在軟件領(lǐng)域則意味著落后。

觀念之二:我們擁有最好的開發(fā)工具、最好的計(jì)算機(jī),一定能做出優(yōu)秀的軟件。

客觀情況:良好的開發(fā)環(huán)境只是產(chǎn)出成果的必要條件,而不是充分條件。如果擁有好環(huán)境的是一群庸人,難保他們不干出南轅北轍的事情。

觀念之三:如果我們落后于計(jì)劃,可以增加更多的程序員來解決。

客觀情況:軟件開發(fā)不同于傳統(tǒng)的農(nóng)業(yè)生產(chǎn),人多不見得力量大。如果給落后于計(jì)劃的項(xiàng)目增添新手,可能會(huì)更加延誤項(xiàng)目。因?yàn)椋海?)新手會(huì)產(chǎn)生很多新的錯(cuò)誤,使項(xiàng)目混亂。(2)老手向新手解釋工作以及交流思想都要花費(fèi)時(shí)間,使實(shí)際開發(fā)時(shí)間更少。所以科學(xué)的項(xiàng)目計(jì)劃很重要,不在乎計(jì)劃能提前多少,重在恰如其分。如果用“大躍進(jìn)”的方式奔向共產(chǎn)主義,只會(huì)產(chǎn)生倒退的后果。

觀念之四:既然需求分析很困難,不管三七二十一先把軟件做了再說,反正軟件是靈活的,隨時(shí)可以修改。

客觀情況:對需求把握得越準(zhǔn)確,軟件的修修補(bǔ)補(bǔ)就越少。有些需求在一開始時(shí)很難確定,在開發(fā)過程中要不斷地加以改正。軟件修改越早代價(jià)越少,修改越晚代價(jià)越大,就跟治病一樣道理。

2.4一些有爭議的觀念

本節(jié)探討一些有爭議的觀念,目的不在于得出“正確”或“錯(cuò)誤”的評斷,而在于爭議會(huì)激發(fā)更多理性的思考。

爭議之一:如果軟件運(yùn)行較慢,是換一臺更快的計(jì)算機(jī),還是設(shè)計(jì)一種更快的算法?

作者觀點(diǎn):如果開發(fā)軟件的目的是為了學(xué)習(xí)或是研究,那么應(yīng)該設(shè)計(jì)一種更快的算法。如果該軟件已經(jīng)用于商業(yè),則需謹(jǐn)慎考慮:若換一臺更快的計(jì)算機(jī)能解決問題,則是最快的解決方案。改進(jìn)算法雖然可以從根本上提高軟件的運(yùn)行速度,但可能引入錯(cuò)誤以及延誤進(jìn)程。技術(shù)狂毫無疑問會(huì)選擇后者,因?yàn)樗麄冇X得放棄任何可以優(yōu)化的機(jī)會(huì)就等于犯罪。

類似的爭議還有:是買現(xiàn)成的程序,還是徹底自己開發(fā)?技術(shù)人員和商業(yè)人士常常會(huì)有不同的選擇。

爭議之二:有最好的軟件工程方法,最好的編程語言嗎?

作者觀點(diǎn):在軟件領(lǐng)域永遠(yuǎn)沒有最好的,只有更好的。能解決問題的都是好方法或是好語言。程序員在最初學(xué)習(xí)Basic、Fortran、Pascal、C、C++等語言時(shí)會(huì)感覺一個(gè)比一個(gè)好,不免有喜新厭舊之舉。而如今 的Visual Basic、Delphi、Visual C++、Java等語言各有所長,真的難分優(yōu)劣。開發(fā)人員應(yīng)該根據(jù)客觀條件,選擇自己熟悉的方法和語言,才能保證合格的質(zhì)量與生產(chǎn)率。

程序設(shè)計(jì)是自由與快樂的事情,不要發(fā)誓忠于某某主義而自尋煩惱。

爭議之三:編程時(shí)是否應(yīng)該多使用技巧?

作者觀點(diǎn):就軟件開發(fā)而言,技巧的優(yōu)點(diǎn)在于能另辟蹊徑地解決一些問題,缺點(diǎn)是技巧并不為人熟知。若在程序中用太多的技巧,可能會(huì)留下隱患,別人也難以理解程序。鑒于一個(gè)局部的優(yōu)點(diǎn)對整個(gè)系統(tǒng)而言是微不足道的,而一個(gè)錯(cuò)誤則可能是致命的。作者建議用自然的方式編程,少用技巧。

《狼三則》的故事告訴我們“失敗的技巧通常是技倆”。當(dāng)我們在編程時(shí)無法判斷是用了技巧還是用了技倆,那就少用。《賣油翁》的故事又告訴我們“熟能生巧”,表明技巧是自然而然產(chǎn)生的,而不是賣弄出來的。賣油翁的絕技是可到中央電視臺表演的,而他老人家卻謙虛地說:“沒啥沒啥,用熟了而已”。

爭議之四:軟件中的錯(cuò)誤是否可按嚴(yán)重程度分等級?

作者觀點(diǎn):在定量分析時(shí),可以將錯(cuò)誤分等級,以便于管理。微軟的一些開發(fā)小組將錯(cuò)誤分成四個(gè)等級 [Cusumano 1996],如表1.1所示。

一級嚴(yán)重:錯(cuò)誤導(dǎo)致軟件崩潰。

二級嚴(yán)重:錯(cuò)誤導(dǎo)致一個(gè)特性不能運(yùn)行并且沒有替代方案。

三級嚴(yán)重:錯(cuò)誤導(dǎo)致一個(gè)特性不能運(yùn)行但有替代方案。

四級嚴(yán)重:錯(cuò)誤是表面化的或是微小的。

表1.1 錯(cuò)誤的四個(gè)等級

上述分類是非常技術(shù)性的,并不是普適的。假設(shè)某個(gè)財(cái)務(wù)軟件有兩個(gè)錯(cuò)誤:錯(cuò)誤A使該軟件死掉,錯(cuò)誤B導(dǎo)致工資計(jì)算錯(cuò)誤。按表1.1分類,錯(cuò)誤A屬一級嚴(yán)重,錯(cuò)誤B屬二級嚴(yán)重。但事實(shí)上B要比A嚴(yán)重。工資算多了或者算少了,將會(huì)使老板或員工遭受經(jīng)濟(jì)損失。而錯(cuò)誤A只使操作員感到厭煩,并沒有造成經(jīng)濟(jì)損失。另一個(gè)示例是操作手冊寫錯(cuò),按表1.1分類則屬四級嚴(yán)重,但這種錯(cuò)誤可能導(dǎo)致機(jī)毀人亡。

開發(fā)人員應(yīng)該意識到:所有的錯(cuò)誤都是嚴(yán)重的,不存在微不足道的錯(cuò)誤。這樣才能少犯錯(cuò)誤。

2.5小 結(jié)

軟件工程學(xué)科發(fā)展到今天,已經(jīng)有了很多方法和規(guī)范,學(xué)之不盡。本章只在宏觀上討論了軟件工程的一些

思想,更具體的內(nèi)容將在后面的章節(jié)論述。無論是什么好方法,貴在理解與靈活運(yùn)用,而不可當(dāng)成靈丹妙藥,不象“吃了腦黃金或腦白金,就能使一億人先聰明起來”。

3程序員與程序經(jīng)理

工作在第一線的軟件開發(fā)人員是程序員和程序經(jīng)理,他們決定著軟件的命運(yùn)。良好的程序員隊(duì)伍和出色的管理是軟件項(xiàng)目成功的必要條件。管理不是管制,不是去卡住人家的脖子,因?yàn)槌绦騿T不是一群野鴨子。管理的目的是讓大家一起把工作做好,并且讓各人獲得各自的快樂和滿足。當(dāng)一個(gè)組織被出色地領(lǐng)導(dǎo)時(shí),雇員甚至不知道他們已被領(lǐng)導(dǎo)。在項(xiàng)目完成時(shí),他們會(huì)自豪地說:“看看我們通過努力取得的成績吧”。所以管理者不能老惦記著自己是一個(gè)官,而應(yīng)時(shí)刻意識到自己是責(zé)任的主要承擔(dān)者。

我們經(jīng)常會(huì)聽到有經(jīng)理頭銜的人在高談闊論:“編程我不會(huì),做個(gè)項(xiàng)目還不easy?派個(gè)人去搞系統(tǒng)分析,回頭再叫幾個(gè)程序員把需求譯成程序,不就OK了嗎?”

不懂英語的人準(zhǔn)以為easy和OK是貶義詞。要讓軟件項(xiàng)目失敗很容易,只要符合下列條件之一即可:

(1)項(xiàng)目經(jīng)理對軟件一無所知;

(2)技術(shù)負(fù)責(zé)人對編程不感興趣;

(3)真真編寫代碼的程序員是臨時(shí)雇用的。

如果上述三個(gè)條件同時(shí)具備,就請放心失敗好了。

讓我們少幻想自己是比爾·蓋茨,先當(dāng)好程序員和程序經(jīng)理再說。

3.1了解程序員

早期的程序員干活能從軟件直通硬件,個(gè)個(gè)生猛無比。又因他們的作息時(shí)間、言行舉止與常人不太一樣,久而久之就給人們留下了“神秘”、“孤僻”的印象。如今軟件行業(yè)被炒得熱火朝天,有能耐的程序員即便躲在大山岙的軍工廠里也能被挖出來。而更多原本不是程序員的人操起幾本“速成”、“二十一天通”等書籍也加入了這個(gè)行業(yè)?,F(xiàn)在國內(nèi)號稱有上百萬程序員,這支大軍魚龍混雜,已搞不清那些是正規(guī)軍,那些是民兵游擊隊(duì)了。

下載軟件工程練習(xí)題word格式文檔
下載軟件工程練習(xí)題.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ù),工作人員會(huì)在5個(gè)工作日內(nèi)聯(lián)系你,一經(jīng)查實(shí),本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

相關(guān)范文推薦

    《軟件工程》

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

    軟件工程

    1. 軟件工程:是指導(dǎo)計(jì)算機(jī)軟件開發(fā)和維護(hù)的工程學(xué)科 2. 軟件危機(jī):是指在計(jì)算機(jī)軟件的開發(fā)和維護(hù)過程中所遇到的一系列嚴(yán)重問題 3. 軟件過程:是為了開發(fā)出高質(zhì)量的軟件產(chǎn)品所需......

    軟件工程

    填好發(fā)給我?。。。∫弧⑻羁疹}: 1.面向?qū)ο蠓治龅哪康氖菍陀^世界的系統(tǒng)進(jìn)行 __________________,對象就是客觀世界的; 2.軟件工程方法學(xué)包括:工程環(huán)境建立、方法、工具和過程; 3.思想概括......

    軟件工程

    軟件工程—心得體會(huì) 摘要 本文結(jié)合基層實(shí)踐教學(xué)的實(shí)際情況和現(xiàn)實(shí)需要,系統(tǒng)地總結(jié)了《軟件工程》實(shí)踐教學(xué)的特征,詳細(xì)分析了實(shí)踐教學(xué)過程存在的問題,并提出了該課程實(shí)踐教學(xué)改革......

    軟件工程

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

    軟件工程

    一、名詞解釋 軟件: 指計(jì)算機(jī)系統(tǒng)中的程序及其文檔。 支持軟件:支持軟件的開發(fā)和維護(hù)的軟件。 系統(tǒng)軟件:屬于計(jì)算機(jī)系統(tǒng)中最靠近硬件的一層,其它軟件一般都通過系統(tǒng)軟件發(fā)揮作......

    軟件工程

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

    軟件工程小結(jié)

    今天視頻看完了,可是沒有總結(jié)。還是感覺不會(huì)總結(jié)。一想到50講的課,怎么總結(jié)呢?開始聽的時(shí)候,是真不知道從哪里下手,因?yàn)殚_始看的時(shí)候有種迷迷糊糊的感覺。軟件工程,我期待的一門課......

主站蜘蛛池模板: 一区二区伊人久久大杳蕉| 青青青国产成人久久111网站| 国产成人av性色在线影院色戒| 亚洲第一区欧美国产综合| 少妇精品无码一区二区三区| 日韩中文字幕v亚洲中文字幕| 国产成人综合久久免费导航| 性色av无码专区一ⅴa亚洲| 人妻丰满被色诱中文字幕| 日本一区二区在线高清观看| 成人欧美一区二区三区的电影| 波多野吉av无码av乱码在线| 又粗又猛又大爽又黄老大爷5| 国产人成无码视频在线观看| 人妻夜夜爽天天爽一区| 韩国亚洲精品a在线无码| 亚洲综合欧美在线一区在线播放| 国产内射合集颜射| 狠狠色丁香五月综合婷婷| 97免费人妻在线视频| 女人与牲口性恔配视频免费| 无遮挡午夜男女xx00动态| 日韩色欲人妻无码精品av| 无码少妇丰满熟妇一区二区| 成人国产亚洲精品a区天堂| 亚洲精品tv久久久久久久久| 97免费人妻在线视频| 欧美亚洲人成网站在线观看| 精品高朝久久久久9999| 色欲综合久久躁天天躁蜜桃| 强奷漂亮雪白丰满少妇av| 免费国产va在线观看视频| 精产国品一区二区三产区| 久久精品第九区免费观看| 久久久久蜜桃精品成人片公司| 久久人人妻人人做人人爽| 国产精品一国产精品| аⅴ资源天堂资源库在线| 97久久久精品综合88久久| 亚洲欧美日韩另类丝袜一区| 无码写真精品永久福利在线|