[課程複習] 軟體工程導論之經典題目回顧 (一)選擇題、填空題1
作者最近在複習考博,乘此機會分享一些電腦科學與技術、軟體工程等相關專業課程考題,一方面分享給考研、考博、找工作的博友,另一方面也是自己今後完成這些課程的複習資料,同時也是線上筆記。基礎知識,希望對您有所幫助,不喜勿噴~
《軟體工程導論 · 張海藩》
一.概述
題目:
1、軟體生命週期一般都被劃分為若干個獨立的階段,其中佔用精力和費用最多的階段往往是( )。
A. 維護階段
B. 設計階段
C. 程式碼實現階段
D. 測試階段
2、軟體工程的出現是由於____________________。
3、計算機軟體不僅僅是程式,還應該有一整套_______________。
4、傳統的軟體生存期模型是______________。
5、軟體按照功能的不同可以劃分為3大型別_______、________ 和 ________。
6、軟體工程由方法、工具和 ______ 三部分組成。
7、計算機系統工程包含硬體、軟體、人機及 ________ 工程。
8、結構化程式設計主要強調程式的( )。
A.效率 B.速度 C.可讀性 D.大小
9、程式的三種基本控制結構是:_______ 、 _________ 、 __________。
10、結構設計是一種應用最廣泛的系統設計方法,是以 ______ 為基礎、自頂向下、逐步求精和模組化的過程。
解析:
1、軟體生命週期分為問題定義、可行性分析、需求分析、總體設計、詳細設計、編碼和單元測試、綜合測試、軟體維護八個階段。其中,軟體維護的成本和人力最高,其目的是提高軟體的可維護性,減少軟體維護所需的工作量,降低軟體系統的總成本。
2、軟體危機是指在計算機軟體的開發和維護過程中所遇到的一系列嚴重問題。主要表現為:(1)對軟體開發成本和進度的估計不準確;(2)使用者對已完成的軟體系統不滿意的現象經常發生;(3)軟體產品的質量往往靠不住;(4)軟體沒有適當的文件資料;(5)軟體不可維護;(6)軟體成本在計算機系統中所佔比例逐年上升;(7)軟體開發生產率提高的速度跟不上計算機應用普及趨勢。
3、快速原型模型可以有效地適應使用者需求的動態變化。
6、軟體工程方法學包含3個要素:方法、工具、過程。 方法回答“怎麼做”,工作提供支撐環境,過程是一系列的框架,規定各項任務的工作步驟。
7、計算機系統工程是用工程、科學和數學的原則與方法研製基於計算機的系統的有關技術、方法和過程。包括系統分析員、硬體和硬體工程、軟體和軟體工程、人與人類工程、資料庫和資料庫工程。
8、結構化程式設計主要強調的是程式易讀性。
答案:
1、A
2、軟體危機的出現
3、文件
4、瀑布模型
5、系統軟體、支援軟體、應用軟體
6、過程
7、資料庫
8、C
9、順序、選擇、重複
10、資料流
二.可行性分析
題目:
1、程式流程圖中的“→”代表( )。
A. 資料流 B. 控制流 C. 順序流 D. 呼叫
2、DFD中的“→”代表( )。
A. 資料流 B. 檔案 C. 處理 D. 控制流
3、DFD中的“○”代表( )。
A. 資料流 B. 檔案 C. 處理 D. 控制流
4、DFD中的“_”代表( )。
A. 資料流 B. 檔案 C. 處理 D. 控制流
5、DFD在軟體工程中表示__________。
6、資料流圖有四種基本成分_______ 、________ 、________ 、________。
7、資料字典有以下四類條目:_______ 、_______ 、________ 、________。_______是組成資料流和資料儲存的最小元素。
8、瀑布模型的關鍵不足在於( )
A.過於簡單
B.不能適應需求的動態變更
C.過於靈活
D.各個階段需要進行評審
9、軟體質量(可維護性、可理解性、可靠性)很大程度取決於( )
A.程式設計師的程式設計水平
B.模組分解的合理
C.程式執行效率
D.演算法的合理性
10、結構化分析SA 方法以資料流圖、( )和加工說明等描述工具,即用直觀的圖和簡潔的語言來描述軟系統模型。
A.DFD圖 B.資料字典 C.IPO 圖 D.PAD 圖
解析:
資料流圖(Data Flow Diagram):簡稱DFD,它從資料傳遞和加工角度,以圖形方式來表達系統的邏輯功能、資料在系統內部的邏輯流向和邏輯變換過程,是結構化系統分析方法的主要表達工具及用於表示軟體模型的一種圖示方法。
資料流圖包括四個成分:資料流 、加工(資料處理)、資料儲存(檔案)、 資料的源點或終點。
資料流圖如下所示:
答案:
1、B
2、A
3、C
4、B
5、資料流圖
6、資料流 、加工(資料處理)、資料儲存(檔案)、 資料的源點或終點
7、資料流、資料項(資料元素)、資料儲存(檔案)、處理(加工)、資料項
8、B
9、B
10、B
三.需求分析
題目:
1、 需求分析階段最重要的技術文件是____________________。
2、資料字典是軟體需求分析階段的最重要工具之一,其最基本的功能是( )。
A. 資料庫設計
B. 資料通訊
C. 資料定義
D. 資料維護
3、需求分析階段的研究物件是( )。
A. 系統分析員要求
B. 使用者要求
C. 軟硬體要求
D. 系統要求
4、 軟體生產過程中,需求資訊由( )給出。
A.程式設計師 B.專案管理者 C.軟體分析設計人員 D.軟體使用者
5、軟體需求規格說明的內容不應包括( )。
A.主要功能
B.演算法的詳細描述
C.使用者介面及執行環境
D.軟體的效能
6、在E-R 模型中,包含以下基本成分( )。
A.資料、物件、實體
B.控制、聯絡、物件
C.實體、聯絡、屬性
D.實體、屬性、操作
解析:
1、傳統軟體工程學使用結構化分析技術完成分析使用者需求的工作,需求分析是發現、求精、建模、規格說明和複審的過程。需求分析階段會的最終成果是軟體需求規格說明書,通常主要從一致性、完整性、現實性和有效性4個方面複審軟體需求規格說明書。
2、資料字典是關於資料的資訊的集合,也就是對資料流圖中包含的所有元素的定義的集合。資料字典的作用是在軟體分析和設計過程中給人提示有關資料的描述資訊,其最基本功能是資料定義。
資料字典由4類元素的定義組成:資料流、資料元素、資料儲存、處理。例如:名字、別名、描述、定義、位置。
3、需求分析是軟體定義時期(軟體定義、軟體開發、軟體維護)的最後一個階段,它的基本任務是準確地回答“系統必須做什麼”這個問題。而使用者才真正指導需要做什麼,所以研究物件是使用者要求的。總之,軟體生產過程中,需求是由軟體使用者給出的。
答案:
1、需求規格說明書
2、C
3、B
4、D
5、B
6、C
四.總體設計和詳細設計
題目:
1、結構化方法的基本原則是( )。
A.模組化 B.抽象與分解 C.資訊隱蔽 D.逐步求精
2、耦合度最高的是( )耦合。
A.環境 B.內容 C.控制 D.資料
3、內聚程度較低的是( )內聚。
A.偶然 B.通訊 C.順序 D.時間
4、畫軟體結構圖時應注意呼叫關係只能是( )。
A.從下到上 B.從上到下 C.從左到右 D.從右到左
5、________ 與 ________ 是模組獨立性的兩個定性標準,將軟體系統劃分模組時,儘量做到 _____ 內聚、_____ 耦合,提高模組的________,為設計高質量的軟體結構奠定基礎。
6、SA法中,有一個處理過程邏輯不易用語言表達清楚,最好是用( )來描述。
A、流程圖 B、判定表 C、NS圖 D、問題分析圖PAD
7、概要設計的結果是提供一份( )
A.模組說明書 B.框圖 C.程式 D.系統結構圖
8、SA法中,DFD圖的某個處理過程分解後,一般不超過( )處理過程
9、面向資料流的軟體設計方法,一般是把資料流圖中資料流劃分為( ),再將資料流圖對映為軟體結構。
A.資料流和事務流
B.交換流和事務流
C.資訊流和控制流
D.交換流和資料流
10、詳細設計的基本任務是確定每個模組的( )設計。
A.功能 B.呼叫關係 C.輸入輸出資料 D.演算法
11、設函式C(X)定義問題X 的複雜程式,函式E(X)確定解決問題X 需要的工作量(時間)。對於兩個問題P1 和P2,如果C(P1)>C(P2)顯然E(P1)>E(P2),則得出結論E(P1+P2)>E(P1)+E(P2)就是( )。
A.模組化的根據
B.逐步求精的根據
C.抽象的根據
D.資訊隱藏和區域性化的根據
12、模組的內聚性最高的是( )。
A.邏輯內聚
B.時間內聚
C.偶然內聚
D.功能內聚
解析:
1、結構化方法的啟發原則包括:(1)模組化 (2)抽象 (3)逐步求精 (4)資訊隱藏和區域性化 (5)模組獨立。
模組化,資訊隱藏,抽象和逐步求精的軟體設計原則有助於得到高內聚,低耦合度的軟體產品。
2-3、軟體設計講究高內聚低耦合。其中耦合最低的是資料耦合(傳遞引數),耦合最高的是內容耦合(建議不採用);內聚最高的是功能內聚,內聚最低的是偶然內聚。
6、判定表:有些加工的邏輯用語形式不容易表達清楚,而用表的形式則一目瞭然。如果一個加工邏輯有多個條件、多個操作,並且在不同的條件組合下執行不同的操作,就可以使用判定表來描述。判定樹和判定表沒有本質的區別,可以用判定表表示的加工邏輯都可以用判定樹來表示。
答案:
1、B
2、B
3、A
4、B
5、耦合性、內聚性、高、低、獨立性
6、B
7、A
8、7個
9、B
10、D
11、A
12、D
五.實現(編碼和測試)
題目:
1、以下語言中屬於4GL是( )
A.PB B.VB C.UML D.SQL
2、軟體測試中的測試例項主要由輸入資料和( )組成
A.測試規則
B.測試計劃
C.預期輸出結果
D.以往測試記錄分析
3、註釋是提高程式可讀性的有效手段,好的程式註釋佔到程式總量的( )
A.1/6 B.1/5 C.1/4 D.1/3
4、進行單元測試時,需要一個( )被測模組的程式。
A.傳遞 B.管理 C.呼叫 D.驅動
5、確認軟體的功能是否與需求規格說明書中所要求的功能相符的測試屬於_____ 。
6、與設計測試資料無關的文件是( )。
A.需求說明書 B.設計說明書 C.源程式 D.專案開發設計
7、各種軟體維護的型別中最重要的是( )。
A.完善性維護
B.糾錯性維護
C.適應性維護
D.預防性維護
8、軟體測試的目標是 ___________ 。
9、若有一個計算型別的程式,它的輸入量只有一個X,其範圍是[-1.0, 1.0],現從
輸入的角度考慮一組測試用例:-1.001, -1.0, 1.0, 1.001.設計這組測試用例的方法是( )。
A.條件覆蓋法
B.等價分類法
C.邊界值分析法
D.錯誤推測法
10、下面幾種白箱測試技術,哪種是最強的覆蓋準則( )
A.語句覆蓋
B.條件覆蓋
C.判定覆蓋
D.條件組合覆蓋
11、確定測試計劃是在( )階段制定的.
A.總體設計
B.詳細設計
C.編碼
D.測試
解析:
1、
第一代(1GL):機器語言
第二代(2GL):組合語言
第三代(3GL):高階語言
第四代(4GL):第四代語言是一個簡潔的、高效的非過程程式語言,用來提高DBMS的效率。在第四代語言中,使用者定義“做什麼”而不是“如何做”,如SQL。
4、單元測試(模組測試)主要測試編碼、詳細設計中錯誤,會用到驅動程式,主要採用白盒測試技術;整合測試(子系統測試和系統測試)主要測試模組介面和設計、編碼;確認測試(驗收測試)通常由使用者參與完成,確認是否滿足使用者的需求,採用黑盒測試技術。
答案:
1、D
2、C
3、D
4、D
5、確認測試
6、D
7、A
8、發現錯誤、降低錯誤帶來的風險
9、C
10、D
11、A
六.物件導向設計分析
題目:
1、在物件導向軟體開發方法中,類與類之間主要有以下結構關係( )
A.繼承和聚集
B.繼承和一般
C.聚集和訊息傳遞
D.繼承和方法呼叫
2、物件導向模型主要由以下哪些模型組成_______ 、_________ 、_________。
3、OOA中應首先識別( )。
A.物件 B.類 C.物件的屬性 D.物件所屬的類
4、以下哪一項不是物件導向的特徵( )。
A.多型性 B.繼承性 C.封裝性 D.過程呼叫
5、以下哪一項不屬於物件導向的軟體開發方法( )。
A.coad方法 B.Booch方法 C.jackson方法 D.OMT方法
6、物件導向技術中,物件是類的例項。物件有三種成份:()、屬性和方法(或操作)。
A. 標識 B. 規則 C. 封裝 D. 訊息
7、物件導向程式設計中的資料隱藏指的是( )。
A.輸入資料必須輸入保密口令
B.資料經過加密處理
C.物件內部資料結構上建有防火牆
D.物件內部資料結構的不可訪性
解析:
1、在物件導向的軟體開發方法中,每個類都存在其相應的物件,物件是類的例項,類是生成物件的模板。聚集又稱為聚合,表示類與類之間的關係是整體與部分的關係。
物件導向建模得到的模型包含系統的3個要素,即靜態結構、互動次序和資料變換。
2、物件導向模型主要包括物件模型、動態模型、功能模型。物件模型描述系統資料結構,動態模型描述系統控制結構,功能模型描述系統功能。一個典型的軟體系統組合了三方面內容:它使用資料結構(物件模型)、執行操作(動態模型),完成資料值的變化(功能模型)。
5、jackson方法是面向資料結構的設計方法。
答案:
1、A
2、物件模型、動態模型、功能模型
3、A
4、D
5、C
6、A
7、D
PS:最近參加CSDN2018年部落格評選,希望您能投出寶貴的一票。我是59號,Eastmount,楊秀璋。投票地址:https://bss.csdn.net/m/topic/blog_star2018/index
五年來寫了314篇部落格,12個專欄,是真的熱愛分享,熱愛CSDN這個平臺,也想幫助更多的人,專欄包括Python、資料探勘、網路爬蟲、影象處理、C#、Android等。現在也當了兩年老師,更是覺得有義務教好每一個學生,讓貴州學子好好寫點程式碼,學點技術,“師者,傳到授業解惑也”,提前祝大家新年快樂。2019我們攜手共進,為愛而生。
(By:Eastmount 2019-01-28 下午6點 http://blog.csdn.net/eastmount/ )
相關文章
- [課程複習] 資料結構之經典題目回顧 (一)選擇題、填空題1資料結構
- 《軟體工程導論》課後習題答案軟體工程
- 軟體測試經典面試題(1)面試題
- js經典題目JS
- 物聯網工程導論第二版答案選擇題
- 軟體工程練習題軟體工程
- 前端面試題 回顧與複習(更新中)前端面試題
- 軟體工程師課程輔導軟體工程工程師
- sql 經典面試題及答案(選課表)SQL面試題
- 部分JS經典題目解析JS
- DAY2微軟主題論壇完整回顧!微軟
- 博弈論題目選做
- 『Python題庫 – 填空題』151道Python筆試填空題Python筆試
- OOP課程·PTA題目集1-3總結OOP
- java課後題複習Java
- Day40--練習、選擇題1
- 錯題知識點回顧1
- 軟體測試經典測試題(4)
- 軟體測試經典面試題(3)面試題
- SQL經典練習題48道之一(1-10)SQL
- 學習高校課程-軟體工程-軟體工程(ch2)軟體工程
- 網路安全實驗室題目(選擇題篇)
- 線段樹經典題目(一定要做完)
- LeetCode經典題-篇一LeetCode
- 選擇結構程式設計之習題程式設計
- Day41--練習--選擇題錯題
- 經典題目螺旋方陣的詳解
- 每日一題:C語言經典例題之雞兔同籠每日一題C語言
- 必看,經典sql面試題1(學生表_課程表_成績表_教師表)SQL面試題
- 經典web開發工程師面試題Web工程師面試題
- 軟體測試崗位的經典面試題面試題
- AT 經典90題
- 經典問題之「分支預測」
- java第一次正式課程課後習題Java
- 軟體複用導致的軟體依賴問題 - research!rsc
- 經典排序之選擇排序(Java)排序Java
- 演算法學習回顧-皇后問題演算法
- 軟體測試工程師必會的面試題目工程師面試題