軟件工程練習(xí)題_第1頁
軟件工程練習(xí)題_第2頁
軟件工程練習(xí)題_第3頁
軟件工程練習(xí)題_第4頁
軟件工程練習(xí)題_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、軟件工程練習(xí)題軟件工程練習(xí)題一、填空題1 .軟件主要包括程序、數(shù)據(jù)和文檔三部分內(nèi)容。2 .目前使用最廣泛的軟件工程方法學(xué)是傳統(tǒng)(結(jié)構(gòu)化方法)方法和面向?qū)ο蠓椒ā? .軟件可行性研究的任務(wù)是從技術(shù)、經(jīng)濟(jì)和社會可行性三個(gè)方面分析軟件項(xiàng)目的可行性。4 .軟件測試的目的是找出軟件潛在的錯(cuò)誤和缺陷;通常把軟件測試方法分為黑盒測試(功能測試)和白盒測試(結(jié)構(gòu)測試)兩大類。0w6Nw5 .軟件測試中,測試用例由輸入數(shù)據(jù)和預(yù)期的輸出結(jié)果兩部分組成。6 .典型的軟件生命周期模型(軟件過程模型)包括瀑布模型、快速原型模型和增量模型、螺旋模型、噴泉模型等。kxQS87 .模塊A調(diào)用模塊B以查詢學(xué)生成績,模塊A通過參

2、數(shù)向模塊B傳送所查詢學(xué)生白學(xué)號,模塊B通過參數(shù)向模塊A返回學(xué)生的考試成績。模塊A和模塊B之間的耦合類型屬于數(shù)據(jù)耦合。8 .在類的繼承結(jié)構(gòu)中,不同層次的類共享同一個(gè)行為名稱,但各個(gè)類可以按照自己的需要為同名行為設(shè)計(jì)不同的算法,此性質(zhì)稱為類的重寫。5saGx。9 .測試軟件中的模塊時(shí),通常需要為被測模塊設(shè)計(jì)輔助模塊,輔助模塊的名稱分別是驅(qū)動模塊和樁模塊。10 .軟件生存期中時(shí)間最長的是軟件維護(hù)階段。11 .結(jié)構(gòu)化分析方法中,功能模型用DFD描述;數(shù)據(jù)模型用E-R描述。12 .過程設(shè)計(jì)(詳細(xì)設(shè)計(jì))中,常用的描述工具有圖形、表格和語言三類。13 .在模塊結(jié)構(gòu)圖中,直接調(diào)用某一模塊的其他模塊數(shù)稱為該模塊

3、的扇入數(shù)。14 .面向?qū)ο蠓治觯∣OA方法中,必須定義對象間的通信機(jī)制,對象間通信是通過消息傳遞機(jī)制來實(shí)現(xiàn)的。yrUL1。15 .面向?qū)ο蠓椒ㄓ脤ο蠓纸馊〈私Y(jié)構(gòu)化方法的功能分解。16 .寫出下列各對事物之間的關(guān)系(繼承、聚集、一般關(guān)聯(lián)):交通工具一一汽車的關(guān)系是:繼承;書一一讀者的關(guān)系是:一般關(guān)聯(lián);班級一一學(xué)生的關(guān)系是:聚集;多邊型一一線段的關(guān)系是:聚集。17 .面向?qū)ο笤O(shè)計(jì)(OOD階段,可以將面向?qū)ο蟮脑O(shè)計(jì)內(nèi)容劃分為四部分,分別是:人機(jī)界面部分、問題域部分、任務(wù)管理部分和數(shù)據(jù)管理部分。18 .UML的中文含義是統(tǒng)一建模語言;CASE勺中文含義是用例。、選擇題1 .需求分析階段,開發(fā)人員需從

4、用戶那里獲得的最重要信息是().用戶能接受的開發(fā)周期.軟件應(yīng)具有何種結(jié)構(gòu))。B.一個(gè)輸入流和一個(gè)輸出流一個(gè)輸出流)來設(shè)計(jì)測試用例的。A.用戶能接受的開發(fā)費(fèi)用BC.用戶要讓軟件做什么D2 .數(shù)據(jù)流圖中的每個(gè)處理至少有(A.一個(gè)輸入流或一個(gè)輸出流C.一個(gè)輸入流D.3 .軟件測試中,白盒法是通過分析程序的A應(yīng)用范圍B 、內(nèi)部邏輯 C 、功能 D 、輸入數(shù)據(jù)4.有一個(gè)計(jì)算程序,它的輸入量只有一個(gè)X,其范圍是-1.0,1.0,現(xiàn)從輸入的角度考慮一組測試用例:-1.001,-1.0,1.0,1.001。設(shè)計(jì)這組測試用例的方法是()GRhIj。A、條件覆蓋法B、等價(jià)分類法C、邊界值分析法D、錯(cuò)誤推測法5 .

5、關(guān)于單元測試,正確的是()。A.單元測試的依據(jù)是概要設(shè)計(jì)說明書B.單元測試中不需要使用白盒測試法C.單元測試包括模塊接口測試D.單元測試時(shí)不需要輔助模塊6 .銀行計(jì)算機(jī)儲蓄管理信息系統(tǒng)中,根據(jù)客戶提出的要求(如存款、取款、查詢、掛失、咨詢等)進(jìn)行相應(yīng)的業(yè)務(wù)處理的該層數(shù)據(jù)流圖是()C4rGeA.變換型B.事務(wù)型C.既不是A也不是BD.不一定7 .軟件詳細(xì)設(shè)計(jì)的主要任務(wù)是確定每個(gè)模塊的()。A.算法和使用的數(shù)據(jù)結(jié)構(gòu)B.外部接口C.功能D.編程語言pQcFh8 .()表示了類之間的“一般特殊”關(guān)系。A.聚集B.關(guān)聯(lián)C.消息傳遞D.繼承WMRL69 .面向?qū)ο箝_發(fā)方法定義了三種模型來描述系統(tǒng),()可以

6、用狀態(tài)圖來表示。A.對象模型B.功能模型C.動態(tài)模型D.類模型10 .對象的內(nèi)部實(shí)現(xiàn)與外部可訪問性的分離體現(xiàn)了對象的();A.繼承性B,共享性C.封裝性D.抽象性11 .結(jié)構(gòu)化分析方法用數(shù)據(jù)流圖描述()。A.系統(tǒng)的控制流程B.系統(tǒng)的數(shù)據(jù)結(jié)構(gòu)C.系統(tǒng)的基本加工D.系統(tǒng)的功能12 .在面向數(shù)據(jù)流的設(shè)計(jì)方法中,一般把數(shù)據(jù)流圖劃分為()兩種類型。A.數(shù)據(jù)流和事務(wù)流B.變換流和數(shù)據(jù)流C.變換流和事務(wù)流D.控制流和事務(wù)流rquGR13 .產(chǎn)生軟件危機(jī)的主要原因有()。軟件本身的特點(diǎn)用戶使用不當(dāng)硬件可靠性差rlFP8。程序員水平缺乏好的開發(fā)方法和管理手段INg0M。A.B.C.D.0KFxM14 .軟件測試

7、中,黑盒法是根據(jù)程序的()來設(shè)計(jì)測試用例的。A應(yīng)用范圍B、內(nèi)部邏輯C、功能D、輸入數(shù)據(jù)15 .OOA模型規(guī)定了一組對象如何協(xié)同才能完成軟件系統(tǒng)所指定的工作。這種協(xié)同在模型中是以表明對象通信方式的一組()連接來實(shí)現(xiàn)的。MvCh9A.消息B.記錄C.數(shù)據(jù)D.屬性16 .用黑盒法設(shè)計(jì)測試用例時(shí)采用的方法包括()。A.判定覆蓋法B.條件覆蓋法C.等價(jià)分類法D.路徑分析法17 .有關(guān)集成測試的敘述中,()是正確的。A.測試底層模塊時(shí)不需要樁模塊B.自底向上測試方法有利于提前預(yù)計(jì)測試結(jié)果C.驅(qū)動模塊的作用是模擬被調(diào)模塊D.自頂向下測試方法易于設(shè)計(jì)測試用例18 .現(xiàn)有一個(gè)程序,它的輸入只有一個(gè)整型數(shù)Y,其范

8、圍是-50WYW50?,F(xiàn)從輸入角度考慮設(shè)計(jì)了一組測試用例:100,100,0。設(shè)計(jì)這組測試用例的方法是()。A.條件覆蓋法B.等價(jià)分類法C.邊界值分析法D.錯(cuò)誤推測法19 .在面向?qū)ο筌浖椒ㄖ?,“類”是()。A.具有同類數(shù)據(jù)的對象的集合B.具有相同操作的對象的集合C.具有同類數(shù)據(jù)的對象的定義D.具有同類數(shù)據(jù)和相同操作的對象的定義20 .面向?qū)ο箝_發(fā)方法定義了三種模型來描述系統(tǒng),()可以用數(shù)據(jù)流圖來表示A.對象模型B.功能模型C.動態(tài)模型D.數(shù)據(jù)模型21 .軟件開發(fā)中,階段評審是非常重要的環(huán)節(jié),其主要目的和作用是()。A.減少測試工作量B.避免后期付出高代價(jià)C.保證軟件質(zhì)量D.縮短軟件開發(fā)周期

9、22,在綜合瀑布模型和快速原型模型優(yōu)點(diǎn)的同時(shí),螺旋模型還增加了新的階段一一()。A.風(fēng)險(xiǎn)分析B.用戶評價(jià)C.版本控制D.成本估算sQGNe23,數(shù)據(jù)流是數(shù)據(jù)流圖的基本成分,下列關(guān)于數(shù)據(jù)流的敘述中,()是正確的。A.某加工的輸入是一個(gè)數(shù)據(jù)流,該加工的輸出也必定是一個(gè)數(shù)據(jù)流B.多個(gè)不同的數(shù)據(jù)流可以流向一個(gè)加工,也可從一個(gè)加工中流出。C.數(shù)據(jù)流只能從加工流向數(shù)據(jù)存儲,但不能從數(shù)據(jù)存儲流向加工D.一個(gè)數(shù)據(jù)流可以從一個(gè)數(shù)據(jù)存儲流向另一個(gè)數(shù)據(jù)存儲24 .在分層數(shù)據(jù)流圖中,若某層的加工K分解成下層的數(shù)據(jù)流圖L,則()。A. K與L的輸入、輸出數(shù)據(jù)流不一定相同B. K與L的輸入數(shù)據(jù)流必須相同、輸出數(shù)據(jù)流不一定

10、相同C. K與L的輸入、輸出數(shù)據(jù)流必須相同DKL的輸入數(shù)據(jù)流可以不同、輸出數(shù)據(jù)流必須相同25 .數(shù)據(jù)流圖所描述的是實(shí)際系統(tǒng)的()。A.邏輯模型B.物理模型C.程序流程D.數(shù)據(jù)Z勾bLVyT。26 .為了提高模塊的獨(dú)立性,模塊內(nèi)部最好是()。A.邏輯內(nèi)聚B.時(shí)間內(nèi)聚C.功能內(nèi)聚D.通信內(nèi)聚vl3dt。27 .由變換型數(shù)據(jù)流圖轉(zhuǎn)換成模塊結(jié)構(gòu)圖,其中包括變換模塊,則()。A.變換模塊就是主模塊B.變換模塊的功能是將邏輯輸入變換為邏輯輸出C.變換模塊沒有下層模塊D.變換模塊只能有一個(gè)輸入量、一個(gè)輸出量28 .為了提高軟件測試的效率,應(yīng)該()。A、在完成編碼以后制定軟件的測試計(jì)劃B、取一切可能的數(shù)據(jù)作為

11、測試數(shù)據(jù)C、選擇發(fā)現(xiàn)錯(cuò)誤可能性大的數(shù)據(jù)作為測試用例D、隨機(jī)地選取測試數(shù)據(jù)29 .只有當(dāng)(),才是結(jié)束測試的時(shí)候。A.測試階段結(jié)束后B.設(shè)計(jì)階段完成后C.集成測試階段結(jié)束后D.軟件產(chǎn)品停止使用后30 .從下列敘述中,選擇能夠與軟件需求分析、設(shè)計(jì)、編碼階段相對應(yīng)的軟件測試:()。A.集成測試、確認(rèn)測試、單元測試B.單元測試、集成測試、確認(rèn)測試C.單元測試、確認(rèn)測試、集成測試D.確認(rèn)測試、集成測試、單元測試31 .面向?qū)ο蠓治觯∣OA的主要活動不包括()。A.確定對象B.確定屬性C.確定關(guān)聯(lián)D.確定方式32 .面向?qū)ο蠓治觯∣OA中,動態(tài)建模的內(nèi)容不包括()。A、設(shè)計(jì)腳本B、劃分主題C、畫事件追蹤圖

12、D、畫狀態(tài)轉(zhuǎn)換圖33 .軟件生存周期中時(shí)間最長的是()階段。A.需求分析B.概要設(shè)計(jì)C.測試D.維護(hù)三、概念解釋1. .軟件:程序、數(shù)據(jù)、和相關(guān)文檔的集合;用于實(shí)現(xiàn)計(jì)算機(jī)系統(tǒng)所需要的邏輯方法、過程和控制。2. 軟件危機(jī):計(jì)算機(jī)軟件開發(fā)和維護(hù)過程中遇到的一系列嚴(yán)重問題軟件工程練習(xí)題3. 軟件生命周期:軟件從定義、開發(fā)、運(yùn)行維護(hù),直到最終被廢棄要經(jīng)過一個(gè)漫長的時(shí)期4. 需求分析:發(fā)現(xiàn)、求精、建模、規(guī)格說明和復(fù)審的過程。5. 概要設(shè)計(jì):通過仔細(xì)分析軟件需求規(guī)格說明,確定組成系統(tǒng)的模塊及各模塊之間的關(guān)系,設(shè)計(jì)出完成預(yù)定功能的模塊結(jié)構(gòu)(軟件結(jié)構(gòu)),并建立接口。ySB72。詳細(xì)設(shè)計(jì):詳細(xì)的設(shè)計(jì)每個(gè)模塊,即

13、確定完成每個(gè)模塊功能所需要的算法和數(shù)據(jù)結(jié)構(gòu)6. 模塊化:將程序劃分成獨(dú)立命名且可獨(dú)立訪問的若干模塊,每個(gè)模塊完成一個(gè)子功能;將模塊集成起來構(gòu)成一個(gè)整體,完成指定的系統(tǒng)功能。n8PUk。信息隱藏:一個(gè)模塊內(nèi)柏寒的信息對于不需要這些信息的模塊來說,是不能訪問的。7. 耦合:一個(gè)軟件結(jié)構(gòu)內(nèi)不同模塊家之間的互連程度。內(nèi)聚:一個(gè)模塊內(nèi)各個(gè)元素彼此結(jié)合的緊密程度。8. 對象:是客觀世界中事物的抽象表示;是其屬性(狀態(tài)、數(shù)據(jù))和相關(guān)操作(行為、方法或服務(wù))的封裝體類:是對具有相同屬性和相同操作的一組相似對象的抽象描述。9. 消息:是對象之間進(jìn)行通信的機(jī)制;是要求某個(gè)對象執(zhí)行其操作的規(guī)格說明消息傳遞:一個(gè)對象

14、向另一個(gè)對象發(fā)送消息時(shí),接收消息的對象經(jīng)過解釋、給予響應(yīng),這種對象之間進(jìn)行通信的機(jī)制稱為消息傳遞。p9719。10. 繼承:子類(新類)自動的共享父類(已有類)中定義的數(shù)據(jù)和操作的機(jī)制。多態(tài)性:在一個(gè)類層次中,不同對象對相同消息做出的不同響應(yīng)。11. 軟件重用:在兩次或多次不同的軟件開發(fā)過程中重復(fù)使用相同或相似軟件元素的過程。12. 軟件測試:根據(jù)軟件開發(fā)各階段的規(guī)格說明和程序的內(nèi)部結(jié)構(gòu)而設(shè)計(jì)一批測試用例,并利用這些測試用例去運(yùn)行程序,以法現(xiàn)設(shè)計(jì)和程序錯(cuò)誤的過程。4vjx6。13. 黑盒測試:在程序接口進(jìn)行的測試,他它只檢查程序功能是否能按照規(guī)格說明書的規(guī)定正常使用,程序是否能適當(dāng)?shù)亟邮蛰斎霐?shù)

15、據(jù)產(chǎn)生正確的輸出信息,病保持外部信息(如數(shù)據(jù)庫或文件)的完整性。qEQNT。白盒測試:按照程序內(nèi)部的邏輯測試,檢查程序中的每條通路是否能按照預(yù)定要求工作。14. 單元測試:集中對源代碼實(shí)現(xiàn)的每一個(gè)程序模塊進(jìn)行測試;集成測試:把模塊裝配(即集成)在一起形成完整的軟件包,在裝配的同時(shí)進(jìn)行測試,同時(shí)解決程序驗(yàn)證和程序構(gòu)造這兩個(gè)問題;fwv9S。確認(rèn)測試:在軟件集成完成之后,必須測試在需求分析階段確定下來的確認(rèn)標(biāo)準(zhǔn),確認(rèn)測試是對軟件滿足所有功能的、行為的和性能的需求的最終保證。sA2PN。15. 驅(qū)動模塊:相當(dāng)于被測試模塊的上級調(diào)用模塊;接收測試數(shù)據(jù)并傳給被測模塊;輸出實(shí)測結(jié)果。存根模塊(樁模塊):代

16、替被測試模塊調(diào)用的子模塊;樁模塊使用被它代替的模塊的接口,可能做最少量的數(shù)據(jù)操作。TTIBS。四、簡答題1. 什么是軟件危機(jī)?其產(chǎn)生的原因是什么?如何消除軟件危機(jī)?答:計(jì)算機(jī)軟件開發(fā)和維護(hù)過程中遇到的一系列嚴(yán)重問題。原因:(1)客觀原因:軟件是計(jì)算機(jī)系統(tǒng)中的邏輯部件,缺乏“可見性”,管理和控制軟件開發(fā)過程相當(dāng)困難軟件在使用期間不存在機(jī)械磨損和老化問題,一旦發(fā)現(xiàn)錯(cuò)誤,通常意味著修改原來的設(shè)計(jì),因此軟件難維護(hù)軟件規(guī)模龐大,程序復(fù)雜性增加,需多人分工合作(不能保證每個(gè)人完成的工作合在一起構(gòu)成一個(gè)高質(zhì)量的大型軟件系統(tǒng))nBjYv。(2)主觀原因: 開發(fā)無計(jì)劃 忽視軟件需求分析的重要性 輕視軟件維護(hù) 無

17、過硬評測手段 缺乏有力的開發(fā)方法和工具 不重視開發(fā)文檔消除軟件危機(jī)的途徑:1)使用先進(jìn)的開發(fā)技術(shù)(方法和工具)推廣使用成功的技術(shù)和方法,并且研究探索更好更有效的技術(shù)和方法。開發(fā)和使用更好的軟件工具(軟件工程支撐環(huán)境)2)對軟件開發(fā)過程和產(chǎn)品進(jìn)行嚴(yán)格的管理軟件開發(fā)應(yīng)該是一種組織良好、管理嚴(yán)密、各類人員協(xié)同配合、共同完成的工程項(xiàng)目2. 什么是軟件生命周期?、簡述軟件生命周期的組成階段及各階段基本任務(wù)。答:一個(gè)軟件從定義、開發(fā)、運(yùn)行維護(hù),直到最終被廢棄要經(jīng)歷一個(gè)漫長的時(shí)期,這個(gè)時(shí)期稱為軟件生命周期。w5e9i。(1)問題定義階段:通過調(diào)研,提出關(guān)于問題的性質(zhì)、工程目標(biāo)和工程規(guī)模的書面報(bào)告,并且需要得

18、到客戶的確認(rèn)?;卮稹耙鉀Q的問題是什么?”文檔:問題定義報(bào)告(2)可行性研究階段:用最小的代價(jià)在盡可能短的時(shí)間內(nèi)確定問題是否能夠解決。 進(jìn)一步了解用戶需求 提出若干種可能的系統(tǒng)實(shí)現(xiàn)方案 分析每種方案的技術(shù)、經(jīng)濟(jì)、社會可行性 最終確定這項(xiàng)工程的可行性回答“是否有行得通的解決方法?”文檔:可行性研究報(bào)告,項(xiàng)目開發(fā)計(jì)劃(3)需求分析階段:對目標(biāo)系統(tǒng)提出完整、準(zhǔn)確、清晰、具體的要求。 得出經(jīng)過用戶確認(rèn)的系統(tǒng)需求 用正式文檔(需求規(guī)格說明)準(zhǔn)確表達(dá)系統(tǒng)需求回答“系統(tǒng)必須做什么?”文檔:需求分析規(guī)格說明書(4)概要設(shè)計(jì)階段:設(shè)計(jì)系統(tǒng)實(shí)現(xiàn)方案設(shè)計(jì)程序的體系結(jié)構(gòu),即確定程序由哪些模塊組成以及模塊間的關(guān)系。概括

19、地回答“怎樣實(shí)現(xiàn)目標(biāo)系統(tǒng)?”文檔:概要設(shè)計(jì)說明書(5)詳細(xì)設(shè)計(jì)階段:設(shè)計(jì)實(shí)現(xiàn)每個(gè)模塊功能所需要的算法和數(shù)據(jù)結(jié)構(gòu)回答“應(yīng)該怎樣具體地實(shí)現(xiàn)這個(gè)系統(tǒng)?”文檔:詳細(xì)設(shè)計(jì)說明書6)編碼和單元測試:寫出正確的、易理解、易維護(hù)的程序模塊代碼;測試編寫出的每一個(gè)模塊文檔:經(jīng)過測試的程序源代碼、程序開發(fā)記錄(模塊開發(fā)卷宗)7)綜合測試階段:通過各種類型的測試(及相應(yīng)的調(diào)試)使軟件達(dá)到預(yù)定的要求。集成測試(組裝測試)。驗(yàn)收測試測試文檔:測試計(jì)劃、詳細(xì)測試方案、實(shí)際測試結(jié)果8)軟件維護(hù)階段:通過各種必要的維護(hù)活動使系統(tǒng)持久地滿足用戶的需要。3. 作為某軟件公司的工程師,你將采用結(jié)構(gòu)化方法開發(fā)一套適用于住宅小區(qū)的智能

20、家庭保安系統(tǒng)。簡述開發(fā)步驟和每個(gè)步驟完成的主要任務(wù)。答:結(jié)構(gòu)化方法的基本要點(diǎn):自頂向下、逐步求精、模塊化設(shè)計(jì)、結(jié)構(gòu)化編碼。結(jié)構(gòu)化案發(fā)按軟件生命周期劃分:結(jié)構(gòu)化分析(SA)、結(jié)構(gòu)化設(shè)計(jì)(SD)、結(jié)構(gòu)化實(shí)現(xiàn)(SP)( 1)結(jié)構(gòu)化分析:分析當(dāng)前的情況,做出反映當(dāng)前物理模型的DFD;推導(dǎo)出等價(jià)的邏輯模型的DFD設(shè)計(jì)新的邏輯系統(tǒng),生產(chǎn)數(shù)據(jù)字典和基元描述;建立人機(jī)接口,提出可供選擇的目標(biāo)系統(tǒng)物理模型的DFD確定各種方案的成本和風(fēng)險(xiǎn)等級,據(jù)此對各種方案進(jìn)行分析;選擇一種方案;建立完整的需求規(guī)約NtOaH( 2)結(jié)構(gòu)化設(shè)計(jì):評審和細(xì)化數(shù)據(jù)流圖;確定數(shù)據(jù)流圖的類型;把數(shù)據(jù)流圖映射的軟件模塊結(jié)構(gòu),設(shè)計(jì)出模塊結(jié)構(gòu)的

21、上層;基于數(shù)據(jù)流圖逐步分解高層模塊,設(shè)計(jì)中下層模塊;對模塊結(jié)構(gòu)進(jìn)行優(yōu)化,得到更為合理的軟件結(jié)構(gòu);描述模塊接口aQYC7( 3)結(jié)構(gòu)化實(shí)現(xiàn)4. 什么是軟件生命周期模型?典型的軟件生命周期模型有哪些?答:描述了把軟件生命周期劃分成哪些階段及各個(gè)階段的執(zhí)行順序。瀑布模型,快速原型模型,增量模型,螺旋模型,噴泉模型。5. 什么是需求分析?簡述需求分析的基本任務(wù)。答:需求分析是發(fā)現(xiàn)、求精、建模、規(guī)格說明、和復(fù)審的過程。( 1)準(zhǔn)確了解用戶情況和需要解決的問題( 2)對需求反復(fù)求精和細(xì)化( 3)需求建模( 4)編制需求規(guī)格說明書( 5)進(jìn)行需求分析的評審6. 為什么說只有合理劃分模塊才能保證軟件的開發(fā)成本

22、達(dá)到最???答:當(dāng)模塊數(shù)目增加時(shí)每個(gè)模塊的規(guī)模將減小,開發(fā)單個(gè)模塊需要的成本減少了,但隨著模塊數(shù)目增加,設(shè)計(jì)模塊間接口所需的工作量也將增加,根據(jù)這兩個(gè)因素知每個(gè)程序都相應(yīng)的有一個(gè)適當(dāng)多的模塊是軟件開發(fā)成本最低。5mKoo。7. 什么是模塊獨(dú)立性?如何度量和設(shè)計(jì)模塊獨(dú)立性?答:模塊獨(dú)立性是指模塊內(nèi)部各部分及模塊之間關(guān)系的一種度量標(biāo)準(zhǔn)。其度量標(biāo)準(zhǔn):模塊之間耦合盡可能弱,每個(gè)模塊的內(nèi)聚盡肯能強(qiáng)。8. 什么是耦合性?軟件設(shè)計(jì)中應(yīng)該如何設(shè)計(jì)耦合性?答:(1)耦合表示一個(gè)軟件結(jié)構(gòu)內(nèi)部不同模塊之間的互連程度。(2)耦合應(yīng)該盡量采取如下準(zhǔn)則:盡量數(shù)據(jù)耦合,少用控制耦合和特征耦合,限制使用公共環(huán)境耦合的范圍,完全

23、不用內(nèi)容耦合。ONyS。9 .什么是內(nèi)聚性?軟件設(shè)計(jì)中應(yīng)該如何設(shè)計(jì)內(nèi)聚性?答:(1)內(nèi)聚標(biāo)志著一個(gè)軟件模塊內(nèi)部各個(gè)元素之間的結(jié)合的緊密程度。10 )設(shè)計(jì)時(shí)候應(yīng)該力求做到高內(nèi)聚,通常中等程度的內(nèi)聚也是可以采用的,而且效果和高內(nèi)聚相差不多。10 .面向數(shù)據(jù)流方法進(jìn)行概要設(shè)計(jì)的步驟是什么?答:(1)根據(jù)數(shù)據(jù)流圖決定問題類型(2)根據(jù)問題類型,進(jìn)行變換分析或事務(wù)分析,導(dǎo)出系統(tǒng)結(jié)構(gòu)圖(3)改進(jìn)系統(tǒng)結(jié)構(gòu)圖11 .簡述變換分析設(shè)計(jì)方法的步驟。答:(1)分析具有變換特征的數(shù)據(jù)流圖,確定輸入流和輸出流的邊界,孤立出變換中心(2)完成一級分解,設(shè)計(jì)軟件結(jié)構(gòu)的頂層和第二層(3)完成二級分解,把數(shù)據(jù)流圖中每個(gè)處理映射

24、成軟件結(jié)構(gòu)中一個(gè)適當(dāng)模塊(4)精化軟件結(jié)構(gòu)(5)簡要描述每個(gè)模塊12 結(jié)構(gòu)化程序的基本特征是什么?可以用什么工具描述?答:(1)一個(gè)程序的代碼塊僅僅通過順序、選擇和循環(huán)三種控制結(jié)構(gòu)進(jìn)行連接;并且每個(gè)代碼塊只有一個(gè)入口和一個(gè)出口SbQCA(2) 圖形:程序流程圖,N-S圖,PAD圖表格:判定樹,判定表語言:PDL(13) 述對象和類的概念,二者關(guān)系如何?答:(1)對象是客觀世界中事物的抽象表示;是其屬性(狀態(tài)、數(shù)據(jù))和相關(guān)操作(行為、方法或服務(wù))的封裝體;對象之間靠消息傳遞相互作用。FIrKq。類是具有相同屬性和操作和一組相似對象的抽象描述。(2)類是對象的模板,對象是類的實(shí)例。(14) 三種面

25、向?qū)ο竽P图捌渲饕δ苁鞘裁??答:三種面向模型分別是:對象模型、動態(tài)模型、功能模型對象模型:是對模擬客觀世界實(shí)體的對象以及對象彼此之間的關(guān)系的映射,描述了系統(tǒng)的靜態(tài)結(jié)構(gòu)。動態(tài)模型:它規(guī)定了對象模型中的對象的合法變化序列。功能模型:表示變化的系統(tǒng)的功能性質(zhì),它指明系統(tǒng)應(yīng)該做什么,直接的反映了用戶對目標(biāo)系統(tǒng)的系統(tǒng)。(15) 述面向?qū)ο蠓治龅幕静襟E。答:(1),確定類和對象(16) 識別結(jié)構(gòu)(17) 劃分主題(18) 定義屬性(19) 建立動態(tài)模型(20) 建立功能模型(21) 定義服務(wù)(22) 面向?qū)ο蠓治鲞^程出發(fā),討論對象模型、動態(tài)模型和功能模型三者之間的關(guān)系。答:三種模型分別從三個(gè)不同的側(cè)面

26、描述了所要開發(fā)的系統(tǒng),這三種模型相互補(bǔ)充,相互配合,使得我們隊(duì)系統(tǒng)的認(rèn)識更加全面,功能模型指明了對象做什么,動態(tài)模型規(guī)定了什么時(shí)候做,對象模型則定義了做事情的實(shí)體,對象模型是最基本的也是最重要的,為其它模型奠定了基礎(chǔ)。1S3H7。(23) 述繼承的含義,并通過一個(gè)具體例子加以說明。答:(1)繼承是子類(新類)自動地共享父類(已有類)中定義的數(shù)據(jù)和操作的機(jī)制。1 2)子類可繼承父類的屬性和操作;同時(shí)子類可定義自己獨(dú)有的屬性和操作。2 3)子類復(fù)用父類的定義,而不修改父類。3 4)繼承具有傳遞性18 .什么是白盒測試?白盒測試中的邏輯覆蓋法包括哪些覆蓋類型?答:按照程序內(nèi)部的邏輯測試程序,檢查程序

27、中的每條通路是否都能按預(yù)定要求正確工作。包含(1)語句覆蓋(2)判定覆蓋(3)條件覆蓋(4)判定/條件覆蓋(5)條件組合覆蓋19 .什么是黑盒測試?屬于黑盒測試的主要方法有哪些?答:對程序接口進(jìn)行的測試,檢查程序功能是否能按照規(guī)格說明書的規(guī)定正常使用。包含(1)等價(jià)類劃分(2)邊界值分析(3)錯(cuò)誤推測20 .什么是等價(jià)類劃分法?該方法設(shè)計(jì)測試用例的主要步驟是什么?答:定義:把程序的可能的輸入數(shù)據(jù)(或輸出數(shù)據(jù))劃分成若干部分(等價(jià)類),然后從每一部分中選取少數(shù)有代表性的數(shù)據(jù)作為測試用例。3Smrs。步驟:(1)確定等價(jià)類(包括合理等價(jià)類和不合理等價(jià)類)并順序編號;(2)確定測試用例:一個(gè)測試用例

28、可以覆蓋多個(gè)合理等價(jià)類;一個(gè)測試用例只能覆蓋一個(gè)不合理等價(jià)類21 .軟件測試要經(jīng)過哪幾個(gè)階段?各階段與前期的哪些文檔有關(guān)?答:階段:(1)單元測試(詳細(xì)設(shè)計(jì)說明書)(2)集成測試(概要設(shè)計(jì)說明書)(3)確認(rèn)測試(需求規(guī)格說明書)(4)系統(tǒng)測試g5WIb。22 .軟件測試過程如何體現(xiàn)“測試應(yīng)該從小規(guī)模開始,并逐步進(jìn)行大規(guī)模測試”的測試準(zhǔn)則?答:通常,首先重點(diǎn)測試單個(gè)程序模塊,然后把測試重點(diǎn)轉(zhuǎn)移到在集成的模塊簇中尋找錯(cuò)誤,最后在整個(gè)系統(tǒng)中尋找錯(cuò)誤。TU4Th。23 .從自己理解和認(rèn)識角度出發(fā),談?wù)劇败浖こ獭边@門學(xué)科:(1)包括哪些內(nèi)容?(2)解決什么問題?答:軟件工程包含技術(shù)和管理兩個(gè)方面的內(nèi)容

29、,是管理與技術(shù)的緊密結(jié)合。管理:所謂管理就是通過計(jì)劃、組織和控制等一系列活動,合理的配置和使用各種資源以達(dá)到既定目標(biāo)的過程。x4KlR。技術(shù):通常把軟件生命周期全過程中使用的一整套技術(shù)的集合成為方法學(xué),也成為范型。解決了什么問題:五、應(yīng)用題1 .某運(yùn)動會管理系統(tǒng)的功能為:接受來自運(yùn)動員的報(bào)名單,并產(chǎn)生運(yùn)動員號碼單發(fā)送給運(yùn)動員、產(chǎn)生參賽人員報(bào)表發(fā)送給裁判;接受來自裁判的比賽項(xiàng)目及成績,產(chǎn)生比賽結(jié)果報(bào)表發(fā)送給發(fā)布臺。KtJ77用分層數(shù)據(jù)流圖表示上述系統(tǒng)的功能。軟件工程練習(xí)題(1)運(yùn)動會管理系統(tǒng)的頂層數(shù)據(jù)流圖:(2)運(yùn)動會管理系統(tǒng)的0層數(shù)據(jù)流圖:(3)運(yùn)動會管理系統(tǒng)的1層數(shù)據(jù)流圖:運(yùn)動員信,艮2 .某商品進(jìn)銷存管理系統(tǒng)的部分功能如下:(1)倉庫管理員負(fù)責(zé)輸入商品的入/出庫清單、維護(hù)商品庫存信息;定時(shí)統(tǒng)計(jì)、打印商品庫存的月報(bào)表給商品銷售經(jīng)理。stw2I(2)銷售員負(fù)責(zé)輸入商品銷售、退

溫馨提示

  • 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論