![《軟件工程資料》word版_第1頁](http://file4.renrendoc.com/view/b3671c28bc8bf8289c4d3181325b110d/b3671c28bc8bf8289c4d3181325b110d1.gif)
![《軟件工程資料》word版_第2頁](http://file4.renrendoc.com/view/b3671c28bc8bf8289c4d3181325b110d/b3671c28bc8bf8289c4d3181325b110d2.gif)
![《軟件工程資料》word版_第3頁](http://file4.renrendoc.com/view/b3671c28bc8bf8289c4d3181325b110d/b3671c28bc8bf8289c4d3181325b110d3.gif)
![《軟件工程資料》word版_第4頁](http://file4.renrendoc.com/view/b3671c28bc8bf8289c4d3181325b110d/b3671c28bc8bf8289c4d3181325b110d4.gif)
![《軟件工程資料》word版_第5頁](http://file4.renrendoc.com/view/b3671c28bc8bf8289c4d3181325b110d/b3671c28bc8bf8289c4d3181325b110d5.gif)
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、軟件工程習題集答案第一章 軟件工程概述作業(yè)答案一、名詞解釋軟件軟件是計算機程序以及開發(fā)、使用和維護程序所需要的所有文檔。軟件是包括程序、數(shù)據及其相關文檔的完整集合。軟件危機軟件生產的進度、數(shù)量、質量、成本滿足不了社會對軟件的需求量和希望的現(xiàn)象,稱為“軟件危機”。軟件工程IEEEIEE93: 軟件工程是將系統(tǒng)的、規(guī)范的、可度量的工程化方法應用于軟件開發(fā)、運行和維護的全過程及上述方法的研究。軟件生存周期軟件生存周期是指一個軟件從提出開發(fā)要求開始直到不再使用(報廢)為止的整個時期。軟件過程模型軟件過程指為獲得高質量軟件所需要完成的一系列任務以及完成這些任務的工作步驟。過程還規(guī)定了運用的方法的順序、應
2、該交付的文檔資料、為保證軟件質量和協(xié)調變化所需要采取的管理措施、任務完成的標志等。軟件過程模型也叫軟件生存期模型、軟件工程范型,是軟件過程的一種抽象表示。二、填空題1、在信息處理和計算機領域內,一般認為軟件是 程序 、 數(shù)據 和 文檔的集合 。2、軟件生產的發(fā)展經歷了 程序設計 時代、 程序系統(tǒng) 時代和 軟件工程 時代,各時代的生產方式分別是 個體 、 作方式 和 工程化 。3、軟件生存周期的8個階段分別是 問題定義 、 可行性研究 、 需求分析 、 概要設計 、 詳細設計 、 編碼與模塊測試 、 綜合測試 、 維護 。4、軟件工程是利用工程化的原理和方法來進行 開發(fā) 、 維護 和 管理 軟件
3、的一門學科。5、描述軟件開發(fā)過程中各種活動如何執(zhí)行的模型稱為 軟件過程 模型。6、瀑布模型 不 適應需求可變的軟件開發(fā),只有到 最后 才能見到整個軟件系統(tǒng)。7、軟件產品的生產主要是研制,軟件產品的成本主要體現(xiàn)在 人力成本 上。8、軟件工程面臨的問題有 軟件費用 、 可靠性 、 可維護性 、 生產率 。三、單項選擇題1、軟件文檔是( C )。A.程序 B.工具 C.文書和資料 D.數(shù)據2、軟件是一種( B )性工業(yè)產品A.理論 B.知識(或邏輯) C.消耗 D.體力3、與計算機科學的理論研究不同,軟件工程是一門( B )的學科。A理論性 B.工程性 C.原理性 D.心理性4、軟件工程與計算機科學
4、的性質不同,軟件工程著重于( B )A理論研究 B.建造軟件系統(tǒng) C.原理探討 D.原理的理論5、軟件工程學科出現(xiàn)的直接原因是( C )。A計算機的發(fā)展 B.其它工程學科的影響C.軟件危機的出現(xiàn) D.程序設計方法學的影響6、軟件工程方法學的研究內容包含軟件開發(fā)技術和軟件工程管理兩個方面,以期達到的最終目標是( A )A軟件開發(fā)工程化 B.消除軟件危機C.實現(xiàn)軟件可重用 D.程序設計自動化7、由于軟件生產的復雜性和高成本,使大型軟件的生成出現(xiàn)危機,軟件危機的主要表現(xiàn)包括了下述( D )方面。 生產成本過高 需求增長難以滿足 進度難以控制 質量難以保證A B. C. D.全部8、軟件的主要結構和功
5、能是在( A )階段決定的。A.分析設計 B.編程 C.測試 D.維護9、有關計算機程序功能、設計、編制、使用的文字或圖形資料稱為【 B 】。A.軟件 B.文檔 C.程序 D.數(shù)據10、軟件生成周期模型有多種,下列選項中,【 C 】不是軟件生存周期模型。A.螺旋模型 B.增量模型 C.功能模型 D.瀑布模型四、簡答題四、簡答題軟件產品的特點是什么? 軟件是一種邏輯產品,無形態(tài),具有抽象性。軟件是開發(fā)而形成的,無明顯的制造過程。與硬件相比,軟件開發(fā)更依賴于開發(fā)人員的業(yè)務素質、智力以及人員的組織、合作和管理。軟件成本集中在開發(fā)上,主要反映在人力成本上,而且開發(fā)成本難以估計。軟件不會“磨損”和老化,
6、但存在退化問題。大多數(shù)軟件是定做的,不是通過已有構件組裝而成。主要靠腦力勞動生產。開發(fā)和維護成本高。軟件生產經歷了哪幾個時代,各有何特征?軟件生產經歷了三個時期:(1)程序設計時期(19461956) 軟件=程序主要特征:計算機硬件=計算機用途少,規(guī)模小;不作為商品;開發(fā)者=使用者:自己開發(fā),自己使用。(2)程序系統(tǒng)時期(19561968) 軟件=程序+說明主要特征:程序規(guī)模增大,多人分工合作。軟件作為商品,即程序設計者使用者;程序開發(fā)和使用的文檔資料已不可缺少。(3)軟件工程時期(1968現(xiàn)在) 軟件=程序+數(shù)據+文檔主要特征:按工程管理的方法管理整個軟件開發(fā)過程。軟件危機是如何產生的?其表
7、現(xiàn)形式是什么?試說明產生危機的原因?大規(guī)模集成電路出現(xiàn)后,性能大大提高,推動了計算機的廣泛應用,促進了大規(guī)模軟件系統(tǒng)的設計。但由于軟件開發(fā)方法不適應規(guī)模較大的項目的開發(fā),因而出現(xiàn)了比計劃延遲交付、費用比預算增加很多、功能和質量不能滿足用戶要求,維護困難等問題,造成了軟件危機。主要表現(xiàn):(1)軟件開發(fā): 軟件開發(fā)過程和成本無法有效控制,延遲交付且成本逐年上升; 軟件開發(fā)生產率提高的速度跟不上需求的增加; 用戶需求模糊,用戶對已完成的軟件系統(tǒng)不滿意; 沒有確保質量的有效措施,軟件產品的質量靠不住。(2)軟件維護: 軟件常常是不可維護的(缺乏文檔或文檔質量)。維護花費的時間和費用占整個軟件開發(fā)組織的
8、60%以上。原因:(1)客觀原因: 軟件規(guī)模越來越大,結構越來越復雜,使得開發(fā)和管理都變得困難。但是: 軟件是手工勞動,是智力產品-生產率低。 軟件是邏輯實體,出錯容易,糾錯困難。 軟件的復雜性使得僅靠人的智力難以駕馭。(2)主觀原因 開發(fā)方式:認為開發(fā)軟件就是寫程序。 組織方式:作坊式的生產方式;開發(fā)無計劃、開發(fā)過程無規(guī)范、開發(fā)過程難控制。 用戶方面:對軟件需求描述不精確。 開發(fā)人員方面:對用戶需求的理解與用戶本來愿望有差異,相互之間的信息交流不及時、不準確、有誤解。闡述軟件工程的定義和目標,試說明軟件工程是如何克服軟件危機的。目標:在給定成本、進度的前提下,開發(fā)出滿足用戶需求的高質量的、易
9、于維護的軟件產品。克服危機的方法:軟件工程是從技術和管理兩方面利用一套科學的技術和管理方法進行軟件的開發(fā),從而提高軟件質量和生產率。什么是軟件生存周期?軟件生成周期把軟件產品的分成哪幾個階段?各階段的任務什是么?軟件生存周期由8個階段組成:1、問題定義:確定要求解決的問題是什么?2、可行性研究:確定在時間和資源的約束條件下,能否完成指定的任務?包括:技術可行性、經濟可行性、法律可行性、社會可行性。若可行,則制定項目所需費用、資源、時間的開發(fā)計劃。3、需求分析:準確地確定“軟件系統(tǒng)必須做什么”,即明確目標系統(tǒng)必須具備的功能和對系統(tǒng)的約束。4、概要設計:確定在總體上應該怎樣實現(xiàn)目標系統(tǒng),包括系統(tǒng)的
10、軟件結構設計、接口設計和數(shù)據結構設計。5、詳細設計:對軟件結構中的模塊進行精確描述算法設計。6、編碼及模塊測試:把模塊算法轉換成特定程序設計語言的正確的、容易理解、容易維護的程序模塊。7、綜合測試:發(fā)現(xiàn)和糾正程序中的錯誤,保證軟件功能和性能符合需求規(guī)格說明書規(guī)定的要求。包括集成測試、確認測試和系統(tǒng)測試。8、軟件維護:軟件投入使用后繼續(xù)對軟件的查錯、糾錯和改進。使系統(tǒng)持久地滿足用戶的需要。包括:改正性維護、適應性維護、完善性維護、預防性維護。什么是軟件工程過程模型?瀑布、增量、原型和螺旋模型各自有什么特點?軟件過程模型也叫軟件生存期模型、軟件工程范型,是軟件過程的一種抽象表示。瀑布模型:嚴格按照
11、軟件生存期的階段劃分順序和各階段的目標、任務、文檔的要求來進行開發(fā)。該模型以文檔為驅動。每一活動結束后,通過嚴格的階段復審和確認,得到一致、完整、準確的良好文檔,以“凍結”這些文檔為該階段結束的標志,并作為下一階段活動的唯一基礎;以每一步的正確性和完整性來保證最終系統(tǒng)的質量。 增量模型:先按瀑布模型開發(fā)一個滿足基本要求的系統(tǒng),然后根據用戶在使用中提出的新需求在進一步完善形成新的版本,這個過程不斷重復,直到最終的完善產品。原型模型:先根據用戶對需求的描述,通過軟件工具構造一個軟件系統(tǒng)的原型來描述目標系統(tǒng)的主要功能,讓用戶進行評價,并根據用戶意見進行改進。隨著不斷實驗、評價和修改,最后使得在功能上
12、完全滿足用戶需求。一般情況下,軟件系統(tǒng)原型不是最終的目標系統(tǒng),它只是在功能上描述了用戶需求,忽略了對軟件質量特性的要求,避開了管理對質量的控制。螺旋模型:螺旋模型是一個風險驅動模型,將開發(fā)過程分為幾個螺旋周期,每個螺旋周期大致與瀑布模型相同。每個螺旋周期可分為四個工作步驟:(1)制定計劃:確定軟件目標,選定實施方案,明確開發(fā)限制條件;(2)風險分析:分析所選方案,識別風險和消除風險;(3)開發(fā)實施:實施軟件開發(fā);(4)用戶評估:評價開發(fā)工作,提出修改意見。第二章 可行性研究習題名詞解釋可行性研究:用最小的代價在盡可能短的時間內確定該軟件項目是否能夠開發(fā),是否值得開發(fā)。技術可行性:在現(xiàn)有技術條件
13、下估算項目開發(fā)的風險。經濟可行性:從成本和經濟效益考慮系統(tǒng)是否值得開發(fā)。成本效益分析:是從經濟角度論證開發(fā)一個特定的新系統(tǒng)開發(fā)是否劃算,是決定是否投資開發(fā)新系統(tǒng)的依據。填空1、可行性研究的目的不是去開發(fā)一個軟件項目,而是研究這個項目是否 能夠開發(fā) ,是否 值得開發(fā) 。2、可行性研究可以從 技術可行性 、 經濟可行性 、社會可行性 三方面進行論證。3、可行性研究中,成本-效益分析的目的是 從經濟角度論證開發(fā)一個特定的新系統(tǒng)開發(fā)是否劃算 。4、可行性研究階段可能形成的兩個文檔是 可行性研究報告 和 項目開發(fā)計劃 。5、經濟可行性一般考慮的問題包括: 成本 和 效益 。6、社會可行性一般包括: 是否
14、存在侵權、違法、責任以及各種與法律相抵觸的問題 系統(tǒng)運行方式是否在組織內部行得通 現(xiàn)有管理制度、人員素質、操作方式對用戶是否可行單項選擇題1、在軟件的可行性研究主要從不同角度對系統(tǒng)進行可行性研究,其中從功能角度對系統(tǒng)進行研究屬于( B )的研究。A.經濟可行性 B.技術可行性C.操作可行性 D.社會可行性2、制定軟件項目開發(fā)計劃的目的對軟件開發(fā)過程、進度、資源進行( D )。A.組織和管理 B.分析與估算C.設計與測試 D.規(guī)劃與調整3、下列不屬于成本-效益分析的度量指標是( C )。A.貨幣的時間價值 B.投資回收期C.性質因素 D.純收入4、制定軟件項目開發(fā)計劃屬于軟件開發(fā)周期的第( B
15、)階段。A.1 B.2 C.3 D.45、技術可行性要解決( D )。A.存在侵權否 B.成本-效益問題 C.運行方式可行 D.技術風險問題簡答題可行性研究的目的和任務是什么?目的:用最小的代價在盡可能短的時間內確定該軟件項目是否能夠開發(fā),是否值得開發(fā)。任務:(1)對項目可能的各種實現(xiàn)方案的可行性進行論證,確定項目是否應該開發(fā),以減少和降低軟件開發(fā)的技術風險和投資風險。(2)若項目應該開發(fā),則需要進行開發(fā)方案的評價,并制定項目開發(fā)計劃。成本效益分析對軟件項目是否開發(fā)有何影響?成本效益分析是從經濟角度論證開發(fā)一個特定的新系統(tǒng)開發(fā)是否劃算,是決定是否投資開發(fā)新系統(tǒng)的依據。3、成本-效益分析的目的是
16、什么?可用哪些指標進行度量?成本/效益分析的目的是從經濟角度論證開發(fā)一個特定的新系統(tǒng)開發(fā)是否劃算,是決定是否投資開發(fā)新系統(tǒng)的依據。(1)、貨幣的時間價值:貨幣的價值本身隨時間的增加而產生增值:(2)、投資回收期:累計的經濟效益等于最初的投資所需的時間。(3)、純收入:在整個生存周期內系統(tǒng)的累計經濟效益(折合現(xiàn)在的錢)與投資之差。(4)、投資回收率-投資的年利率第三章 需求分析作業(yè)名詞解釋結構化分析方法:面向數(shù)據流進行需求分析的方法,采用自頂向下、逐步求精的分析方法。數(shù)據流圖:用圖形的方式從數(shù)據加工的角度來描述數(shù)據在系統(tǒng)中流動和處理的過程,只反映系統(tǒng)必須完成的功能,是一種功能模型。數(shù)據字典:用于
17、定義對數(shù)據流圖中的各個成分的具體含義。填空1、需求分析是指開發(fā)人員通過細致的 調查 ,準確理解 用戶的要求 ,將用戶非形式化的需求轉化為 完整的需求定義 ,再把 需求定義 轉化為相應的形式化功能規(guī)約的過程。2、需求分析的基本任務是準確定義 新系統(tǒng)的目標 ,為了滿足用戶的需要,回答系統(tǒng)必須 “做什么” 的問題。3、需求分析階段需編寫的文檔有 需求規(guī)格說明書 、 初步用戶手冊 、 軟件測試計劃 。4、數(shù)據流圖的基本組成部分有 源點/終點 、 加工 、 數(shù)據流 、 數(shù)據存儲 。5、數(shù)據流圖和數(shù)據字典共同構成了系統(tǒng)的 邏輯 模型,是需求規(guī)格說明書的主要組成部分。6、結構化分析方法是面向 數(shù)據流的 、
18、自頂向下 、 逐步求精 進行分析的方法。 7、數(shù)據字典有以下四類條目: 數(shù)據加工 、 數(shù)據流 、 數(shù)據存儲 、 數(shù)據元素 。 數(shù)據元素 是組成組成數(shù)據流和數(shù)據存儲的最小元素。 8、在結構化分析的需求描述中, 數(shù)據流圖 描述系統(tǒng)的分解,即描述系統(tǒng)由哪幾部分組成,各部分有什么聯(lián)系等等。 數(shù)據字典 定義了數(shù)據流圖中每一個圖形元素。 9、在數(shù)據流圖中, 數(shù)據流 是數(shù)據在系統(tǒng)內傳播的路徑,因此由一組固定的數(shù)據項組成。加工(又稱為數(shù)據處理)是對數(shù)據流進行的某些 處理 。單項選擇題1、需求分析階段最重要的技術文檔之一是( C )。A.項目開發(fā)計劃 B.設計說明書 C.需求規(guī)格說明書 D.可行性分析報告2、在
19、需求分析之前有必要進行( B )A.程序設計 B.可行性分析 C.ER分析 D.3NF分析3、軟件需求分析階段建立原型的主要目的時( A )。A.確定系統(tǒng)的功能和性能要求 B.確定系統(tǒng)的運行要求C.確定系統(tǒng)是否滿足用戶需要 D.確定系統(tǒng)是否滿足開發(fā)人員需要4、軟件開發(fā)的需求活動,其主要任務是( D )。A.給出軟件解決方案 B.給出系統(tǒng)模塊結構C.定義模塊算法 D.定義需求并建立系統(tǒng)模型5、需求分析階段的研究對象是( A )。A.用戶要求 B.分析員要求 C.系統(tǒng)要求 D.軟硬件要求6、數(shù)據流圖描述系統(tǒng)的( D )。A.數(shù)據結構 B.控制流程 C.基本加工 D.軟件功能 7、軟件需求階段要解決
20、的問題是( A )。A.軟件做什么 B.軟件提供哪些信息 C.軟件采用的結構 D.軟件怎樣做8、數(shù)據字典不包括的條目是( C )。A.數(shù)據項 B.數(shù)據流 C.數(shù)據類型 D.數(shù)據加工 9、需求分析( D )。A.要回答“軟件必須做什么?” B.可以概括為“理解,分解,表達”六個字。C.要求編寫需求規(guī)格說明書 D.上面都對。10、在數(shù)據流圖中,有名字及方向的成分是( A )。A.數(shù)據流 B.信息流 C.控制流 D.信號流11、軟件需求分析階段的工作,可以分成以下四個方面:對問題的識別、分析與綜合、制定需求規(guī)格說明以及( C )。A.總結 B.實踐性報告 C.需求分析評審 D.以上答案都不正確 12
21、、結構化分析方法使用的描述工具( B )定義了數(shù)據流圖中每一個圖形元素。A.數(shù)據流圖 B.數(shù)據字典 C.判定表 D.判定樹 13、需求規(guī)格說明書的作用不應包括( D )。A.軟件設計的依據 B.用戶與開發(fā)人員對軟件要做什么的共同理解C.軟件驗收的依據 D.軟件可行性研究的依據 14、在結構化分析方法中,與數(shù)據流圖配合使用的是( C )。A.網絡圖 B.實體聯(lián)系圖 C.數(shù)據字典 D.程序流程圖 15、軟件需求規(guī)格說明書的內容不應包括對( B )的描述。A.主要功能 B.算法的詳細過程 C.用戶界面及運行環(huán)境 D.軟件的性能 16、通過( B )分解完成數(shù)據流圖的細化。A.結構分解 B.功能分解
22、C.數(shù)據分解 D.系統(tǒng)分解 17、數(shù)據存儲和數(shù)據流都是( D ),僅僅所處的狀態(tài)不同。A.分析結果 B.事件 C.動作 D.數(shù)據 18、數(shù)據字典中,一般不包括下列選項中的( D )條目。A.數(shù)據流 B.數(shù)據存儲 C.加工 D.源點與終點 19、SA方法用DFD描述( D )。A.系統(tǒng)的控制流程 B.系統(tǒng)的數(shù)據結構 C.系統(tǒng)的基本加工 D.系統(tǒng)的功能 20、初步用戶手冊在( B )階段編寫。A.可行性研究 B.需求分析 C.軟件概要設計 D.軟件詳細設計 21、SA方法的分析步驟是首先調查了解當前系統(tǒng)的工作流程,然后( A )。A.獲得當前系統(tǒng)的物理模型,抽象出當前系統(tǒng)的邏輯模型,建立目標系統(tǒng)的
23、邏輯模型。 B. 獲得當前系統(tǒng)的物理模型,抽象出目標系統(tǒng)的邏輯模型,建立目標系統(tǒng)的物理模型。 C. 獲得當前系統(tǒng)的邏輯模型,建立當前系統(tǒng)的物理模型,抽象出目標系統(tǒng)的邏輯模型。 D. 獲得當前系統(tǒng)的邏輯模型,建立當前系統(tǒng)的物理模型,建立目標系統(tǒng)的物理模型。 22、SA方法的基本思想是( C )。 A.自底向上逐步抽象 B.自底向上逐步分解 C.自頂向下逐步分解 D.自頂向下逐步抽象解答題為什么要進行需求分析?通常對軟件系統(tǒng)有哪些需求?開發(fā)一個軟件系統(tǒng),必須知道用戶對目標軟件系統(tǒng)在功能、行為、性能、設計約束等方面有什么期望和要求,所以必須進行需求分析。通常對軟件系統(tǒng)的需求有:功能需求,性能需求,運
24、行要求、可擴展要求、數(shù)據需求。軟件需求分析階段的任務是什么?需求獲?。和ㄟ^調研,獲取用戶對系統(tǒng)的功能需求和非功能需求。需求分析:通過對用戶需求分析和綜合,消除用戶需求的模糊性、歧義性和不一致性。建立系統(tǒng)邏輯模型。需求描述:用規(guī)范化的語言和格式生成需求規(guī)格說明。數(shù)據字典的作用是什么?數(shù)據字典是對數(shù)據流圖中出現(xiàn)的所有成分都給出“嚴格定義”。,包括對數(shù)據加工、數(shù)據流、數(shù)據存儲、數(shù)據元素的定義。什么是結構化分析方法?該方法使用什么描述工具?面向數(shù)據流進行需求分析的方法,采用自頂向下、逐步求精的分析方法。描述工具:數(shù)據流圖,數(shù)據字典。第四章 總體設計作業(yè)名詞解釋1.軟件概要設計:抽象出軟件系統(tǒng)實現(xiàn)的總體
25、框架的設計,是把軟件需求轉換為軟件表示的抽象過程2.模塊:是可以單獨命名和編譯的程序基本單位。3.模塊化:指解決一個復雜問題時自頂向下逐層把軟件系統(tǒng)劃分成若干個模塊的過程。每個模塊完成一個特定的功能所有模塊按照某種方法組裝起來,成為一個整體,完成整個系統(tǒng)所要求的功能。4.信息隱蔽:指設計一個模塊時,使得一個模塊內包含的信息(過程或數(shù)據),對于不需要這些信息的模塊來說,是不能訪問的。5.耦合:也稱塊間聯(lián)系,指軟件系統(tǒng)結構中各模塊間相互聯(lián)系緊密程度的一種度量。6.內聚:也稱塊內聯(lián)系,指模塊功能強度的度量,即一個模塊內部各個元素彼此結合的緊密程度的度量。7.模塊獨立性:指每個模塊只完成系統(tǒng)要求的獨立
26、的子功能,并且與其它模塊的聯(lián)系最少且接口簡單。8.結構化設計:又稱面向數(shù)據流的設計,它是以需求分析階段產生的數(shù)據流圖為基礎,按照一定的步驟把數(shù)據流圖映射成軟件結構。9.變換流:指具有明顯的數(shù)據輸入、數(shù)據變換和數(shù)據輸出邊界的數(shù)據流圖。10.事務流:指可以根據輸入流的事務類型分解成多個相互獨立的處理數(shù)據流的數(shù)據流圖,具有明顯的事務處理中心是事務流的顯著特點。填空1、軟件設計是把 軟件需求 轉換成 軟件表示 的過程,包括 概要設計 和 詳細設計 兩個階段2、軟件設計階段是把軟件“ 功能 ”的邏輯模型變換為“ 軟件結構 ”的物理模型。3、軟件設計的基本任務包括 系統(tǒng)設計 、 軟件結構設計 、 數(shù)據結構
27、設計 和 軟件接口設計 等。4、數(shù)據庫的“概念設計”與“邏輯設計”分別對應于軟件生存周期中的“ 需求分析 ”和“ 概要設計 ”階段。5、概要設計階段的可能的主要文檔有 概要設計說明書 、 用戶手冊 和 測試計劃 。6、抽象是認識復雜事務的思維工具,即抽象出事務的 本質 的、 共同 的特征而暫不考慮它的 細節(jié) 。7、模塊具有 接口 、 功能 、 邏輯 和 狀態(tài) 等屬性。8、軟件結構的設計是以 數(shù)據流圖 為基礎的,即以需求分析的結果為依據,將系統(tǒng)進一步劃分成 模塊 ,并確定模塊之間的 聯(lián)系 。9、軟件結構中各模塊間相互聯(lián)系的密切程度稱為 耦合 。10、 信息隱蔽 是指在設計和確定模塊時,使得一個模
28、塊內包含的信息(過程或數(shù)據)對于不需要這些信息的其它模塊來說,是不能 訪問 的。11、模塊獨立性要求每個模塊只完成問題要求的 一個 子功能,并且與其它模塊的聯(lián)系 簡單 。12、結構圖包含的主要內容有 模塊 、 模塊間的連線 和 模塊間傳遞的數(shù)據 。13、衡量模塊獨立性的兩個定性的度量指標是 內聚 和 耦合 。將軟件系統(tǒng)劃分成模塊時,盡量做到 高 內聚, 低 耦合,提高模塊的獨立性,為設計高質量的軟件奠定基礎。14、模塊的 扇出 指一個模塊的直接下屬模塊的個數(shù), 扇入 指一個模塊的直接上層模塊的個數(shù)。15、結構化設計簡稱 面向數(shù)據流的設計 。數(shù)據流圖一般可分為 變換 型和 事務 型兩類。16、面
29、向數(shù)據流的設計是以需求分析階段產生的數(shù)據流圖為基礎,按照一定的步驟將數(shù)據流圖映射成軟件結構。因此又稱 結構化設計 。單項選擇1、軟件設計一般分為總體設計和詳細設計,它們之間的關系是( B )。A.全局和局部 B.抽象和具體 C.總體和層次 D.功能和結構2、屬于軟件設計的基本原理是( D )。A.數(shù)據流分析設計 B.變換流分析設計 C.事務流分析設計 D.模塊化3、軟件設計階段一般又可分為( B )A.邏輯設計和功能設計 B.概要設計和詳細設計 C.概念設計和物理設計 D.模型設計和程序設計4、結構圖中,不是其主要成分的是( C )。A.模塊 B.模塊間傳遞的數(shù)據 C.模塊內部數(shù)據 D.模塊間
30、的控制關系5、好的軟件結構應該是( B )。A.高內聚、高耦合 B.低耦合、高內聚C.高耦合、低內聚 D.低耦合、低內聚6、一組語句在程序中多次出現(xiàn),為了節(jié)省內存空間,把這些語句放在一個模塊中,該模塊的內聚度是( C )的。A.一致性 B.瞬時性 C.偶然性 D.通信性7、軟件設計中劃分模塊通常遵循的原則是要使模塊間的耦合性盡可能( B )。A.強 B.弱 C.較強 D.適中8、一個模塊把數(shù)值作為參數(shù)傳遞給另一個模塊,這種耦合方式稱為( D )。A.公共耦合 B.內容耦合 C.控制耦合 D.數(shù)據耦合9、最高程度也是最差的耦合是( B )。A.公共耦合 B.內容耦合 C.控制耦合 D.數(shù)據耦合1
31、0、內聚是對模塊功能強度的度量,內聚性最強的是( D )。A.邏輯內聚 B.順序內聚 C.偶然內聚 D.功能內聚11、結構化設計又稱為( B )。A.概要設計 B.面向數(shù)據流設計 C.面向對象設計 D.詳細設計12、在面向數(shù)據流的軟件設計方法中,一般把數(shù)據流分為( A )。A.變換流和事務流 B.變換流和控制流 C.事務流和控制流 D.數(shù)據流和控制流13、( D )著重反映的是模塊間的隸屬關系,即模塊間的調用關系和層次關系。A.程序流程圖 B.數(shù)據流圖 C.E-R圖 D.軟件結構圖14、軟件設計一般將用圖形工具,下列( C )可用作設計的圖形工具。結構圖 實體聯(lián)系圖 IPO圖 層次圖A.和 B
32、.和 C.和 D.全部15、為了提高模塊的獨立性,模塊內部最好是( C )。A.邏輯內聚 B.時間內聚 C.功能內聚 D.通信內聚16、程序結構中矩形表示( C )。A.數(shù)據 B.加工 C.模塊 D.存儲17、結構化設計方法在軟件開發(fā)中,用于( B )。A.測試用例設計 B.概要設計 C.程序設計 D.詳細設計18、( D )是數(shù)據說明、可執(zhí)行語句等程序對象的集合,它是單獨命名的而且可通過名字訪問。A.模塊化 B.抽象 C.精化 D.模塊19、面向數(shù)據流的設計方法把( A )映射成軟件結構。A.數(shù)據流 B.系統(tǒng)結構 C.控制結構 D.信息流20、設計軟件結構一般不確定( C )。A.模塊的功能
33、 B.模塊的接口 C.模塊內的局部數(shù)據 D.模塊間的調用關系解答題概要設計的基本任務是什么?系統(tǒng)結構設計:確定物理系統(tǒng)的具體實現(xiàn)方案。-概括地說,系統(tǒng)應該怎樣做劃分出組成系統(tǒng)的物理元素-程序、文件、數(shù)據庫、人工過程和文檔。軟件結構設計:確定系統(tǒng)中每個程序組成的模塊、模塊之間的聯(lián)系(結構)。數(shù)據結構或數(shù)據庫設計:確定系統(tǒng)需要的數(shù)據及數(shù)據間的相互關系。系統(tǒng)接口設計:模塊接口設計、外部接口設計和人機界面設計。模塊設計的原理是什么?模塊設計的原理是盡量做到模塊的高內聚低耦合,以次提高模塊的獨立性。軟件設計的基本原則包含那些內容?模塊化:以模塊作為程序設計的基本單位,把程序劃分成若干個模塊,每個模塊完成
34、一個子功能,把這些模塊集總起來,并通過模塊間的調用關系把它們組成一個完整的整體,完成指定的功能。抽象:解決復雜問題的唯一有效的方法就是運用抽象的思維方式,首先用一些高級的抽象概念構造和理解它;這些高級概念又可以用一些較低級的概念構造和理解,如此進行下去,直到最低層次的具體元素。信息隱蔽:模塊內部的信息(處理過程和數(shù)據),應對不需要了解這些信息的模塊隱蔽起來,使它們不能訪問。模塊獨立:開發(fā)具有獨立功能而且和其他模塊之間沒有過多的相互作用的模塊。衡量模塊獨立程度的兩個定性度量標準-內聚和耦合。軟件結構優(yōu)化原則有那些?改進軟件結構提高模塊獨立性模塊規(guī)模應該適中 深度、寬度、扇出和扇入應適當 模塊的作
35、用域應在控制域之內 盡量降低模塊接口的復雜程度 設計單入口出口的模塊 模塊功能應該可以預測 變換分析設計和事務分系設計有什么區(qū)別?數(shù)據流圖呈線性變換特征,而且可以抽象成三部分:I-P-O。數(shù)據流圖呈輻射型,根據輸入數(shù)據的性質選擇加工路徑。變換分析設計適用于具有明顯變換特征的數(shù)據流圖。事務分析設計適用于具有明顯事務特征的數(shù)據流圖。衡量模塊獨立性的兩個標準是什么?它們各表示什么含義?標準:耦合和內聚耦合:也稱塊間聯(lián)系,指軟件系統(tǒng)結構中各模塊間相互聯(lián)系緊密程度的一種度量。內聚:也稱塊內聯(lián)系,指模塊功能強度的度量,即一個模塊內部各個元素彼此結合的緊密程度的度量。7、什么是模塊?模塊有那些基本屬性?模塊
36、:是可以單獨命名和編譯的程序基本單位。模塊基本屬性:(1)接口:模塊的輸入與輸出(2)功能:模塊做什么;(3)邏輯:描述模塊內部怎么做;(4)狀態(tài):模塊使用時的環(huán)境和條件。 其中,功能、接口和狀態(tài)反映模塊的外部特性,邏輯反映模塊的內部特性。第六章 詳細設計習題名詞解釋詳細設計:確定每個模塊的具體執(zhí)行過程,也稱過程設計。詳細設計的結果基本決定了最終的程序代碼的質量。結構化程序設計:是按照一組能提高程序的可讀性和易維護性的規(guī)則而進行的程序設計方法,目的是為了使程序具有一種合理的結構,以使程序易理解和維護,便于保證和驗證程序的正確性。PDA:問題分析圖,是一種算法描述工具。它是一種從左向右展開的二維
37、樹形結構,其控制流程為自上而下,從左到右地執(zhí)行。填空1、詳細設計階段的主要任務是 確定每個模塊的具體執(zhí)行過程。 。2、軟件的詳細設計可以用 圖形 、 表格 、 過程設計語言 三種形式的描述工具表示模塊的處理過程。3、處理過程設計中最典型的方法是 結構化程序設計 方法,其基本要點是 自頂向下 、 逐步求精 。4、任何程序都可由 順序 、 選擇 和 循環(huán) 3種基本控制結構構造,這3中基本結構的基本點是 單入口 、 單出口 。5、PAD圖是一種 從左到右 展開的二維 樹形 結構,PAD圖的控制流程是 自上而下 、 從左到右 地執(zhí)行。6、詳細設計是軟件設計的第二個階段,主要確定每個模塊的具體執(zhí)行過程,
38、故也成為 過程設計 。7、詳細設計的目標不僅是邏輯上正確地實現(xiàn) 每個模塊的功能 ,還應使設計出的處理過程 清晰易懂 。8、結構化程序設計 是實現(xiàn)該目標的關鍵技術之一,它指導人們用良好的思想方法開發(fā)易于 閱讀 、易于 理解 的程序。單項選擇1、在詳細設計階段,經常采用的工具包括( C )A.SA B.SD C.PAD D.DFD2、詳細設計階段的任務是( A )。A.算法設計 B.功能設計 C.調用達觀系設計 D.輸入/輸出設計3、結構化程序設計的一種基本方法是( D )。A.篩選法 B.遞歸法 C.迭代法 D.逐步求精法4、下面說法不正確的是( C )。A.流程圖不易表示數(shù)據結構 B.流程圖容
39、易造成非結構化的程序結構C.流程圖支持逐步求精 D.流程圖描述的是程序的邏輯結構5、下面說法不正確的是( B )。A. PAD圖支持逐步求精 B.PAD圖容易造成非結構化的程序結構C. PAD圖描述的是算法 D.PAD圖容易表達程序的層次結構簡答題什么是詳細設計,?該階段的基本任務是什么?詳細設計是軟件設計的第二個階段,確定每個模塊的具體執(zhí)行過程,也稱過程設計。根本任務:(1)為軟件結構中的每個模塊選擇算法,并用選定的某種表達工具給出清晰的描述。(2)塊內數(shù)據結構設計(3)數(shù)據庫物理設計 詳細設計的目標不僅僅是邏輯上正確地實現(xiàn)每個模塊的功能,更重要的是設計出的處理過程應該盡可能簡明易懂。什么是
40、結構化程序設計?,簡述結構化程序設計的基本要點。結構化程序設計是按照一組能提高程序的可讀性和易維護性的規(guī)則而進行的程序設計方法,目的是為了使程序具有一種合理的結構,以使程序易理解和維護,便于保證和驗證程序的正確性?;疽c: 自頂向下、逐步求精的設計方法 使用順序、選擇、循環(huán)三種基本控制結構 在三種基本控制結構中保持單入口、單出口第七章 實現(xiàn)作業(yè)名詞解釋編碼:編程就為是用編程(程序)語言把軟件表達翻譯為計算機可以理解的形式用某種程序設計語言書寫的程序。軟件測試:是軟件投入運行之前,對軟件需求分析、設計規(guī)格說明和編碼的最終復查,是軟件質量保證的關鍵步驟。黑盒測試:不考慮程序內部結構和處理過程,只
41、依據軟件的需求規(guī)格說明書,檢查程序的功能是否符合它的功能說明。因此,黑盒測試又稱功能測試或數(shù)據驅動測試。白盒測試:按照程序內部邏輯測試程序。檢查程序中的每條通路是否都能按照預定要求正常工作。這種測試完全了解程序的結構和處理過程。因此,白盒測試又稱為結構測試或邏輯驅動測試。 單元測試:是檢查程序模塊是否正確實現(xiàn)了規(guī)定的功能,目的是保證每個模塊作為一個單元能正確運行,所以模塊測試通常又稱為單元測試。集成測試:把模塊按設計要求組裝成子系統(tǒng)或系統(tǒng)的過程中的測試。確認測試:以需求規(guī)格說明為基準,驗證軟件的有效性的測試。漸增式測試:在集成測試中,的模塊一個一個地加入進行測試。當一個模塊加入測試完以后再把下
42、一個應該測試的模塊結合進來測試。這種每次增加一個模塊的方法稱為漸增式測試。非漸增式測試:是先分別測試每個模塊,再把所有模塊按設計要求放在一起結合成所要的程序。這種方法稱為非漸增式測試方法?;貧w測試: 指重新執(zhí)行已經做過的測試。每當改正軟件錯誤的時候,可能導致軟件配置的某些成分的改變,這些改變可能引進新的錯誤。回歸測試就是保證由于調試或其它原因引起的變化,不會導致非預期的軟件行為或額外錯誤的測試活動。調試: 根據測試所暴露的錯誤,診斷和改正其錯誤的過程。填空1、為了使程序代碼易于閱讀和理解,通常需要加注釋,注釋分為 序言性注釋 和 功能性注釋 兩種類型2、軟件測試的目的是盡可能多地發(fā)現(xiàn)軟件中存在
43、的 錯誤 。3、軟件測試方法一般分為兩大類: 白盒測試 方法和 黑盒測試 方法。4、集成測試可以采用的具體方法是 漸增式測試 和 非漸增式測試 。5、測試用例由 測試輸入數(shù)據 和預期的的 結果 兩部分組成。單項選擇題1、為了使程序能在不同的機器上運行,程序應具有較好的【 A 】。A.可移植性 B.可重用性 C.可維護性 D.可實用性2、下列屬于功能性注釋的是【 C 】A.說明模塊的用處和功能的注釋 B.說明數(shù)據的名稱和用處的注釋C.說明程序段的注釋 D.說明程序開發(fā)背景的注釋3、序言性注釋主要內容不包括【 D 】A.模塊的接口 B.數(shù)據的描述 C.模塊的功能 D.數(shù)據的狀態(tài)4、功能性注釋主要內
44、容不包括【 C 】A.程序段的功能 B.語句的功能 C.模塊的功能 D.數(shù)據的狀態(tài)5、符合數(shù)據說明順序規(guī)范是【 D 】A.全程量說明、局部量說明、類型說明、常量說明B.全程量說明、局部兩說明、常量說明、類型說明C.類型說明、常量說明、全程兩說明、局部量說明D.常量說明、類型說明、全程量說明、局部量說明6、下面說法正確的是【 C 】A.經過測試沒有發(fā)現(xiàn)錯誤說明程序正確B.測試的目標是為了證明程序沒有錯誤C.成功的測試是發(fā)現(xiàn)了迄今尚未發(fā)現(xiàn)的錯誤的測試D.成功的測試是沒有發(fā)現(xiàn)錯誤的測試7、覆蓋準則最強的【 C 】A.語句覆蓋 B.判定覆蓋 C.條件覆蓋 D.路徑覆蓋8、發(fā)現(xiàn)錯誤能力最弱的是【 A 】
45、A.語句覆蓋 B.判定覆蓋 C.條件覆蓋 D.路徑覆蓋9、與確認測試有關的文檔是【 A 】A.需求規(guī)格說明書 B.概要設計說明書 C.詳細設計說明書 D.源程序10、超出軟件工程范圍的測試是【 D 】A.單元測試 B.集成測試 C.確認測試 D.平行測試11、【 B 】方法需要考察模塊間的接口和各模塊之間的聯(lián)系A.單元測試 B.集成測試 C.確認測試 D.驗收測試12、調試應該由【 B 】完成。A.與源程序無關的程序員 B.編制該源程序的程序員C.不了解軟件設計的機構 D.設計該軟件的機構簡答題選擇高級程序設計語言的標準是什么?選擇的標準是:理想的模塊化機制良好的編譯程序良好的獨立編譯機制為了
46、使程序具有良好的設計風格,應注意那些方面的問題?代碼文檔化數(shù)據說明順序應該規(guī)范語句構造簡單直接,不能為追求效率而是使代碼復雜化輸入輸出格式簡單一致,具有合法性驗證、與結束標志追求效率應建立在不損害程序可讀性和可靠性基礎上為什么說軟件測試是軟件開發(fā)中不可缺少的重要一環(huán),但不是軟件質量保證的安全閥?軟件測試是軟件開發(fā)中不可缺少的重要一環(huán),原因:軟件最終要由人工編程來實現(xiàn),出現(xiàn)錯誤是不可避免的。測試的工作量占整個項目開發(fā)工作量40%左右。如果是關系到人的生命安全的軟件,測試的工作量還要成倍增加。軟件測試代表了需求分析、設計、編碼的最終復審。軟件測試不是軟件質量保證的安全閥:軟件測試只能發(fā)現(xiàn)錯誤,不能
47、保證沒有錯誤。軟件測試應當遵循什么原則?為什么要遵循這些原則?所有測試應以用戶需求為基準,測試的根本目標是保證軟件能滿足最終用戶對軟件的需求。制定系統(tǒng)的測試計劃,并嚴格執(zhí)行測試計劃,排除測試的隨意性。充分注意關鍵模塊的測試和測試中的群集現(xiàn)象。實踐表明,測試發(fā)現(xiàn)的錯誤中80%可能集中在20%的模塊中,對這些模塊應重點測試。測試過程中必須隨時注意測試所覆蓋的程序邏輯的程度,確保程序設計中使用的所有條件都能被測試到。 避免自己測試自己的程序,應由第三方獨立進行測試。 測試用例應包括合理的輸入和不合理的輸入。不合理的輸入往往更能發(fā)現(xiàn)程序中錯誤。測試用例應由測試輸入數(shù)據和對應的預期輸出結果組成。缺少預期
48、輸出結果實際是缺少檢驗正誤的基礎。單元測試、集成測試和確認測試各自主要目標是什么?它們之間有什么不同?相互有什么關系?模塊測試是檢查程序模塊是否正確實現(xiàn)了規(guī)定的功能,發(fā)現(xiàn)模塊在編碼或算法中的錯誤,目的是保證每個模塊作為一個單元能正確運行。集成測試的主要目標是檢查與設計相關的模塊間與接口有關的問題確認測試的主要目標是驗證軟件的有效性,確保軟件有效實現(xiàn)了軟件需求規(guī)格說明書的要求,需求規(guī)格說明書是確認測試的依據。它們之間的不同有: 測試內容不同 測試方法不同:單元測試用白盒法,集成測試使用漸增式或非漸增式測試;確認測試使用黑盒法。 發(fā)現(xiàn)的錯誤不同:單元測試發(fā)現(xiàn)的錯誤是編碼階段產生的錯誤;集成測試發(fā)現(xiàn)的是設計階段引入的錯
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 七年級數(shù)學上冊第5章一元一次方程5.4一元一次方程的應用第1課時基本數(shù)量與行程問題聽評課記錄(新版浙教版)
- 冀教版七年級數(shù)學上冊聽評課記錄5.4.4 追及、方案問題
- 人教版數(shù)學九年級上冊26.1.2《二次函數(shù)的圖象》聽評課記錄
- 生態(tài)產品供應合同(2篇)
- 環(huán)境監(jiān)測系統(tǒng)招標合同(2篇)
- 部編版八年級歷史上冊《第16課 毛澤東開辟井岡山道路》聽課評課記錄
- 晉教版地理七年級上冊《3.1 海陸分布》聽課評課記錄4
- 首師大版道德與法治七年級上冊2.1《青春悄悄來》聽課評課記錄
- 人教版歷史八年級上冊第25課《經濟和社會生活的變化》聽課評課記錄
- 北師大版歷史九年級上冊第1課《西亞和北非的古代文明》聽課評課記錄
- 2024年安徽省初中學業(yè)水平考試中考數(shù)學試卷(真題+答案)
- 抖音房產直播敏感詞匯表
- 學前兒童美術教育與活動指導第4版全套教學課件
- 標桿門店打造方案
- 2022-2023年人教版九年級化學(上冊)期末試題及答案(完整)
- 中華民族共同體概論課件專家版2第二講 樹立正確的中華民族歷史觀
- 食品安全公益訴訟
- 中學生低碳生活調查報告
- 游泳池經營合作方案
- 弱電項目經理工作總結
- 擘畫未來技術藍圖
評論
0/150
提交評論