《軟件工程》期末考試復(fù)習(xí)題庫(含答案)_第1頁
《軟件工程》期末考試復(fù)習(xí)題庫(含答案)_第2頁
《軟件工程》期末考試復(fù)習(xí)題庫(含答案)_第3頁
《軟件工程》期末考試復(fù)習(xí)題庫(含答案)_第4頁
《軟件工程》期末考試復(fù)習(xí)題庫(含答案)_第5頁
已閱讀5頁,還剩69頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

PAGEPAGE1《軟件工程》期末考試復(fù)習(xí)題庫(含答案)一、單選題1.軟件開發(fā)成本度量主要指軟件開發(fā)項目所需的財務(wù)性成本的估算。主要方法不包括()。A、類比估算法B、細分估算法C、周期估算法D、代碼行估算法答案:D2.在下列測試技術(shù)中,()不屬于黑盒測試技術(shù)。A、等價劃分B、錯誤推測C、邊界值分析D、邏輯覆蓋答案:D3.關(guān)于軟件測試,不正確的描述是()。A、測試前要認定被測試的軟件正確B、要盡量避免測試自己編寫的程序C、測試要兼顧合理輸入與不合理輸入數(shù)據(jù)D、測試不能窮盡所有的測試,要據(jù)人力物力安排測試,選擇好測試用例與測試方法答案:A4.()是將系統(tǒng)化的、規(guī)范的、可定量的方法應(yīng)用于軟件的開發(fā)、運行和維護的過程,它包括方法、工具和過程三個要素。A、軟件過程B、軟件測試C、軟件生命周期D、軟件工程方法學(xué)答案:D5.在UML中,通過建立類圖來表示()。A、功能模型B、狀態(tài)模型C、行為模型D、對象模型答案:D6.從下列敘述中,能夠與軟件開發(fā)各階段,如需求分析、設(shè)計、編碼相對應(yīng)的軟件測試是()。A、組裝測試、確認測試、單元測試B、單元測試、組裝測試、確認測試C、單元測試、確認測試、組裝測試D、確認測試、組裝測試、單元測試答案:D7.軟件是計算機系統(tǒng)中與硬件相互依存的另一部分,它包括文擋、數(shù)據(jù)及()。A、數(shù)據(jù)B、軟件C、文檔D、程序答案:D8.軟件需求規(guī)格說明的內(nèi)容不應(yīng)包括()。A、主要功能B、算法的詳細描述C、用戶界面及運行環(huán)境D、軟件的性能答案:B9.軟件開發(fā)時,一個錯誤發(fā)現(xiàn)得越晚,為改正它所付出的代價就()。A、越大B、越小C、越不可捉摸D、越接近平均水平答案:A10.軟件生命周期中所花費用最多的階段是()。A、詳細設(shè)計B、軟件編碼C、軟件測試D、軟件維護答案:D11.UML的全稱是()A、unifyModelingLanguageB、unifiedModelingLanguageC、unifyMakingLanguageD、unifiedMakingLanguage答案:B12.內(nèi)聚程度最低的是()內(nèi)聚。A、通信B、過程C、巧合D、時間答案:C13.需求分析的最終產(chǎn)品是()。A、數(shù)據(jù)流程圖案B、數(shù)據(jù)字典C、判定表D、需求規(guī)格說明書答案:D14.模塊的內(nèi)聚性最高的是()。A、邏輯內(nèi)聚B、功能內(nèi)聚C、時間內(nèi)聚D、偶然內(nèi)聚答案:B15.在編制程序時不應(yīng)采納的原則之一是()。A、盡量避免復(fù)雜的條件測試B、注釋要充分C、程序越短越好D、變量名縮寫規(guī)則一致答案:C16.軟件測試的目標是()。A、證明軟件是正確的B、發(fā)現(xiàn)錯誤、降低錯誤帶來的風險C、排除軟件中所有的錯誤D、與軟件調(diào)試相同答案:B17.單選題簡單2分

在ATM自動取款機的工作模型中(用戶通過輸入正確的用戶資料,從銀行取錢的過程),下面哪個是參與者()。A、用戶B、ATM取款機C、ATM取款機管理員D、取款答案:A18.結(jié)構(gòu)化程序設(shè)計的一種基本方法是()。A、篩選法B、迭代法C、逐步求精法D、遞歸法答案:C19.系統(tǒng)分析員Analyst在做儲蓄系統(tǒng)的需求開發(fā)時,發(fā)現(xiàn):①“取款”用例、②“查詢余額”用例、③“更改密碼”用例都要使用、④“驗證卡號和密碼”用例的功能。那么①②③3個用例與用例④的關(guān)系是()。A、使用關(guān)系B、擴展關(guān)系C、組成關(guān)系D、包含關(guān)系答案:D20.在用邏輯覆蓋法設(shè)計測試用例時,有語句覆蓋、判定覆蓋、條件覆蓋、判定-條件覆蓋、條件組合覆蓋和路徑覆蓋等,其中()是最弱的覆蓋準則。A、語句覆蓋B、條件覆蓋C、判定-條件覆蓋D、路徑覆蓋答案:A21.開發(fā)軟件所需高成本和產(chǎn)品的低質(zhì)量之間有著尖銳的矛盾,這種現(xiàn)象稱做()。A、軟件工程B、軟件周期C、軟件危機D、軟件產(chǎn)生答案:C22.在類圖中,下面哪個符號表示繼承關(guān)系()。A、實心箭頭B、空心箭頭C、實心菱形D、空心菱形答案:B23.軟件詳細設(shè)計的主要任務(wù)是確定每個模塊的()。A、算法和使用的數(shù)據(jù)結(jié)構(gòu)B、外部接口C、功能D、編程答案:A24.各種軟件維護的類型中最重要的是()。A、完善性維護B、改正性維護C、適應(yīng)性維護D、預(yù)防性維護答案:A25.提高測試的有效性非常重要,成功的測試是指()。A、證明了被測試程序正確無誤B、說明了被測試程序符合相應(yīng)的要求C、未發(fā)現(xiàn)被測程序的錯誤D、發(fā)現(xiàn)了至今為止尚未發(fā)現(xiàn)的錯誤答案:D26.面向?qū)ο蟮姆治龇椒ㄖ饕墙⑷惸P?,?)。A、系統(tǒng)模型、E-R模型、應(yīng)用模型B、對象模型、交互模型、應(yīng)用模型C、對象模型、E-R模型、用例模型D、對象模型、交互模型、用例模型答案:A27.與設(shè)計軟件測試用例無關(guān)的文檔是()。A、需求規(guī)格說明B、詳細設(shè)計說明C、可行性研究報告D、源程序答案:C28.下列()屬于軟件工程工具軟件。A、字處理軟件B、RationalRoseC、操作系統(tǒng)D、DBMS答案:B29.瀑布模型本質(zhì)上是一種()。A、線性順序模型B、順序迭代模型C、線性迭代模型D、及早見產(chǎn)品的模型答案:A30.數(shù)據(jù)字典是軟件需求分析階段的最重要工具之一,其最基本的功能是()。A、數(shù)據(jù)庫設(shè)計B、數(shù)據(jù)通信C、數(shù)據(jù)定義D、數(shù)據(jù)維護答案:C31.測試中應(yīng)該選擇()的數(shù)據(jù)作為測試數(shù)據(jù)。A、發(fā)現(xiàn)錯誤可能性大B、能證明軟件正確C、簡單D、復(fù)雜答案:A32.信息隱藏概念與()概念直接相關(guān)。A、模塊的獨立性B、模塊類型的劃分C、軟件結(jié)構(gòu)定義D、軟件生命周期答案:A33.開發(fā)軟件所需高成本和產(chǎn)品的低質(zhì)量之間有著尖銳的矛盾,這種現(xiàn)象稱做()。A、軟件工程B、軟件周期C、軟件危機D、軟件產(chǎn)生答案:C34.軟件維護時,對測試階段未發(fā)現(xiàn)的錯誤進行測試、診斷、定位、糾錯,直至修改的回歸測試過程稱為()。A、改正性維護B、適應(yīng)性維護C、完善性維護D、預(yù)防性維護答案:A35.軟件文檔在軟件工程實施中是十分重要的,它不僅是軟件開發(fā)各階段的重要依據(jù),而且極大影響軟件的()。A、可靠性B、可維護性C、可擴展性D、可移植性答案:B36.對于程序設(shè)計,不正確的陳述是()。A、為了減少程序的長度,最好不要在程序中增加注釋。B、變量名以簡潔為好,名字太長了難以理解,增加了程序的復(fù)雜性。C、程序語句要求體現(xiàn)層次性,以使結(jié)構(gòu)清晰明顯。D、數(shù)據(jù)結(jié)構(gòu)的組織和復(fù)雜程度在設(shè)計期間確定,但數(shù)據(jù)說明的風格是在寫程序時確定的。答案:A37.面向?qū)ο蟮闹饕卣鞒龑ο笪┮恍?、封裝、繼承外,還有()。A、多態(tài)性B、完整性C、可移植性D、兼容性答案:A38.下列屬于軟件開發(fā)項目風險的是()。A、關(guān)鍵技術(shù)人員流失B、有重大技術(shù)障礙C、軟件沒市場需求D、不適合產(chǎn)品整體戰(zhàn)略答案:A39.若有一個計算類型的程序,它的輸入量只有一個X,其范圍是[-1.0,1.0],現(xiàn)從輸入的角度考慮一組測試用例:-1.001,-1.0,1.0,1.001.設(shè)計這組測試用例的方法是()。A、條件覆蓋法B、等價分類法C、邊界值分析法D、錯誤推測法答案:C40.數(shù)據(jù)流圖(DFD)中的每個數(shù)據(jù)處理至少需要()。A、一個輸入數(shù)據(jù)流B、一個輸出數(shù)據(jù)流C、一個輸入或者輸出數(shù)據(jù)流D、一個輸入數(shù)據(jù)流和一個輸出流答案:D41.下面的()不是良好編碼的原則。A、在開始編碼之前建立單元測試B、建立一種有助于理解的直觀布局C、保持變量名簡短以便代碼緊湊D、確保注釋與代碼完全一致答案:C42.在E-R模型中,包含以下基本成分()。A、數(shù)據(jù)、對象、實體B、控制、聯(lián)系、對象C、實體、聯(lián)系、屬性D、實體、屬性、操作答案:C43.針對應(yīng)用系統(tǒng)運行期間的數(shù)據(jù)特點,修改它的排序算法使其更高效,屬于軟件維護中的()。A、改正性B、完善性C、適應(yīng)性D、預(yù)防性答案:B44.經(jīng)過嚴密的軟件測試后所提交給用戶的軟件產(chǎn)品中()。A、軟件不再包含任何錯誤B、還可能包含軟件錯誤C、所提交給用戶的可執(zhí)行文件不會含有錯誤D、文檔中不會含有錯誤答案:B45.若有一個程序,輸入量只有一個X,現(xiàn)從輸入的角度考慮一組測試用例:輸入為0、輸入為空。設(shè)計這組測試用例的方法是()。A、條件覆蓋法B、等價分類法C、邊界值分析法D、錯誤推測法答案:D46.類的行為應(yīng)該基于()進行測試。A、數(shù)據(jù)流圖B、對象圖C、狀態(tài)圖D、用例圖答案:C47.UML中能夠描述對象的行為,反映出對象的狀態(tài)與事件關(guān)系的是()。A、狀態(tài)圖B、流程圖C、結(jié)構(gòu)圖D、對象圖答案:A48.以下關(guān)于軟件測試的原則錯誤的是()。A、盡早地和不斷地進行軟件測試B、測試用例應(yīng)包括合理的輸入條件和不合理的輸入條件C、軟件測試中的錯誤存在群集現(xiàn)象D、應(yīng)由程序員測試自己編寫的程序答案:D49.分層數(shù)據(jù)流圖是一種比較嚴格又易于理解的描述方式,它的頂層數(shù)據(jù)流圖描述了系統(tǒng)的()。A、總貌B、細節(jié)C、抽象D、軟件的作用答案:A50.軟件概要設(shè)計結(jié)束后得到()。A、初始化的軟件結(jié)構(gòu)圖B、優(yōu)化后的軟件結(jié)構(gòu)圖C、模塊的接口圖和詳細算法D、程序編碼答案:B51.軟件復(fù)雜性主要體現(xiàn)在()。A、數(shù)據(jù)的復(fù)雜性B、程序的復(fù)雜性C、控制的復(fù)雜性D、問題的復(fù)雜性答案:D52.數(shù)據(jù)字典是軟件需求分析階段的最重要工具之一,其最基本的功能是()。A、數(shù)據(jù)庫設(shè)計B、數(shù)據(jù)通信C、數(shù)據(jù)定義D、數(shù)據(jù)維護答案:C53.為高質(zhì)量地開發(fā)軟件項目,在軟件結(jié)構(gòu)設(shè)計時,必須遵循()原則。A、信息隱藏B、質(zhì)量控制C、程序優(yōu)化D、數(shù)據(jù)共享答案:A54.在軟件的分析階段,常用()來描述業(yè)務(wù)處理系統(tǒng)的信息來源、存儲、處理和去向。A、E-R圖B、框圖C、數(shù)據(jù)流圖D、時序圖答案:C55.面向?qū)ο蠓治瞿P筒话ㄈ缦拢ǎ、功能模型B、對象模型C、動態(tài)模型D、物理模型答案:D56.單元測試的測試用例主要根據(jù)()的結(jié)果來設(shè)計。A、需求分析B、源程序C、概要設(shè)計D、詳細設(shè)計答案:D57.下列關(guān)于功能性注釋不正確的說法是()。A、功能性注釋嵌在源程序中,用于說明程序段或語句的功能以及數(shù)據(jù)的狀態(tài)B、注釋用來說明程序段,需要在每一行都要加注釋C、可使用空行或縮進,以便很容易區(qū)分注釋和程序D、修改程序也應(yīng)修改注釋答案:B58.軟件結(jié)構(gòu)圖的形態(tài)特征能反映程序重用率的是()。A、深度B、寬度C、扇入D、扇出答案:C59.面向?qū)ο蠓治鲞^程中獲取用戶需求不正確的是()。A、參觀用戶的工作流程,觀察用戶的操作B、向用戶群體發(fā)調(diào)查問卷C、與同行、專家交談,聽取他們的意見D、系統(tǒng)分析員與用戶簡單交流后與設(shè)計人員確定答案:D60.下面()不是Web界面設(shè)計的原則。A、一致性B、簡潔性C、美觀性D、方便設(shè)計答案:D61.噴泉模型是對象驅(qū)動的,適合于()的開發(fā)方法。A、結(jié)構(gòu)化B、形式化C、面向?qū)ο驞、面向數(shù)據(jù)答案:C62.軟件生命周期中所花費用最多的階段是()。A、詳細設(shè)計B、軟件編碼C、軟件測試D、軟件維護答案:D63.為適應(yīng)軟件運行環(huán)境的變化而修改軟件的活動稱為()。A、糾錯性維護B、適應(yīng)性維護C、改善性維護D、預(yù)防性維護答案:B64.為了提高模塊的獨立性,模塊內(nèi)部最好是()。A、邏輯內(nèi)聚B、時間內(nèi)聚C、功能內(nèi)聚D、通信內(nèi)聚答案:C65.下面關(guān)于程序設(shè)計風格敘述錯誤的是()。A、使用有意義的變量名B、程序的注釋越少越好C、程序的格式應(yīng)有助于讀者理解程序D、不要修改不好的程序,要重新編寫答案:B66.按軟件生命周期方法設(shè)計軟件的過程中,畫數(shù)據(jù)流圖屬于下面哪個階段的工作()。A、需求分析B、程序設(shè)計C、詳細設(shè)計D、軟件維護答案:A67.面向?qū)ο蟮拈_發(fā)方法中,()將是面向?qū)ο蠹夹g(shù)領(lǐng)域內(nèi)占主導(dǎo)地位的標準建模語言。A、Booch方法B、Coad方法C、UML語言D、OMT方法答案:C68.軟件按照設(shè)計要求,在規(guī)定時間和條件下不出故障,持續(xù)運行的程度。屬于以下哪一個軟件質(zhì)量要素()。A、正確性B、可靠性C、完整性D、可使用性答案:B69.以下哪一個是瀑布模型的缺點。()A、可強迫開發(fā)人員采用規(guī)范化的方法。B、嚴格地規(guī)定了每個階段必須提交的文檔。C、要求每個階段交出的所有產(chǎn)品都必須是經(jīng)過驗證的。D、適用于項目開始時需求已確定的情況。答案:D70.()意味著一個操作在不同的類中可以有不同的實現(xiàn)方式。A、多態(tài)性B、多繼承C、類的可復(fù)用D、信息隱蔽答案:A71.下面的()說法是正確的。A、軟件危機在20世紀70年代末期全面爆發(fā)B、當前先進的軟件工程方法已經(jīng)解決了軟件危機的問題C、軟件危機是指在軟件開發(fā)和維護過程中所遇到的一系列嚴重問題D、軟件危機是指在軟件產(chǎn)品中存在一系列的質(zhì)量問題答案:C72.不屬于軟件項目管理的是()。A、軟件銷售利潤B、風險管理C、質(zhì)量監(jiān)控D、軟件過程能力評估答案:A73.以下哪一項不是軟件危機的表現(xiàn)形式()。A、開發(fā)的軟件不滿足用戶需要B、開發(fā)的軟件可維護性差C、開發(fā)的軟件價格便宜D、開發(fā)的軟件可靠性差答案:C74.確認軟件的功能是否與需求規(guī)格說明書中所要求的功能相符的測試屬于()。A、集成測試B、恢復(fù)測試C、驗收測試D、單元測試答案:C75.下列模塊內(nèi)聚程度最高的是()內(nèi)聚。A、巧合B、過程C、信息D、時間答案:C76.軟件維護產(chǎn)生的副作用,是指()。A、開發(fā)時的錯誤B、隱含的錯誤C、因修改軟件而造成的錯誤D、運行時誤操作答案:C77.概要設(shè)計是軟件系統(tǒng)結(jié)構(gòu)的總體設(shè)計,以下選項中不屬于概要設(shè)計的是()。A、把軟件劃分成模塊B、確定模塊之間的調(diào)用關(guān)系C、確定各個模塊的功能D、設(shè)計每個模塊的具體算法答案:D78.通常在()階段中,無須用戶參與。A、需求分析B、維護C、編碼D、測試答案:C79.數(shù)據(jù)字典是用來定義()中的各個成份的具體含義的。A、程序流程圖B、功能結(jié)構(gòu)圖C、系統(tǒng)結(jié)構(gòu)圖D、數(shù)據(jù)流圖答案:D80.模塊A執(zhí)行幾個邏輯上相似的功能則該模塊具有()。A、功能內(nèi)聚B、邏輯內(nèi)聚C、時間內(nèi)聚D、巧合內(nèi)聚答案:B81.PDL是()。A、流程圖B、判定表C、判定樹D、偽碼答案:D82.一般說來,軟件生命周期由三個大的時期組成,不包括下面哪個時期()。A、軟件定義B、軟件開發(fā)C、詳細設(shè)計D、軟件維護答案:C83.在結(jié)構(gòu)化分析方法中,用以表達系統(tǒng)內(nèi)數(shù)據(jù)的運動情況的工具是()。A、數(shù)據(jù)流圖B、數(shù)據(jù)詞典C、結(jié)構(gòu)化語言D、判定表與判定樹答案:A84.軟件開發(fā)成本度量主要指軟件開發(fā)項目所需的財務(wù)性成本的估算。主要方法不包括()。A、類比估算法B、細分估算法C、周期估算法D、代碼行估算法答案:D85.使用獨立測試團隊的最好理由是()。A、軟件開發(fā)人員不需要做任何測試B、測試團隊將更徹底地測試軟件C、測試人員在測試開始之前不參與項目D、開發(fā)人員與測試人員之間的爭論會減少答案:B86.設(shè)計軟件結(jié)構(gòu)是下面()階段完成的任務(wù)。A、需求分析B、詳細設(shè)計C、概要設(shè)計D、實現(xiàn)答案:C87.內(nèi)聚程度最低的是()內(nèi)聚。A、偶然B、過程C、順序D、時間答案:A88.結(jié)構(gòu)化設(shè)計是一種面向()的設(shè)計方法。A、數(shù)據(jù)流B、模塊C、數(shù)據(jù)結(jié)構(gòu)D、程序答案:A89.程序的三種基本控制結(jié)構(gòu)是()。A、過程、子程序和分程序B、順序、選擇和重復(fù)C、遞歸、迭代和回溯D、調(diào)用、返回和轉(zhuǎn)移答案:B90.在軟件的需求分析中,開發(fā)人員要從用戶那里解決的最重要的問題是()。A、要讓軟件做什么B、要讓軟件怎么做C、軟件如何實施D、軟件如何測試答案:A91.使用白盒測試方法時,確定測試數(shù)據(jù)應(yīng)根據(jù)()和指定的覆蓋標準。A、程序的內(nèi)部邏輯B、程序的復(fù)雜結(jié)構(gòu)C、使用說明書D、程序的功能答案:B92.冰箱和海爾冰箱這兩個事物之間是()關(guān)系。A、繼承B、聚合C、關(guān)聯(lián)D、細化答案:A93.以下關(guān)于McCabe度量法錯誤的是()。A、源程序中存在的錯誤數(shù)與McCabe環(huán)復(fù)雜度量值有關(guān)B、診斷和糾正錯誤所需的時間與McCabe環(huán)復(fù)雜度量值有關(guān)C、McCabe度量數(shù)大的程序結(jié)構(gòu)一定是不好的程序結(jié)構(gòu)D、McCabe度量法是一種基于程序控制流的復(fù)雜性度量方法答案:C94.對象實現(xiàn)了數(shù)據(jù)和操作的結(jié)合,使數(shù)據(jù)和操作()于對象的統(tǒng)一體中。A、結(jié)合B、隱藏C、封裝D、抽象答案:C95.模塊化設(shè)計原則應(yīng)使軟件結(jié)構(gòu)具有()。A、高內(nèi)聚高耦合B、低內(nèi)聚低耦合C、高內(nèi)聚低耦合D、低內(nèi)聚高耦合答案:C96.詳細設(shè)計的基本任務(wù)是確定每個模塊的()設(shè)計A、功能B、調(diào)用關(guān)系C、輸入輸出數(shù)據(jù)D、算法答案:D97.軟件結(jié)構(gòu)圖中,模塊框之間若有直線連接,表示它們之間存在()。A、調(diào)用關(guān)系B、組成關(guān)系C、鏈接關(guān)系D、順序執(zhí)行關(guān)系答案:A98.“淘寶定時確認收貨”屬于面向?qū)ο笤O(shè)計任務(wù)中的()。A、事件驅(qū)動型任務(wù)B、時鐘驅(qū)動型任務(wù)C、優(yōu)先任務(wù)D、協(xié)調(diào)任務(wù)答案:A99.總體設(shè)計的組成階段不包括下面的()。A、系統(tǒng)設(shè)計B、數(shù)據(jù)庫的設(shè)計C、詳細設(shè)計D、結(jié)構(gòu)設(shè)計答案:C100.UML中表示對象之間交互的圖為()。A、類圖B、活動圖C、順序圖D、部署圖答案:A101.測試的關(guān)鍵問題是()。A、如何組織對軟件的評審B、如何驗證程序的正確性C、如何采用綜合策略D、如何選擇測試用例答案:D102.軟件生命周期的最后的一個階段是()。A、書寫軟件文檔B、軟件維護C、穩(wěn)定性測試D、書寫詳細用戶說明答案:B103.在類圖表示的對象模型中,類之間的()包括一對一、一對多、多對多。A、繼承B、關(guān)聯(lián)C、聚合D、泛化答案:B104.火車是一種陸上交通工具。火車和陸上交通工具之間的關(guān)系是()關(guān)系。A、組裝B、整體部分C、一對一D、一般特殊答案:D105.若有一個計算類型的程序,它的輸入量只有一個X,其范圍是[-1.0,1.0],現(xiàn)從輸入的角度考慮一組測試用例:-1.001,-1.0,1.0,1.001.設(shè)計這組測試用例的方法是()。A、條件覆蓋法B、等價分類法C、邊界值分析法D、錯誤推測法答案:B106.程序的三種基本控制結(jié)構(gòu),包括順序結(jié)構(gòu)、()和循環(huán)結(jié)構(gòu)。A、分支結(jié)構(gòu)B、說明結(jié)構(gòu)C、輸入結(jié)構(gòu)D、輸出結(jié)構(gòu)答案:A107.詳細設(shè)計常用的三種工具是()。A、文檔、表格、流程B、圖形、表格、語言C、數(shù)據(jù)庫、語言、圖形D、文檔、圖形、表格答案:B108.面向數(shù)據(jù)流的設(shè)計方法把()映射成軟件結(jié)構(gòu)。A、數(shù)據(jù)流B、系統(tǒng)結(jié)構(gòu)C、控制結(jié)構(gòu)D、信息流答案:A109.下面幾種白箱測試技術(shù),哪種是最強的覆蓋準則()。A、語句覆蓋B、條件覆蓋C、判定覆蓋D、條件組合覆蓋答案:D110.為了使程序能在不同計算機上運行,程序應(yīng)具有較好的()A、可移植性B、可重用性C、可維護性D、可適應(yīng)性答案:A111.軟件項目的進度管理有許多方法,()的優(yōu)點是標明了各任務(wù)的計劃進度和當前進度,能動態(tài)地反映軟件開發(fā)進展情況,但難以反映多個任務(wù)之間存在的復(fù)雜的邏輯關(guān)系。A、甘特圖B、IPOC、PERTD、網(wǎng)絡(luò)圖答案:A112.版本控制是()的核心功能。A、風險管理B、軟件質(zhì)量保證C、軟件過程能力評估D、軟件配置管理答案:D113.下列不是面向?qū)ο蠓椒▋?yōu)點的是()。A、與人類習(xí)慣的思維方法一致B、穩(wěn)定性好C、可重用性好D、不用維護答案:D114.下面幾種白盒測試技術(shù),哪種是最強的覆蓋準則()A、語句覆蓋B、條件覆蓋C、判定覆蓋D、條件組合覆蓋答案:D115.()反映了類間的一種層次關(guān)系。A、繼承B、抽象C、封裝D、多態(tài)答案:A116.為使得開發(fā)人員對軟件產(chǎn)品的各個階段工作都進行周密的思考,從而減少返工,所以()的編制是很重要的。A、需求說明B、概要說明C、軟件文檔D、測試計劃答案:A117.面向?qū)ο蠓椒ǖ挠美龍D中,()關(guān)系表示一個用例的執(zhí)行可能需要由其他用例的功能來擴展。A、<extend>B、<include>C、<use>D、<public>答案:A118.進行軟件需求分析可使用多種工具,其中不包括以下哪一個()。A、數(shù)據(jù)流圖B、E-R圖C、程序流程圖D、數(shù)據(jù)字典答案:C119.等價劃分測試方案屬于()技術(shù)。A、黑盒測試B、玻璃箱測試C、單元測試D、錯誤推測答案:A120.PAD圖的控制執(zhí)行流程為()。A、自下而上、從左到右B、自上而下、循環(huán)執(zhí)行C、自上而下、從左到右D、以上都不對答案:C121.()引入了“風險驅(qū)動”的思想,適用于大規(guī)模的內(nèi)部開發(fā)項目。A、增量模型B、噴泉模型C、快速原型模型D、螺旋模型答案:D122.引起軟件改變的原因主要有()。A、運行環(huán)境變化B、需求變化C、系統(tǒng)有錯D、以上全都是答案:D123.下列的基本成分中,()不是數(shù)據(jù)流程圖的基本成分。A、信息處理B、信息存儲C、源點、終點D、系統(tǒng)狀態(tài)答案:D124.軟件設(shè)計和編碼過程中,采取()的做法將使軟件更加容易理解和維護.A、良好的程序結(jié)構(gòu),有無文檔均可B、使用標準或規(guī)定之外的語句C、編寫詳細正確的文檔,采用良好的程序結(jié)構(gòu)D、盡量減少程序中的注釋答案:C125.確定測試計劃是在()階段制定的。A、總體設(shè)計B、詳細設(shè)計C、編碼D、測試答案:A判斷題1.軟件的開發(fā)與運行經(jīng)常受到硬件的限制和制約。A、正確B、錯誤答案:A2.傳統(tǒng)的單元測試方法與面向?qū)ο筌浖膯卧獪y試有很大不同。A、正確B、錯誤答案:A3.測試中應(yīng)該選擇發(fā)現(xiàn)錯誤可能性大的數(shù)據(jù)作為測試數(shù)據(jù)。A、正確B、錯誤答案:A4.判定覆蓋不一定包含條件覆蓋,條件覆蓋也不一定包含判定覆蓋。A、正確B、錯誤答案:A5.程序的格式應(yīng)有助于讀者理解程序。A、正確B、錯誤答案:A6.應(yīng)該盡量使用機器語言編寫代碼,提高程序運行效率,而減少高級語言的使用。A、正確B、錯誤答案:B7.目前的絕大多數(shù)軟件都不適合于快速原型技術(shù)A、正確B、錯誤答案:B8.面向?qū)ο笤O(shè)計中應(yīng)盡量設(shè)計簡單的類,避免類中有過多屬性和方法。A、正確B、錯誤答案:A9.系統(tǒng)測試的主要方法是白盒測試,主要進行功能測試、性能測試、安全性測試及可靠性等測試。A、正確B、錯誤答案:B10.缺乏處理大型軟件項目的經(jīng)驗,是產(chǎn)生軟件危機的唯一原因。A、正確B、錯誤答案:B11.對于每一條獨立路徑而言,測試用例是唯一的。A、正確B、錯誤答案:B12.采用模塊化技術(shù)有助于提高軟件的可靠性。A、正確B、錯誤答案:A13.完善性維護是提高或完善軟件的性能。A、正確B、錯誤答案:A14.軟件測試是要發(fā)現(xiàn)軟件中的所有錯誤。A、正確B、錯誤答案:B15.用窮舉測試是較現(xiàn)實的測試方法。A、正確B、錯誤答案:B16.重視程序結(jié)構(gòu)的設(shè)計,能使程序具有較好的層次結(jié)構(gòu)。A、正確B、錯誤答案:A17.由于軟件是邏輯產(chǎn)品,軟件質(zhì)量較容易直接度量。A、正確B、錯誤答案:B18.噴泉模型是對象驅(qū)動的,適合于面向?qū)ο蟮拈_發(fā)方法。A、正確B、錯誤答案:A19.編程序時應(yīng)盡可能利用硬件特點以提高程序效率。A、正確B、錯誤答案:B20.將基類映射到一張表,每個子類映射到一張表。這種方法適用于子類的屬性和基類的屬性都比較多的情況。A、正確B、錯誤答案:A21.設(shè)計幾乎都是從頭開始,成本和進度很難估計。A、正確B、錯誤答案:A22.盡可能使用高級語言編寫程序。A、正確B、錯誤答案:A23.以結(jié)構(gòu)化分析方法建立的系統(tǒng)模型就是數(shù)據(jù)流圖。A、正確B、錯誤答案:B24.測試,開發(fā)者通常不在測試現(xiàn)場,由用戶記下遇到的所有問題。A、正確B、錯誤答案:B25.軟件需求分析的任務(wù)是建立軟件模塊結(jié)構(gòu)圖。A、正確B、錯誤答案:B26.用戶對軟件需求的描述不精確,往往是產(chǎn)生軟件危機的原因之一。A、正確B、錯誤答案:A27.編碼時應(yīng)盡可能使用全局變量。A、正確B、錯誤答案:B28.測試是程序的執(zhí)行過程,目的在于發(fā)現(xiàn)錯誤。A、正確B、錯誤答案:A29.判定覆蓋不一定包含條件覆蓋,條件覆蓋也不一定包含判定覆蓋。A、正確B、錯誤答案:A30.如果通過軟件測試沒有發(fā)現(xiàn)錯誤,則說明軟件是正確的。A、正確B、錯誤答案:B31.一個好的開發(fā)人員應(yīng)具備的素質(zhì)和能力不包括具有良好的書面和口頭表達能力。A、正確B、錯誤答案:B32.軟件是一種物理實體A、正確B、錯誤答案:B33.面向?qū)ο蟮姆治龇椒ㄖ?,狀態(tài)圖描繪的是事件與對象狀態(tài)的關(guān)系,當對象接收到一個事件后,其狀態(tài)會發(fā)生改變。(A、正確B、錯誤答案:A34.等價類劃分法選擇測試用例的原則之一:設(shè)計一個新的測試用例,使其盡可能多地覆蓋尚未被覆蓋的無效等價類。A、正確B、錯誤答案:B35.瀑布模型適用于項目開始時需求不確定的情況A、正確B、錯誤答案:B36.測試用例、出錯統(tǒng)計和有關(guān)的分析報告一般不用長期保存。A、正確B、錯誤答案:B37.編碼時盡量多用全局變量。A、正確B、錯誤答案:B38.類是具有相同屬性和服務(wù)的一組對象的集合。A、正確B、錯誤答案:A39.用例圖中,“參與者”的圖形符號為一個小木頭人。A、正確B、錯誤答案:A40.軟件測試的目的是為了無一遺漏的找出所有的錯誤。A、正確B、錯誤答案:B41.軟件評審的作用是在發(fā)現(xiàn)及改正錯誤的成本相對較小時就及時發(fā)現(xiàn)并排除錯誤。A、正確B、錯誤答案:A42.結(jié)構(gòu)化分析框架的核心是數(shù)據(jù)流圖。A、正確B、錯誤答案:B43.程序中的注解越少越好。A、正確B、錯誤答案:B44.B/S結(jié)構(gòu)可以更加充分利用網(wǎng)絡(luò)上的各種資源,但是應(yīng)用程序維護的工作量大大增加。A、正確B、錯誤答案:B45.面向?qū)ο蟮募蓽y試也可以使用傳統(tǒng)的自頂向下和自底向上集成策略。A、正確B、錯誤答案:A46.面向?qū)ο蟮姆治龇椒ㄖ校瑺顟B(tài)圖通過描繪系統(tǒng)的狀態(tài)及引起系統(tǒng)狀態(tài)轉(zhuǎn)換的事件來表示系統(tǒng)的行為。A、正確B、錯誤答案:A47.流程圖也稱為程序(框圖)是最常用的一種表示法。A、正確B、錯誤答案:A48.開發(fā)軟件就是編寫程序。(A、正確B、錯誤答案:B49.一個好的開發(fā)人員應(yīng)具備的素質(zhì)和能力包括善于與周圍人員團結(jié)協(xié)作,建立良好的人際關(guān)系,善于聽取別人的意見。A、正確B、錯誤答案:A50.軟件也會磨損和老化。A、正確B、錯誤答案:B51.加工規(guī)格說明必須描述實現(xiàn)加工的策略而不是實現(xiàn)加工的細節(jié)。A、正確B、錯誤答案:A52.采用模塊化技術(shù)有助于提高軟件的可修改性。A、正確B、錯誤答案:A53.B/S結(jié)構(gòu)是“零客戶端”方式。A、正確B、錯誤答案:A54.軟件的質(zhì)量好壞主要由驗收人員負責,其他開發(fā)人員不必關(guān)心。A、正確B、錯誤答案:B55.任務(wù)子系統(tǒng)中的協(xié)調(diào)任務(wù)不僅作協(xié)調(diào)工作,也可以讓其再承擔其它服務(wù)工作。A、正確B、錯誤答案:B56.UML只能應(yīng)用于軟件系統(tǒng)模型的建立。A、正確B、錯誤答案:B57.在用戶需求分析時觀察用戶手工操作過程不是為了模擬手工操作過程,而是為了獲取第一手資料,并從中提取出有價值的需求。A、正確B、錯誤答案:A58.文檔可用于專業(yè)人員和用戶之間的通信和交流、軟件開發(fā)過程的管理、運行階段的維護。A、正確B、錯誤答案:A59.應(yīng)當把“盡早和不斷地測試”作為開發(fā)者的座右銘。A、正確B、錯誤答案:A60.甘特圖橫軸表示項目,縱軸表示時間,線條表示期間計劃和實際完成情況。A、正確B、錯誤答案:B61.適應(yīng)性維護是改進軟件未來的可維護性和可靠性。A、正確B、錯誤答案:B62.繼承是子類自動地共享基類中定義的數(shù)據(jù)和方法的機制。A、正確B、錯誤答案:A63.好的測試方案是極可能發(fā)現(xiàn)迄今為止尚未發(fā)現(xiàn)的錯誤的測試方案。A、正確B、錯誤答案:A64.可以用CASE環(huán)境或程序自動生成工具來自動生成一部分程序。A、正確B、錯誤答案:A65.進行總體設(shè)計時要加強模塊間的聯(lián)系。A、正確B、錯誤答案:B66.缺乏有力的方法學(xué)的指導(dǎo)和有效的開發(fā)工具的支持,這往往是產(chǎn)生軟件危機的原因之一。A、正確B、錯誤答案:A67.人機界面應(yīng)根據(jù)用戶需求設(shè)計。A、正確B、錯誤答案:A68.面向?qū)ο蟮膯卧獪y試主要是對類成員函數(shù)測試。A、正確B、錯誤答案:A填空題1.模塊之間的耦合性最低的耦合是()。答案:非直接耦合2.在結(jié)構(gòu)化分析方法中用實體―關(guān)系圖表達系統(tǒng)中的對象及其關(guān)系。在實體―關(guān)系圖中,表達對象的實例之間的關(guān)聯(lián)有三種類型:一對一聯(lián)系、()聯(lián)系、多對多聯(lián)系。答案:一對多3.模塊獨立性由兩個定性標準度量:內(nèi)聚和()。答案:耦合4.軟件測試分為單元測試、集成測試、()和確認測試幾個步驟。答案:系統(tǒng)測試5.問題定義階段必須回答的關(guān)鍵問題是:()?答案:要解決的問題是什么6.如果輸入條件規(guī)定了值的個數(shù),則用最大個數(shù),最小個數(shù),比最小個數(shù)少一,比最大個數(shù)多一的數(shù)作為測試數(shù)據(jù)。這屬于()法的黑盒測試。答案:邊界值分析7.()測試著眼于程序外部結(jié)構(gòu),不考慮內(nèi)部邏輯結(jié)構(gòu),主要針對軟件界面和軟件功能進行測試。答案:黑盒8.熱水器和小鳥牌熱水器這兩個事物之間是()關(guān)系。答案:繼承9.瀑布模型的幾個階段中,()階段環(huán)節(jié)出錯,對軟件的后期影響最大。答案:需求分析10.對表進行()的分解方法常常用于表中記錄與時間相關(guān)的情況,一般在主表中只存放最近的數(shù)據(jù)記錄,而將以前的數(shù)據(jù)記錄轉(zhuǎn)到對應(yīng)的歷史表中。答案:橫切11.模塊A執(zhí)行幾個邏輯上相似的功能則該模塊具有()內(nèi)聚。答案:邏輯12.開發(fā)時期通常由四個階段組成:總體設(shè)計、詳細設(shè)計、()和測試。答案:|編碼13.模塊的內(nèi)聚性最高的內(nèi)聚方式是()。答案:功能內(nèi)聚14.CMM的軟件過程成熟度等級包括初始級、可重復(fù)級、已定義級、已管理級和()級。答案:優(yōu)化15.銀行卡管理系統(tǒng)軟件與POS機之間的接口屬于軟件與()的接口。答案:硬性16.如果輸入條件規(guī)定了值的個數(shù),則用最大個數(shù),最小個數(shù),比最小個數(shù)少一,比最大個數(shù)多一的數(shù)作為測試數(shù)據(jù)。這屬于()法的黑盒測試。答案:邊界值分析17.面向?qū)ο笤O(shè)計在設(shè)計任務(wù)管理子系統(tǒng)時,常見的任務(wù)類型有()、時鐘驅(qū)動型任務(wù)、優(yōu)先任務(wù)、關(guān)鍵任務(wù)和協(xié)調(diào)任務(wù)。答案:事件驅(qū)動型任務(wù)18.分層數(shù)據(jù)流圖中頂層數(shù)據(jù)流圖描述系統(tǒng)的輸入和()數(shù)據(jù)流。答案:輸出19.盒圖是對()的改進,它避免了流程線的隨意跳轉(zhuǎn)。答案:程序流程圖20.一般地,可行性研究主要集中在經(jīng)濟可行性、技術(shù)可行性和()等幾個方面。答案:法律可行性21.目前使用最廣泛的兩種軟件工程方法為結(jié)構(gòu)化方法和()。答案:面向?qū)ο蠓椒?2.變換型數(shù)據(jù)處理問題的工作過程大致分為3步,即取得數(shù)據(jù)、()和給出數(shù)據(jù)。答案:變換數(shù)據(jù)23.針對應(yīng)用系統(tǒng)運行期間的數(shù)據(jù)特點,修改它的排序算法使其更高效,屬于軟件維護中的()。答案:完善性24.低級語言包括機器語言和()語言,優(yōu)點是執(zhí)行速度快,但代碼編寫難度較大。答案:匯編25.計算機的系統(tǒng)軟件由程序、數(shù)據(jù)和()三部分組成。答案:文檔26.針對應(yīng)用系統(tǒng)運行期間的數(shù)據(jù)特點,修改它的排序算法使其更高效,屬于軟件維護中的()維護。答案:完善性27.瀑布模型一般包括計劃、需求分析、設(shè)計、編碼、測試、()等幾個階段。答案:維護28.目前使用最廣泛的兩種軟件工程方法為結(jié)構(gòu)化方法和()。答案:面向?qū)ο蠓椒?9.等價類劃分法進行軟件測試,對輸入數(shù)據(jù)要求:“成績?nèi)≈捣秶鷱?到100”。則有效等價類是(),兩個無效等價類是“成績<0”和“成績>100”。答案:0≤成績≤10030.繼承是子類自動地共享()中定義的數(shù)據(jù)和方法的機制。答案:基類(父類)31.()就是設(shè)計若干個測試用例,運行被測程序,使得程序中每個判斷的取真分支和取假分支至少經(jīng)歷一次。答案:判定覆蓋32.語句覆蓋就是設(shè)計若干個測試用例,運行被測程序,使得每一()至少執(zhí)行一次。答案:可執(zhí)行語句33.開發(fā)時期通常由四個階段組成:總體設(shè)計、詳細設(shè)計、()和測試。答案:編碼34.結(jié)構(gòu)化分析階段用()圖來對描述系統(tǒng)的行為建模。答案:狀態(tài)轉(zhuǎn)換圖35.封裝使數(shù)據(jù)和加工該數(shù)據(jù)的方法封裝為一個整體,以實現(xiàn)獨立性很強的模塊,使得用戶只能見到對象的外特性,而對象的內(nèi)特性對用戶是()的。答案:隱蔽36.衡量一個模塊內(nèi)各組成成分間的緊密程度的度量是()。答案:內(nèi)聚性37.C++是在C語言的基礎(chǔ)上開發(fā)的一種面向()的編程語言。答案:對象38.程序控制一般分為三種基本結(jié)構(gòu)即順序、()和循環(huán)。答案:分支(選擇)39.如果發(fā)現(xiàn)一個類中對象都是由另一個類中多個對象組合而成,那么這兩個類就具有()關(guān)系。答案:聚合40.結(jié)構(gòu)化分析階段用()圖來對系統(tǒng)的功能進行建模。答案:數(shù)據(jù)流41.流圖G中邊的條數(shù)為18,結(jié)點數(shù)為12,則其環(huán)路復(fù)雜度V(G)=()。答案:842.類和類之間的靜態(tài)關(guān)系關(guān)系包括泛化關(guān)系、()關(guān)系和聚合關(guān)系。答案:關(guān)聯(lián)43.對數(shù)據(jù)流圖加工的說明中,()是它最核心的內(nèi)容。答案:加工邏輯44.()注釋通常置于每個程序模塊的開頭部分,它應(yīng)當給出程序的整體說明,對于理解程序本身具有引導(dǎo)作用。答案:序言性45.()等價類是指對程序來說不合理的、無意義的輸入數(shù)據(jù)的集合。答案:無效46.軟件開發(fā)時期具體設(shè)計和實現(xiàn)在前一個時期定義的軟件,它通常由下述四個階段組成:()、詳細設(shè)計、編碼和測試。答案:總體設(shè)計(概要設(shè)計)47.CMM是基于政府評估軟件承包商的軟件能力發(fā)展而來的,有兩種通用的評估方法用以評估組織軟件過程的成熟度:軟件過程評估和()。答案:軟件能力評價48.銀行卡管理系統(tǒng)軟件與POS機之間的接口屬于軟件與()的接口。答案:硬件49.軟件定義時期通常進一步劃分成三個階段,即問題定義、可行性研究和()。答案:|需求分析50.軟件工程學(xué)的誕生主要是由于()的出現(xiàn)。答案:軟件危機51.流圖G中判定結(jié)點的數(shù)目為5,則其環(huán)路復(fù)雜度V(G)=()。答案:652.一個模塊直接控制的()模塊的個數(shù)稱為該模塊的扇出數(shù)。答案:下層53.瀑布模型的幾個階段中,()階段環(huán)節(jié)出錯,對軟件的后期影響最大。答案:需求分析54.瀑布模型()階段定義的標準將成為軟件測試中的確認測試階段的目標。答案:需求分析55.軟件的()性是指把程序從一種計算環(huán)境轉(zhuǎn)移到另一種計算環(huán)境的難易程度。答案:可移植簡答題1.將E-R圖映射成關(guān)系數(shù)據(jù)庫中的關(guān)系模型時,兩個實體間一對多聯(lián)系如何映射?答案:可以將聯(lián)系中的“一”端毫無變化地映射到一張表,將聯(lián)系中“多”端三的實體映射到帶有外鍵的另一張表外鍵即為“一”端實體的主鍵,滿足關(guān)系的參照完整性;也可以將兩個實體的聯(lián)系單獨構(gòu)成一個表,此表包含兩個實體的主鍵,加上兩個實體映射成的表,總共映射成三個表。2.簡述B/S結(jié)構(gòu)的優(yōu)缺點。答案:

優(yōu)點:B/S結(jié)構(gòu)的“零客戶端”方式,使組織的供應(yīng)商和客戶的計算機方便地成為管理信息系統(tǒng)的客戶端,進而在限定的功能范圍內(nèi)查詢組織相關(guān)信息,完成與組織的各種業(yè)務(wù)往來的數(shù)據(jù)交換和處理工作,擴大了組織計算機應(yīng)用系統(tǒng)的功能覆蓋范圍,可以更加充分利用網(wǎng)絡(luò)上的各種資源,同時應(yīng)用程序維護的工作量也大大減少。

缺點:B/S體系結(jié)構(gòu)缺乏對動態(tài)頁面的支持能力,沒有集成有效的數(shù)據(jù)庫處理功能;B/S體系結(jié)構(gòu)的系統(tǒng)擴展能力差,安全性難以控制;采用B/S體系結(jié)構(gòu)的應(yīng)用系統(tǒng),在數(shù)據(jù)查詢等響應(yīng)速度上,要遠遠低于C/S體系結(jié)構(gòu);B/S體系結(jié)構(gòu)的數(shù)據(jù)提交一般以頁面為單位,數(shù)據(jù)的動態(tài)交互性不強,不利于在線事務(wù)處理。3.簡述噴泉模型的特點。答案:是一種以用戶需求為動力,以對象為驅(qū)動的模型,主要用于采用對象技術(shù)的軟件開發(fā)項目。4.名詞解釋:PDL答案:偽代碼是一種介于自然語言和形式化語言之間的半形式化語言,是一種用于描述功能模塊的算法設(shè)計和加工細節(jié)的語言,也稱為程序設(shè)計語言(PDL)。5.簡述什么是軟件危機?答案:軟件危機:軟件發(fā)展第二階段的末期,由于計算機硬件技術(shù)的進步。一些復(fù)雜的、大型的軟件開發(fā)項目提出來了,但軟件開發(fā)技術(shù)的進步一直未能滿足發(fā)展的要求。在軟件開發(fā)中遇到的問題找不到解決的辦法,使問題積累起來,形成了尖銳的矛盾,因而導(dǎo)致了軟件危機。6.簡述什么是面向?qū)ο箝_發(fā)方法。答案:是一種把面向?qū)ο蟮乃枷霊?yīng)用于軟件開發(fā)過程中指導(dǎo)開發(fā)活動的系統(tǒng)方法,是建立在”對象“概念基礎(chǔ)上的方法學(xué),簡稱OO方法。7.什么是過程設(shè)計?答案:過程設(shè)計的主要工作是確定軟件各個模塊內(nèi)的算法及內(nèi)部數(shù)據(jù)結(jié)構(gòu),并選定某種過程的表達形式來描述各種算法,其設(shè)計依據(jù)為結(jié)構(gòu)化需求分析階段的數(shù)據(jù)流圖、狀態(tài)轉(zhuǎn)換圖及數(shù)據(jù)字典。8.簡述結(jié)構(gòu)化開發(fā)方法的基本思想。答案:按用戶至上的原則,結(jié)構(gòu)化、模塊化,自頂向下地對系統(tǒng)進行分析與設(shè)計。9.軟件開發(fā)時期通常由哪四個階段組成?答案:總體設(shè)計、詳細設(shè)計、編碼和測試。10.簡述螺旋模型的限制條件。答案:(1)螺旋模型強調(diào)風險分析,但要求許多客戶接受和相信這種分析,并做出相關(guān)反應(yīng)是不容易的,因此,這種模型往往適應(yīng)于內(nèi)部的大規(guī)模軟件開發(fā)。

(2)如果執(zhí)行風險分析將大大影響項目的利潤,那么進行風險分析毫無意義,因此,螺旋模型只適合于大規(guī)模軟件項目。

(3)軟件開發(fā)人員應(yīng)該擅長尋找可能的風險,準確地分析風險,否則將會帶來更大的風險。11.簡述什么是三層C/S結(jié)構(gòu)。答案:應(yīng)用系統(tǒng)一般劃分為三層:

(1)數(shù)據(jù)管理層,實現(xiàn)數(shù)據(jù)庫安全性的要求;數(shù)據(jù)庫訪問并發(fā)性的控制;數(shù)據(jù)庫前端的客戶應(yīng)用程序的全局數(shù)據(jù)完整性規(guī)則;數(shù)據(jù)庫的備份與恢復(fù)。

(2)應(yīng)用邏輯層,實現(xiàn)與業(yè)務(wù)相關(guān)的處理邏輯。

(3)表示層,提供用戶與數(shù)據(jù)庫交互的界面,向數(shù)據(jù)庫服務(wù)器提交用戶請求并接收來自數(shù)據(jù)庫服務(wù)器的信息。三層C/S結(jié)構(gòu)中,服務(wù)器端實現(xiàn)數(shù)據(jù)管理層,應(yīng)用服務(wù)器實現(xiàn)應(yīng)用邏輯層,客戶機應(yīng)用程序?qū)崿F(xiàn)表示層。12.列舉軟件工程的七條基本原理。答案:(1)用分階段的生命周期計劃嚴格管理

(2)堅持進行評價段評審

(3)實行嚴格的產(chǎn)品控制

(4)采用現(xiàn)代程序設(shè)計技術(shù)

(5)結(jié)果應(yīng)能清楚地審查

(6)開發(fā)小組的人員應(yīng)該少而精

(7)承認不斷改進軟件工程實踐的必要性13.需求獲取要解決的問題主要包括哪些?答案:

(1)發(fā)現(xiàn)和分析問題,并分析問題的因果關(guān)系。

(2)與用戶進行各種方式的交流,并使用調(diào)查研究方法收集信息。

(3)按照三個成分觀察問題的不同側(cè)面:即數(shù)據(jù)、過程和接口。

(4)將獲取的需求文檔化,形式有用例、決策表、數(shù)據(jù)流圖、數(shù)據(jù)字典等。14.簡述甘特圖的特點和作用。答案:甘特圖的特點是突出了生產(chǎn)管理中最重要的時間因素,

作用:

(1)計劃產(chǎn)量與計劃時間的對應(yīng)關(guān)系。

(2)每日的實際產(chǎn)量與預(yù)定計劃產(chǎn)量的對比關(guān)系。

(3)一定時間內(nèi)實際累計產(chǎn)量與同時期計劃累計產(chǎn)量的對比關(guān)系。15.什么是黑盒測試?答案:黑盒測試也稱功能測試,它是通過測試來檢測每個功能是否都能正常使用。它把測試對象看做一個黑盒子,測試人員完全不考慮程序內(nèi)部的邏輯結(jié)構(gòu)和內(nèi)部特性,只依據(jù)程序的需求規(guī)格說明書,檢查程序的功能是否符合它的功能說明。16.什么是對象模型?答案:對象模型是模型的靜態(tài)結(jié)構(gòu),用于表示軟件要處理的數(shù)據(jù),在UML中表示為類圖。類圖中包括類、類的內(nèi)部結(jié)構(gòu)以及類與類之間的關(guān)系。17.結(jié)構(gòu)化分析的框架主要包括哪些內(nèi)容?答案:功能建模(數(shù)據(jù)流圖)、數(shù)據(jù)建模(實體-聯(lián)系圖)、行為建模(狀態(tài)轉(zhuǎn)換圖)、框架核心(數(shù)據(jù)字典)。18.名詞解釋:快速原型模型答案:是相對于生命周期模型而言的另一種系統(tǒng)開發(fā)模型它強調(diào)系統(tǒng)設(shè)計者與最終用戶之間自始至終通力合作用比較短的時間完成問題空間定義后采用一些適當?shù)拈_發(fā)工具立即建立一個可運行的原型然后交付用戶試用由其提出修改意見再采用迭代法或增量法反復(fù)修改來完善產(chǎn)品的功能開成最終產(chǎn)品的一種開發(fā)方法。19.什么是軟件測試?答案:為了發(fā)現(xiàn)錯誤而執(zhí)行程序的過程?;蛘哒f,軟件測試是發(fā)現(xiàn)程序錯誤的過程,它根據(jù)軟件開發(fā)各階段的規(guī)格說明和程序的內(nèi)部結(jié)構(gòu)而精心設(shè)計一批測試用例(即數(shù)據(jù)及其預(yù)期的輸出結(jié)果),并利用這些測試用例去運行程序。20.簡述需求獲取的原則和步驟。答案:原則:深入淺出原則、以流程為主線的原則

步驟:(1)深入了解應(yīng)用領(lǐng)域,開發(fā)高層的業(yè)務(wù)模型

(2)定義項目范圍和高層需求

(3)識別用戶類型和用戶代表

(4)獲取具體的需求21.軟件項目管理的內(nèi)容主要包括哪幾個方面?答案:軟件項目管理的內(nèi)容主要包括如下幾個方面:人員的組織與管理,軟件度量,軟件項目計劃,風險管理,軟件質(zhì)量保證,軟件過程能力評估,軟件配置管理等。22.軟件生存期分哪幾個時期?答案:由軟件定義、軟件開發(fā)和軟件維護三個時期組成。23.一般從哪三個方面對系統(tǒng)進行可行性分析?答案:(1)技術(shù)可行性

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

(3)法律可行性24.簡述CMM的能力評估。答案:(1)軟件過程評估:用于確定一個組織當前的軟件工程過程狀態(tài)及組織所面臨的軟件過程的優(yōu)先改善問題,為組織領(lǐng)導(dǎo)層提供報告以獲得組織對軟件過程改善的支持。軟件過程評估集中關(guān)注組織自身的軟件過程,在一種合作的、開放的環(huán)境中進行。評估的成功取決于管理者和專業(yè)人員對組織軟件過程改善的支持。

(2)軟件能力評價:用于識別合格的軟件承包商或者監(jiān)控軟件承包商開發(fā)軟件的過程狀態(tài)。軟件能力評價集中關(guān)注識別在預(yù)算和進度要求范圍內(nèi)完成制造出高質(zhì)量的軟件產(chǎn)品的軟件合同及相關(guān)風險。評價在一種審核的環(huán)境中進行,重點在于揭示組織實際執(zhí)行軟件過程的文檔化的審核記錄。25.簡述體系結(jié)構(gòu)的設(shè)計應(yīng)遵循啟發(fā)式設(shè)計原則。答案:(1)提高模塊獨立性

(2)模塊規(guī)模適中

(3)結(jié)構(gòu)圖的深度和寬度適中

(4)結(jié)構(gòu)圖中扇入和扇出適當

(5)模塊的作用域應(yīng)在控制域之內(nèi)

(6)模塊功能的完善化

(7)消除重復(fù)功能,改善軟件結(jié)構(gòu)26.列舉幾個具有代表性的需求分析和設(shè)計工具。答案:需求分析工具:結(jié)構(gòu)化圖形工具箱、面向?qū)ο竽P突ぞ呒胺治龉ぞ?/p>

設(shè)計工具:概要設(shè)計工具、詳細設(shè)計工具27.名詞解釋:泛化關(guān)系答案:泛化關(guān)系又稱繼承關(guān)系,表示一般與特殊的關(guān)系,它是指子類繼承父類的所有屬性和行為,子類也可以具有自己獨有的屬性和行為。28.將E-R圖映射成關(guān)系數(shù)據(jù)庫中的關(guān)系模型時,數(shù)據(jù)對象實體如何映射?答案:一個數(shù)據(jù)對象(實體)可以映射為一個表。根據(jù)用戶的數(shù)據(jù)操作需求,也可以分解為多個表,一般采用橫切和豎切的方法進行分解。29.簡述螺旋模型的優(yōu)缺點。答案:

優(yōu)點:

(1)、設(shè)計上的靈活性,可以在項目的各個階段進行變更。

(2)、以小的分段來構(gòu)建大型系統(tǒng),使成本計算變得簡單容易。

(3)、客戶始終參與每個階段的開發(fā),保證了項目不偏離正確方向以及項目的可控性。

(4)、隨著項目推進,客戶始終掌握項目的最新信息,從而他或她能夠和管理層有效地交互。

(5)、客戶認可這種公司內(nèi)部的開發(fā)方式帶來的良好的溝通和高質(zhì)量的產(chǎn)品。

缺點:

很難讓用戶確信這種演化方法的結(jié)果是可以控制的。建設(shè)周期長,而軟件技術(shù)發(fā)展比較快,所以經(jīng)常出現(xiàn)軟件開發(fā)完畢后,和當前的技術(shù)水平有了較大的差距,無法滿足當前用戶需求。30.簡述面向?qū)ο蟮脑O(shè)計步驟。答案:(1)設(shè)計系統(tǒng)的環(huán)境模型

(2)設(shè)計系統(tǒng)的體系結(jié)構(gòu)

(3)設(shè)計各子系統(tǒng)

(4)對象的設(shè)計31.什么是軟件度量?答案:軟件度量是對軟件開發(fā)項目、過程及其產(chǎn)品進行數(shù)據(jù)定義、收集以及分析的持續(xù)性定量化過程,目的在于對此加以理解、預(yù)測、評估、控制和改善。32.什么是快速原型模型?有哪些優(yōu)點?答案:快速原型模型又稱原型模型,是增量模型的另一種形式。它是在開發(fā)真實系統(tǒng)之前,構(gòu)造一個原型,即快速建立起來可以在計算機上運行的程序,它所能完成的功能往往是最終產(chǎn)品能完成的功能的一個子集。然后,在該原型的基礎(chǔ)上,逐漸完成整個系統(tǒng)的開發(fā)工作。

優(yōu)點:(1)、有助于滿足用戶的真實需求;

(2)、原型系統(tǒng)已經(jīng)通過與用戶的交互而得到驗證。據(jù)此產(chǎn)生的規(guī)格說明文檔能夠正確的描述用戶需求;

(3)、軟件產(chǎn)品的開發(fā)基本上是按線性順序進行;

(4)、在開發(fā)的過程的后續(xù)階段不會因為發(fā)現(xiàn)規(guī)格說明文檔的錯誤而進行較大的返工。

(5)、快速原型的突出特點是“快速”。33.面向?qū)ο蟮姆治瞿P鸵话惆?大類?答案:面向?qū)ο蟮姆治瞿P鸵话阌?大類:用例模型、對象模型和交互模型。34.什么是數(shù)據(jù)字典?答案:

數(shù)據(jù)字典以詞條方式定義在數(shù)據(jù)模型、功能模型和行為模型中出現(xiàn)的數(shù)據(jù)對象及控制信息的特性,給出它們的準確定義。主要是數(shù)據(jù)流圖上所有的成分的定義和解釋的文字集合,包括數(shù)據(jù)流、加工、數(shù)據(jù)存儲、數(shù)據(jù)元素,以及數(shù)據(jù)源點和匯點等。35.簡述什么是軟件工程。答案:指導(dǎo)計算機軟件開發(fā)的維護的一門工程學(xué)科。36.什么是軟件再工程?答案:軟件再工程是指通過對目標系統(tǒng)的檢查和改造,其中包括設(shè)計恢復(fù)(庫存目錄分析)、再文檔、逆向工程、程序代碼和數(shù)據(jù)重構(gòu)以及正向工程等一系列活動,旨在將逆向工程、重構(gòu)和正向工程組合起來,將現(xiàn)存系統(tǒng)重新構(gòu)造為新的形式,以開發(fā)出質(zhì)量更高、維護性更好的軟件。37.簡述噴泉模型的優(yōu)點。答案:噴泉模型可提高軟件項目開發(fā)效率,節(jié)省開發(fā)時間,適應(yīng)于面向?qū)ο蟮能浖_發(fā)過程。38.什么是軟件維護?一般有哪四種維護活動?答案:軟件維護就是在軟件已經(jīng)交付使用之后,為了改正錯誤、提高性能或滿足新的需要而修改軟件的過程。

四種維護活動包括改正性維護、適應(yīng)性維護、完善性維護和預(yù)防性維護。39.簡述螺旋模型的缺點。答案:螺旋模型是風險驅(qū)動的,因此要求軟件開發(fā)人員必須具有豐富的風險評估經(jīng)驗和相關(guān)專業(yè)知識,否則將出現(xiàn)真正的風險:當項目實際上正在走向災(zāi)難時,開發(fā)人員可能還以為一切正常。所以,很難讓用戶確信這種演化方法的結(jié)果是可以控制的。40.統(tǒng)一過程模型包括哪6個核心工作流?答案:業(yè)務(wù)建模、需求、分析設(shè)計、實現(xiàn)、測試、部署。41.軟件定義時期通常劃分成哪三個階段?答案:問題定義、可行性研究和需求分析三個階段。42.名詞解釋:螺旋模型答案:是以布魯納的學(xué)科結(jié)構(gòu)課程思想為理論基礎(chǔ),把對學(xué)科的認識過程看成一個螺旋上升的環(huán)狀序列,每個環(huán)中的學(xué)科結(jié)構(gòu)都是不變的。43.名詞解釋:封裝答案:封裝是一種信息隱蔽技術(shù),它體現(xiàn)于類的說明,使數(shù)據(jù)更安全。封裝使數(shù)據(jù)和加工該數(shù)據(jù)的方法封裝為一個整體,以實現(xiàn)獨立性很強的模塊,使得用戶只能見到對象的外特性,而對象的內(nèi)特性對用戶是隱蔽的。44.簡述UML的基本組成。答案:UML基本構(gòu)造塊,有3種:事物、關(guān)系和圖。

UML規(guī)則,不能簡單地把UML的構(gòu)造塊隨機地放在一起。像任何語言一樣,UML有一套規(guī)則,這些規(guī)則描述了一個結(jié)構(gòu)良好的模型看起來應(yīng)該像什么。

UML公共機制,有4種貫穿整個語言且一致應(yīng)用的公共機制。45.名詞解釋:軟件工程答案:軟件工程環(huán)境是一組方法、過程及計算機程序(計算機化的工具)的整體化構(gòu)件,他支持從需求定義、程序生成知道維護的整個軟件生存期。46.什么是信息隱藏?答案:對于類對象的用戶來說,類對象中屬性的表示方法和操作的實現(xiàn)算法是隱藏的,他們只能通過類對象的接口訪問其屬性和操作。47.什么是軟件逆向工程?答案:軟件逆向工程又稱軟件反向工程,是指從可運行的程序系統(tǒng)出發(fā),運用解密、反匯編、系統(tǒng)分析、程序理解等多種計算機技術(shù),對軟件的結(jié)構(gòu)、流程、算法、代碼等進行逆向拆解和分析,推導(dǎo)出軟件產(chǎn)品的源代碼、設(shè)計原理、結(jié)構(gòu)、算法、處理過程、運行方法及相關(guān)文檔等。48.簡述軟件危機爆發(fā)的原因。答案:(1)軟件不同與硬件,他是計算機系統(tǒng)的邏輯部件而不是物理部件;

(2)軟件開發(fā)的過程是多人分工合作,分階段完成的過程,參與人員之間的溝通和配合十分重要;

(3)開發(fā)人員和管理人員只重視開發(fā)而輕視問題的定義,使軟件產(chǎn)品無法滿足用戶的要求;

(4)軟件管理技術(shù)不能滿足現(xiàn)代軟件開發(fā)的需求,沒有統(tǒng)一的軟件質(zhì)量管理規(guī)范;

(5)在軟件開發(fā)和維護關(guān)系的問題上存在錯誤的觀念。49.什么是行為建模?答案:即繪制系統(tǒng)的狀態(tài)轉(zhuǎn)換圖,通過描繪系統(tǒng)的狀態(tài)及引起系統(tǒng)狀態(tài)轉(zhuǎn)換的事件來表示系統(tǒng)的行為。50.數(shù)據(jù)流圖的基本圖形符號包括哪些?答案:

(1)外部實體:數(shù)據(jù)輸入源或數(shù)據(jù)輸出匯點,不是目標系統(tǒng)的一部分,只是外圍環(huán)境中的實體部分,包括人員、組織、部門或其他相關(guān)的軟件系統(tǒng)。

(2)數(shù)據(jù)流:數(shù)據(jù)在系統(tǒng)內(nèi)傳播的路徑,數(shù)據(jù)沿箭頭方向流動。數(shù)據(jù)流可以在加工和加工之間也可以在數(shù)據(jù)存儲和加工之間傳送,數(shù)據(jù)流在數(shù)據(jù)存儲和加工之間傳送時含義明確,數(shù)據(jù)存儲就足以說明數(shù)據(jù)流,所以不必命名。同一數(shù)據(jù)流圖上不能有同名數(shù)據(jù)流。

(3)加工:又稱數(shù)據(jù)處理,是對數(shù)據(jù)對象進行某些處理或變換,其名稱簡要的描述完成什么加工。流入加工的可以是多個數(shù)據(jù)流,流出加工的也可以是多個數(shù)據(jù)流。

(4)數(shù)據(jù)存儲:又稱數(shù)據(jù)文件,可以是數(shù)據(jù)庫文件或任何形式的數(shù)據(jù)組織。流入數(shù)據(jù)存儲的數(shù)據(jù)流表示寫入數(shù)據(jù),流出數(shù)據(jù)存儲的數(shù)據(jù)流表示讀出數(shù)據(jù)。51.名詞解釋:數(shù)據(jù)字典答案:數(shù)據(jù)字典以詞條方式定義在數(shù)據(jù)模型、功能模型和行為模型中出現(xiàn)的數(shù)據(jù)對象及控制信息的特性,給出它們的準確定義。52.簡述敏捷開發(fā)的原則。答案:(1)快速迭代

(2)讓測試人員和開發(fā)者參與需求討論

(3)編寫可測試的需求文檔

(4)多溝通,盡量減少文檔

(5)做好產(chǎn)品原型

(6)及早考慮測試53.簡述什么是敏捷開發(fā)。答案:以用戶的需求進化為核心,采用迭代,循序漸進的方法進行軟件開發(fā)。54.在選擇程序設(shè)計語言時,可以考慮哪幾方面的因素?答案:

(1)應(yīng)用領(lǐng)域的不同決定選擇的語言。

(2)系統(tǒng)用戶的要求。

(3)程序員的經(jīng)驗和知識。

(4)開發(fā)和維護成本。

(5)軟件可移植性要求。55.什么是模塊獨立性?它的兩個定性標準度量是什么?答案:模塊獨立是指每個模塊只完成一個相對獨立的特定子功能,并且和其他模塊之間的關(guān)系很簡單,和其他模塊之間沒有過多的相互作用。模塊獨立性由兩個定性標準度量:內(nèi)聚和耦合,提倡模塊遵循高內(nèi)聚、低耦合的原則,保證模塊具有較好的獨立性。56.簡述什么是實體-關(guān)系模型及其三種組成元素。答案:

實體-關(guān)系模型表示為可視化的實體-關(guān)系圖,也稱為E-R圖。E-R圖中僅包含3種相互關(guān)聯(lián)的元素:數(shù)據(jù)對象、描述數(shù)據(jù)對象的屬性及數(shù)據(jù)對象彼此間相互連接的關(guān)系。

數(shù)據(jù)對象,也稱為實體,是目標系統(tǒng)所需要的復(fù)合信息的表示,所謂復(fù)合信息是具有若干不同屬性的信息。屬性定義數(shù)據(jù)對象的特征。實體間的聯(lián)系是錯綜復(fù)雜的,但就兩個實體型的聯(lián)系來說,主要有以下3種情況:(1)一對一(1:1)聯(lián)系(2)一對多(1:m)聯(lián)系(3)多對多(m:n)聯(lián)系57.簡述提高代碼重用性程序設(shè)計準則。答案:(1)提高方法的內(nèi)聚

(2)減小方法的規(guī)模

(3)保持方法的一致

(4)把策略與實現(xiàn)分開

(5)全面覆蓋

(6)盡量不使用全局信息

(7)利用繼承機制

(8)使用委托機制58.結(jié)構(gòu)化設(shè)計通常劃分成哪兩個步驟?答案:結(jié)構(gòu)化總體設(shè)計和結(jié)構(gòu)化詳細設(shè)計。59.將E-R圖映射成關(guān)系數(shù)據(jù)庫中的關(guān)系模型時,兩個實體間一對一聯(lián)系如何映射?答案:可以在兩個表中都引入對方實體的主鍵作為外鍵,進行雙向?qū)Ш剑豢梢栽谌我庖粋€表中引入對方實體主鍵作為外鍵,進行單向?qū)Ш剑灰部梢詫蓚€實體的聯(lián)系單獨構(gòu)成一個表,此表包含兩個實體的主鍵,加上兩個實體映射成的表,總共映射成三各表;還可以將兩個實體合并成一個表。60.簡述什么是軟件危機?答案:在計算機軟件的開發(fā)和維護過程中出現(xiàn)了一系列嚴重問題的現(xiàn)象。61.簡述軟件維護過程。答案:首先必須建立一個維護組織;然后必須確定維護報告的內(nèi)容,并為每個維護要求規(guī)定一個標準化的事件序列,以及建立一個適用于維護活動的維護記錄保管過程并確定需要保存的記錄內(nèi)容;最后必須確定對軟件維護的評價內(nèi)容和評價過程。62.什么是螺旋模型?答案:螺旋模型是一種演化軟件開發(fā)過程模型,它兼顧了快速原型的迭代的特征以及瀑布模型的系統(tǒng)化

溫馨提示

  • 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)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論