軟件工程習(xí)題及軟件工程作業(yè)_第1頁
軟件工程習(xí)題及軟件工程作業(yè)_第2頁
軟件工程習(xí)題及軟件工程作業(yè)_第3頁
軟件工程習(xí)題及軟件工程作業(yè)_第4頁
軟件工程習(xí)題及軟件工程作業(yè)_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

第一章

1.填空

(1)軟件是計算機系統(tǒng)中的一程序(指令)一、數(shù)據(jù)及其一文檔(+服務(wù))—的總稱。

(2)軟件的類型按功能可以分為一系統(tǒng)軟件—、_支撐軟件—和一應(yīng)用軟件_3中類

型。

(3)國家標(biāo)準(zhǔn)GB/T1147—1995《軟件工程術(shù)語》對軟件工程的定義是軟件開發(fā)、運行、

維護和引退_________系統(tǒng)方法O

(4)軟件工程是指導(dǎo)計算機軟件開發(fā)和維護的工程學(xué)科。

(5)軟件工程采用_____工程的概念、原理、技術(shù)和方法來開發(fā)與維護軟件。

(6)軟件工程的目標(biāo)是____實現(xiàn)軟件的優(yōu)質(zhì)高產(chǎn)o

(7)軟件工程的主要內(nèi)容聶______軟件開發(fā)技術(shù)和軟件工程管理______o

2.選擇。

(1)下面(B)不是軟件的特征。

A系統(tǒng)性與復(fù)制性B有形性與可控性C抽象性與智能性D依附性與泛域性

(2)下面(D)不是系統(tǒng)軟件。

A.BIOSB.WindowsC.設(shè)備驅(qū)動程序D.辦公軟件

(3)軟件危機的主要原因(八)

A軟件本身特點與開發(fā)方法B對軟件的認(rèn)識不夠C軟件生產(chǎn)能力不足D軟件

工具落后

(4)下面(C)不屬于軟件工程學(xué)科所要研究的基本內(nèi)容。

A軟件工程原理B軟件工程目標(biāo)C軟件工程材料D軟件工程過程

(5)下面(B)是正確的說法。

A.20世紀(jì)50年代提出了軟件工程的概念

B.20世紀(jì)60年代提出了軟件工程概念

C.20世紀(jì)70年代出現(xiàn)了客戶機/服務(wù)器技術(shù)

D.20世紀(jì)80年代軟件工程學(xué)科達到成熟

第二章

1.填空

(1)一軟件可行性分析的目的就是用最小的代價在盡可能短的時間內(nèi)確定該軟件項目

是否能夠開發(fā),是否得去開發(fā)。

(2)可行性分析的目的不是去開發(fā)一個軟件項目,而是研究這個軟件項目內(nèi)容是否值

得去開發(fā)、其中的問題能否解決一O

(3)可行性分析實質(zhì)上是要進行一次簡化,壓縮了的一需求分析和一設(shè)計過程,

要在較高層次上以較抽象的方式進行需求分析和設(shè)計過程。

(4)可行性分析需要從一技術(shù)可行性、―經(jīng)濟可行性和—社會可行性3

個方面分析研究每種解決方法的可行性。

(5)技術(shù)可行性是對要開發(fā)項h的一功能、―性能、_控制條件____進行分析,

確定在現(xiàn)有的資源條件下,技術(shù)風(fēng)險有多大,項目是否能實現(xiàn)。

(6)技術(shù)可行性一般要考慮的情況包括一開發(fā)的風(fēng)險、—資源的有效性____、—

技術(shù)—。

(7)技術(shù)可行性的研究包括—成本一效益分析、公司經(jīng)營長期策略一、—開發(fā)

所需的成本和資源一、.潛在的市場前景,

(8)社會可行性所涉及的范圍包括―合同、―責(zé)任、―侵權(quán)、用戶組織的

管理模式、規(guī)范及其他一些技術(shù)人員常常不了解的陷阱等。

(9)典型的可行性分析有這樣的步驟:確定項目規(guī)模和目標(biāo)、一研究正在運行的系統(tǒng)、

一建立新系統(tǒng)的高層邏輯模型、導(dǎo)出和評價各種方案、推薦可行的方案和編寫可行性

分析報告。

(10)一個可行性分析報告的主要內(nèi)容有:引言、可行性分析的前提、對現(xiàn)有系統(tǒng)的分析、

所建議系統(tǒng)的技術(shù)可行性分析一、—系統(tǒng)的經(jīng)濟可行性分析、社會因素可行

性分析一、其他可供選拒的方案和結(jié)論意見。

(11)成本一效益分析首先是估算將要開發(fā)的系統(tǒng)—開發(fā)成本—,然后與可能取得的效益

進行比較和權(quán)衡O

(12)效益分析有有形效益和無形效益兩種。有形效益可以用貨幣的時間價值一、

投資回收期一和純收入一等指標(biāo)進行度量;無形效益主要從性質(zhì)上、心理上進行衡量,

很難直接進行量的比較。

(13)投資回收期_就是使累計的經(jīng)濟效益等于最初的投資費用所需要的時間。項目

純收入—是指在整個生存周期之內(nèi)的累計經(jīng)濟效益(折合現(xiàn)在值)與投資之差。

(14)項目開發(fā)計劃的主要內(nèi)容有:項目概述、一實施計劃、_人員組織和交付

期限。

(15)純收入是軟件生存周期內(nèi)兩項值之差,這兩項受—經(jīng)濟效益____與一投資o

(16)軟件工程有兩種效益,它們是一無形效益____和_有形效益_____o

(17)可行性分析具體步驟的最后一步是—編寫可行性報告。

(18)系統(tǒng)的經(jīng)濟效益等于—因使用新的系統(tǒng)而增加的收入加上一使用新的系統(tǒng)可以

節(jié)疝的運行費用O

(19)成本一效益分析的目的是從一經(jīng)濟角度____評價開發(fā)一個新的軟件項目是否可行。

(20)可行性分析中描述系統(tǒng)高層物理模型的工具是____系統(tǒng)流程圖―o

(21)可行性分析實質(zhì)上是進行一次簡化、壓縮了的一需求分析和設(shè)計o

(22)可行性分析的第一個具體步驟走—確定項目的規(guī)模和目標(biāo)o

2.選擇。

(1)研究開發(fā)資源的有效性是進行(A)可行性分析的一個方面。

A技術(shù)B經(jīng)濟C社會D操作

(2)在軟件的可行性分析中,可以從不同的角度對軟件進行研究,其中從軟件的功能可行

性角度考慮的是(B)

A經(jīng)濟可行性B技術(shù)可行性C操作可行性D法律可行性

(3)在遵循軟件工程原則開發(fā)軟件過程中,計劃階段應(yīng)該依次完成(B)。

A軟件計劃、需求分析、系統(tǒng)定義B系統(tǒng)定義、軟件計劃、需求分析

C需求分析、概率設(shè)計、軟件計劃D軟件計劃、需求分析、概率設(shè)計

(4)技術(shù)可行性要解決(D)

A存在侵權(quán)否B成本一效益問題C運行方式可行D技術(shù)風(fēng)險問題

(5)在軟件項目中,不隨參與人數(shù)的增加而使軟件的生產(chǎn)增加的主要問題是(D)

A工作階段間的等待時司B生產(chǎn)原型的復(fù)雜性

C參與人員所需的工作站數(shù)D參與人員之間的通信困難

(6)制定軟件計劃的目的在于盡早對欲開發(fā)的軟件進行合理估價,軟件計劃的任務(wù)是:D)。

A組織與管理B分析與估算C設(shè)計與測試D規(guī)劃與調(diào)度

(7)研究軟硬件資源的有效性是進行(A)研究的一方面。

A技術(shù)可行性B經(jīng)濟可行性C社會可行性D操作可行性

(8)可行性的分析要進行的需求分析和設(shè)計應(yīng)是(A)。

A詳細(xì)的B全面的C簡化的、壓縮的D砌底的

第三章

1.填空。

(1)用于描述基本加工說明的3種描述工具是一結(jié)構(gòu)化語言、判定表和判定樹一。

(2)數(shù)據(jù)字典中有4類條目,分別是一數(shù)據(jù)流、數(shù)據(jù)項、數(shù)據(jù)存儲和基木加工一。

(3)需求分析階段產(chǎn)生的最重要的文檔是一需求規(guī)格說明書

(4)DFD利用圖形符號表示系統(tǒng)的傳統(tǒng)工具,它利用一信息流動—來表示系統(tǒng)中的各

個元素。

(5)DFD是描述系統(tǒng)的傳統(tǒng)工具,它用_圖形符號_來表示系統(tǒng)中的各個元素。

2.選擇。

(1)軟件質(zhì)量必須從軟件分析開始,在(D)加以保證。

A開發(fā)之前B開發(fā)之后C可行性研究過程D整個開發(fā)過程

(2)SA方法的基本思想是(C)。

A自底向上逐步抽象B自底向上逐步分解

C自頂向下逐步分解D自頂向下逐步抽象

(3)DFD是常用的進行軟件需求分析的圖形工具,其基本符號是(C)。

A輸入、輸出、外部實體和加工

B變換、加工、數(shù)據(jù)流和存儲

C加工、數(shù)據(jù)流、數(shù)據(jù)存儲和外實部體

D變換、數(shù)據(jù)存儲、加工個數(shù)據(jù)流

(4)判斷表和判斷樹是DI;D中用以描述加工的工具,它通常描述的對象是(D)。

A邏輯判斷B層次分解C操作條目D組合組件

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

A當(dāng)前運行系統(tǒng)B當(dāng)前邏輯模型C目標(biāo)系統(tǒng)D新系統(tǒng)

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

A邏輯系統(tǒng)B程序系統(tǒng)C體系系統(tǒng)D物理系統(tǒng)

(7)在程序的描述和分析中,用于指明數(shù)據(jù)來源、流向和處理的輔助圖形是(B)。

A數(shù)據(jù)結(jié)構(gòu)圖B.DI'DC業(yè)務(wù)結(jié)構(gòu)圖D其他圖

(8)U/C矩陣是用來進行(C)的方法。

A系統(tǒng)方法B系統(tǒng)分析C子系統(tǒng)劃分D系統(tǒng)規(guī)劃

(9)需求規(guī)格說明書的作用不應(yīng)該包括(D)。

A軟件設(shè)計的依據(jù)B用戶與開發(fā)人員對軟件要做什么的共同理解

C軟件驗收的依據(jù)D軟件可行性研究的依據(jù)

第四章

1.填空。

(1)總設(shè)計又叫做.概要設(shè)計一。

(2)在設(shè)計階段,要充分體現(xiàn)軟件工程"一模塊化_"、“抽象”“信息隱蔽”等基本原

則。

(3)系統(tǒng)詳細(xì)設(shè)計階段最后產(chǎn)生的文檔是_詳細(xì)設(shè)計說明書一。

(4)浮動位置菜單又叫做一彈出式菜單一。

(5)數(shù)據(jù)的顯示形式主要包括字符顯示和_圖形顯示_。

2.選擇。

(1)以下(D)不屬于系統(tǒng)設(shè)計。

A總體設(shè)計B詳細(xì)設(shè)計C過程設(shè)計D需求設(shè)計

(2)為了提高模塊的獨立性,模塊之前最好是(C)。

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

(3)詳細(xì)設(shè)計的任務(wù)上是確定每個模塊的(B)。

A外部特性B算法和數(shù)據(jù)結(jié)構(gòu)C內(nèi)部特性D功能

(4)數(shù)據(jù)庫設(shè)計時的概念數(shù)據(jù)模型一般用(B)圖表示。

A.PADB.E-RC.E-PD.HIPO

(5)以下(C)不屬于報告的布局。

A快結(jié)構(gòu)表B列表報表C棧結(jié)構(gòu)表D組結(jié)構(gòu)表

第五章

1.填空。

(1)在面向?qū)ο蠓治龊兔嫦驅(qū)ο笤O(shè)計中,通常把對象的操作稱為一方法或服務(wù)

(2)對象的抽象是一類一,類的實例化是—對象一。

(3)面向?qū)ο蟮某绦蛟O(shè)計語言應(yīng)具備對象方法所要求4個成分,它們是一類_、_對

象一、—繼承一、—消息通信

(4)可能的潛在對象有7類,它們是一夕卜部實體_、_事物_、-事件_、一角包_、

_場所或位置—、_組織機構(gòu)_、_結(jié)構(gòu)

(5)具有_相同特征和行為_的對象構(gòu)成類。

2.選擇。

(1)汽車有一個發(fā)動機,汽車和發(fā)動機之間的關(guān)系是_B_關(guān)系。

A一般具體B整體部分C分類D組裝

(2)在面向?qū)ο蠓椒ㄖ?,信息隱蔽是通過對象—C_來實現(xiàn)的。

A分類性B繼承性C封裝性D共享性

(3)只有類的共有界面的成員才能成為使用類的操作,這是軟件設(shè)計(C)的原則。

A過程抽象B功能抽象C信息隱蔽D共享性E連通性

(4)當(dāng)且僅當(dāng)一個操作對類實例的用戶有用是,它才是類公共界面的一個成員,這是

軟件設(shè)計的(B)原則。

A標(biāo)準(zhǔn)調(diào)用B最小界而C高耦合D高效率E可讀性

(5)每個派生類應(yīng)該當(dāng)做基類的特殊化來開發(fā),而基類所具有的公共界面是派生類的

共有界面的一個子集,這是軟件設(shè)計的(E)原則。

A動態(tài)聯(lián)編B異質(zhì).表C信息度,蔽D多態(tài)性E繼承性

第六章

1.填空0

(1)程序設(shè)計語言是人與—計算機—交流的—工具_。

(2)從語言層次上,程序設(shè)計語言可以分為一面向機器的語言_和_面向問題的語言

兩種類型。

(3)―20世紀(jì)5()一年代出現(xiàn)了模塊化程序設(shè)計方法,―20世紀(jì)60_年代出現(xiàn)了結(jié)構(gòu)

化程序設(shè)計方法。

(4)程序設(shè)計風(fēng)格是指一個人編制程序時表現(xiàn)出來的_特點_、習(xí)慣和_邏輯

(5)代碼實現(xiàn)可以分為數(shù)據(jù)庫、業(yè)務(wù)對象和用例實現(xiàn),以及_自頂向下策略_和_自

底向上策略_3種策略。

2.選擇。

(1)下面(A)屬于專用語言。

A.LISPB.CC.PASCALDJAVA

(2)不屬于一般程序設(shè)計方法的是(B)。

A模塊化程序設(shè)計方法B體系化程序設(shè)計方法

C結(jié)構(gòu)化設(shè)計方法D面向?qū)ο蟪绦蛟O(shè)計方法

(3)下面不符合命名規(guī)范的表識符是(D)。

A.sUmNmbcrB.SumNumbcrC.Sum_OfNumberD.SumC)fNumber

(4)下面(C)不屬于選擇面對對象語言應(yīng)該考慮的因素。

A開發(fā)環(huán)境B發(fā)展前景C類庫的可擴展性D支持多繼承

(5)下面(C)是錯誤的說法。

A中間版本是軟件未完成前的版本B.a版本是可以提交嚴(yán)格測試的軟件版本

C.B版本是提交給測試一人員進行全面測試的軟件版本

D發(fā)布版本是正式想社會發(fā)布,或想用戶提交使用的軟件版本

第七章

L填空。

(1)軟件測試的目的是_發(fā)現(xiàn)軟件的錯誤

(2)單元測試一般以_白盒法—為主,測試的依據(jù)是一系統(tǒng)的模塊功能規(guī)格說明

(3)黑盒測試法是通過分析程序的_功能_來設(shè)計測試用例的方法。

(4)軟件測試用例主要由輸入數(shù)據(jù)和_預(yù)期輸出結(jié)果_兩部分組成。

(5)為適應(yīng)軟硬件環(huán)境變化而修改軟件的過程是一適應(yīng)性維護_。

2.選擇。

(1)成功的測試是指運行測試用例后(B)。

A未發(fā)現(xiàn)程序錯誤B發(fā)現(xiàn)了程序錯誤C證明程序正確D改正了程序錯誤

(2)白盒測試法是根據(jù)程序的(B)來設(shè)計測試用例的方法。

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

(3)檢查軟件產(chǎn)品是否符合需求定義的過程稱為(C)o

A組裝測試B單元測試C系統(tǒng)測試D確認(rèn)測試

(4)軟件的繼承測試工作最好由(D)承擔(dān),以提高繼承測試的效果。

A該軟件的設(shè)計人員B該軟件開發(fā)組的負(fù)責(zé)人

C該軟件的編程人員D不屬于該軟件開發(fā)組的軟件設(shè)計人員

(5)(C)是決定軟件維護成敗和質(zhì)量好壞的關(guān)鍵。

A修改程序B建立目標(biāo)程序C分析和理解程序D重新險證程序

第八章

1.填空。

(1)項目是為了創(chuàng)造一個唯一的_產(chǎn)品—或提供一個唯一的_服務(wù)—而進行的一臨時

性_的努力。

(2)軟件項目啟動過程的主要的主要任務(wù)是確定項目的目標(biāo)、_約束_和_自由度

并進行_投資/效益_分析和可行性研究,如果符合企業(yè)的_商業(yè)目標(biāo)一則確定立項。

(3)軟件項目估算的內(nèi)容主要有軟件一規(guī)模―估算、_工作量_估算、一成本—估算

和―進度—估算。

(4)風(fēng)險就是損失的可能性。風(fēng)險具有兩大屬性:一可能性—和—損失可能性是

風(fēng)險發(fā)生_概率損失是指預(yù)期與后果之間的—差異一。

(5)項目監(jiān)控就是為了保證項目能夠按照預(yù)先設(shè)定的目標(biāo)發(fā)展。監(jiān)控是一個_反饋_

過程,項目跟蹤是項目控制的_前提和條件_,項目控制是項目跟蹤的_目的和服務(wù)對象

2.選擇。

B(1)項目管理通過一個的、的柔性組織,運用相關(guān)的知識、技術(shù)、和

手段,對項目進行高效率的計劃、組織、指導(dǎo)和,以油畫項目目標(biāo)的實現(xiàn)。

A標(biāo)準(zhǔn)長期方法管理B臨時性專門工具控制

C長期專門方法工具D標(biāo)準(zhǔn)兼職數(shù)據(jù)設(shè)計

B(2)從管理過程角度看,軟件項目管理可分為項目啟動、項目、項目、項

目、項目5個項目。

A需求分析組織實施監(jiān)控交付B計劃組織實施監(jiān)控收尾

C運行組織實施監(jiān)控接受D設(shè)計實施監(jiān)控運行

B(3)軟件項目啟動過程的主要任務(wù)是確定項目的、約束和自由度,并進行

分析和可行性研究,如果符合企業(yè)的則確定立項。立項的是正式下達項目任務(wù)書。

A范圍可行性利益決策B目標(biāo)投資/效益商業(yè)目標(biāo)標(biāo)志

C目標(biāo)設(shè)計利益原則D需求需求目標(biāo)標(biāo)志

D(4)關(guān)鍵路徑上的活動稱為活動。如果能夠縮短關(guān)鍵活動所需的時間,就可以

項目的完工時間。而縮短路徑上的各個活動所需要的時間,不能使項目完工

提前。

A規(guī)范交付標(biāo);隹簽入b規(guī)范交付非標(biāo)準(zhǔn)時間

C關(guān)鍵縮短標(biāo)準(zhǔn)日期D關(guān)鍵縮短非關(guān)鍵時間

C(5)在軟件項目的開發(fā)過程中必須及時跟蹤項目的質(zhì)量計劃完成情況,測定是

否達到要求的o通過質(zhì)量跟蹤來判斷項目執(zhí)行過程的質(zhì)量情況,決定產(chǎn)品是否可以

,還是需要返工或者放棄。

A文檔需求標(biāo)準(zhǔn)簽入B質(zhì)量手冊原理規(guī)范交付

C產(chǎn)品質(zhì)量標(biāo)準(zhǔn)結(jié)果接受D軟件質(zhì)量數(shù)據(jù)運行

第九章

1.填空

(1)應(yīng)用CMMI,評估機構(gòu)_評估一軟件組織的軟件能力成熟度等級,軟件采購方能

夠用來.考查.軟件承包方軟件項目開發(fā)能力,軟件組織也可以用它來持續(xù)_改進一自身軟

件開發(fā)能力水平。

(2)在RUP4+1視圖中,_邏輯—視圖是面向?qū)ο笤O(shè)計時的對象模型。一開發(fā)—視圖

描述軟件在開發(fā)環(huán)境下的錚態(tài)組織。一處理一視圖描述系統(tǒng)的并發(fā)和同步方面的設(shè)計。—

物理—視圖描述軟件映射至】硬件方面的設(shè)計。一場景—視圖描述構(gòu)件間的關(guān)系。

(3)MSF過程模型把一瀑布—模型中基于里程碑的規(guī)劃優(yōu)勢與一螺旋一模型中增量迭

代的長處結(jié)合在一起,形成構(gòu)思、_計劃_、開發(fā)、_穩(wěn)定_和發(fā)布5個階段迭代改進螺旋

上升的流程。

(4)形式話方法的本質(zhì)是用_數(shù)學(xué)_方法來描述軟件系統(tǒng),不同的_形式化_方法其

數(shù)學(xué)基礎(chǔ)不同。在凈室軟件工程中,單元測試和調(diào)試被正確性—驗證一和基于一統(tǒng)計—的測

試所替代,這些活動使得凈室方法與眾不同。

(5)敏捷宣言宣稱:個體和交互勝過過程和_工具可以工作的軟件勝過面面俱到

的_文檔客戶合作勝過—合作談判響應(yīng)變化勝過一遵循計劃

2.選擇

B(1)如要達到CMMI某個要求,就要達到該級別及其以下所有的要求。如

果要達到某個過程域某個的要求,就需要證明該目標(biāo)所有都做到位了。

A目標(biāo)過程域?qū)嵺`級別B級別過程域,目標(biāo)實踐

C過程域?qū)嵺`科標(biāo)原則D需求級別目標(biāo)標(biāo)志

A(2)IBMRational軟件工程體系以和而聞名,同時具有較為完善的軟件工具

集,支持、設(shè)計與構(gòu)造、軟件質(zhì)量、軟件配置管理、過程與項目管理、等軟件工程

各個階段。

A統(tǒng)一建模語言統(tǒng)一過程需求分析部署管理

B統(tǒng)一過程統(tǒng)一建模語言規(guī)范需求分析

C產(chǎn)品需求分析同一過程統(tǒng)一建模語言

D需求分析統(tǒng)一過程統(tǒng)一建模語言運行

B(3)微軟的軟件開發(fā)團隊實行交叉管理,縱向垂直管理與匯報關(guān)系為:產(chǎn)品總

經(jīng)理-*部門經(jīng)理小組長->組員。橫向管理為產(chǎn)品特性,產(chǎn)品特性項目組成員職能劃分

為5種,各角色地位____o

A對等過程組員平凡B矩陣式項目組角色對等

C產(chǎn)品對等項目組崇高D項目組角色語言非凡

D(4)敏捷過程模型是一個開發(fā)過程,消除了開發(fā)中不必要的和提交物。它

把開發(fā)活動一分析、設(shè)計'編碼和測試在一起,全過程采用開發(fā)、反饋修正和反復(fù)

測試的策略。

A迭代增量過程組織平凡B矩陣式項目組迭代對等

C產(chǎn)品增量增量項目D漸進型步驟結(jié)合迭代增量

C(5)在形式化方法中,規(guī)范描述采用數(shù)學(xué)的形式和記法;分析推理采用數(shù)學(xué)方

法對軟件形式化進行分析和推理;代碼實現(xiàn)運行數(shù)學(xué)方法從逐步推導(dǎo)出的程

序。

A對等規(guī)約規(guī)約一般B符號描述文檔源代碼

C語義規(guī)范高層描述可正確運行D數(shù)學(xué)文檔符號匯編

第1章概述

1.什么叫軟件危機?軟件危機主要有哪幾種表現(xiàn)?

答:軟件危機指的是軟件開發(fā)和維護過程中遇到的一系列嚴(yán)重問題。

軟件危機包含下述兩方面的問題:如何開發(fā)軟件,怎樣滿足對軟件日

益增長的需求;如何維護數(shù)量不斷膨脹的已有軟件。

軟件危機主要有下列表現(xiàn):①產(chǎn)品不符合用戶的實際需要。②軟

件開發(fā)生產(chǎn)率提高的速度遠遠不能滿足客觀需要。③軟件產(chǎn)品的質(zhì)量

差。④對軟件開發(fā)成本和進度的估計常常不準(zhǔn)確。⑤軟件的可維護性

差。⑥軟件文檔資料通常既不完整,也不合格。⑦軟件的價格昂貴。

2.什么叫軟件工程?軟件工程是如何克服軟件危機的?

答:軟件工程是指導(dǎo)計算機軟件開發(fā)和維護的一門學(xué)科。它采用工程

的概念、原理、技術(shù)和方法,把經(jīng)過時間考驗而證明是正確的管理技

術(shù)和當(dāng)前能夠得到的最好的技術(shù)方法結(jié)合起來,用于開發(fā)與維護軟

件。

軟件工程是這樣克服軟件危機的:①用分階段的生存周期計劃嚴(yán)

格管理。②堅持進行階段評審。③實行嚴(yán)格的產(chǎn)品控制。④采用現(xiàn)代

程序設(shè)計技術(shù)。⑤應(yīng)能清楚地審查結(jié)果。⑥合理安排軟件開發(fā)小組的

人員。

3.軟件工程的目標(biāo)、原則和主要研究內(nèi)容是什么?

答:軟件工程的目標(biāo)是:①定義良好的方法學(xué),面向計劃、開發(fā)維護

整個軟件生存周期的方法學(xué)。②確定軟件成分,記錄軟件生存周期每

一步的軟件文件資料,按步顯示其軌跡。③可預(yù)測結(jié)果,在生存周期

中,每隔一定時間可以進行復(fù)審。軟件工程學(xué)的最終目的,是以較少

的投資獲得易維護、易理解、可靠、高效率的軟件產(chǎn)品。

軟件工程的原則是:①分解。②抽象和信息隱蔽。③一致性《④

確定性。

軟件工程的主要研究內(nèi)容是:軟件結(jié)構(gòu)、軟件設(shè)計與維護方法、

軟件工具與環(huán)境、軟件工程標(biāo)準(zhǔn)與規(guī)范、軟件開發(fā)技術(shù)與管理技術(shù)的

相關(guān)理論。

第2章可行性研究

1.可行性研究的任務(wù)是什么?簡述可行性研究的步驟。

答:可行性研究的任務(wù)是:①經(jīng)濟可行性。②技術(shù)可行性。③運行可

行性。④法律可行性。⑤開發(fā)方案可行性。

可行性研究的步驟是:①復(fù)查系統(tǒng)規(guī)模和目標(biāo)。②研究目前正在

使用的系統(tǒng)。③導(dǎo)出新系統(tǒng)的高層邏輯模型。④重新定義問題。⑤導(dǎo)

出和評價供選擇的方案。⑥推薦一個方案并說明理由。⑦推薦行動方

針。⑧書寫計劃任務(wù)書。⑨提交審查。

第3章需求工程

1.需求分析的任務(wù)是什么?怎樣理解分析階段的任務(wù)是決定“做什

么”,而不是“怎樣做”?

答:需求分析的基本任務(wù)是分析與綜合已收集到的需求信息,通過分

析找出需求信息內(nèi)在聯(lián)系和可能的矛盾,通過綜合找出解決問題的方

法并建立系統(tǒng)的邏輯模型。具體地說,需求分析是提煉、分析和審查

已收集到的需求信息,找出真正的和具體的需求,并確保所有相關(guān)人

員都理解其含義。此外,通過建立軟件系統(tǒng)的邏輯模型,發(fā)現(xiàn)和找出

需求信息中存在的沖突、遺漏、錯誤或含糊的問題。①繪制系統(tǒng)關(guān)聯(lián)

圖。②創(chuàng)建用戶接口原型。③分析需求可行性。④確定需求的優(yōu)先級。

⑤為需求建立模型C⑥創(chuàng)建數(shù)據(jù)字典。⑦質(zhì)量功能調(diào)配。

我是這樣理解分析階段的任務(wù)是決定“做什么”,而不是“怎樣

做”:分析階段主要是指用戶對軟件的功能與性能需求,也就是用戶

希望軟件能夠做什么事情,完成哪些功能,達到哪些性能等,而不是

如何去實現(xiàn)軟件的這些功能。

2.需求規(guī)格說明書由哪些部分組成?各部分的關(guān)系是什么?

答:需求規(guī)格說明書由下列部分組成:①引言。②任務(wù)概述。③數(shù)據(jù)

描述。④功能要求。⑤性能需求。⑥運行需求。⑦其他要求。⑧附錄。

各部分的關(guān)系是:首先用戶必須對軟件功能和性能提出初步要

求,并澄清一些模糊概念;然后軟件分析人員認(rèn)真了解用戶的要求,

細(xì)致地進行調(diào)查分析,把用戶要求做什么的問題轉(zhuǎn)換成一個完全的、

精細(xì)的軟件邏輯模型并寫出軟件的需求規(guī)格說明,準(zhǔn)確地表達用戶的

要求。

第4章概要設(shè)計

1.結(jié)構(gòu)化設(shè)計方法的基本思想是什么?它如何與SA方法相銜接?

答:結(jié)構(gòu)化設(shè)計方法的基本思想是:①系統(tǒng)分析員審查軟件計劃、軟

件需求分析提供的文檔,提出候選的最佳推薦方案以及系統(tǒng)流程圖、

組成系統(tǒng)物理元素清單、成本效益分析和系統(tǒng)的進度計劃供專家審

定,審定后進入設(shè)計。②確定模塊結(jié)構(gòu),劃分功能模塊,將軟件功能

需求分配給所劃分的最小單元模塊。確定模塊間的聯(lián)系,確定數(shù)據(jù)結(jié)

構(gòu)、文件結(jié)構(gòu)、數(shù)據(jù)庫模式,確定測試方法與策略。③編寫概要設(shè)計

說明書、用戶手冊、測試計劃,選用相關(guān)的軟件工具來描述軟件結(jié)構(gòu),

選擇分解功能與劃分模塊的設(shè)計原則。

它是這樣與SA方法相銜接的:①設(shè)計系統(tǒng)方案。②選取一組合

理的方案。③推薦最佳實施方案。④功能分解。⑤軟件結(jié)構(gòu)設(shè)計。⑥

數(shù)據(jù)庫設(shè)計與文件結(jié)構(gòu)設(shè)計。⑦制訂測試計劃o⑧編寫概要設(shè)計文檔O

⑨審查與復(fù)審概要設(shè)計文檔。

2.什么是模塊獨立性?用什么來度量?

答:模塊獨立性是指軟件系統(tǒng)中每個模塊只涉及軟件要求的具體子功

能,而且與其他模塊接口簡單。模塊獨立的概念是模塊化、抽象、信

息隱蔽和局部化概念的直接結(jié)果。

模塊的獨立程度可以由兩個定性標(biāo)準(zhǔn)度量,這兩個標(biāo)準(zhǔn)分別稱為

耦合和內(nèi)聚。耦合衡量不同模塊彼此間互相依賴的緊密程度;內(nèi)聚衡

量一個模塊內(nèi)部各個元素彼此結(jié)合的緊密程度。

3.什么是自頂向下設(shè)計?為什么說它尤其適用于大型軟件的開發(fā)?

答:自頂向下設(shè)計:設(shè)計人員要對系統(tǒng)有一個全面的了解,然后從頂

層開始,連續(xù)地逐層向下分解,直至系統(tǒng)的所有模塊都小到便于掌握

為止。

對于大型軟件的開發(fā),如若采用自頂向下的方法進行設(shè)計,可以

很好的把握整體系統(tǒng),使得系統(tǒng)整體結(jié)構(gòu)合理。

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

1.簡述詳細(xì)說明書的主要內(nèi)容。怎樣對它進行復(fù)審?

答:詳細(xì)說明書的主要內(nèi)容是:①表示軟件結(jié)構(gòu)的圖表。②對逐個模

塊的程序描述,包括算法和邏輯流程,輸入/輸出項與外部接口等。

這樣對它進行復(fù)審:詳細(xì)設(shè)計復(fù)審的重點應(yīng)該放在各個模塊的具

體設(shè)計上。例如,設(shè)計的模塊能否滿足其功能與性能要求,選擇的算

法與數(shù)據(jù)結(jié)構(gòu)是否合理,是否符合編碼語言的特點,設(shè)計描述是否簡

單而清晰等。

2.說明詳細(xì)設(shè)計的基本原則和任務(wù)。

答:詳細(xì)設(shè)計的基本原則是:①由于詳細(xì)設(shè)計的藍圖是給人閱讀的,

是編碼的基礎(chǔ),所以模塊的邏輯描述要清晰易讀、正確可靠。②采用

結(jié)構(gòu)化設(shè)計方法,改善控制結(jié)構(gòu),降低程序的復(fù)雜程度,從而提高程

序的可讀性、可測試性、可維護性。③選擇恰當(dāng)?shù)拿枋龉ぞ邅砻枋龈?/p>

模塊算法。

詳細(xì)設(shè)計的任務(wù)是:為每一個模塊確定使用的算法和相關(guān)的數(shù)據(jù)

結(jié)構(gòu),并用選定的表達工具清晰地描述。這一階段的主要任務(wù)如下:

①為每個模塊確定采用的算法,選擇某種適當(dāng)?shù)墓ぞ弑磉_算法的過

程,寫出模塊的詳細(xì)過程性描述。②確定每一模塊使用的數(shù)據(jù)結(jié)構(gòu)。

③確定模塊接口的細(xì)節(jié)。④要為每一個模塊設(shè)計出一組測試用例,以

便在編碼階段對模塊代碼(即程序)進行預(yù)定的測試。

第6章面向?qū)ο笤O(shè)計

1.什么是面向?qū)ο蠓椒▽W(xué)?試闡述這種方法學(xué)的主要優(yōu)點。

答:面向?qū)ο筌浖_發(fā)方法是一種運用對象、類、繼承、封裝、聚合、

消息傳送、多態(tài)性等概念來構(gòu)造系統(tǒng)的軟件開發(fā)方法。面向?qū)ο蠓椒?/p>

的基本思想是從現(xiàn)實世界中客觀存在的事物出發(fā)來構(gòu)造軟件系統(tǒng),并

在系統(tǒng)構(gòu)造中盡可能運用人類的自然思維方式。

面向?qū)ο蠓椒▽W(xué)的主要優(yōu)點:①從問題域中客觀存在的事物出發(fā)

來構(gòu)造軟件系統(tǒng),用對象作為對這些事物的抽象表示,并以此作為系

統(tǒng)的基本構(gòu)成單位c②事物的靜態(tài)特征是可以用一些數(shù)據(jù)來表達的特

征,可以用對象的屬性表示,事物的動態(tài)特征(即事物的行為)用對

象的服務(wù)(或操作)表示。③對象的屬性與服務(wù)結(jié)合為一個獨立的實

體,對外屏蔽其內(nèi)部細(xì)節(jié),稱為封裝。④把具有相同屬性和相同服務(wù)

的對象歸為一類,類是這些對象的抽象描述,每個對象是它的類的一

個實例。⑤通過在不同程度上運用抽象的原則,可以得到較一般的類

和較特殊的類。特殊類繼承一般類的屬性和服務(wù),面向?qū)ο蠓椒ㄖС?/p>

對這種繼承關(guān)系的描述與實現(xiàn),從而簡化系統(tǒng)的構(gòu)造過程及其文檔。

⑥復(fù)雜的對象可以用簡單的對象作為其構(gòu)成部分,稱為聚合。⑦對象

之間通過消息進行通信,以實現(xiàn)對象之間的動態(tài)聯(lián)系。⑧通過關(guān)聯(lián)表

達對象之間的靜態(tài)關(guān)系。

2.面向?qū)ο蠓治龅倪^程、遵循的準(zhǔn)則是什么?

答:面向?qū)ο蠓治龅倪^程:①發(fā)現(xiàn)對象、定義它們的類。②識別對象

的內(nèi)部特征。③識別對象的外部關(guān)系。④劃分主題,建立主題圖c⑤

定義usecase,建立交互圖。⑥建立詳細(xì)說明。⑦原型開發(fā)。

面向?qū)ο蠓治鲎裱臏?zhǔn)則是:①抽象。②分類。③聚合。④關(guān)聯(lián)。

⑤消息通信。⑥粒度控制。⑦行為分析。

3.為“火車站自動化售票系統(tǒng)”設(shè)計一個結(jié)構(gòu)化模型。

答:

售/退票處理

第7章編碼

1.評價、選擇可用編程語言的準(zhǔn)則是什么?

答:(1)理想標(biāo)準(zhǔn):①應(yīng)該有理想的模塊化機制,以及可讀性好的控

制結(jié)構(gòu)和數(shù)據(jù)結(jié)構(gòu),以使程序容易測試和維護,同時減少軟件生存周

期的總成本。②應(yīng)該使編譯程序能夠盡可能多地發(fā)現(xiàn)程序中的錯誤,

以便于調(diào)試和提高軟件的可靠性。③應(yīng)該有良好的獨立編譯機制,以

降低軟件開發(fā)和維護的成本。(2)實踐標(biāo)準(zhǔn):①語言自身的功能c②

系統(tǒng)用戶的要求。③編碼和維護成本。④軟件的兼容性。⑤可以使用

的軟件工具。⑥軟件可移植性。⑦開發(fā)系統(tǒng)的規(guī)模。⑧程序設(shè)計人員

的知識水平。

2.提高軟件可靠性的技術(shù)有哪些?它們有什么不同?

答:提高軟件可靠性的技術(shù)有:一類是避開錯誤技術(shù),另一類是容錯

技術(shù)。兩者的不同是:避開錯誤技術(shù)是在開發(fā)的過程中不讓差錯潛入

軟件的技術(shù);容錯技術(shù)是對某些無法避開的差錯,使其影響減至最小

的技術(shù)。避開錯誤技術(shù)是進行質(zhì)量管理,實現(xiàn)產(chǎn)品應(yīng)有質(zhì)量所不可少

的技術(shù),也就是軟件工程中所討論的先進的軟件分析和開發(fā)技術(shù)和管

理技術(shù)。但是,無論使用多么高水平的避開錯誤技術(shù),也無法做到絕

無錯誤,這就需要采用容錯技術(shù)。實現(xiàn)容錯的主要手段是冗余和防錯

程序設(shè)計。

3.采用面向?qū)ο蟮某绦蛟O(shè)計方法時,基本步驟是什么?

答:(1)建立軟件系統(tǒng)的動態(tài)模型:①根據(jù)問題域和具體要求確定組

成軟件系統(tǒng)的對象及該對象所應(yīng)具備的固有處理能力。②分析各對象

之間的所有聯(lián)系,并確定它們相互間的消息傳遞方式。③設(shè)計對象的

消息模式,由消息模式和對象的處理能力

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論