第一篇:10級地理信息系統(tǒng)考試試題軟件工程A1
東華理工大學10級地理信息系統(tǒng)專業(yè)
軟件工程期末試題A1卷
一,單項選擇題(本大題共20小題,每小題2分,共40分)
在每小題列出的四個選項中只有一個選項是符合題目要求的,請將正確選項前的字母填在題后的橫線上。
1.可行性研究要進行一次_____需求分析。
A.詳細的B.全面的 C.簡化的、壓縮的 D.徹底的 答案為C。
2.系統(tǒng)流程圖用于可行性分析中的_____的描述。
A.當前運行系統(tǒng) B.當前邏輯模型 C.目標系統(tǒng) D.新系統(tǒng)
選擇A。
3.系統(tǒng)流程圖是描述_____的工具。
A.邏輯系統(tǒng) B.程序系統(tǒng) C.體系結構 D.物理系統(tǒng) 答案:c
4._______工具在軟件詳細設計過程中不采用。
A.判定表 B.IPO圖 C.PDL D.DFD圖
5.程序的三種基本控制結構是
A.過程、子程序和分程序 B.順序、選擇和重復 C.遞歸、堆棧和隊列 D.調(diào)用、返回和轉(zhuǎn)移
6.程序的三種基本控制結構的共同特點是
A.不能嵌套使用 B.只能用來寫簡單程序 C.已經(jīng)用硬件實現(xiàn) D.只有一個入口和一個出口
7.產(chǎn)生軟件維護的副作用,是指
A.開發(fā)時的錯誤 B.隱含的錯誤 C.因修改軟件而造成的錯誤 D.運行時誤操作 8.維護中,因誤刪除一個標識符而引起的錯誤是_________副作用。
A.文檔 B.數(shù)據(jù) C.編碼 D.設計
9.可維護性的特性中相互促進的是
A.可理解性和可測試性 B.效率和可移植性 C.效率和可修改性
D.效率和結構好 10.汽車有一個發(fā)動機。汽車和發(fā)動機之間的關系是_____關系。
A.一般具體
B.整體部分 C.分類關系
D.主從關系
答案為C。
11.在變更控制中,______可以用來確保由不同用戶所執(zhí)行的并發(fā)變更。
A.異步控制 B.同步控制 C.存取控制 D.基線控制
12.變更控制是一項最重要的軟件配置任務,其中“檢出”和______處理實現(xiàn)了兩個重要的變更控制要素,即存取控制和同步控制。
A.登入 B.管理 C.填寫變更要求 D.審查
13.提高軟件質(zhì)量和可靠的技術大致可分為兩大類:其中一類就是避開錯誤技術,但避開錯誤技術無法做到完美無缺和絕無錯誤,這就需要
A.消除錯誤 B.檢測錯誤 C.避開錯誤 D.容錯
14._____是以提高軟件質(zhì)量為目的的技術活動。
A.技術創(chuàng)新 B.測試 C.技術創(chuàng)造 D.技術評審
15.面向?qū)ο蠓椒▽W的出發(fā)點和基本原則是盡可能模擬人類習慣的思維方式,分析、設計和實現(xiàn)一個軟件系統(tǒng)的方法和過程,盡可能接近于人類認識世界解決問題的方法和過程。因此面向?qū)ο蠓椒ㄓ性S多特征,如軟件系統(tǒng)是由對象組成的;________;對象彼此之間僅能通過傳遞消息互相聯(lián)系;層次結構的繼承。
(6)對軟件質(zhì)量進行度量。
33.什么是軟件危機?軟件危機的表現(xiàn)是什么?(20分)
解:軟件發(fā)展第二階段的末期,由于計算機硬件技術的進步,計算機運行速度、容量、可靠性有顯著的提高,生產(chǎn)成本顯著下降,這為計算機的廣泛應用創(chuàng)造了條件。一些復雜的、大型的軟件開發(fā)項目提出來了,但是,軟件開發(fā)技術的進步一直未能滿足發(fā)展的需要。在軟件開發(fā)中遇到的問題找不到解決辦法,使問題積累起來,形成了尖銳的矛盾,因而導致了軟件危機。(8分)
軟件危機表現(xiàn)在以下四個方面:
(1)經(jīng)費預算經(jīng)常突破,完成時間一再拖延。
(2)開發(fā)的軟件不能滿足用戶要求。
(3)開發(fā)的軟件可維護性差。
(4)開發(fā)的軟件可靠性差。
20分)
(
第二篇:10級地理信息系統(tǒng)考試試題軟件工程B1
東華理工大學10級地理信息系統(tǒng)專業(yè)
軟件工程期末試題B1卷
一,單項選擇題(本大題共20小題,每小題2分,共40分)
在每小題列出的四個選項中只有一個選項是符合題目要求的,請將正確選項前的字母填在題后的橫線上。
1.軟件測試方法中的靜態(tài)測試方法之一為()
A.計算機輔助靜態(tài)分析 B.黑盒法 C.路徑覆蓋 D.邊界值分析
答案為A。
2.系統(tǒng)流程圖用于可行性分析中的_____的描述。
A.當前運行系統(tǒng) B.當前邏輯模型 C.目標系統(tǒng) D.新系統(tǒng)
選擇A。
3.系統(tǒng)流程圖是描述_____的工具。
A.邏輯系統(tǒng) B.程序系統(tǒng) C.體系結構 D.物理系統(tǒng) 答案:c
4._______工具在軟件詳細設計過程中不采用。
A.判定表 B.IPO圖 C.PDL D.DFD圖
5.程序的三種基本控制結構是
A.過程、子程序和分程序 B.順序、選擇和重復 C.遞歸、堆棧和隊列 D.調(diào)用、返回和轉(zhuǎn)移
6.程序的三種基本控制結構的共同特點是
A.不能嵌套使用 B.只能用來寫簡單程序 C.已經(jīng)用硬件實現(xiàn) D.只有一個入口和一個出口
7.產(chǎn)生軟件維護的副作用,是指
A.開發(fā)時的錯誤 B.隱含的錯誤 C.因修改軟件而造成的錯誤 D.運行時誤操作 8.維護中,因誤刪除一個標識符而引起的錯誤是_________副作用。
A.文檔 B.數(shù)據(jù) C.編碼 D.設計
答案為C。
9.變更控制是一項最重要的軟件配置任務,其中“檢出”和______處理實現(xiàn)了兩個重要的變更控制 要素,即存取控制和同步控制。
A.登入 B.管理 C.填寫變更要求 D.審查
10.汽車有一個發(fā)動機。汽車和發(fā)動機之間的關系是_____關系。
A.一般具體
B.整體部分 C.分類關系
D.主從關系
11.在變更控制中,______可以用來確保由不同用戶所執(zhí)行的并發(fā)變更。
A.異步控制 B.同步控制 C.存取控制 D.基線控制
12.可維護性的特性中相互促進的是
A.可理解性和可測試性 B.效率和可移植性 C.效率和可修改性
D.效率和結構好
13.提高軟件質(zhì)量和可靠的技術大致可分為兩大類:其中一類就是避開錯誤技術,但避開錯誤技術無法做到完美無缺和絕無錯誤,這就需要
A.消除錯誤 B.檢測錯誤 C.避開錯誤 D.容錯
14.原型化方法是用戶和設計者之間執(zhí)行的一種交互構成,適用于______系統(tǒng)。
A.需求不確定性高的 B.需求確定的 C.管理信息 D.實時
15.面向?qū)ο蠓椒▽W的出發(fā)點和基本原則是盡可能模擬人類習慣的思維方式,分析、設計和實現(xiàn)一個軟件系統(tǒng)的方法和過程,盡可能接近于人類認識世界解決問題的方法和過程。因此面向?qū)ο蠓椒ㄓ性S多特征,如軟件系統(tǒng)是由對象組成的;________;對象彼此之間僅能通過傳遞消息互相聯(lián)系;層次結構的繼承。
A.開發(fā)過程基于功能分析和功能分解 B.強調(diào)需求分析重要性
C.把對象劃分成類,每個對象類都定義一組數(shù)據(jù)和方法 D.對既存類進行調(diào)整 16.軟件開發(fā)過程中,抽取和整理用戶需求并建立問題域精確模型的過程叫
A.生存期 B.面向?qū)ο笤O計 C.面向?qū)ο蟪绦蛟O計 D.面向?qū)ο蠓治?17._____是以提高軟件質(zhì)量為目的的技術活動。
A.技術創(chuàng)新 B.測試 C.技術創(chuàng)造 D.技術評審
18.原型化方法是一種_______型的設計過程。
A.自外向內(nèi) B.自頂向下 C.自內(nèi)向外 D.自底向上
19.為了提高測試的效率,應該
A.隨機地選取測試數(shù)據(jù) B.取一切可能的輸入數(shù)據(jù)作為測試數(shù)據(jù)
C.在完成編碼以后制定軟件的測試計劃 D.選擇發(fā)現(xiàn)錯誤可能性大的數(shù)據(jù)作為測試數(shù)據(jù)
20.使用白盒測試方法時,確定測試數(shù)據(jù)應根據(jù)_______和指定的覆蓋標準。
A.程序的內(nèi)部邏輯 B.程序的復雜結構 C.使用說明書 D.程序的功能
二,填空題(本大題共10小題,每小題2分,共20分)
21.系統(tǒng)流程圖是描述物理模型的傳統(tǒng)工具,用圖形符號表示系統(tǒng)中各個元素表達了系統(tǒng)中各種元素之間的(信息流動)情況。
22.成本效益分析的目的是從(經(jīng)濟)角度評價開發(fā)一個項目是否可行。
23. 所有軟件維護申請報告要按規(guī)定方式提出,該報告也稱(軟件問題)報告。
24.獨立路徑是指包括一組以前沒有處理的語句或條件的一條路徑。從程序圖來看,一條獨立路徑是至少包含有一條(在其他獨立路徑中未有過)的邊的路徑。
25.匯編語言是面向(機器)的,可以完成高級語言無法完成的特殊功能,如與外部設備之間的一些接口工作。
26.在JSP方法中解決結構沖突的具體辦法是(中間數(shù)據(jù)結構或中間文件)。
27.詳細設計的任務是確定每個模塊的內(nèi)部特性,即模塊的算法、(使用的數(shù)據(jù))。
28.自頂向下結合的漸增式測試法,在組合模塊時有兩種組合策略:深度優(yōu)先策略和(寬度優(yōu)先策略)。
29.有兩類維護技術:在開發(fā)階段使用來減少錯誤、提高軟件可維護性的面向維護的技術;在維護階段用來提高維護的效率和質(zhì)量的(維護支援)技術。
30.科學工程計算需要大量的標準庫函數(shù),以便處理復雜的數(shù)值計算,可供選擇的語言有:(FORTRAN語言)、PASCAL語言、C語言和PL/1語言。三.簡答題(本大題共4小題,共40分)
31.系統(tǒng)設計的內(nèi)容是什么?(10分)
解:系統(tǒng)設計階段先從高層入手,然后細化。系統(tǒng)設計要決定整個結構及風格,這種結構為后面設計階段的更詳細策略的設計提供了基礎。
(1)系統(tǒng)分解。
(2)確定并發(fā)性。
(3)處理器及任務分配。
(4)數(shù)據(jù)存儲管理。
(5)全局資源的處理。
32.軟件質(zhì)量保證應做好哪幾方面的工作?(10分)
解:軟件質(zhì)量保證是軟件工程管理的重要內(nèi)容,軟件質(zhì)量保證應做好以下幾方面的工作:(1)采用技術手段和工具。
第三篇:軟件工程試題
一,單項選擇題(本大題共20小題,每小題1分,共20分)
在每小題列出的四個選項中只有一個選項是符合題目要求的,請將正確選項前的字母填在題后的橫線上。
1.可行性研究要進行一次_____需求分析。
參考答案為:C
A.詳細的 B.全面的
C.簡化的、壓縮的D.徹底的
[解析]軟件的可行性研究的目的就是用最小的代價在盡可能短的時間內(nèi)確定該軟件項目是否能夠開發(fā),是否值得去開發(fā)。其實質(zhì)是要進行一次簡化、壓縮了的需求分析、設計過程,要在較高層次上以較抽象的方式進行需求分析和設計過程。因此答案為C。
2.系統(tǒng)流程圖用于可行性分析中的_____的描述。
參考答案為:A
A.當前運行系統(tǒng)
B.當前邏輯模型
C.目標系統(tǒng)
D.新系統(tǒng)
[解析]可行性研究首先要確定項目的規(guī)模和目標,然后就需要對當前運行的系統(tǒng)進行研究了,在考察系統(tǒng)的基礎上,通過描繪現(xiàn)有系統(tǒng)的高層系統(tǒng)流程圖,與有關人員一起審查該系統(tǒng)流程圖是否正確。描述的對象是當前正在運行的系統(tǒng),因此選擇A。
3.系統(tǒng)流程圖是描述_____的工具。
參考答案為:C
A.邏輯系統(tǒng)
B.程序系統(tǒng)
C.體系結構
D.物理系統(tǒng)
[解析]系統(tǒng)流程圖是用圖形符號來表示系統(tǒng)中的各個元素,例如人工處理、數(shù)據(jù)庫、設備等,流程圖表達了系統(tǒng)中各個元素之間的信息流動情況。是描繪物理系統(tǒng)的傳統(tǒng)工具。
4._______工具在軟件詳細設計過程中不采用。
參考答案為:D
A.判定表
B.IPO圖
C.PDL
D.DFD圖
[解析]詳細描述處理過程常用三種工具:圖形、表格和語言。其中圖形工具有結構化流程圖、盒圖和問題分析圖三種,答案中的判定表是用來表示復雜的條件組合與應做的動作之間的對應關系。IPO圖用來描述每個模塊輸入/輸出數(shù)據(jù)、處理功能及模塊調(diào)用的詳細情況。PDL是過程設計語言的縮寫,也稱程序描述語言,用于描述模塊算法設計和處理細節(jié)的語言,這三種都可以在軟件詳細設計過程中使用,而DFD圖則是數(shù)據(jù)流圖,是以圖形的方式描繪數(shù)據(jù)在系統(tǒng)中流動和處理的過程,只反映系統(tǒng)必須完成的邏輯功能,所以它只是一種功能模型,不能在詳細設計過程中使用。
5.程序的三種基本控制結構是
參考答案為:B
A.過程、子程序和分程序
B.順序、選擇和重復
C.遞歸、堆棧和隊列
D.調(diào)用、返回和轉(zhuǎn)移
[解析]程序的三種基本控制結構是順序、選擇和循環(huán)(重復)。子程序只是程序設計一種方法,遞歸則是一種算法,都算不上是控制結構。
6.程序的三種基本控制結構的共同特點是
參考答案為:D A.不能嵌套使用
B.只能用來寫簡單程序
C.已經(jīng)用硬件實現(xiàn)
D.只有一個入口和一個出口
[解析]程序的特點就是從一個入口開始,最終以一個出口結束,其間可以用順序,選擇和循環(huán)方式對程序的流向進行控制。三種結構可以寫出非常復雜的程序,而且選擇和循環(huán)都可以嵌套設計。
7.產(chǎn)生軟件維護的副作用,是指
參考答案為:C
A.開發(fā)時的錯誤
B.隱含的錯誤
C.因修改軟件而造成的錯誤
D.運行時誤操作
[解析]因修改軟件而造成的錯誤或其他不希望出現(xiàn)的情況稱為維護的副作用,包括編碼副作用、數(shù)據(jù)副作用、文檔副作用三種。只有答案C是正確的表述。
8.維護中,因誤刪除一個標識符而引起的錯誤是_________副作用。
參考答案為:C
A.文檔
B.數(shù)據(jù)
C.編碼
D.設計
[解析]編碼副作用指的是在使用程序設計語言修改源代碼時可能引入錯誤,比如刪除或修改一個子程序、一個標號、一個標識符,改變程序代碼的時序關系,修改文件的打開或關閉等。因此本題答案為C。
9.可維護性的特性中相互促進的是
參考答案為:A
A.可理解性和可測試性
B.效率和可移植性
C.效率和可修改性
D.效率和結構好
[解析]軟件的可維護性可用七個質(zhì)量特性來衡量,分別是:可理解性、可測試性、可修改性、可靠性、可移植性、可使用性和效率。對于不同類型的維護,這些特性的側(cè)重點也不相同,有一些可維護特性是可以相互促進的,比如可理解性和可測試性,可理解性和可修改性,另外一些則是相互矛盾的,如答案中的B效率和可移植性、C中的效率和可修改性。至于D中的結構好則不屬于可維護性的特征。
10.汽車有一個發(fā)動機。汽車和發(fā)動機之間的關系是_____關系。
參考答案為:B
A.一般具體
B.整體部分
C.分類關系
D.主從關系
[解析]類有兩種主要的結構關系,即一般——具體結構關系和整體——部分結構關系。前者稱為分類結構,用來描述現(xiàn)實世界中的一般化的抽象關系。后者稱為組裝結構,用來描述現(xiàn)實世界中的類的組成的抽象關系。汽車和發(fā)動機的關系很明顯,應該屬于整體——部分關系。
11.在變更控制中,______可以用來確保由不同用戶所執(zhí)行的并發(fā)變更。
參考答案為:B
A.異步控制
B.同步控制
C.存取控制
D.基線控制
[解析]變更控制包括建立控制點和建立報告與審查制度,其過程中的“檢出”和“登入”處理實現(xiàn)了存取控制和同步控制,存取控制管理各個用戶存取和修改一個特定軟件配置對象的權限,同步控制可用來確保由不同用戶所執(zhí)行任務的并發(fā)變更。
12.變更控制是一項最重要的軟件配置任務,其中“檢出”和______處理實現(xiàn)了兩個重要的變更控制要素,即存取控制和同步控制。
參考答案為:A
A.登入
B.管理
C.填寫變更要求
D.審查
[解析]“檢出”和“登入”處理實現(xiàn)了兩個重要的變更控制要素。具體說明見上題。
13.提高軟件質(zhì)量和可靠的技術大致可分為兩大類:其中一類就是避開錯誤技術,但避開錯誤技術無法做到完美無缺和絕無錯誤,這就需要
參考答案為:D
A.消除錯誤
B.檢測錯誤
C.避開錯誤
D.容錯
[解析]提高軟件質(zhì)量和可靠性的技術大致可分為兩類,一類是避開錯誤技術,即在開發(fā)的過程中不讓差錯潛入軟件的技術,另一類是容錯技術,即對某些無法避開的差錯,使其影響減至最小的技術。
14._____是以提高軟件質(zhì)量為目的的技術活動。
參考答案為:D
A.技術創(chuàng)新
B.測試
C.技術創(chuàng)造
D.技術評審
[解析]技術評審是以提高軟件質(zhì)量為目的的技術活動,是對軟件本身的結構、與運行環(huán)境的接口、變更帶來的影響等方面進行的評審活動。
15.面向?qū)ο蠓椒▽W的出發(fā)點和基本原則是盡可能模擬人類習慣的思維方式,分析、設計和實現(xiàn)一個軟件系統(tǒng)的方法和過程,盡可能接近于人類認識世界解決問題的方法和過程。因此面向?qū)ο蠓椒ㄓ性S多特征,如軟件系統(tǒng)是由對象組成的;________;對象彼此之間僅能通過傳遞消息互相聯(lián)系;層次結構的繼承。
參考答案為:C
A.開發(fā)過程基于功能分析和功能分解
B.強調(diào)需求分析重要性
C.把對象劃分成類,每個對象類都定義一組數(shù)據(jù)和方法
D.對既存類進行調(diào)整
[解析]面向?qū)ο蠓椒ㄓ兴膫€特征,分別是對象唯一性、分類性、繼承性和多態(tài)性。其中分類性是指將具有一致的數(shù)據(jù)結構(屬性)和行為(操作)的對象抽象成類,每個類是具有相同性質(zhì)的個體集合,而每個對象相關類的實例,對象彼此之間通過傳遞消息互相聯(lián)系。
16.軟件開發(fā)過程中,抽取和整理用戶需求并建立問題域精確模型的過程叫
參考答案為:D
A.生存期
B.面向?qū)ο笤O計
C.面向?qū)ο蟪绦蛟O計
D.面向?qū)ο蠓治?/p>
[解析]面向?qū)ο蟮姆治龅倪^程就是認識客觀世界的過程,其目的就是建立對客觀世界的精確、簡潔、可理解的正確模型,也就是所謂的建模。因此本題答案為D。
17.原型化方法是用戶和設計者之間執(zhí)行的一種交互構成,適用于______系統(tǒng)。
參考答案為:A
A.需求不確定性高的B.需求確定的C.管理信息
D.實時
[解析]原型不同于最終系統(tǒng),它只實現(xiàn)所選擇的部分功能,僅是為了試驗或是演示而用,部分功能需求可以忽略或者模擬實現(xiàn),因此適用于需求不確定性高的系統(tǒng)。
18.原型化方法是一種_______型的設計過程。
參考答案為:A
A.自外向內(nèi)
B.自頂向下
C.自內(nèi)向外
D.自底向上
[解析]原型化方法的基本思想是根據(jù)用戶給出的基本需求,通過快速實現(xiàn)構造出一個小型的、可執(zhí)行的模型,用戶在計算機上實際運行這個用戶界面原型,在試用過程中提出意見或建議,然后開發(fā)者再對原型進行改進。如此周而復始,逐步彌補不足之處,從而提高了最終產(chǎn)品的質(zhì)量。它是一種自外向內(nèi)的設計過程。
19.為了提高測試的效率,應該
參考答案為:D
A.隨機地選取測試數(shù)據(jù)
B.取一切可能的輸入數(shù)據(jù)作為測試數(shù)據(jù)
C.在完成編碼以后制定軟件的測試計劃
D.選擇發(fā)現(xiàn)錯誤可能性大的數(shù)據(jù)作為測試數(shù)據(jù)
[解析]軟件測試是為了盡可能多的發(fā)現(xiàn)程序中的錯誤,尤其是發(fā)現(xiàn)至今尚未發(fā)現(xiàn)的錯誤。在選取測試用例時,不可能進行窮舉測試,在每一個細節(jié)進行測試,也不能無目的地隨機選取測試數(shù)據(jù),為了提高測試的效率,測試用例應該選擇發(fā)現(xiàn)錯誤可能性大的部分,這樣的測試結果才符合軟件測試的目的。
20.使用白盒測試方法時,確定測試數(shù)據(jù)應根據(jù)_______和指定的覆蓋標準。
參考答案為:A
A.程序的內(nèi)部邏輯
B.程序的復雜結構
C.使用說明書
D.程序的功能
[解析]白盒測試是把測試對象看作一個打開的盒子,測試人員須了解程序的內(nèi)部結構和處理過程,由于白盒測試是一種結構測試,所以被測對象基本上是源程序,以程序的內(nèi)部邏輯和指定的覆蓋標準確定測試數(shù)據(jù)。
二,填空題(本大題共10小題,每小題2分,共20分)
21.系統(tǒng)流程圖是描述物理模型的傳統(tǒng)工具,用圖形符號表示系統(tǒng)中各個元素表達了系統(tǒng)中各種元素之間的()情況。
解:信息流動
[解析]系統(tǒng)流程圖是描述物理系統(tǒng)的傳統(tǒng)工具,用圖形符號表示系統(tǒng)中的各個元素,如人工處理、數(shù)據(jù)處理、數(shù)據(jù)庫、文件、設備等,表達了元素之間的信息流動的情況。
22.成本效益分析的目的是從()角度評價開發(fā)一個項目是否可行。
解:經(jīng)濟
[解析]成本效益分析首先是估算將要開發(fā)的系統(tǒng)的開發(fā)成本,然后與可能取得的效益進行比較和權衡,其目的是從經(jīng)濟角度評價開發(fā)一個新的軟件項目是否可行。
23.自頂向下結合的漸增式測試法,在組合模塊時有兩種組合策略:深度優(yōu)先策略和()。
解:寬度優(yōu)先策略
[解析]漸增式測試法有自頂向下結合和自底向上結合兩種組裝模塊的方法,其中自頂向下集成是構造程序結構的一種增量式方式,不需要編寫驅(qū)動模塊,只需要編寫樁模塊。它從主控模塊開始,按照軟件的控制層次結構,以深度優(yōu)先或?qū)挾葍?yōu)先的策略,逐步把各個模塊集成在一起。
24.獨立路徑是指包括一組以前沒有處理的語句或條件的一條路徑。從程序圖來看,一條獨立路徑是至少包含有一條()的邊的路徑。
解:在其他獨立路徑中未有過
[解析]在基本路徑測試中,以詳細設計或源程序為基礎,導出控制流程圖的拓撲結構——程序圖,在計算了程序圖的環(huán)路復雜性之后,確定只包含獨立路徑的基本路徑圖,其中獨立路徑是包括一組以前沒有處理的語句或條件的一條路徑。從程序圖來看,一條獨立路徑是至少包含有一條在其他獨立路徑中未有過的邊的路徑。
25.匯編語言是面向()的,可以完成高級語言無法完成的特殊功能,如與外部設備之間的一些接口工作。
解:機器
[解析]匯編語言屬于低級語言,是一種面向機器的語言,它與高級語言相比有許多優(yōu)越性:如操作靈活,可以直接作用到硬件的最下層,完成與外部設備的接口工作等,是能夠利用計算機硬件特性直接控制硬件設備的唯一語言。
26.在JSP方法中解決結構沖突的具體辦法是()。
解:中間數(shù)據(jù)結構或中間文件
[解析]JSP方法是面向數(shù)據(jù)結構的設計方法。它定義了一組以數(shù)據(jù)結構為指導的映射過程,根據(jù)輸入、輸出的數(shù)據(jù)結構,按一定的規(guī)則映射成軟件的過程描述,在JSP方法中解決結構沖突的具體辦法是引入中間數(shù)據(jù)結構或中間文件,將沖突部分分隔開來,建立多個程序結構,再利用中間文件把它們聯(lián)系起來,構成一個系統(tǒng)的整體。
27.詳細設計的任務是確定每個模塊的內(nèi)部特性,即模塊的算法、()。
解:使用的數(shù)據(jù)
[解析]詳細設計的基本任務是為每個模塊進行詳細的算法設計,為模塊內(nèi)的數(shù)據(jù)結構進行設計,確定每個模塊的內(nèi)部特性,包括模塊的算法和使用的數(shù)據(jù)。對數(shù)據(jù)庫進行物理設計等。
28.所有軟件維護申請報告要按規(guī)定方式提出,該報告也稱()報告。
解:軟件問題
[解析]在軟件維護的流程中,第一步就是制定維護申請報告,也稱為軟件問題報告,它是維護階段的一種文檔,由申請維護的用戶填寫。
29.有兩類維護技術:在開發(fā)階段使用來減少錯誤、提高軟件可維護性的面向維護的技術;在維護階段用來提高維護的效率和質(zhì)量的()技術。
解:維護支援
[解析]面向維護的技術涉及軟件開發(fā)的所有階段,能夠減少軟件錯誤,提高軟件的可維護性。而維護支援技術則包含信息收集,錯誤原因分析,維護方案評價等項,是在軟件維護階段用來提高維護效率和質(zhì)量的技術。
30.科學工程計算需要大量的標準庫函數(shù),以便處理復雜的數(shù)值計算,可供選擇的語言有:()、PASCAL語言、C語言和PL/1語言。
解:FORTRAN語言
[解析]計算機語言根據(jù)不同行業(yè)的需求,使用的側(cè)重點也不盡相同,在辦公管理方面,一些數(shù)據(jù)庫語言如FOXPRO、ORICAL有很多的應用,在工程行業(yè),計算機語言的科學計算能力就顯得格外重要,如MATLAB、PL/
1、FORTRAN語言都是工程計算中常用的語言。
三,名詞解釋(本大題共5小題,每小題3分,共15分)
31.經(jīng)濟可行性
解:進行開發(fā)成本的估算以及了解取得效益的評估,確定要開發(fā)的項目是否值得投資開發(fā)。
[解析]對于一個系統(tǒng)所必須要衡量的是經(jīng)濟上是否合算,經(jīng)濟可行性的范圍很廣,包括效益分析、潛在市場前景等。
32.社會可行性
解:要開發(fā)的項目是否存在任何侵犯、妨礙等責任問題,要開發(fā)項目目的運行方式在用戶組織內(nèi)是否行得通,現(xiàn)有管理制度、人員素質(zhì)、操作方式是否可行。
[解析]社會可行性包括合同、責任、侵權等技術人員不甚了解的諸多問題。
33.投資回收期
解:投資回收期就是使累計的經(jīng)濟效益等于最初的投資費用所需的時間。
[解析]通常我們用投資回收期來衡量一個開發(fā)項目的價值,投資回收期越短,就越快獲得利潤。
34.對應關系
解:即有直接因果關系在程序中可以同時處理。
[解析]對應關系是指數(shù)據(jù)單元在數(shù)據(jù)內(nèi)容上、數(shù)量上和順序上有直接的因果關系,對于重復的數(shù)據(jù)單元,重復的次序和次數(shù)都相同才有對應關系。
35.結構沖突
解:輸入數(shù)據(jù)與輸出數(shù)據(jù)結構找不到對應關系的情況,稱為結構沖突。
[解析]使用JSP方法時會遇到此類結構沖突問題,對此,Jackson提出了引入中間數(shù)據(jù)結構或中間文件的辦法,將沖突部分分隔開來,建立多個程序結構,再利用中間文件把它們聯(lián)系起來,構成一個系統(tǒng)的整體。
四,簡答題(本大題共4小題,每小題5分,共20分)
36.可行性研究報告的主要內(nèi)容有哪些?
解:一個可行性研究報告的主要內(nèi)容如下:
(1)引言:說明編寫本文檔的目的;項目的名稱、背景;本文檔用到的專門術語和參考資料。
(2)可行性研究前提:可行性研究前提。說明開發(fā)項目的功能、性能和基本要求;達到的目標;各種限制條件;可行性研究方法和決定可行性的主要因素。
(3)對現(xiàn)有系統(tǒng)的分析:說明現(xiàn)有系統(tǒng)的處理流程和數(shù)據(jù)流程;工作負荷;各項費用支出;所需要各類專業(yè)技術人員的數(shù)量;所需要各種設備;現(xiàn)有系統(tǒng)存在什么問題。
(4)所建議系統(tǒng)的技術可行性分析:所建議系統(tǒng)的簡要說明;處理流程和數(shù)據(jù)流程;與現(xiàn)有的系統(tǒng)比較的優(yōu)越性;采用所建議系統(tǒng)對用戶的影響;對各種設備、現(xiàn)有軟件、開發(fā)環(huán)境、運行環(huán)境的影響;對經(jīng)費支出的影響;對技術可行性的評價
簡答題:
1、內(nèi)聚與耦合的概念,2、結構化程序設計方法的三種結構,他們之間的聯(lián)系與區(qū)別,3、集成測試的兩種方法之間的不同點與相同點,4、抽象類圖的名稱與作用,這題還出了幾個符號要寫出其名稱,5、P20頁的那個圖的名稱,作用和特點。分析畫圖題:
1、畫數(shù)據(jù)流圖,2、畫判定樹與判定表,3、畫系統(tǒng)流程圖,4.^_^,不記得了,反正也是畫我們常要畫的圖,5、根據(jù)偽碼畫出程序流程圖,盒圖,然后計算程序的復雜度,填空題,選擇題主要考概念,jackson圖方面的內(nèi)容在填空題出了兩題
第四篇:軟件工程考試
軟件工程是用工程、科學和數(shù)學的原則與方法研制、維護計算機軟件的有關技術和管理方法 軟件工程三要素:方法、工具和過程
軟件工程的內(nèi)容:軟件開發(fā)技術和軟件開發(fā)管理兩個方面
可行性研究方面:技術可行性經(jīng)濟可行性操作可行性法律可行性
IT項目可行性研究審計的概念:事前對IT項目從技術和經(jīng)濟兩個方而進行的詳細論證,涉及
數(shù)據(jù)字典是關于數(shù)據(jù)的信息的集合,也就是對數(shù)據(jù)流圖中包含的所有元素的定義的集合.包括(1)數(shù)據(jù)流(2)數(shù)據(jù)元素(3)數(shù)據(jù)存儲(4)處理 驗證軟件需求的正確性:(1)一致性:所有需求必須是一致的,任何一條需求不能和其他需求互相矛盾。(2)完整性: 需求必須是完整的,規(guī)格說明書應該包括用戶需要的每一個功能或性能(3)現(xiàn)實性:指定的需求應該是用現(xiàn)有的硬件技術和軟件技術基本上可以實現(xiàn)的。對硬件技術的進步可以做些預測,對軟件技術的進步則很難做出預測,只能從現(xiàn)有技術水平出發(fā)判斷需求的現(xiàn)實性。(4)有效性: 必須證明需求是正確有效的,確實能解決用戶面對的問題。
軟件設計過程有:1數(shù)據(jù)設計:將實體 – 關系圖中描述的對象和關系,以及數(shù)據(jù)詞典中描述的詳細數(shù)據(jù)內(nèi)容轉(zhuǎn)化為數(shù)據(jù)結構的定義。2總體結構(系統(tǒng)結構)設計: 定義軟件系統(tǒng)各主要成份之間的關系。3過程設計: 把結構成份轉(zhuǎn)換成軟件的過程性描述。4接口設計:定義軟件內(nèi)部各成份之間、軟件與其它協(xié)同系統(tǒng)之間及軟件與用戶之間的交互機制。軟件設計方法:結構化設計方法(SD)面向數(shù)據(jù)結構的設計方法(JSD方法)面向?qū)ο蟮脑O計方法(OOD)
軟件設計分兩個階段完成:結構設計:結構設計是總體設計階段的任務。結構設計確定程序由哪些模塊組成,以及這些模塊之間的關系。過程設計:確定每個模塊的處理過程
結構程序設計:一種設計程序的技術,它采用自頂向下逐步求精的設計方法和單入口單出口的控制結構
軟件測試:是根據(jù)軟件開發(fā)各階段的文檔資料和程序的內(nèi)部結構,精心設計一組“高產(chǎn)”的測試用例,利用這些實例執(zhí)行程序,找出軟件中潛在的各種錯誤和缺陷的過程 黑盒法(黑盒技術是把被測試對象看成一個黑盒子,測試人員完全不考慮程序的內(nèi)部結構和處理過程,只在軟件的接口處進行測試,依據(jù)需求規(guī)格說明書,檢查程序是否滿足功能要求 白盒法(白盒技術):是把測試對象看作一個打開的盒子,測試人員須了解程序的內(nèi)部結構和處理過程,以檢查處理過程的細節(jié)為基礎,對程序中盡可能多的邏輯路徑進行測試,檢查內(nèi)部控制結構和數(shù)據(jù)結構是否有錯,實際的運行狀態(tài)與預期的狀態(tài)是否一致。驅(qū)動模塊:驅(qū)動模塊是用來模擬被測模塊的上級調(diào)用模塊的模塊,功能要比真正的上級模塊簡單得多,它只完成接受測試數(shù)據(jù),以上級模塊調(diào)用被測模塊的格式驅(qū)動被測模塊,接收被測模塊的測試結果并輸出。
樁模塊:樁模塊用來代替被測試模塊所調(diào)用的模塊。它的作用是返回被測模塊所需的信息。單元測試::單元測試指對源程序中每一個程序單元進行測試,檢查各個模塊是否正確實現(xiàn)規(guī)定的功能,從而發(fā)現(xiàn)模塊在編碼中或算法中的錯誤。
集成測試:是指在單元測試的基礎上,將所有模塊按照設計要求組裝成一個完整的系統(tǒng)進行的測試,故也稱組裝測試或聯(lián)合測試。
確認測試:又稱有效性測試。是為了檢查軟件的功能與性能是否與需求規(guī)格說明書中確定的指標相符合所進行的測試
單元測試內(nèi)容①模塊接口②局部數(shù)據(jù)結構③重要的執(zhí)行路徑④錯誤處理⑤邊界條件。調(diào)試的目的確定錯誤的原因和位置,并改正錯誤,因此調(diào)試也稱為糾錯(Debug)調(diào)試的技術手段有簡單的調(diào)試方法、歸納法、演繹法和回溯法等 軟件可維護性:軟件能夠被理解、校正、適應及增強功能的容易程度
為了保證軟件的可維護性,需要做哪些質(zhì)量保證檢查?(1)在檢查點進行檢查。檢查點是指軟件開發(fā)的每一個階段的終點。(2)驗收檢查。驗收檢查是一個特殊的檢查點的檢查,它是把軟件從開發(fā)轉(zhuǎn)移到維護的最后一次檢查。(3)周期性的維護檢查(4)對軟件包的檢查。好的文檔有以下幾方面的作用:(1)好的文檔能提高程序的可閱讀性,但壞的文檔比沒有文檔更壞;(2)好的文檔意味著簡明性,風格的一致性,容易修改;(3)程序編碼中應該有必要的注釋以提高程序的可理解性;(4)程序越長、越復雜,則它對文檔的需求也越迫切 軟件維護的流程:定維護申請報告。審查申請報告并批準。進行維護并做詳細記錄。復審 面向?qū)ο蠓椒▽W的出發(fā)點和基本原則:是盡可能模擬人類習慣的思維方式,使開發(fā)軟件的方法與過程盡可能接近人類認識世界解決問題的方法與過程.描述問題的問題域與實現(xiàn)解法的求解域在結構上盡可能一致。
對象是用面向?qū)ο蠓椒▽W開發(fā)軟件時對客觀世界實體的抽象,它是由描述實體屬性的數(shù)據(jù)及可以對這些數(shù)據(jù)施加的所有操作封裝在一起構成的統(tǒng)一體。傳統(tǒng)的數(shù)據(jù)是用傳統(tǒng)方法學開發(fā)軟件時對客觀世界實體的抽象,但是,種抽象是不全面的:數(shù)據(jù)只能描述實體的靜態(tài)屬性,不能描述實體的動態(tài)行為。必須從外界對數(shù)據(jù)施加操作,才能改變數(shù)據(jù)實現(xiàn)實體應有的行為。對象與傳統(tǒng)數(shù)據(jù)有本質(zhì)區(qū)別,它不是被動地等待外界對它施加操作,相反,它是進行處理的主體。必須發(fā)消息請求對象主動地執(zhí)行它的某些操作,處理它的私有數(shù)據(jù),而不能直接從外界對它的私有數(shù)據(jù)進行操作。
對象模型的五個層次:主題層(也稱為范疇層),類—&—對象層,結構層,屬性層,服務層
面向?qū)ο髮崿F(xiàn)主要包括兩項工作:把面向?qū)ο笤O計結果,翻譯成用某種程序語言書寫的面向?qū)ο蟪绦?;測試并調(diào)試面向?qū)ο蟮某绦?/p>
面向?qū)ο筌浖臏y試分四個層次進行:算法層、類層、主題層、系統(tǒng)層
項目管理者的目標: 定義全部項目任務,識別出關鍵任務,跟蹤關鍵任務的進展狀況,以保證能及時發(fā)現(xiàn)拖延進度的情況
軟件配置管理主要有5項任務: 標識 版本控制 變化控制 配置審計 報告 軟件工程實施項目管理的目的 : 在于它能夠幫助我們進行系統(tǒng)性思考,并切實可行地進行全局性安排,同時也可以為項目開發(fā)的人力資源需求提供依據(jù)。
項目管理者的任務:確保信息系統(tǒng)項目符合預算和進度要求,并確保交付的系統(tǒng)能夠達到預定的目標
軟件的質(zhì)量保證活動: 是確保軟件產(chǎn)品從誕生到消亡為止的所有階段的質(zhì)量的活動。即為了確定、達到和維護需要的軟件質(zhì)量而進行的所有有計劃、有系統(tǒng)的管理活動 對編制高質(zhì)量文檔的要求:(1)針對性(2)精確性(3)清晰性(4)完整性(5)靈活性
第五篇:軟件工程考試
第一章 軟件工程學概述
1.軟件的概念,軟件的分類
答:軟件=程序+數(shù)據(jù)+文檔;
按規(guī)模分類:微型、小型、中型、大型、甚大形、極大型(6)
按性質(zhì)分類:系統(tǒng)軟件、支撐軟件、應用軟件(3)
按工作方式分類:實時、分時、交互式、批處理(4)
按服務對象分類:項目軟件、產(chǎn)品軟件(2)
2.軟件危機產(chǎn)生的原因(2點),緩解軟件危機的途徑
答:和軟件本身的特點有關,和開發(fā)軟件的方法不正確有關;
軟件工程;
3.軟件生命周期包含的活動
答:問題定義、可行性研究、需求分析、總體設計、詳細設計、編碼、測試(8)
4.問題定義階段的任務
答:確定軟件規(guī)模、性質(zhì)、目標
5.常見的軟件開發(fā)模型
瀑布模型:適用范圍是需求確定的軟件開發(fā),是描述結構化的軟件開發(fā)模型;
快速原型模型:適用范圍是需求不確定的軟件開發(fā);
噴泉模型:是描述面向?qū)ο蟮能浖_發(fā)模型;
第二章 可行性研究
1.可行性研究從哪些方面進行
答:經(jīng)濟,技術,法律,操作(4)
2.系統(tǒng)流圖SFD的作用
答:描述系統(tǒng)的工作過程,建立系統(tǒng)的業(yè)務模型
3.數(shù)據(jù)流圖DFD的作用,符號,畫法
答:描述系統(tǒng)的功能,建立系統(tǒng)的功能模型
符號:外部實體(正方形),處理(圓形),存儲(雙實線),數(shù)據(jù)流(單箭頭線)畫法:分離成分,分層畫DFD(頂層,0層,1層)
第三章 需求分析
1.結構化的需求分析方法SA的原理
答:用DFD、DD進行功能分析,建立系統(tǒng)的功能模型,用E-R進行數(shù)據(jù)分析,建立系統(tǒng)的數(shù)據(jù)模型
第五章 總體設計
1.總體設計的原理
答:模塊化、抽象、逐步求精、信息隱藏和局部化、模塊獨立(5)
2.衡量模塊獨立的指標
答:耦合,內(nèi)聚 3.總體設計的啟發(fā)規(guī)則(7點)
答:改進軟件結構提高模塊獨立性
模塊規(guī)模應該適中
深度、寬度、扇出和扇入都應適當
模塊的作用域應該在控制域之內(nèi)
力爭降低模塊接口的復雜程度
設計單入口單出口的模塊
模塊功能應該可以預測
4.結構化的設計方法SD的原理
答:將DFD映射成軟件結構圖
第六章 詳細設計
1.用結構化方法進行開發(fā)在詳細設計階段的任務
答:對模塊進行設計,主要是設計模塊的界面和算法 2.結構化程序設計SP的原則(7點)
答:采用自頂向下、逐步求精的設計方法
程序中用順序、選擇、多分支、while型循環(huán)、until型循環(huán)表示程序邏輯
每種控制結構單入口、單出口
程序語句組成模塊,每個模塊單入口單出口
復雜的結構用5種基本控制結構組合嵌套實現(xiàn)
嚴格控制goto語句的使用,在下列情況可用:
在非結構化的語言中,用goto語句實現(xiàn)結構化的構造
在某種可以改善而不是損害可讀性的情況下
不僅要注意程序的結構化,還要注意數(shù)據(jù)結構的合理化
3.判斷算法是否為結構化的依據(jù)(3點)
答:由5種基本控制結構組成;
每種控制結構單入口單出口;
模塊單入口單出口
4.描述算法的工具
答:圖形工具:N-S圖,PAD圖,活動圖
語言工具:PDL語言
表格工具:判定表、判定樹
5.算法環(huán)形復雜度的度量(流程圖-流圖-區(qū)域數(shù))
答:流程圖-流圖轉(zhuǎn)換方法:
一個判斷框縮成一個點;
一個處理框縮成一個點;
一個順序處理序列縮成一個點;
判定框和與之相連的處理框縮成一個點;
真假分支的匯聚點增加一個點
第七章 實現(xiàn)
1.編碼的風格(判斷題)
答:程序內(nèi)部的文檔:恰當?shù)臉俗R符(含義鮮明、縮寫(必須保留第一個字母、輔音字母由于元音字母、字首優(yōu)于字尾)+注解)、適當?shù)淖⒔猓ㄐ蜓孕宰⒔狻⒐δ苄宰⒔猓?、程序的視覺組織(布局、空行、縮進)
2.測試的概念、原則、方法,步驟
答:概念:用最少的時間和人力,找到軟件中盡可能多的錯誤和缺陷
原則:
盡早的和不斷的測試;
事先要制定測試計劃,嚴格執(zhí)行學生計劃,排除測試的隨意性;
測試從小規(guī)模測試開始,逐步進行大規(guī)模測試;
充分注意測試中的“群集”現(xiàn)象;
“窮舉”測試不可能,應該精心設計測試方案,使測試方案充分的覆蓋程序邏輯,以盡可能多的發(fā)現(xiàn)程序中的錯誤;
測試方案應該包含合理的輸入條件和不合理的輸入條件;
測試應由獨立的第三方從事;
方法有黑盒測試和白盒測試
步驟是單元測試、集成測試、系統(tǒng)測試、確認測試
3.白盒測試法有哪些,黑盒測試法有哪些
答:白盒測試法有:邏輯覆蓋法、基本路徑法覆蓋法、循環(huán)覆蓋法
黑盒測試法有:等價劃分法,分界值分析法,錯誤推算法
4.用邏輯覆蓋法設計測試方案
5.黑盒測試技術的原理
答:在測試中,把程序看作一個不能打開的黑盒子,在完全不考慮程序內(nèi)部結構和內(nèi)部 特性的情況下,在程序接口進行測試,它只檢查程序功能是否按照需求規(guī)格說明書的規(guī)定正常使用,程序是否能適當?shù)亟邮蛰斎霐?shù)據(jù)而產(chǎn)生正確的輸出信息。
6.可靠性的概念
答:軟件可靠性是程序在給定的事件間隔內(nèi),按照規(guī)格說明書的規(guī)定成功的運行的概率;可靠性是衡量軟件質(zhì)量的指標
7.可靠性的計算
第八章 維護
1.維護的概念、分類
答:在軟件已經(jīng)交付使用后,為了改正錯誤或滿足新的需要而修改軟件的過程; 改正型維護,完善型維護,適應型維護,預防型維護;
第九章 實戰(zhàn)
1.軟件有哪些開發(fā)方法
答:結構化的開發(fā)方法、面向?qū)ο蟮拈_發(fā)方法、傳統(tǒng)的開發(fā)方法與面向?qū)ο蟮拈_發(fā)方法相結合的實用開發(fā)方法
2.傳統(tǒng)的軟件開發(fā)方法的開發(fā)步驟
答:問題定義,可行性研究,需求分析
業(yè)務分析(業(yè)務描述,建立業(yè)務模型)
功能分析(功能描述,功能模型)
數(shù)據(jù)分析
總體設計
建立軟件結構
設計數(shù)據(jù)庫的表結構
詳細設計
模塊設計
建立數(shù)據(jù)庫,錄入數(shù)據(jù)
實現(xiàn)
編碼,測試
3.面向?qū)ο蟮拈_發(fā)方法的開發(fā)步驟
答:問題定義,可行性研究
面向?qū)ο蟮姆治?/p>
業(yè)務分析
功能分析,建立系統(tǒng)的功能模型(參與者,需求結構,功能模型)對象分析,建立系統(tǒng)初步的對象模型
用例分析,建立用例分析模型(順序圖,活動圖)
擴充和完善,建立系統(tǒng)完整的對象模型
面向?qū)ο蟮目傮w設計
擴充和完善功能模型
軟件運行環(huán)境
軟件架構模型(軟件架構模式,軟件分層架構,軟件邏輯結構)
擴充和完善對象模型,建立平臺相關對象模型
用例設計模型(順序圖,活動圖)
數(shù)據(jù)庫設計模型(數(shù)據(jù)庫的表結構,數(shù)據(jù)庫的邏輯結構)
界面設計模型(界面結構模型,屏幕界面模型)
組件圖
部署模型
面向?qū)ο蟮脑敿氃O計
確定每個用例的實現(xiàn)算法
建立數(shù)據(jù)庫,錄入數(shù)據(jù)
面向?qū)ο髮崿F(xiàn)
編碼,測試
4.BCE、MVC是什么
答:BCE是用例分析模式、MVC是程序設計思想
5.傳統(tǒng)的開發(fā)方法與面向?qū)ο蟮拈_發(fā)方法相結合的實用開發(fā)方法的開發(fā)步驟 答:問題定義,可行性研究
需求分析
業(yè)務分析
功能分析
數(shù)據(jù)分析
動態(tài)分析
總體設計
軟件運行環(huán)境
軟件架構模式(C/S B/S)
建立軟件結構圖
設計數(shù)據(jù)庫的表結構
詳細設計
模塊設計
建立數(shù)據(jù)庫,錄入數(shù)據(jù)
實現(xiàn)
編碼,測試