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

下載本文檔

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

文檔簡介

1、【精品文檔】如有侵權(quán),請(qǐng)聯(lián)系網(wǎng)站刪除,僅供學(xué)習(xí)與交流軟件工程練習(xí)題.精品文檔.軟件工程練習(xí)題 一、填空題1.軟件主要包括程序、 數(shù)據(jù) 和 文檔 三部分內(nèi)容。2.目前使用最廣泛的軟件工程方法學(xué)是傳統(tǒng)(結(jié)構(gòu)化方法)方法和 面向?qū)ο蠓椒?。3.軟件可行性研究的任務(wù)是從技術(shù)、 經(jīng)濟(jì) 和 社會(huì)可行性 三個(gè)方面分析軟件項(xiàng)目的可行性。4.軟件測(cè)試的目的是 找出軟件潛在的錯(cuò)誤和缺陷 ;通常把軟件測(cè)試方法分為 黑盒測(cè)試(功能測(cè)試)和 白盒測(cè)試(結(jié)構(gòu)測(cè)試) 兩大類。5.軟件測(cè)試中,測(cè)試用例由輸入數(shù)據(jù)和 預(yù)期的輸出結(jié)果 兩部分組成。6.典型的軟件生命周期模型(軟件過程模型)包括瀑布模型、 快速原型模型 和 增量模型

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

3、、 表格 和 語言 三類。 13在模塊結(jié)構(gòu)圖中,直接調(diào)用某一模塊的其他模塊數(shù)稱為該模塊的 扇入數(shù) 。14.面向?qū)ο蠓治觯∣OA)方法中,必須定義對(duì)象間的通信機(jī)制,對(duì)象間通信是通過 消息傳遞機(jī)制 來實(shí)現(xiàn)的。15面向?qū)ο蠓椒ㄓ?對(duì)象 分解取代了結(jié)構(gòu)化方法的 功能 分解。16寫出下列各對(duì)事物之間的關(guān)系(繼承、聚集、一般關(guān)聯(lián)):交通工具汽車的關(guān)系是: 繼承 ; 書讀者的關(guān)系是: 一般關(guān)聯(lián) ;班級(jí)學(xué)生的關(guān)系是: 聚集 ; 多邊型線段的關(guān)系是: 聚集 。17面向?qū)ο笤O(shè)計(jì)(OOD)階段,可以將面向?qū)ο蟮脑O(shè)計(jì)內(nèi)容劃分為四部分,分別是:人機(jī)界面部分、 問題域部分 、 任務(wù)管理部分 和 數(shù)據(jù)管理部分 。18UML

4、的中文含義是 統(tǒng)一建模語言 ;CASE的中文含義是 用例 。二、選擇題1需求分析階段,開發(fā)人員需從用戶那里獲得的最重要信息是( ) 。A用戶能接受的開發(fā)費(fèi)用 B用戶能接受的開發(fā)周期 C用戶要讓軟件做什么 D軟件應(yīng)具有何種結(jié)構(gòu) 2數(shù)據(jù)流圖中的每個(gè)處理至少有( )。A.一個(gè)輸入流或一個(gè)輸出流 B.一個(gè)輸入流和一個(gè)輸出流 C.一個(gè)輸入流 D.一個(gè)輸出流 3軟件測(cè)試中,白盒法是通過分析程序的( )來設(shè)計(jì)測(cè)試用例的。A、應(yīng)用范圍 B、內(nèi)部邏輯 C、功能 D、輸入數(shù)據(jù)4有一個(gè)計(jì)算程序,它的輸入量只有一個(gè)X,其范圍是-1.0,1.0,現(xiàn)從輸入的角度考慮一組測(cè)試用例: -1.001,-1.0,1.0,1.00

5、1。設(shè)計(jì)這組測(cè)試用例的方法是( ) A、條件覆蓋法 B、等價(jià)分類法 C、邊界值分析法 D、錯(cuò)誤推測(cè)法5關(guān)于單元測(cè)試,正確的是( ) 。A.單元測(cè)試的依據(jù)是概要設(shè)計(jì)說明書 B.單元測(cè)試中不需要使用白盒測(cè)試法 C.單元測(cè)試包括模塊接口測(cè)試 D.單元測(cè)試時(shí)不需要輔助模塊 6銀行計(jì)算機(jī)儲(chǔ)蓄管理信息系統(tǒng)中,根據(jù)客戶提出的要求(如存款、取款、查詢、掛失、咨詢等)進(jìn)行相應(yīng)的業(yè)務(wù)處理的該層數(shù)據(jù)流圖是( ) A.變換型 B.事務(wù)型 C.既不是A也不是B D.不一定7軟件詳細(xì)設(shè)計(jì)的主要任務(wù)是確定每個(gè)模塊的( )。  A.算法和使用的數(shù)據(jù)結(jié)構(gòu)   B.外部接口   C.功能  

6、; D.編程語言 8( ) 表示了類之間的“一般特殊”關(guān)系。 A.聚集B.關(guān)聯(lián)C.消息傳遞D.繼承 9.面向?qū)ο箝_發(fā)方法定義了三種模型來描述系統(tǒng),( )可以用狀態(tài)圖來表示。A對(duì)象模型 B功能模型C動(dòng)態(tài)模型D類模型10.對(duì)象的內(nèi)部實(shí)現(xiàn)與外部可訪問性的分離體現(xiàn)了對(duì)象的( ); 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ù)流13產(chǎn)生軟件危機(jī)的主要原因有( )

7、。軟件本身的特點(diǎn) 用戶使用不當(dāng) 硬件可靠性差 程序員水平 缺乏好的開發(fā)方法和管理手段A. B. C. D. 14軟件測(cè)試中,黑盒法是根據(jù)程序的( )來設(shè)計(jì)測(cè)試用例的。A、應(yīng)用范圍 B、內(nèi)部邏輯 C、功能 D、輸入數(shù)據(jù)15OOA模型規(guī)定了一組對(duì)象如何協(xié)同才能完成軟件系統(tǒng)所指定的工作。這種協(xié)同在模型中是以表明對(duì)象通信方式的一組( )連接來實(shí)現(xiàn)的。 A.消息 B.記錄 C.數(shù)據(jù) D.屬性16用黑盒法設(shè)計(jì)測(cè)試用例時(shí)采用的方法包括( )。 A.判定覆蓋法 B.條件覆蓋法 C.等價(jià)分類法 D.路徑分析法17有關(guān)集成測(cè)試的敘述中,( )是正確的。A.測(cè)試底層模塊時(shí)不需要樁模塊 B.自底向上測(cè)試方法有利于提前

8、預(yù)計(jì)測(cè)試結(jié)果C.驅(qū)動(dòng)模塊的作用是模擬被調(diào)模塊 D.自頂向下測(cè)試方法易于設(shè)計(jì)測(cè)試用例 18現(xiàn)有一個(gè)程序,它的輸入只有一個(gè)整型數(shù)Y,其范圍是-50Y50?,F(xiàn)從輸入角度考慮設(shè)計(jì)了一組測(cè)試用例:100,100,0。設(shè)計(jì)這組測(cè)試用例的方法是( )。 A.條件覆蓋法 B.等價(jià)分類法 C.邊界值分析法 D.錯(cuò)誤推測(cè)法19在面向?qū)ο筌浖椒ㄖ校邦悺笔牵?)。 A.具有同類數(shù)據(jù)的對(duì)象的集合 B.具有相同操作的對(duì)象的集合 C.具有同類數(shù)據(jù)的對(duì)象的定義 D.具有同類數(shù)據(jù)和相同操作的對(duì)象的定義 20.面向?qū)ο箝_發(fā)方法定義了三種模型來描述系統(tǒng),( )可以用數(shù)據(jù)流圖來表示A對(duì)象模型 B功能模型C動(dòng)態(tài)模型 D數(shù)據(jù)模型21

9、軟件開發(fā)中,階段評(píng)審是非常重要的環(huán)節(jié),其主要目的和作用是( )。 A.減少測(cè)試工作量 B.避免后期付出高代價(jià) C.保證軟件質(zhì)量 D.縮短軟件開發(fā)周期22在綜合瀑布模型和快速原型模型優(yōu)點(diǎn)的同時(shí),螺旋模型還增加了新的階段( )。A. 風(fēng)險(xiǎn)分析 B. 用戶評(píng)價(jià) C. 版本控制 D. 成本估算23數(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ù)存儲(chǔ),但不能從數(shù)據(jù)存儲(chǔ)流向加工D.一個(gè)數(shù)據(jù)流可以從一個(gè)數(shù)據(jù)存儲(chǔ)流向另一個(gè)數(shù)據(jù)存儲(chǔ)24在分

10、層數(shù)據(jù)流圖中,若某層的加工K分解成下層的數(shù)據(jù)流圖L,則 ( )。AK與L的輸入、輸出數(shù)據(jù)流不一定相同BK與L的輸入數(shù)據(jù)流必須相同、輸出數(shù)據(jù)流不一定相同 CK與L的輸入、輸出數(shù)據(jù)流必須相同 DK與L的輸入數(shù)據(jù)流可以不同、輸出數(shù)據(jù)流必須相同 25數(shù)據(jù)流圖所描述的是實(shí)際系統(tǒng)的( )。 A.邏輯模型 B.物理模型 C.程序流程 D.數(shù)據(jù)結(jié)構(gòu)26為了提高模塊的獨(dú)立性,模塊內(nèi)部最好是( )。  A.邏輯內(nèi)聚   B.時(shí)間內(nèi)聚   C.功能內(nèi)聚   D.通信內(nèi)聚27由變換型數(shù)據(jù)流圖轉(zhuǎn)換成模塊結(jié)構(gòu)圖,其中包括變換模塊,則( )。 A.變換模塊就是主模塊 B.變換模塊的功

11、能是將邏輯輸入變換為邏輯輸出C.變換模塊沒有下層模塊 D.變換模塊只能有一個(gè)輸入量、一個(gè)輸出量28為了提高軟件測(cè)試的效率,應(yīng)該( )。 A、在完成編碼以后制定軟件的測(cè)試計(jì)劃 B、取一切可能的數(shù)據(jù)作為測(cè)試數(shù)據(jù) C、選擇發(fā)現(xiàn)錯(cuò)誤可能性大的數(shù)據(jù)作為測(cè)試用例 D、隨機(jī)地選取測(cè)試數(shù)據(jù)29只有當(dāng)( ),才是結(jié)束測(cè)試的時(shí)候。 A.測(cè)試階段結(jié)束后 B.設(shè)計(jì)階段完成后 C.集成測(cè)試階段結(jié)束后 D.軟件產(chǎn)品停止使用后30從下列敘述中,選擇能夠與軟件需求分析、設(shè)計(jì)、編碼階段相對(duì)應(yīng)的軟件測(cè)試:( )。 A.集成測(cè)試、確認(rèn)測(cè)試、單元測(cè)試 B.單元測(cè)試、集成測(cè)試、確認(rèn)測(cè)試C.單元測(cè)試、確認(rèn)測(cè)試、集成測(cè)試 D.確認(rèn)測(cè)試、集

12、成測(cè)試、單元測(cè)試 31面向?qū)ο蠓治觯∣OA)的主要活動(dòng)不包括( )。 A確定對(duì)象 B確定屬性 C確定關(guān)聯(lián) D確定方式32面向?qū)ο蠓治觯∣OA)中,動(dòng)態(tài)建模的內(nèi)容不包括( )。A、設(shè)計(jì)腳本 B、劃分主題 C、 畫事件追蹤圖 D、畫狀態(tài)轉(zhuǎn)換圖33軟件生存周期中時(shí)間最長的是( )階段。A.需求分析 B.概要設(shè)計(jì) C.測(cè)試 D.維護(hù)三、概念解釋 1軟件:程序、數(shù)據(jù)、和相關(guān)文檔的集合;用于實(shí)現(xiàn)計(jì)算機(jī)系統(tǒng)所需要的邏輯方法、過程和控制。 2.軟件危機(jī):計(jì)算機(jī)軟件開發(fā)和維護(hù)過程中遇到的一系列嚴(yán)重問題3軟件生命周期:軟件從定義、開發(fā)、運(yùn)行維護(hù),直到最終被廢棄要經(jīng)過一個(gè)漫長的時(shí)期4.需求分析:發(fā)現(xiàn)、求精、建模、規(guī)

13、格說明和復(fù)審的過程。5.概要設(shè)計(jì):通過仔細(xì)分析軟件需求規(guī)格說明,確定組成系統(tǒng)的模塊及各模塊之間的關(guān)系,設(shè)計(jì)出完成預(yù)定功能的模塊結(jié)構(gòu)(軟件結(jié)構(gòu)),并建立接口。 詳細(xì)設(shè)計(jì):詳細(xì)的設(shè)計(jì)每個(gè)模塊,即確定完成每個(gè)模塊功能所需要的算法和數(shù)據(jù)結(jié)構(gòu) 6. 模塊化:將程序劃分成獨(dú)立命名且可獨(dú)立訪問的若干模塊,每個(gè)模塊完成一個(gè)子功能;將模塊集成起來構(gòu)成一個(gè)整體,完成指定的系統(tǒng)功能。 信息隱藏:一個(gè)模塊內(nèi)柏寒的信息對(duì)于不需要這些信息的模塊來說,是不能訪問的。7 耦合:一個(gè)軟件結(jié)構(gòu)內(nèi)不同模塊家之間的互連程度。 內(nèi)聚:一個(gè)模塊內(nèi)各個(gè)元素彼此結(jié)合的緊密程度。 8. 對(duì)象:是客觀世界中事物的抽象表示;是其屬性(狀態(tài)、數(shù)據(jù))

14、和相關(guān)操作(行為、方法或服務(wù))的封裝體 類:是對(duì)具有相同屬性和相同操作的一組相似對(duì)象的抽象描述。9. 消息:是對(duì)象之間進(jìn)行通信的機(jī)制;是要求某個(gè)對(duì)象執(zhí)行其操作的規(guī)格說明 消息傳遞:一個(gè)對(duì)象向另一個(gè)對(duì)象發(fā)送消息時(shí),接收消息的對(duì)象經(jīng)過解釋、給予響應(yīng),這種對(duì)象之間進(jìn)行通信的機(jī)制稱為消息傳遞。 10. 繼承:子類(新類)自動(dòng)的共享父類(已有類)中定義的數(shù)據(jù)和操作的機(jī)制。 多態(tài)性:在一個(gè)類層次中,不同對(duì)象對(duì)相同消息做出的不同響應(yīng)。 11. 軟件重用:在兩次或多次不同的軟件開發(fā)過程中重復(fù)使用相同或相似軟件元素的過程。12. 軟件測(cè)試:根據(jù)軟件開發(fā)各階段的規(guī)格說明和程序的內(nèi)部結(jié)構(gòu)而設(shè)計(jì)一批測(cè)試用例,并利用這

15、些測(cè)試用例去運(yùn)行程序,以法現(xiàn)設(shè)計(jì)和程序錯(cuò)誤的過程。 13 黑盒測(cè)試:在程序接口進(jìn)行的測(cè)試,他它只檢查程序功能是否能按照規(guī)格說明書的規(guī)定正常使用,程序是否能適當(dāng)?shù)亟邮蛰斎霐?shù)據(jù)產(chǎn)生正確的輸出信息,病保持外部信息(如數(shù)據(jù)庫或文件)的完整性。 白盒測(cè)試:按照程序內(nèi)部的邏輯測(cè)試,檢查程序中的每條通路是否能按照預(yù)定要求工作。 14. 單元測(cè)試:集中對(duì)源代碼實(shí)現(xiàn)的每一個(gè)程序模塊進(jìn)行測(cè)試; 集成測(cè)試:把模塊裝配(即集成)在一起形成完整的軟件包,在裝配的同時(shí)進(jìn)行測(cè)試,同時(shí)解決程序驗(yàn)證和程序構(gòu)造這兩個(gè)問題; 確認(rèn)測(cè)試:在軟件集成完成之后,必須測(cè)試在需求分析階段確定下來的確認(rèn)標(biāo)準(zhǔn),確認(rèn)測(cè)試是對(duì)軟件滿足所有功能的、行

16、為的和性能的需求的最終保證。 15 驅(qū)動(dòng)模塊:相當(dāng)于被測(cè)試模塊的上級(jí)調(diào)用模塊;接收測(cè)試數(shù)據(jù)并傳給被測(cè)模塊;輸出實(shí)測(cè)結(jié)果。 存根模塊(樁模塊):代替被測(cè)試模塊調(diào)用的子模塊;樁模塊使用被它代替的模塊的接口,可能做最少量的數(shù)據(jù)操作。 四、簡答題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ù)雜性增加,需多人分工合作(不能

17、保證每個(gè)人完成的工作合在一起構(gòu)成一個(gè)高質(zhì)量的大型軟件系統(tǒng)) (2)主觀原因: 開發(fā)無計(jì)劃 忽視軟件需求分析的重要性 輕視軟件維護(hù) 無過硬評(píng)測(cè)手段 缺乏有力的開發(fā)方法和工具 不重視開發(fā)文檔消除軟件危機(jī)的途徑:1)使用先進(jìn)的開發(fā)技術(shù)(方法和工具) 推廣使用成功的技術(shù)和方法,并且研究探索更好更有效的技術(shù)和方法。 開發(fā)和使用更好的軟件工具(軟件工程支撐環(huán)境) 2)對(duì)軟件開發(fā)過程和產(chǎn)品進(jìn)行嚴(yán)格的管理 軟件開發(fā)應(yīng)該是一種組織良好、管理嚴(yán)密、各類人員協(xié)同配合、共同完成的工程項(xiàng)目 2. 什么是軟件生命周期?、簡述軟件生命周期的組成階段及各階段基本任務(wù)。答:一個(gè)軟件從定義、開發(fā)、運(yùn)行維護(hù) ,直到最終被 廢棄要經(jīng)

18、歷一個(gè)漫長的時(shí)期,這個(gè)時(shí)期稱為軟件生命周期。(1)問題定義階段: 通過調(diào)研,提出關(guān)于問題的性質(zhì)、工程目標(biāo)和工程規(guī)模的書面報(bào)告,并且需要得到客戶的確認(rèn)。 回答“要解決的問題是什么?” 文檔:問題定義報(bào)告(2)可行性研究階段: 用最小的代價(jià)在盡可能短的時(shí)間內(nèi)確定問題是否能夠解決。 進(jìn)一步了解用戶需求 提出若干種可能的系統(tǒng)實(shí)現(xiàn)方案 分析每種方案的技術(shù)、經(jīng)濟(jì)、社會(huì)可行性 最終確定這項(xiàng)工程的可行性回答“是否有行得通的解決方法?”文檔:可行性研究報(bào)告,項(xiàng)目開發(fā)計(jì)劃 (3)需求分析階段: 對(duì)目標(biāo)系統(tǒng)提出完整、準(zhǔn)確、清晰、具體的要求。 得出經(jīng)過用戶確認(rèn)的系統(tǒng)需求 用正式文檔(需求規(guī)格說明)準(zhǔn)確表達(dá)系統(tǒng)需求 回

19、答 “系統(tǒng)必須做什么?” 文檔:需求分析規(guī)格說明書 (4)概要設(shè)計(jì)階段: 設(shè)計(jì)系統(tǒng)實(shí)現(xiàn)方案 設(shè)計(jì)程序的體系結(jié)構(gòu),即確定程序由哪些模塊組成以及模塊間的關(guān)系。 概括地回答“怎樣實(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)編碼和單元測(cè)試: 寫出正確的、易理解、易維護(hù)的程序模塊代碼;測(cè)試編寫出的每一個(gè)模塊 文檔:經(jīng)過測(cè)試的程序源代碼、程序開發(fā)記錄(模塊開發(fā)卷宗)(7)綜合測(cè)試階段:通過各種類型的測(cè)試(及相應(yīng)的調(diào)試)使軟件達(dá)到預(yù)定的要求。 集成測(cè)試(組裝測(cè)試)。 驗(yàn)收測(cè)試 測(cè)試文檔:

20、測(cè)試計(jì)劃、詳細(xì)測(cè)試方案、實(shí)際測(cè)試結(jié)果(8)軟件維護(hù)階段: 通過各種必要的維護(hù)活動(dòng)使系統(tǒng)持久地滿足用戶的需要。 3.作為某軟件公司的工程師,你將采用結(jié)構(gòu)化方法開發(fā)一套適用于住宅小區(qū)的智能家庭保安系統(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;確定各種方案的

21、成本和風(fēng)險(xiǎn)等級(jí),據(jù)此對(duì)各種方案進(jìn)行分析;選擇一種方案;建立完整的需求規(guī)約(2) 結(jié)構(gòu)化設(shè)計(jì):評(píng)審和細(xì)化數(shù)據(jù)流圖;確定數(shù)據(jù)流圖的類型;把數(shù)據(jù)流圖映射的軟件模塊結(jié)構(gòu),設(shè)計(jì)出模塊結(jié)構(gòu)的上層;基于數(shù)據(jù)流圖逐步分解高層模塊,設(shè)計(jì)中下層模塊;對(duì)模塊結(jié)構(gòu)進(jìn)行優(yōu)化,得到更為合理的軟件結(jié)構(gòu);描述模塊接口(3) 結(jié)構(gòu)化實(shí)現(xiàn)4. 什么是軟件生命周期模型?典型的軟件生命周期模型有哪些?答:描述了把軟件生命周期劃分成哪些階段及各個(gè)階段的執(zhí)行順序。瀑布模型,快速原型模型,增量模型,螺旋模型,噴泉模型。5. 什么是需求分析?簡述需求分析的基本任務(wù)。答:需求分析是發(fā)現(xiàn)、求精、建模、規(guī)格說明、和復(fù)審的過程。(1)準(zhǔn)確了解用戶情

22、況和需要解決的問題(2)對(duì)需求反復(fù)求精和細(xì)化(3)需求建模(4)編制需求規(guī)格說明書 (5)進(jìn)行需求分析的評(píng)審6.為什么說只有合理劃分模塊才能保證軟件的開發(fā)成本達(dá)到最???答:當(dāng)模塊數(shù)目增加時(shí)每個(gè)模塊的規(guī)模將減小,開發(fā)單個(gè)模塊需要的成本減少了,但隨著模塊數(shù)目增加,設(shè)計(jì)模塊間接口所需的工作量也將增加,根據(jù)這兩個(gè)因素知每個(gè)程序都相應(yīng)的有一個(gè)適當(dāng)多的模塊是軟件開發(fā)成本最低。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)耦合表示

23、一個(gè)軟件結(jié)構(gòu)內(nèi)部不同模塊之間的互連程度。  (2)耦合應(yīng)該盡量采取如下準(zhǔn)則:盡量數(shù)據(jù)耦合,少用控制耦合和特征耦合,     限制使用公共環(huán)境耦合的范圍,完全不用內(nèi)容耦合。9.什么是內(nèi)聚性?軟件設(shè)計(jì)中應(yīng)該如何設(shè)計(jì)內(nèi)聚性?答:(1)內(nèi)聚標(biāo)志著一個(gè)軟件模塊內(nèi)部各個(gè)元素之間的結(jié)合的緊密程度。 (2)設(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)

24、改進(jìn)系統(tǒng)結(jié)構(gòu)圖11. 簡述變換分析設(shè)計(jì)方法的步驟。答:(1)分析具有變換特征的數(shù)據(jù)流圖,確定輸入流和輸出流的邊界,孤立出變換中心 (2)完成一級(jí)分解,設(shè)計(jì)軟件結(jié)構(gòu)的頂層和第二層 (3)完成二級(jí)分解,把數(shù)據(jù)流圖中每個(gè)處理映射成軟件結(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è)出口(2)圖形:程序流程圖,N-S圖,PAD圖 表格:判定樹,判定表 語言:PDL 13. 簡述對(duì)象和類的概念,二者關(guān)系如何?答:(1)對(duì)象是客觀世界中事

25、物的抽象表示;是其屬性(狀態(tài)、數(shù)據(jù))和相關(guān)操作(行為、方法或服務(wù))的封裝體;對(duì)象之間靠消息傳遞相互作用。 類是具有相同屬性和操作和一組相似對(duì)象的抽象描述。 (2)類是對(duì)象的模板,對(duì)象是類的實(shí)例。14. 三種面向?qū)ο竽P图捌渲饕δ苁鞘裁??答:三種面向模型分別是:對(duì)象模型、動(dòng)態(tài)模型、功能模型 對(duì)象模型:是對(duì)模擬客觀世界實(shí)體的對(duì)象以及對(duì)象彼此之間的關(guān)系的映射,描述了系統(tǒng)的靜態(tài)結(jié)構(gòu)。 動(dòng)態(tài)模型:它規(guī)定了對(duì)象模型中的對(duì)象的合法變化序列。 功能模型:表示變化的系統(tǒng)的功能性質(zhì),它指明系統(tǒng)應(yīng)該做什么,直接的反映了用戶對(duì)目標(biāo)系統(tǒng)的系統(tǒng)。15. 簡述面向?qū)ο蠓治龅幕静襟E。答:(1),確定類和對(duì)象 (2) 識(shí)別

26、結(jié)構(gòu) (3) 劃分主題 (4) 定義屬性 (5) 建立動(dòng)態(tài)模型 (6) 建立功能模型 (7)定義服務(wù)16. 從面向?qū)ο蠓治鲞^程出發(fā),討論對(duì)象模型、動(dòng)態(tài)模型和功能模型三者之間的關(guān)系。答:三種模型分別從三個(gè)不同的側(cè)面描述了所要開發(fā)的系統(tǒng),這三種模型相互補(bǔ)充,相互配合,使得我們隊(duì)系統(tǒng)的認(rèn)識(shí)更加全面,功能模型指明了對(duì)象做什么,動(dòng)態(tài)模型規(guī)定了什么時(shí)候做,對(duì)象模型則定義了做事情的實(shí)體,對(duì)象模型是最基本的也是最重要的,為其它模型奠定了基礎(chǔ)。 17. 簡述繼承的含義,并通過一個(gè)具體例子加以說明。答:(1)繼承是子類(新類)自動(dòng)地共享父類(已有類)中定義的數(shù)據(jù)和操作的機(jī)制。 (2)子類可繼承父類的屬性和操作;同

27、時(shí)子類可定義自己獨(dú)有的屬性和操作。 (3)子類復(fù)用父類的定義,而不修改父類。 (4)繼承具有傳遞性 18. 什么是白盒測(cè)試?白盒測(cè)試中的邏輯覆蓋法包括哪些覆蓋類型?答:按照程序內(nèi)部的邏輯測(cè)試程序,檢查程序中的每條通路是否都能按預(yù)定要求正確工作。包含(1)語句覆蓋 (2)判定覆蓋 (3)條件覆蓋 (4)判定/條件覆蓋 (5)條件組合覆蓋19. 什么是黑盒測(cè)試?屬于黑盒測(cè)試的主要方法有哪些?答:對(duì)程序接口進(jìn)行的測(cè)試,檢查程序功能是否能按照規(guī)格說明書的規(guī)定正常使用。 包含(1)等價(jià)類劃分 (2)邊界值分析 (3)錯(cuò)誤推測(cè)20. 什么是等價(jià)類劃分法?該方法設(shè)計(jì)測(cè)試用例的主要步驟是什么?答:定義:把程序

28、的可能的輸入數(shù)據(jù)(或輸出數(shù)據(jù))劃分成若干部分(等價(jià)類),然后從每一部分中選取少數(shù)有代表性的數(shù)據(jù)作為測(cè)試用例。步驟:(1)確定等價(jià)類(包括合理等價(jià)類和不合理等價(jià)類)并順序編號(hào); (2)確定測(cè)試用例:一個(gè)測(cè)試用例可以覆蓋多個(gè)合理等價(jià)類;一個(gè)測(cè)試用例只能覆蓋一個(gè)不合理等價(jià)類21. 軟件測(cè)試要經(jīng)過哪幾個(gè)階段?各階段與前期的哪些文檔有關(guān)?答:階段:(1)單元測(cè)試(詳細(xì)設(shè)計(jì)說明書)(2)集成測(cè)試(概要設(shè)計(jì)說明書)(3)確認(rèn)測(cè)試(需求規(guī)格說明書)(4)系統(tǒng)測(cè)試22. 軟件測(cè)試過程如何體現(xiàn)“測(cè)試應(yīng)該從小規(guī)模開始,并逐步進(jìn)行大規(guī)模測(cè)試”的測(cè)試準(zhǔn)則?答:通常,首先重點(diǎn)測(cè)試單個(gè)程序模塊,然后把測(cè)試重點(diǎn)轉(zhuǎn)移到在集成的

29、模塊簇中尋找錯(cuò)誤,最后在整個(gè)系統(tǒng)中尋找錯(cuò)誤。23.從自己理解和認(rèn)識(shí)角度出發(fā),談?wù)劇败浖こ獭边@門學(xué)科:(1)包括哪些內(nèi)容?(2)解決什么問題?答:軟件工程包含技術(shù)和管理兩個(gè)方面的內(nèi)容,是管理與技術(shù)的緊密結(jié)合。管理:所謂管理就是通過計(jì)劃、組織和控制等一系列活動(dòng),合理的配置和使用各種資源以達(dá)到既定目標(biāo)的過程。技術(shù):通常把軟件生命周期全過程中使用的一整套技術(shù)的集合成為方法學(xué),也成為范型。解決了什么問題:五、應(yīng)用題1.某運(yùn)動(dòng)會(huì)管理系統(tǒng)的功能為:接受來自運(yùn)動(dòng)員的報(bào)名單,并產(chǎn)生運(yùn)動(dòng)員號(hào)碼單發(fā)送給運(yùn)動(dòng)員、產(chǎn)生參賽人員報(bào)表發(fā)送給裁判;接受來自裁判的比賽項(xiàng)目及成績,產(chǎn)生比賽結(jié)果報(bào)表發(fā)送給發(fā)布臺(tái)。用分層數(shù)據(jù)流圖表

30、示上述系統(tǒng)的功能。2.某商品進(jìn)銷存管理系統(tǒng)的部分功能如下:(1)倉庫管理員負(fù)責(zé)輸入商品的入/出庫清單、維護(hù)商品庫存信息;定時(shí)統(tǒng)計(jì)、打印商品庫存的月報(bào)表給商品銷售經(jīng)理。(2)銷售員負(fù)責(zé)輸入商品銷售、退換信息,并打印購貨清單給客戶; 商品銷售的相關(guān)信息要存入相應(yīng)文件。請(qǐng)畫出描述上述功能的分層數(shù)據(jù)流圖。(畫出頂層、1層和2層數(shù)據(jù)流圖)畫DFD的思路(注意圖形符號(hào)使用規(guī)范): (1)頂層:確定系統(tǒng)與外界的信息流(即系統(tǒng)的輸入流、輸出流) (2)一層:將系統(tǒng)的幾個(gè)主要功能分解成幾個(gè)相應(yīng)的處理(3)二層:繼續(xù)細(xì)化系統(tǒng)功能(分解一層圖中的處理)3.設(shè)有下列語句序列: read(x,y); if (x>1) and (y<=5) then zx*y else zx+y; if z12 then z2*z; write(z). 分別使用語句覆蓋、判定覆蓋、條件覆蓋方法設(shè)計(jì)測(cè)試用例邏輯覆蓋法設(shè)計(jì)測(cè)試用例的思路:(1)測(cè)試目的是什么? (覆蓋類型?)(2

溫馨提示

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

評(píng)論

0/150

提交評(píng)論