《軟件工程導論》練習題
本習題適用于期末考試和考研
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 一
1.選擇題
1
( )不是軟件危機的突出表現(xiàn)。
?
A、
對軟件開發(fā)成本和進度的估計不準確
?
B、
無法完成功能復雜的軟件
?
C、
用戶對“以完成的”軟件系統(tǒng)不滿意現(xiàn)象經(jīng)常發(fā)生
?
D、
軟件產(chǎn)品的復雜性增加,可靠性和質(zhì)量卻下降
?
正確答案:B
?
2
增量模型是一種( ?????)的模型。
?
A、
整體開發(fā)
?
B、
非整體開發(fā)
?
C、
靈活性差
?
D、
較晚產(chǎn)生工作軟件
?
正確答案:B
?
3
軟件過程模型有多種,下列選項不屬于過程模型的是:( )
?
A、
螺旋模型
?
B、
增量模型
?
C、
功能模型
?
D、
瀑布模型
?
正確答案:C
?
4
需求工程的目的是( ??????)。
?
A、
系統(tǒng)開發(fā)的具體方案
?
B、
進一步確定用戶的需求
?
C、
解決系統(tǒng)是做什么的問題
?
D、
解決系統(tǒng)是如何做的問題
?
正確答案:C
?
5
在java語言中,對象的屬性和方法訪問控制符不包括()。
?
A、
public
?
B、
defend
?
C、
protected
?
D、
private
?
正確答案:B
?
6
()用于界定系統(tǒng)的邊界,定義系統(tǒng)和環(huán)境之間的依賴關(guān)系。
?
A、
上下文模型
?
B、
類模型
?
C、
動態(tài)模型
?
D、
邊界模型
?
正確答案:A
?
7
UML中,()用于系統(tǒng)與外部系統(tǒng)及用戶之間的交互。
?
A、
用例圖
?
B、
類圖
?
C、
對象圖
?
D、
部署圖
?
正確答案:A
?
8
UML中,()用于描述系統(tǒng)業(yè)務流程。
?
A、
活動圖
?
B、
狀態(tài)圖
?
C、
協(xié)作圖
?
D、
順序圖
?
正確答案:A
?
9
UML中,()用于按時間順序描述對象間的交互。
?
A、
網(wǎng)絡圖
?
B、
狀態(tài)圖
?
C、
協(xié)作圖
?
D、
時序圖
?
正確答案:D
?
10
泛化關(guān)系在Java等面向?qū)ο笳Z言中,通過( ?)的機制來實現(xiàn)。
?
A、
組合
?
B、
繼承
?
C、
聚合
?
D、
關(guān)聯(lián)
?
正確答案:B
?
11
面向?qū)ο蟮脑O計原則中,信息隱蔽原則是通過對象的()來實現(xiàn)。
?
A、
繼承
?
B、
多態(tài)
?
C、
封裝
?
D、
實例
?
正確答案:C
?
12
在mvc模式中,控制器的作用是()。
?
A、
與用戶完成動態(tài)交互
?
B、
接受用戶的輸入并調(diào)用模型和視圖去完成用戶的需求
?
C、
數(shù)據(jù)庫連接訪問
?
D、
封裝業(yè)務數(shù)據(jù)
?
正確答案:B
?
13
UML中,()用于描述一個類對象在不同用例間狀態(tài)的遷移。
?
A、
活動圖
?
B、
狀態(tài)圖
?
C、
協(xié)作圖
?
D、
順序圖
?
正確答案:B
?
14
泛化關(guān)系在Java等面向?qū)ο笳Z言中,通過( ?)的機制來實現(xiàn)。
?
A、
組合
?
B、
繼承
?
C、
聚合
?
D、
關(guān)聯(lián)
?
正確答案:B
?
15
下面哪個不是UML中的靜態(tài)視圖( ?)。
?
A、
狀態(tài)圖
?
B、
用例圖
?
C、
對象圖
?
D、
類圖
?
?
?
?
?
正確答案:A
?
16
順序圖由類角色,生命線,激活期和( )組成。
?
?
?
A、
關(guān)系
?
B、
消息
?
C、
用例
?
D、
實體
?
正確答案:B
?
17
下列關(guān)于狀態(tài)圖的說法中,正確的是( ??) 。
?
A、
狀態(tài)圖是UML中對系統(tǒng)的靜態(tài)方面進行建模的五種圖之一
?
B、
狀態(tài)圖是活動圖的一個特例,狀態(tài)圖中的多數(shù)狀態(tài)是活動狀態(tài)
?
C、
活動圖和狀態(tài)圖是對一個對象的生命周期進行建模,描述對象隨時間變化的行為
?
D、
狀態(tài)圖強調(diào)對有幾個對象參與的活動過程建模,而活動圖更強調(diào)對單個反應型對象建模
?
?
?
?
?
正確答案:C
?
18
下面不屬于基本的軟件工程活動的是( )
?
A、
軟件規(guī)格說明
?
?
?
B、
軟件開發(fā)
?
?
?
C、
軟件測試
?
?
?
D、
軟件確認和軟件維護
?
?
?
正確答案:C
?
?
?
?
19
組成UML有三種基本的建筑塊是:( ),事物和圖
A、關(guān)系
B、類
C、用例
D、實體
正確答案:A
?
20
UML體系包括三個部分:UML基本構(gòu)造塊,( )和UML公共機制
A、UML規(guī)則
B、UML命名
C、UML模型
D、UML約束
正確答案:A
2.填空題
1
軟件不僅包括程序,而且還包括所有使程序能夠正常使用的( ??)、庫、支持網(wǎng)站、配置數(shù)據(jù)等。
?
正確答案:
?
第一空:
相關(guān)文檔
2
瀑布模型是( ??)驅(qū)動的軟件過程。至少應該在軟件開發(fā)開始之前對所有的過程活動進行計劃和進度安排。
?
正確答案:
?
第一空:
計劃
3
非功能性需求是指與系統(tǒng)向其用戶提供的特定服務不( ??)的需求。
正確答案:
第一空:
相關(guān)
4
通用過程模型之集成和配置模型依賴于( ??)的構(gòu)件或系統(tǒng)。
?
正確答案:
第一空:
可復用
5
不同企業(yè)中所使用的軟件過程取決于所開發(fā)的軟件的( ??)、軟件客戶的需求以及開發(fā)軟件的人的技能。?
正確答案:
第一空:
類型
6
專業(yè)化軟件通常都是由( )團隊而非( )開發(fā)的。
正確答案:
第一空:
團隊
第二空:
個人
7
軟件工程包括支持軟件( )、設計和( )的相關(guān)技術(shù),而這些通常都與個人化的軟件開發(fā)無關(guān)。
正確答案:
第一空:
規(guī)格說明
第二空:
維護
8
軟件工程中所使用的系統(tǒng)化方法稱為( )。是指實現(xiàn)軟件產(chǎn)品開發(fā)的活動序列。
正確答案:
第一空:
軟件過程
9
計算機科學關(guān)注支撐計算機和軟件系統(tǒng)的( )和方法,而軟件工程則關(guān)注( )過程中的實際問題。
正確答案:
第一空:
基礎(chǔ)理論
第二空:
軟件開發(fā)
10
系統(tǒng)工程關(guān)注復雜系統(tǒng)的( )和維護的各個方面,在這類系統(tǒng)中( )扮演著重要的角色。
正確答案:
第一空:
開發(fā)
第二空:
軟件
11
( )不僅僅關(guān)注軟件開發(fā)的技術(shù)過程,它也包括其他一些活動,例如軟件項目管理以及支持( )的工具、方法和理論的開發(fā)。
正確答案:
第一空:
軟件工程
第二空:
軟件開發(fā)
12
軟件不僅包括( ),而且還包括所有使程序能夠正常使用的( )、庫、支持網(wǎng)站、配置數(shù)據(jù)等。
正確答案:
第一空:
程序
第二空:
相關(guān)文檔
13
軟件失效很多都源于以下兩方面的因素:不斷增長的系統(tǒng)( );未有效采用( )方法。
正確答案:
第一空:
復雜性
第二空:
軟件工程
14
不同企業(yè)中所使用的軟件過程取決于所開發(fā)的軟件的( )、軟件客戶的( )以及開發(fā)軟件的人的技能。
正確答案:
第一空:
類型
第二空:
需求
15
描述軟件過程時,重要的是描述涉及( )、產(chǎn)生了什么以及影響( )的條件。
正確答案:
第一空:
哪些人
第二空:
活動序列
3.判斷題
1
軟件確認目的是確定系統(tǒng)是否符合它的規(guī)格說明,同時是否符合系統(tǒng)客戶的期望。
?
正確答案: √
2
增量式開發(fā)提高了實現(xiàn)需求變更的成本。
正確答案: ×
3
采用面向復用的開發(fā)方法還會失去一些對系統(tǒng)維護的控制。
?
正確答案: √
?
4
瀑布模型中每個階段結(jié)果是一個或多個審批通過的文檔。
?
正確答案: √
?
5
非功能性需求經(jīng)常適用于系統(tǒng)整體而不是單個的系統(tǒng)特征或服務。
?
正確答案: √
?
6
系統(tǒng)模型并不是系統(tǒng)的一個完備表示。
?
正確答案: √
?
7
在增量式開發(fā)中,規(guī)格說明、開發(fā)、確認、維護4個基本過程活動按順序完成。
?
正確答案: ×
?
8
功能性需求對于系統(tǒng)體系結(jié)構(gòu)的影響最大。
?
正確答案: ×
?
9
需求確認非常重要,因為如果需求文檔中的錯誤在開發(fā)過程中或在系統(tǒng)投入服務后被發(fā)現(xiàn),則會導致廣泛的返工開銷。
?
正確答案: √
?
10
通過進行系統(tǒng)變更修正一個需求問題的開銷通常比修復設計或編碼錯誤要高得多。
?
?
?
正確答案: √
?
4.?簡答題
1簡述4個基本軟件工程活動。
正確答案:
? 1)軟件規(guī)格說明。軟件的功能以及對于軟件運行的約束必須在這里進行定義。
? 2)軟件開發(fā)。必須開發(fā)出符合規(guī)格說明的軟件。
? 3)軟件確認。軟件必須通過確認來確保軟件所做的是客戶所想要的。
? 4)軟件維護。軟件必須通過維護來滿足不斷變化的客戶需要。
?
2簡述需求工程活動中的3個主要活動。
正確答案:
?1)需求抽取與分析。該過程通過觀察已有的系統(tǒng)、與潛在的用戶和采購方進行討論、任務分析等手段,得出系統(tǒng)需求。
? 2)需求規(guī)格說明。需求規(guī)格說明活動將需求分析中所收集的信息轉(zhuǎn)化為定義一組需求的文檔。包括用戶需求、系統(tǒng)需求。
? 3)需求確認。該活動檢查需求的現(xiàn)實性、一致性和完整性。
?
3簡述活動圖和狀態(tài)圖的區(qū)別。
正確答案:
狀態(tài)圖是描述某一對象的狀態(tài)轉(zhuǎn)化的,它主要表現(xiàn)的是該對象的狀態(tài)。從狀態(tài)圖中可以看出,該對象在接受了外界的某種刺激之后,會做出什么樣的反應。描述的是一個對象的事情。可以說是對類圖的一種補充,幫助開發(fā)者完善某一類。
活動圖是描述系統(tǒng)在執(zhí)行某一用例時的具體步驟的,它主要表現(xiàn)的是系統(tǒng)的動作。從活動圖中可以看出,系統(tǒng)是如何一步一步的完成用例規(guī)約的,主要用于業(yè)務建模階段。活動圖描述的是整個系統(tǒng)的事情??梢哉f活動圖是對用例圖的一種細化,幫助開發(fā)者理解業(yè)務領(lǐng)域。
?
4簡述功能性需求和非功能性需求。
?
正確答案:
? 1)功能性需求。是對系統(tǒng)應該提供的服務、系統(tǒng)應該如何響應特定的輸入、系統(tǒng)在特定的情形中應該如何表現(xiàn)等的陳述。某些情況,功能性需求還可明確地陳述系統(tǒng)不應該做什么。
? 2)非功能性需求。這些需求是對系統(tǒng)提供的服務或功能的約束,包括時間性約束、對于開發(fā)過程的約束、標準規(guī)范中所施加的約束等。非功能性需求經(jīng)常適用于系統(tǒng)整體而不是單個的系統(tǒng)特征或服務。
?
二
1.?(單選題)UML中的事物包括:結(jié)構(gòu)事物,分組事物,注釋事物和( )
·?A. 實體事物
·?B. 邊界事物
·?C. 控制事物
·?D. 動作事物
正確答案:?D:動作事物;
2.?(單選題)( )模型的缺點是缺乏靈活性,特別是無法解決軟件需求不明確或不準確的問題
·?A. 瀑布模型
·?B. 原型模型
·?C. 增量模型
·?D. 螺旋模型
正確答案:?A:瀑布模型;
3.?(單選題)下面哪個不是UML中的靜態(tài)視圖( )
·?A. 狀態(tài)圖
·?B. 用例圖
·?C. 對象圖
·?D. 類圖
正確答案:?A:狀態(tài)圖;
4.?(單選題)( )技術(shù)是將一個活動圖中的活動狀態(tài)進行分組,每一組表示一個特定的類、人或部門,他們負責完成組內(nèi)的活動。
·?A. 泳道
·?B. 分叉匯合
·?C. 分支
·?D. 轉(zhuǎn)移
正確答案:?A:泳道;
5.?(單選題)下列關(guān)于狀態(tài)圖的說法中,正確的是( )
·?A. 狀態(tài)圖是UML中對系統(tǒng)的靜態(tài)方面進行建模的五種圖之一。
·?B. 狀態(tài)圖是活動圖的一個特例,狀態(tài)圖中的多數(shù)狀態(tài)是活動狀態(tài)
·?C. 活動圖和狀態(tài)圖是對一個對象的生命周期進行建模,描述對象隨時
間變化的行為。
·?D. 狀態(tài)圖強調(diào)對有幾個對象參與的活動過程建模,而活動圖更強調(diào)
對單個反應型對象建模
正確答案:?C:活動圖和狀態(tài)圖是對一個對象的生命周期進行建模,描述對象隨時間變化的行為。;
6.?(單選題)對反應型對象建模一般使用( )圖
·?A. 狀態(tài)圖
·?B. 順序圖
·?C. 活動圖
·?D. 類圖
正確答案:?A:狀態(tài)圖;
7.?(單選題)類圖應該畫在Rose的哪種( )視圖中
·?A. Use CaseView
·?B. Logic View
·?C. ComponentView
·?D. Deployment View
正確答案:?B:Logic View;
8.?(單選題)類通??梢苑譃閷嶓w類、( )和邊界類。
·?A. 父類
·?B. 子類
·?C. 控制類
·?D. 祖先類
正確答案:?C:控制類;
9.?(單選題)順序圖由類角色,生命線,激活期和( )組成
·?A. 關(guān)系
·?B. 消息
·?C. 用例
·?D. 實體
正確答案:?B:消息;
10.?(單選題)( )是系統(tǒng)中遵從一組接口且提供實現(xiàn)的一個物理部件,通常指開發(fā)和運行時類的物理實現(xiàn)
·?A. 部署圖
·?B. 類
·?C. 接口
·?D. 組件
正確答案:?D:組件;
11.?(單選題)關(guān)于協(xié)作圖的描述,下列哪個不正確( )
·?A. 協(xié)作圖作為一種交互圖,強調(diào)的是參加交互的對象的組織;
·?B. 協(xié)作圖是順序圖的一種特例
·?C. 協(xié)作圖中有消息流的順序號;
·?D. 在ROSE工具中,協(xié)作圖可在順序圖的基礎(chǔ)上按“F5”鍵自動生成;
正確答案:?B:協(xié)作圖是順序圖的一種特例;
12.?(單選題)組件圖用于對系統(tǒng)的靜態(tài)實現(xiàn)視圖建模,這種視圖主要支持系統(tǒng)部件的配置管理,通常可以分為四種方式來完成,下面哪種不是其中之一( )
·?A. 對源代碼建模
·?B. 對事物建模
·?C. 對物理數(shù)據(jù)庫建模
·?D. 對可適應的系統(tǒng)建模
正確答案:?B:對事物建模;
13.?(單選題)一個對象和另一個對象之間,通過消息來進行通信。消息通信在面向?qū)ο蟮恼Z言中即( )
·?A. 方法實現(xiàn)
·?B. 方法嵌套
·?C. 方法調(diào)用
·?D. 方法定義
正確答案:?C:方法調(diào)用;
14.?(單選題)( )是可復用的,提供明確接口完成特定功能的程序代碼塊。
·?A. 模塊
·?B. 函數(shù)
·?C. 用例
·?D. 軟件構(gòu)件
正確答案:?D:軟件構(gòu)件;
15.?(單選題)若將活動狀態(tài)比作方法,那么動作狀態(tài)即( )
·?A. 方法名
·?B. 方法返回值
·?C. 方法體中的每一條語句
·?D. 方法的可見性
正確答案:?C:方法體中的每一條語句;
16.?(單選題)事件可以分為內(nèi)部事件和外部事件。按下按鈕和打印機的中斷是
()事件
·?A. 內(nèi)部事件
·?B. 外部事件
·?C. 控制事件
·?D. 動作事件
正確答案:?A:內(nèi)部事件;
17.?(單選題)( )是用于把元素組織成組的通用機制
·?A. 包
·?B. 類
·?C. 接口
·?D. 組件
正確答案:?A:包;
18.?(單選題)( )是被節(jié)點執(zhí)行的事物
·?A. 包
·?B. 組件
·?C. 接口
·?D. 節(jié)點
正確答案:?B:組件;
19.?(單選題)UML的( )描述了系統(tǒng)狀態(tài)以及導致狀態(tài)間轉(zhuǎn)換的事件。
·?A.用例圖
·?B.狀態(tài)圖
·?C.序列圖?
·?D.活動圖
正確答案:?B:狀態(tài)圖 ;
20.?(單選題)
在系統(tǒng)規(guī)格說明的早期階段,你應當確定系統(tǒng)的(?),也就是說確定哪些屬于、哪些不屬于所開發(fā)的系統(tǒng)。
?
·?A. 事件
·?B.?功能
·?C.?用例
·?D.邊界
正確答案:?D:邊界 ;
21.?(單選題)
允許在運行時擴展一個已有的類的功能屬于( )模式。
?
·?A.代理
·?B. 裝飾者
·?C. 工廠
·?D.單例
正確答案:?B:裝飾者;
22.?(填空題)通用過程模型是軟件過程的高層和抽象( ),用于解釋不同的軟件開發(fā)( )。
正確答案:
(1) 描述
(2) 方法
23.?(填空題)通用過程模型可以看作一種過程( ),可以通過( )和調(diào)整來創(chuàng)建更加特定的軟件工程過程。
正確答案:
(1) 框架
(2) 擴展
24.?(填空題)通用過程模型之集成和配置模型依賴于( )的構(gòu)件或(? )。
正確答案:
(1) 可復用
(2) 系統(tǒng)
25.?(填空題)增量式開發(fā)模型中,規(guī)格說明、開發(fā)和確認活動( )進行。系統(tǒng)開發(fā)體現(xiàn)為一系列的版本(增量),每個版本( )一些功能。
?
正確答案:
(1) 交錯
(2) 增加
26.(填空題)瀑布模型是( )驅(qū)動的軟件過程。至少應該在軟件開發(fā)開始之前對所有的過程活動進行計劃和( )安排。
正確答案:
(1) 計劃
(2) 進度
27.?(填空題)瀑布模型中每個階段結(jié)果是一個或多個( )通過的( )。
正確答案:
(1) 審批
(2) 文檔
28.?(填空題)增量式開發(fā)思想是先開發(fā)出一個( )的實現(xiàn),然后從用戶那里獲?。?)并經(jīng)過多個版本的演化直至得到所需要系統(tǒng)。
正確答案:
(1) 初始
(2) 反饋
29.?(填空題)增量式開發(fā)模型在( )方法中,早期增量是確定好的,后面的增量開發(fā)則取決于進度和客戶( )。
正確答案:
(1) 敏捷
(2) 優(yōu)先級
30.?(填空題)面向復用的方法依賴于一個可復用的軟件( )以及一個用于構(gòu)件組裝的( )。
正確答案:
(1) 構(gòu)件庫
(2) 集成框架
31.?(填空題)軟件開發(fā)的實現(xiàn)階段是開發(fā)一個( )的系統(tǒng)以交付給( )的過程。
正確答案:
(1) 可執(zhí)行
(2) 客戶
32.?(填空題)設計過程輸出是( )文檔,設定精確和準確的( )描述。
正確答案:
(1) 詳細設計
(2) 系統(tǒng)
33.?(填空題)軟件確認目的是確定系統(tǒng)是否符合它的( ),同時是否符合系統(tǒng)( )的期望。
正確答案:
(1) 規(guī)格說明
(2) 客戶
34.?(填空題)β測試向一些同意使用目標系統(tǒng)的( )客戶交付該系統(tǒng),他們向系統(tǒng)( )報告問題。
正確答案:
(1) 潛在
(2) 開發(fā)者
35.?(填空題)對一個系統(tǒng)的需求是關(guān)于該系統(tǒng)應當提供的( )以及對其運行的( )的描述。
正確答案:
(1) 服務
(2) 約束
36.?(填空題)需求工程通常被認為是軟件工程( )的( )階段。
正確答案:
(1) 過程
(2) 第一個
37.?(填空題)( )研究結(jié)果幫助管理層決定是否繼續(xù)該系統(tǒng)( )或開發(fā)。
正確答案:
(1) 可行性
(2) 采購
38.?(填空題)功能性系統(tǒng)需求將( )需求展開,是面向系統(tǒng)( )描述的,應該詳細描述系統(tǒng)功能,系統(tǒng)的輸入、輸出和異常。
正確答案:
(1) 用戶
(2) 開發(fā)者
39.?(填空題)非功能性需求是指與系統(tǒng)向其( )提供的特定服務不直接( )的需求。
正確答案:
(1) 用戶
(2) 相關(guān)
40.?(填空題)需求規(guī)格說明是在需求文檔中撰寫( )和( )需求的過程。
正確答案:
(1) 用戶
(2) 系統(tǒng)
41.?(填空題)( )過程目的是理解利益相關(guān)者所做的事情以及他們會如何使用新( )來支持他們的工作。
正確答案:
(1) 需求抽取
(2) 系統(tǒng)
42.?(判斷題)
原型模型的缺點是缺乏靈活性,特別是無法解決軟件需求不明確或不準確的問題。
?
·?A. 對
·?B. 錯
正確答案:?錯
43.?(判斷題)軟件構(gòu)件是可復用的,提供明確接口完成特定功能的程序代碼塊。
·?A. 對
·?B. 錯
正確答案:?對
44.?(判斷題)事件可以分為內(nèi)部事件和外部事件。按下按鈕和打印機的中斷是外部事件事件。
·?A. 對
·?B. 錯
正確答案:?對
45.?(判斷題)對象與接口間是一對一關(guān)系。
·?A. 對
·?B. 錯
正確答案:?錯
46.?(判斷題)類圖對軟件系統(tǒng)中的對象類的動態(tài)結(jié)構(gòu)進行建模。
·?A. 對
·?B. 錯
正確答案:?錯
47.?(判斷題)功能性需求對于系統(tǒng)體系結(jié)構(gòu)的影響最大。
·?A. 對
·?B. 錯
正確答案:?錯
48.?(判斷題)動態(tài)模型用于界定系統(tǒng)的邊界,定義系統(tǒng)和環(huán)境之間的依賴關(guān)系。
·?A. 對
·?B. 錯
正確答案:?錯
49.?(判斷題)劃分模塊盡量做到高內(nèi)聚、低耦合,保持模塊的獨立性。?
·?A. 對
·?B. 錯
正確答案:?對
50.?(判斷題)在ER圖中,基本成分包括數(shù)據(jù)、對象和實體。?
·?A. 對
·?B. 錯
正確答案:?錯
51.?(判斷題)數(shù)據(jù)流圖是進行軟件需求分析的常用工具,其基本圖形符號是外部實體、數(shù)據(jù)流、過程和數(shù)據(jù)存儲。?
·?A. 對
·?B. 錯
正確答案:?對
三
1.?(單選題)軟件生命周期中,不包括下面哪個時期( )。
·?A.?軟件定義?
·?B. 軟件開發(fā)
·?C. 詳細設計
·?D. 軟件維護
正確答案:?C:詳細設計;
2.?(單選題)按軟件生命周期方法設計軟件的過程中,畫數(shù)據(jù)流圖屬于下面哪個階段的工作(? )
·?A.?需求分析?
·?B. 程序設計
·?C. 詳細設計
·?D. 軟件維護
正確答案:?A:需求分析 ;
3.?(單選題)進行軟件需求分析可使用多種工具,其中不包括以下哪一個(? ?)
·?A. 數(shù)據(jù)流圖
·?B. ER圖
·?C. 程序流程圖
·?D. 數(shù)據(jù)字典
正確答案:?C:程序流程圖;
4.?(單選題)面向?qū)ο蠓椒ǖ挠美龍D中, (? ?)關(guān)系表示一個用例的執(zhí)行可能需要由其他用例的功能來擴展。
·?A.?<extend>
·?B.?<include>
·?C.?<use>
·?D.?<public>
正確答案:?A:<extend>;
5.?(單選題)在UML中,通過建立類圖來表示(? ?)
·?A.?功能模型
·?B. 狀態(tài)模型
·?C. 行為模型
·?D. 對象模型
正確答案:?D:對象模型;
6.?(單選題)在軟件的分析階段,常用(? )來描述業(yè)務處理系統(tǒng)的信息來源、存儲、處理和去向。?
·?A. ER圖
·?B. 框圖
·?C. 數(shù)據(jù)流圖
·?D. 時序圖
正確答案:?C:數(shù)據(jù)流圖;
7.?(單選題)數(shù)據(jù)字典是軟件需求分析階段的最重要工具之一,其最基本的功能是( )。
·?A. 數(shù)據(jù)庫設計
·?B. 數(shù)據(jù)通信
·?C. 數(shù)據(jù)定義
·?D. 數(shù)據(jù)維護
正確答案:?C:數(shù)據(jù)定義;
8.?(單選題)結(jié)構(gòu)化設計是一種面向( )的設計方法。
·?A. 數(shù)據(jù)流
·?B. 模塊
·?C. 數(shù)據(jù)結(jié)構(gòu)
·?D. 程序
正確答案:?A:數(shù)據(jù)流;
9.?(單選題)下列的基本成分中,( )不是數(shù)據(jù)流圖的基本成分。
·?A. 信息處理
·?B. 信息存儲
·?C. 源點終點
·?D. 系統(tǒng)狀態(tài)
正確答案:?D:系統(tǒng)狀態(tài);
10.?(單選題)分層數(shù)據(jù)流圖是一種比較嚴格又易于理解的描述方式,它的頂層數(shù)據(jù)流圖描述了系統(tǒng)的(? )。
·?A. 總貌
·?B. 細節(jié)
·?C. 抽象
·?D. 軟件作用
正確答案:?A:總貌;
11.?(單選題)?數(shù)據(jù)流圖(DFD)中的每個數(shù)據(jù)處理至少需要( )。
·?A.?一個輸入數(shù)據(jù)流?
·?B.?一個輸出數(shù)據(jù)流?
·?C.?一個輸入或者輸出數(shù)據(jù)流?
·?D.?一個輸入數(shù)據(jù)流和一個輸出流?
正確答案:?D:一個輸入數(shù)據(jù)流和一個輸出流 ;
12.?(單選題)UML中描述類與類之間關(guān)系的圖是( )。
·?A. 用例圖
·?B. 類圖
·?C. 包圖
·?D. 順序圖
正確答案:?B:類圖;
13.?(單選題)( )反映了類間的一種層次關(guān)系。
·?A. 繼承
·?B. 抽象
·?C. 封裝
·?D. 多態(tài)
正確答案:?A:繼承;
14.?(單選題)對象實現(xiàn)了數(shù)據(jù)和操作的結(jié)合,使數(shù)據(jù)和操作( )于對象的統(tǒng)一體中。
·?A. 結(jié)合
·?B. 隱藏
·?C. 封裝
·?D. 抽象
正確答案:?C:封裝;
15.?(單選題)對象實現(xiàn)了數(shù)據(jù)和操作的結(jié)合,使數(shù)據(jù)和操作( ? )于對象的統(tǒng)一體中。
·?A.?結(jié)合? ? ? ?
·?B. 隱藏
·?C. 封裝
·?D. 抽象
正確答案:?C:封裝;
16.?(單選題)面向?qū)ο蟮闹饕卣鞒龑ο笪┮恍?、封裝、繼承外,還有(?)。
·?A. 多態(tài)性
·?B. 完整性
·?C. 可移植性
·?D. 兼容性
正確答案:?A:多態(tài)性;
17.?(單選題)在?ATM 自動取款機的工作模型中(用戶通過輸入正確的用戶資料,從銀行取錢的過程),下面哪個是參與者 ( ? )。
·?A. 用戶
·?B. ATM提款機
·?C. ATM提款機管理員
·?D. 取款
正確答案:?A:用戶;
18.?(單選題)( ? ?)是比較理想的可重用軟構(gòu)件。
·?A. 子程序庫
·?B.?源代碼包含文件?
·?C. 對象
·?D. 類
正確答案:?D:類;
19.?(單選題)系統(tǒng)分析員 Analyst 在做儲蓄系統(tǒng)的需求開發(fā)時,發(fā)現(xiàn):①“取款”用例、②“查詢余額”用例、③“更改密碼”用例都要使用、④“驗證卡號和密碼”用例的功能。那么①②③ 3 個用例與用例④的關(guān)系是( )。
·?A.?使用關(guān)系? ? ? ?
·?B. 擴展關(guān)系?
·?C. 組成關(guān)系?
·?D. 包含關(guān)系?
正確答案:?D:包含關(guān)系 ;
20.?(單選題)
“確定軟件系統(tǒng)必須做什么”是哪個階段的任務(??? )
?
·?A.?可行性分析和項目開發(fā)計劃?
·?B.?需求分析
·?C.?概要設計
·?D.?詳細設計
正確答案:?B:需求分析;
21.?(單選題)軟件生產(chǎn)過程中,需求信息由(???? )給出。
·?A.?程序員
·?B.?項目管理者
·?C.?軟件分析設計人員
·?D.?軟件用戶
正確答案:?D:軟件用戶;
22.?(填空題)用戶需求應當描述( )需求和( )需求,以使不具有詳細的技術(shù)知識的系統(tǒng)用戶也可以理解。
正確答案:
(1) 功能性
(2) 非功能性
23.?(填空題)系統(tǒng)( )是用戶需求的詳述版本,軟件工程師將其用作系統(tǒng)( )的起始點。
正確答案:
(1) 需求
(2) 設計
24.?(填空題)用例是圖形化模型和結(jié)構(gòu)化文本描述( )與系統(tǒng)間( )的方式。
正確答案:
(1) 用戶
(2) 交互
25.?(填空題)軟件( )規(guī)格說明是關(guān)于系統(tǒng)開發(fā)者應當實現(xiàn)的所有東西的正式( )。
正確答案:
(1) 需求
(2) 陳述
26.?(填空題)( )確認是檢查( )是否定義了客戶真正想要的系統(tǒng)的過程。
正確答案:
(1) 需求
(2) 需求
28.?(填空題)
1.軟件工程包括支持軟件(? ? )、設計和維護的相關(guān)技術(shù),而這些通常都與個人化的軟件開發(fā)無關(guān)。
2.(? ? )是對象和對象類的合集,它們一起運行以提供相關(guān)的功能和服務。
3.(? ? )不僅僅關(guān)注軟件開發(fā)的技術(shù)過程,它也包括其他一些活動,例如軟件項目管理以及支持軟件開發(fā)的工具、方法和理論的開發(fā)。
4.軟件失效很多都源于以下兩方面的因素:不斷增長的系統(tǒng)(? ? );未有效采用軟件工程方法。
5.描述軟件過程重要的是描述涉及的人、產(chǎn)生什么以及影響(? ? )的條件。
6.通用過程模型可以看作是一種過程(? ? ),可以通過擴展和調(diào)整來創(chuàng)建更加特定的軟件工程過程。
7.增量式開發(fā)模型中,規(guī)格說明、開發(fā)和確認活動(? ? )進行。系統(tǒng)開發(fā)體現(xiàn)為一系列的版本(增量),每個版本增加一些功能。
8.瀑布模型中每個階段結(jié)果是一個或多個(? ? )通過的文檔。
9.增量式開發(fā)模型在(? ? )方法中,早期增量是確定好的,后面的增量開發(fā)則取決于進度和客戶優(yōu)先級。
10.軟件開發(fā)的實現(xiàn)階段是開發(fā)一個(? ? )的系統(tǒng)以交付給客戶的過程。
?
正確答案:
(1) 規(guī)格說明
(2)
構(gòu)件
(3)
軟件工程
(4)復雜性
(5)活動序列
(6) 框架
(7) 交錯
(8) 審批
(9) 敏捷
(10) 可執(zhí)行
29.?(填空題)
11.軟件確認目的是確定系統(tǒng)是否符合它的(? ? ),并是否符合系統(tǒng)客戶期望。
12.(? ? )通常被認為是軟件工程過程的第一個階段。
13.功能性系統(tǒng)需求將用戶需求展開,是面向系統(tǒng)(? ? )描述的,應該詳細描述系統(tǒng)功能,系統(tǒng)的輸入、輸出和異常。
14.需求規(guī)格說明是在需求文檔中撰寫(? ? )和系統(tǒng)需求的過程。
15.用戶需求應當描述(? ? )需求和非功能性需求,以使不具有詳細的技術(shù)知識的系統(tǒng)用戶也可以理解。
16.用例是圖形化模型和結(jié)構(gòu)化文本描述用戶與系統(tǒng)間(? ? )的方式。
17.(? ? )是檢查需求是否定義了客戶真正想要的系統(tǒng)的過程。
18.活動圖是一種表述過程基理、(? ? )以及工作流的技術(shù)。
19.使用順序圖,建模系統(tǒng)(? ? )之間交互,也可以包含外部主體。
20.泛化關(guān)系在Java等面向?qū)ο笳Z言中,通過(? ? )的機制來實現(xiàn)。
正確答案:
(1)?規(guī)格說明
(2)需求工程
(3)開發(fā)者
(4)用戶
(5)功能性
(6)?交互
(7)?需求確認
(8)?業(yè)務過程
(9)?構(gòu)件
(10)?類繼承
30.?(填空題)
21.行為模型是描述當系統(tǒng)對來自環(huán)境的激勵進行響應時發(fā)生什么或者應該發(fā)生什么。其中的激勵可以是(? ? )或事件。
22.數(shù)據(jù)驅(qū)動模型描述處理(? ? )以及生成相關(guān)輸出過程所涉及的動作序列。
23.體系結(jié)構(gòu)設計是一個(? ? )的過程,需要設計一個滿足系統(tǒng)功能性和非功能性需求的系統(tǒng)組織結(jié)構(gòu)。
24.軟件體系結(jié)構(gòu)視圖模型提出應當有4個基本的體系結(jié)構(gòu)視圖是(? ? )、進程視圖、開發(fā)視圖和物理視圖。
25. B-S模型優(yōu)勢在于它是一個(? ? )體系結(jié)構(gòu),帶有很多分布式處理器的網(wǎng)絡化系統(tǒng)可以獲得有效的使用。
26. 語言處理系統(tǒng)將一種語言(? ? )為另一種表示方式,對于編程語言還可以執(zhí)行所產(chǎn)生的代碼。
27. 面向?qū)ο笤O計過程包括設計(? ? )以及這些類之間的關(guān)系。
28. 系統(tǒng)上下文模型是一種(? ? )模型,其中展示了所開發(fā)的系統(tǒng)的環(huán)境中的其他系統(tǒng)。
29. 設計過程中一個重要步驟是決定所需要的(? ? )及模型所需要的詳細程度。
30. 模式是一種對于問題及其(? ? )的本質(zhì)的描述,從而可以在不同的環(huán)境中進行復用。
正確答案:
(1) 數(shù)據(jù)
(2)輸入數(shù)據(jù)
(3)創(chuàng)造性
(4)邏輯視圖
(5)分布式
(6) 翻譯
(7) 對象類
(8) 結(jié)構(gòu)化
(9) 設計模型
(10) 解決方案
31.?(填空題)基本的軟件工程活動有軟件規(guī)格說明、(?????)、軟件確認和軟件維護。
正確答案:
(1) 軟件開發(fā)
32.?(填空題)
注意:本組題目是判斷題,在每題對應位置填且僅能填對或錯。
1.增量式開發(fā)降低了實現(xiàn)需求變更的成本。
2.采用面向復用的開發(fā)方法還會失去一些對系統(tǒng)維護的控制。
3.非功能性需求經(jīng)常適用于系統(tǒng)整體和單個系統(tǒng)特征或服務。
4.類圖對軟件系統(tǒng)中的對象類的動態(tài)結(jié)構(gòu)進行建模。
5.功能性需求對于系統(tǒng)體系結(jié)構(gòu)的影響最大。
6.最好是將體系結(jié)構(gòu)設計作為一系列決策而不是活動序列。
7.客戶-服務器模式描述了一種常用的分布式系統(tǒng)運行時組織方式。
8.任何軟件設計過程第一個階段都是理解所設計的軟件與外部環(huán)境間關(guān)系。
9.狀態(tài)機模型展示了對象如何在事件響應中改變自己的狀態(tài)。
10.對象與接口間是一對一關(guān)系。
?
正確答案:
(1) 對
(2) 對
(3) 錯
(4) 錯
(5) 錯
(6) 對
(7) 對
(8) 對
(9) 對
(10) 錯
33.?(填空題)功能性系統(tǒng)需求將( )需求展開,是面向系統(tǒng)開發(fā)者描述的,應該詳細描述系統(tǒng)功能,系統(tǒng)的輸入、輸出和異常。
正確答案:
(1) 用戶
34.?(填空題)軟件開發(fā)的實現(xiàn)階段是開發(fā)一個( )的系統(tǒng)以交付給客戶的過程。
正確答案:
(1) 可執(zhí)行
35.?(填空題)B-S體系結(jié)構(gòu)被認為是(?????)系統(tǒng)體系結(jié)構(gòu)。重要優(yōu)勢仍然是分離性和獨立性。
正確答案:
(1) 分布式
36.?(填空題)軟件確認目的是確定系統(tǒng)是否符合它的(? ? ),并是否符合系統(tǒng)客戶期望。
正確答案:
(1) 規(guī)格說明
37.?(判斷題)目前的絕大多數(shù)軟件都不適合于快速原型技術(shù)。
·?A. 對
·?B. 錯
正確答案:?錯
38.?(判斷題)文檔是軟件產(chǎn)品的一部分,沒有文檔的軟件就不稱其為軟件。
·?A. 對
·?B. 錯
正確答案:?對
39.?(判斷題)瀑布模型適用于項目開始時需求不確定的情況。
·?A. 對
·?B. 錯
正確答案:?錯
40.?(判斷題)采用面向復用的開發(fā)方法還會失去一些對系統(tǒng)維護的控制。
·?A. 對
·?B. 錯
正確答案:?對
41.?(判斷題)增量式開發(fā)降低了實現(xiàn)需求變更的成本。
·?A. 對
·?B. 錯
正確答案:?對
42.?(判斷題)非功能性需求經(jīng)常適用于系統(tǒng)整體和單個系統(tǒng)特征或服務。
·?A. 對
·?B. 錯
正確答案:?錯
43.?(判斷題)類圖對軟件系統(tǒng)中的對象類的動態(tài)結(jié)構(gòu)進行建模。
·?A. 對
·?B. 錯
正確答案:?錯
44.?(判斷題)功能性需求對于系統(tǒng)體系結(jié)構(gòu)的影響最大。
·?A. 對
·?B. 錯
正確答案:?錯
45.?(判斷題)最好是將體系結(jié)構(gòu)設計作為一系列決策而不是活動序列。
·?A. 對
·?B. 錯
正確答案:?對
46.?(判斷題)客戶-服務器模式描述了一種常用的分布式系統(tǒng)運行時組織方式。
·?A. 對
·?B. 錯
正確答案:?對
47.?(判斷題)
狀態(tài)機模型展示了對象如何在事件響應中改變自己的狀態(tài)。
?
·?A. 對
·?B. 錯
正確答案:?對
48.?(判斷題)對象與接口間是一對一關(guān)系。
·?A. 對
·?B. 錯
正確答案:?錯
四
1.?(單選題)需求分析的產(chǎn)品是( )
?
·?A.?數(shù)據(jù)流程圖案
·?B.?數(shù)據(jù)字典
·?C.?判定表
·?D.?需求規(guī)格說明書
正確答案:?D:需求規(guī)格說明書;
2.?(單選題)軟件需求規(guī)格說明的內(nèi)容不應包括( )。
·?A.?主要功能
·?B.?算法的詳細描述
·?C.?用戶界面及運行環(huán)境
·?D.軟件的性能
正確答案:?B:算法的詳細描述;
3.?(單選題)軟件可行性一般不考慮()。
·?A.?是否有足夠的人員和相關(guān)的技術(shù)來支持系統(tǒng)開發(fā)?
·?B.?待開發(fā)的軟件是否有質(zhì)量問題
·?C.?待開發(fā)的軟件是否有市場,經(jīng)濟上是否合算
·?D.是否有足夠的工具和相關(guān)的技術(shù)來支持系統(tǒng)開發(fā)
正確答案:?B:待開發(fā)的軟件是否有質(zhì)量問題;
4.?(單選題)
不適于作為數(shù)據(jù)流圖處理(加工)框名稱的是()。
?
·?A.?人工校核工資數(shù)據(jù)?
·?B.?工資支票數(shù)據(jù)?
·?C.?打印工資支票
·?D.計算職工工資
正確答案:?B:工資支票數(shù)據(jù) ;
5.?(單選題)
使用實體聯(lián)系圖(ER圖)建立的概念性數(shù)據(jù)模型中包括3種互相關(guān)聯(lián)的信息(? ?)。
?
·?A.?數(shù)據(jù)對象,屬性,方法
·?B.?數(shù)據(jù)對象,屬性,聯(lián)系
·?C.?數(shù)據(jù)表,屬性,聯(lián)系
·?D.數(shù)據(jù)表,實體,聯(lián)系
正確答案:?B:數(shù)據(jù)對象,屬性,聯(lián)系;
6.?(單選題)詳細設計的結(jié)果基本決定了最終程序的(????)。
·?A.?代碼的規(guī)模
·?B.?運行速度
·?C.?質(zhì)量
·?D.?可維護性
正確答案:?C:質(zhì)量;
7.?(單選題)在軟件系統(tǒng)中,一個模塊應具有什么樣的功能,這是由(????)決定的。
·?A.?總體設計
·?B.?需求分析
·?C.?詳細設計
·?D.程序設計
正確答案:?B:需求分析;
8.?(單選題)
結(jié)構(gòu)化程序設計思想的核心是要求程序只有順序,循環(huán)和(??? )三種結(jié)構(gòu)組成。
?
·?A.?分支?
·?B.?單入口?
·?C.?單出口
·?D.?有規(guī)則GOTO
正確答案:?A:分支 ;
9.?(單選題)軟件設計中設計復審是和設計本身一樣重要的環(huán)節(jié),其主要目的和作用是()。
·?A.?減少測試工作量
·?B.?減免后期付出高代價
·?C.?保證軟件質(zhì)量
·?D.縮短軟件開發(fā)周期
正確答案:?B:減免后期付出高代價;
10.?(單選題)
面向?qū)ο蟪绦蛟O計將描述事物的數(shù)據(jù)與()封裝在一起,作為一個相互依存、不可分割的整體來處理。
?
·?A.?信息
·?B.?數(shù)據(jù)隱藏
·?C.?對數(shù)據(jù)的操作
·?D.數(shù)據(jù)抽象
正確答案:?C:對數(shù)據(jù)的操作;
11.?(單選題)()是表達系統(tǒng)類及其相互聯(lián)系的圖示,它是面向?qū)ο笤O計的核心,建立狀態(tài)圖、協(xié)作圖和其他圖的基礎(chǔ)。
·?A.?對象圖
·?B.?組件圖
·?C.?類圖
·?D.?配置圖
正確答案:?C:類圖;
12.?(單選題)對象和類之間存在著關(guān)聯(lián)關(guān)系,利用對象的()特征可以實現(xiàn)對象的多態(tài)性。
·?A.?惟一性
·?B.?分類性
·?C.?繼承性
·?D.封裝性
正確答案:?C:繼承性;
13.?(單選題)
一個類的上層可以有父類,下層可以有子類,這種層次結(jié)構(gòu)系統(tǒng)的一個重要性質(zhì)是():一個類獲得其父類的全部描述(數(shù)據(jù)和操作)。
?
·?A.?傳遞性?
·?B.?繼承性
·?C.?復用性
·?D.并行性
正確答案:?B:繼承性;
14.?(單選題)面向?qū)ο蠓椒▽W中,動態(tài)模型的描述工具是()。
·?A.?對象圖
·?B.?結(jié)構(gòu)圖
·?C.?狀態(tài)圖
·?D.?設計圖
正確答案:?C:狀態(tài)圖;
15.?(單選題)
火車是一種陸上交通工具,火車和陸上交通工具之間的關(guān)系是()關(guān)系。
?
·?A.?組裝整體與部分
·?B.?具體與一般
·?C.?共享聚集
·?D.普通關(guān)聯(lián)
正確答案:?B:具體與一般;
16.?(單選題)面向?qū)ο蠹夹g(shù)中,對象是類的實例,對象的成份不包括(?????)
·?A.?標識
·?B.?規(guī)則
·?C.?屬性
·?D.?方法
正確答案:?B:規(guī)則;
二. 填空題(共15題,48.8分)
17.?(填空題)用例是圖形化模型和結(jié)構(gòu)化文本描述用戶與系統(tǒng)間(? ? )的方式。
?
正確答案:
(1) 交互
18.?(填空題)(? ? )通常被認為是軟件工程過程的第一個階段。
正確答案:
(1) 需求工程
19.?(填空題)軟件體系結(jié)構(gòu)視圖模型提出應當有4個基本的體系結(jié)構(gòu)視圖是(? ? )、進程視圖、開發(fā)視圖和物理視圖。
正確答案:
(1) 邏輯視圖
20.?(填空題)軟件工程是____,涵蓋了軟件生產(chǎn)各個方面,從初始的構(gòu)想到____。
?
正確答案:
(1) 工程學科
(2) 運行和維護
21.?(填空題)基本的軟件工程活動有軟件規(guī)格說明、____、____和軟件維護。
正確答案:
(1) 軟件開發(fā)
(2) 軟件確認
22.?(填空題)好的軟件應當向用戶提供所需功能與性能,好的____、____和____。
正確答案:
(1) 可維護性
(2) 可依賴性
(3) 可用性
23.?(填空題)軟件產(chǎn)品有兩類:____和____
正確答案:
(1) 通用軟件產(chǎn)品
(2) 定制化軟件產(chǎn)品。
24.?(填空題)大多數(shù)軟件項目中都存在一定程度的____
?
正確答案:
(1) 軟件復用。
25.?(填空題)信息系統(tǒng)設計過程中可能包含體系結(jié)構(gòu)設計、____、____和構(gòu)件選取和設計。
正確答案:
(1) 數(shù)據(jù)庫設計
(2) 接口設計
26.?(填空題)定義系統(tǒng)的功能性需求,輔以文本注釋的____。(UML)用例和____被廣泛使用。
正確答案:
(1) 圖形化模型
(2) 順序圖
27.?(填空題)圖形化的系統(tǒng)模型,顯示系統(tǒng)構(gòu)件之間以及系統(tǒng)及其環(huán)境之間的____。可能的模型包括對象模型、____或語義數(shù)據(jù)模型
正確答案:
(1) 關(guān)系
(2) 數(shù)據(jù)流模型
28.?(填空題)數(shù)據(jù)字典應該由數(shù)據(jù)流、____、處理和____的定義組成。
正確答案:
(1) 數(shù)據(jù)存儲
(2) 數(shù)據(jù)流分量
29.?(填空題)B-S體系結(jié)構(gòu)被認為是____系統(tǒng)體系結(jié)構(gòu)。重要優(yōu)勢仍然是____和獨立性。
正確答案:
(1) 分布式
(2) 分離
30.?(填空題)
用例是圖形化模型和結(jié)構(gòu)化文本描述(????)與系統(tǒng)間交互的方式。
?
?
正確答案:
(1) 用戶
31.?(填空題)使用順序圖,建模系統(tǒng)構(gòu)件之間(??? ),也可以包含外部主體。
正確答案:
(1) 交互
?
?