軟件工程課后習(xí)題參考答案_第1頁
軟件工程課后習(xí)題參考答案_第2頁
軟件工程課后習(xí)題參考答案_第3頁
軟件工程課后習(xí)題參考答案_第4頁
軟件工程課后習(xí)題參考答案_第5頁
已閱讀5頁,還剩7頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、1.簡述軟件開發(fā)的本質(zhì)。答:軟件開發(fā)的本質(zhì)就是實現(xiàn)問題空間的概念和處理邏輯到解空間的概念和處理邏輯之間的映射。p192.簡述實施軟件開發(fā)的基本途徑。答:實施軟件開發(fā)的基本途徑是系統(tǒng)建模。所謂系統(tǒng)建模,是指運用所掌握的知識,通過抽象,給出該系統(tǒng)的一個結(jié)構(gòu)系統(tǒng)模型。p193.簡述何謂模型以及軟件開發(fā)中所涉及的模型。答:模型是一個抽象。該抽象是在意圖所確定的角度和抽象層次對物理系統(tǒng)的一個描述,描述其中的成分和成分之間所具有的特定語義的關(guān)系,還包括對該系統(tǒng)邊界的描述。軟件開發(fā)中所涉及的模型可分為兩大類,一類稱為概念模型,描述了系統(tǒng)是什么;另一類統(tǒng)稱為軟件模型,描述了實現(xiàn)概念模型的軟件解決方案。4.簡述

2、軟件開發(fā)所涉及的兩大類技術(shù)。答:軟件開發(fā)所涉及的兩大類技術(shù)為:一是求解軟件的開發(fā)邏輯,二是求解軟件的開發(fā)手段。5、簡述需求與需求規(guī)約的基本性質(zhì)。答:需求的基本性質(zhì):1) 必要的,該需求是用戶所要求的。2)無歧義的,該需求只能用一種方式解釋。3)可測的,該需求是可進行測試的。4)可跟蹤的,該需求可從一個開發(fā)階段跟蹤到另一個階段。5)可測量的,該需求是可測量的。需求規(guī)約的基本性質(zhì):1)重要性和穩(wěn)定性程度:按需求的重要性和穩(wěn)定性,對需求進行分級。2)可修改的:在不過多地影響其他需求的前提下,可以容易地修改一個單一需求。3)完整的:沒有被遺漏的需求。4)一致的:不存在互斥的需求。6、簡述軟件需求的分類

3、。功能需求1功能需求2功能需求3答:軟件需求可以分為兩大類:一類是功能需求,一類是非公能需求,而非公能需求可分為性能需求,外部接口需求、設(shè)計約束和質(zhì)量屬性需求。p237、舉例說明功能需求和非功能需求之間的基本關(guān)系。答:非功能需求可作用于一個或多個功能需求,例如非功能需求1非功能需求2非功能需求可作用于一個或多個功能需求其中,非功能需求1作用于功能需求1和功能需求3等;非功能需求2作用于功能需求2等。p248、有哪幾種常用的初始需求發(fā)現(xiàn)技術(shù)?答:有5種常用的需求發(fā)現(xiàn)技術(shù):自悟、交談、觀察、小組會和提煉。p269、簡述需求規(guī)約的3種基本形式。(1) 非形式化的需求規(guī)約。非形式化的需求規(guī)約即以一種自

4、然語言來表達需求規(guī)約,如同使用一種自然語言寫了一篇文章。(2) 半形式化的需求規(guī)約。半形式化的需求規(guī)約即以半形式化符號體系(包括術(shù)語表、標(biāo)準(zhǔn)化的表達格式等)來表達需求規(guī)約。(3)形式化的需求規(guī)約。形式化的需求規(guī)約即以一種基于良構(gòu)數(shù)學(xué)概念的符號體系來編制需求規(guī)約,一般往往伴有解釋性注釋的支持。 p2910、簡述軟件需求規(guī)約的內(nèi)容和作用。答:軟件需求規(guī)約的內(nèi)容有:引言、總體描述、特定需求、附錄、索引。p28需求規(guī)約的作用可概括為以下4點:1)需求規(guī)約是軟件開發(fā)組織和用戶之間一份事實上的技術(shù)合同書,是產(chǎn)品功能及其環(huán)境的體現(xiàn)。2)對于項目的其余大多數(shù)工作,需求規(guī)約是一個管理控制點。3)對于產(chǎn)品/系統(tǒng)的

5、設(shè)計,需求規(guī)約是一個正式的、受控的起始點。4)需求規(guī)約是創(chuàng)建產(chǎn)品驗收測試計劃和用戶指南的基礎(chǔ)。p3111、簡述需求規(guī)約在項目開發(fā)中的基本作用。答:需求規(guī)約的作用可概括為以下4點:1)需求規(guī)約是軟件開發(fā)組織和用戶之間一份事實上的技術(shù)合同書,是產(chǎn)品功能及其環(huán)境的體現(xiàn)。2)對于項目的其余大多數(shù)工作,需求規(guī)約是一個管理控制點。3)對于產(chǎn)品/系統(tǒng)的設(shè)計,需求規(guī)約是一個正式的、受控的起始點。4)需求規(guī)約是創(chuàng)建產(chǎn)品驗收測試計劃和用戶指南的基礎(chǔ)。p3112、簡述需求規(guī)約和項目需求的不同。答:需求規(guī)約和項目需求是兩個不同的概念。需求規(guī)約是軟件開發(fā)組織和用戶之間一份事實上的技術(shù)合同書,即關(guān)注產(chǎn)品需求,回答“交付給

6、客戶的產(chǎn)品/系統(tǒng)是什么”;而項目需求是客戶和開發(fā)者之間有關(guān)技術(shù)合同產(chǎn)品/系統(tǒng)需求的理解,應(yīng)記錄在工作陳述中或其他某一項目文檔中,即關(guān)注項目工作與管理,回答“開發(fā)組要做的是什么”。p3013、何謂模塊耦合?簡述模塊耦合的類型。答:耦合是不同模塊之間相互依賴程序的度量。內(nèi)容耦合:當(dāng)一個模塊直接修改或操作另一個模塊的數(shù)據(jù),或一個模塊不通過正常入口而轉(zhuǎn)入到另一個模塊時;公共耦合:兩個或兩個以上的模塊共同引用一個全局?jǐn)?shù)據(jù)項;控制耦合一個模塊通過氣喘吁吁向另一個模塊傳遞一個控制信息,接收信號的模塊根據(jù)信號值進行適當(dāng)?shù)膭幼鳎粯?biāo)記耦合:若一個模塊a通過接口向兩個模塊b和c傳遞一個公共參數(shù);數(shù)據(jù)耦合:模塊之間通

7、過參數(shù)來傳遞數(shù)據(jù)。14、何謂模塊內(nèi)聚?簡述模塊內(nèi)聚的類型。答:指一個模塊內(nèi)部各成分之間相互關(guān)聯(lián)程度的度量。偶然內(nèi)聚:一個模塊的各成分之間基本不存在任何關(guān)系;邏輯內(nèi)聚:幾個邏輯上相關(guān)的功能被放在同一個模塊中;時間內(nèi)聚:一個模塊完成的功能必須在同一時間內(nèi)執(zhí)行,但這些功能只是因為時間因素關(guān)聯(lián)在一起;過程內(nèi)聚:一個模塊內(nèi)部的處理成分是相關(guān)的,而且這些處理必須以特定的次序執(zhí)行;通信內(nèi)聚:一個模塊的所有成分都操作同一數(shù)據(jù)集或生成同一數(shù)據(jù)集;順序內(nèi)聚:一個模塊的各個成分和同一個功能密切相關(guān),而且一個成分的輸出作為另一個成分的輸入;功能內(nèi)聚:最理想的內(nèi)聚,模塊的所有成分對于完成單一的功能都是基本的。功能內(nèi)聚的

8、模塊對完成其功能而言是充分必要的。15、何謂模塊的控制域和模塊的作用域?并舉例說明答:控制域:模塊本身以及所有直接或間接從屬于它的模塊的集合。作用域:受該模塊內(nèi)的一個判定所影響的所有模塊的影響16為了表達系統(tǒng)功能模型,結(jié)構(gòu)化分析方法給出了哪些基本概念?他們是如何表示的?其基本作用是什么?使用中應(yīng)注意哪些問題?答:給出的基本概念:數(shù)據(jù)流、加工、數(shù)據(jù)存儲、數(shù)據(jù)源和數(shù)據(jù)潭。表示方法:(注:表示方法都是圖形,請按文字提示畫圖)數(shù)據(jù)流表示方法:方向向右的箭頭;加工的表示方法:橢圓;數(shù)據(jù)存儲表示方法:兩條平行線;數(shù)據(jù)源表示方法:一個長方形;數(shù)據(jù)源和數(shù)據(jù)潭表示方法:兩個并列的長方形。作用:數(shù)據(jù)流:用于表達在

9、分析中所使用的、用于表達“客體”的信號。加工:用于表達在分析中所使用的、用于表達“處理”的信號。數(shù)據(jù)存儲:用于表達在分析中所使用的、用于表達“結(jié)構(gòu)化客體”的信號。數(shù)據(jù)源和數(shù)據(jù)潭:表示系統(tǒng)的環(huán)境,可以使用它們和相關(guān)數(shù)據(jù)流來定義系統(tǒng)的邊界,表達系統(tǒng)/產(chǎn)品“邊界”的信息。17以結(jié)構(gòu)化分析方法建立的系統(tǒng)功能模型由哪些部分組成?每一部分的基本作用是什么?答:組成部分:數(shù)據(jù)流、加工、數(shù)據(jù)存儲、數(shù)據(jù)源和數(shù)據(jù)潭?;咀饔茫海ㄍ厦娴谝恍☆}里的“作用”)18解釋結(jié)構(gòu)符“+”、“|”、“”的含義,并舉例說明。答:順序結(jié)構(gòu)是指數(shù)據(jù)a是由數(shù)據(jù)b和數(shù)據(jù)c順序構(gòu)成的,記為“+”。例:學(xué)生成績=姓名+姓名+性別+學(xué)號+科目

10、+成績。選擇結(jié)構(gòu)是指由數(shù)據(jù)a或是由數(shù)據(jù)b0或是有數(shù)據(jù)c0定義的,即數(shù)據(jù)b不可能同時是b0 c0,并記為“|”。例:性別=男|女。重復(fù)結(jié)構(gòu)是指數(shù)據(jù)a是由多個重復(fù)出現(xiàn)的數(shù)據(jù)b構(gòu)成,并記為“”。例:學(xué)生成績表=學(xué)生成績。19就一個特定系統(tǒng)而言,系統(tǒng)功能模型與系統(tǒng)模型的主要區(qū)別是什么?答:區(qū)別:系統(tǒng)功能模型分為數(shù)據(jù)流、加工、數(shù)據(jù)存儲、數(shù)據(jù)源和數(shù)據(jù)潭這四部分組成。系統(tǒng)模型分為兩類:一類稱為概念模型,描述了系統(tǒng)是什么;另一類系統(tǒng)稱為軟件模型,描述了實現(xiàn)概念模型的軟件解決方法。20簡述結(jié)構(gòu)化方法總體設(shè)計的任務(wù)及目標(biāo)。答:任務(wù):在需求分析的基礎(chǔ)上,定義滿足需求所需要的結(jié)構(gòu)。目標(biāo):建立系統(tǒng)的模塊結(jié)構(gòu)。21簡述結(jié)

11、構(gòu)化方法詳細設(shè)計的任務(wù)及目標(biāo)。答:任務(wù):具體描述模塊結(jié)構(gòu)圖中的每一模塊,即給出實現(xiàn)模塊功能的實施機制,包括一組例程和數(shù)據(jù)結(jié)構(gòu),從而精確地定義了滿足需求所規(guī)約的結(jié)構(gòu)。目標(biāo):將總體設(shè)計階段所產(chǎn)生的系統(tǒng)高層結(jié)構(gòu)映射為以這些術(shù)語所以澳大的低層結(jié)構(gòu),也是系統(tǒng)的最終結(jié)構(gòu)。22簡述變換設(shè)計與事務(wù)設(shè)計之間的區(qū)別。答:區(qū)別:變換設(shè)計的目標(biāo)是將變換型數(shù)據(jù)流圖映射為模塊結(jié)構(gòu)圖,而事務(wù)設(shè)計的目標(biāo)是將事務(wù)型數(shù)據(jù)流圖映射為模塊結(jié)構(gòu)圖。23簡述啟發(fā)式規(guī)則的基本原理。答:啟發(fā)式規(guī)則“基于高內(nèi)聚低耦合的原理,采用一些經(jīng)驗性的啟發(fā)式規(guī)則,對初始的模塊結(jié)構(gòu)圖進行精化,形成最終的模塊結(jié)構(gòu)圖”。啟發(fā)式規(guī)則包括:1)改進軟件結(jié)構(gòu),提高模

12、塊獨立性。2)力求模塊規(guī)模適中。3)力求深度、寬度、扇出和扇入適中。4)盡力使模塊的作用域在其控制域之內(nèi)。5)盡力降低模塊接口的復(fù)雜度。6)力求模塊功能可以預(yù)測。24簡述依據(jù)一個系統(tǒng)的dfd,將其轉(zhuǎn)換為msd的基本思路。答:結(jié)構(gòu)化設(shè)計方法在分類dfd的基礎(chǔ)上,基于自頂向下、功能分解的設(shè)計原則,定義了兩種不同的“映射”,即變換設(shè)計和事務(wù)設(shè)計。其基本步驟是,首先將系統(tǒng)的dfd圖首先轉(zhuǎn)化為初始的模塊結(jié)構(gòu)圖,再基于“高內(nèi)聚低耦合”這一軟件設(shè)計原理,通過模塊化,將初始的模塊結(jié)構(gòu)圖轉(zhuǎn)化為最終的、可供詳細設(shè)計使用的模塊結(jié)構(gòu)圖(msd)。25為什么說結(jié)構(gòu)化分析與結(jié)構(gòu)化設(shè)計之間存在一條“鴻溝”?答:從軟件方法學(xué)

13、習(xí)研究的角度,結(jié)構(gòu)化方法仍然存在一些問題,其中最主要的問題是仍然沒有“擺脫”馮·諾依曼體系結(jié)構(gòu)的影響,捕獲的“功能(過程)”和“數(shù)據(jù)”恰恰是客觀失誤的易變性質(zhì),由此建造的系統(tǒng)結(jié)構(gòu)很難與客觀實際系統(tǒng)的結(jié)構(gòu)保持一致。26.舉例說明結(jié)構(gòu)化方法給出的控制復(fù)雜性機制。答:1上層數(shù)據(jù)流可以打包,實例研究數(shù)據(jù)流查詢要求就是一個打包數(shù)據(jù),并以*作一特殊標(biāo)志。上下層 數(shù)據(jù)流之間的對應(yīng)關(guān)系通過數(shù)據(jù)字典予以描述。2為便于理解,把一幅圖中圖元個數(shù)盡量控制在7加減2個 以內(nèi)。3檢查與每個加工相關(guān)的數(shù)據(jù)流是否有太多的輸入/輸出數(shù)據(jù)流,并尋找可降低該加工接口復(fù)雜性 的,對數(shù)據(jù)流進行劃

14、分的方法。4分析數(shù)據(jù)內(nèi)容,確定是否所有的輸入信息都用于產(chǎn)生輸出信息,相應(yīng)的 由一個加工產(chǎn)生的所有信息是否都能由進入該加工的信息導(dǎo)出。 27.試分析結(jié)構(gòu)化方法在建造系統(tǒng)模型中存在的問題。答:最主要的問題是沒有擺脫馮·諾依曼體系結(jié)構(gòu)的影響,捕獲的功能過程和數(shù)據(jù)恰恰是客觀事物的易變性質(zhì),由此建造的系統(tǒng)結(jié)構(gòu)很難與客觀實際系統(tǒng)的結(jié)構(gòu)保持一致。在某種意義上說就是這些問題促使面向?qū)ο蠓椒▽W(xué)的產(chǎn)生和發(fā)展。28.舉例說明變換設(shè)計的步驟。答:第一步,設(shè)計準(zhǔn)備,復(fù)查并精化系統(tǒng)模型。第二步,確定輸入,變換,輸出這三部分之間的邊界。第三步,第一級分解,系統(tǒng)模塊結(jié)構(gòu)圖頂層和第一層設(shè)計。第四步,第二級分

15、解,自頂向下,逐步求精。 29.舉例說明事務(wù)設(shè)計的步驟。答:第一步,設(shè)計準(zhǔn)備,復(fù)查并精化系統(tǒng)模型。第二步,確定事務(wù)處理中心。第三步,第一級分解,系統(tǒng)模塊結(jié)構(gòu)圖頂層和第一層設(shè)計,以數(shù)據(jù)流圖為基礎(chǔ),按自頂向下逐步細化的原則進行。第二級分解自頂向下逐步求精。 30.一種軟件開發(fā)方法學(xué),應(yīng)該由哪些基本部分組成?答:包括結(jié)構(gòu)化分析方法、結(jié)構(gòu)化設(shè)計方法、結(jié)構(gòu)化程序設(shè)計方法31.為了表達客觀事物,uml給出了哪些基本術(shù)語?答:為了支持抽象分析和設(shè)計中的事物,uml給出了8個基本術(shù)語,即類、接口、協(xié)作、用況、主動類、構(gòu)件、制品、結(jié)點,并給出了這些基本術(shù)語的一些變體。32.為了表達客觀事物之間的關(guān)系,uml給出

16、了哪些基本術(shù)語?這些術(shù)語之間是什么關(guān)系?答:關(guān)聯(lián)、泛化、細化和依賴,以及它們的一些變體。.結(jié)構(gòu)關(guān)系,繼承關(guān)系,精化關(guān)系,依賴關(guān)系.33.什么是對象的構(gòu)成與表示?并說明。答類是一組具有相同屬性、操作、關(guān)系和語義的對象的描述。對象是類的一個實例34.什么是類圖的構(gòu)成成分?答:類圖是可視化地表達系統(tǒng)表態(tài)結(jié)構(gòu)模型的工具,通常接口、關(guān)聯(lián)、泛化和依賴35.什么是狀態(tài)圖的構(gòu)成成分?答:在規(guī)約一個狀態(tài)時,主要涉及一下內(nèi)容(1)名字(2).進入/退出效應(yīng).(3).do動作活動.(4).被延遲事件.36.什么是順序圖的構(gòu)成成分?答:順序圖是一種交互圖,即由一組對象以及按時序組織的對象之間的關(guān)系組成,其中還飲食這些

17、對象之間所發(fā)送的消息37.如何描述對象之間的關(guān)聯(lián)語義?答:關(guān)聯(lián)是目錄之間的一種結(jié)構(gòu)關(guān)系,是對一組具有相同結(jié)構(gòu)、相同鏈接的描述。鏈?zhǔn)菍ο笾g具有特定語義關(guān)系的抽象,實現(xiàn)之后的鏈接通常稱為對象之間的鏈接.38.用況之間有哪幾種關(guān)系?答:一個用況圖通常包含6個模型元素,它們是主題、用況、參與者、關(guān)聯(lián)、泛化、依賴39.在什么情況下需要建立狀態(tài)圖?答:狀態(tài)圖可用于創(chuàng)建有關(guān)系統(tǒng)(或系統(tǒng)成分)的行為生存周期模型,表達有關(guān)系紡(或系統(tǒng)成分)的一種動態(tài)結(jié)構(gòu),給出有關(guān)系統(tǒng)(或系統(tǒng)成分)在生存期間有哪些階段、每一階段可從事的活動以及對外所呈現(xiàn)的特征等 方面 的信息40.在一個類的描述中,同時引入“操作”和“方法”的

18、目的是什么?答:表達模型化包之間的關(guān)系41.為什么使用包?如何劃分包答:包的最初來源是用例,包劃分的最初來源是用例模型,對用例按功能分組,可以得到用例包。 用例包在分析階段很自然的可以對應(yīng)得到分析包,在分析階段還可以找到其它的一些分析包,比如某個相對底層的服務(wù)(如用于表示持久化機制的包)。 分析包通常會對應(yīng)到設(shè)計階段的應(yīng)用子系統(tǒng),除此之外,還有其它的一些設(shè)計子系統(tǒng),比如負責(zé)封裝通訊機制的corba服務(wù)子系統(tǒng)。42.使用uml可以從那些角度來刻畫一個系統(tǒng)的行為?為什么?靜態(tài)、動態(tài)43.在描述客觀事物方面,面向?qū)ο蠓椒ㄅc結(jié)構(gòu)化方法提取信息的不同角度是什么?各自的角度將對建造的系統(tǒng)模型產(chǎn)生什么影響?

19、答:結(jié)構(gòu)化方法的提出,是基于看待客觀世界的基本觀點,即一切信息系統(tǒng)都是由信息流構(gòu)成的,每一信息流都有自己的起點-數(shù)據(jù)源,有自己的歸宿-數(shù)據(jù)潭,有驅(qū)動信息流動的加工,所謂信息處理主要表現(xiàn)為信息的流動。結(jié)構(gòu)化方法作為一種特定的軟件開發(fā)方法學(xué),是從系統(tǒng)分析和軟件設(shè)計的一種思想工具。面向?qū)ο蠓椒ㄕJ(rèn)為,世界是由客體組成的,客體有自己的屬性和活動規(guī)律,客體之間的相互依賴和相互作用構(gòu)成了大千世界的各式各樣系統(tǒng)。所以就應(yīng)充分運用人類認(rèn)識客觀世界、解決實際問題的思維方式和方法。眠功效對象方法是一種根據(jù)客體之間的關(guān)系來建造系統(tǒng)模型的系統(tǒng)化方法。44.比較面向?qū)ο蠓椒ㄅc結(jié)構(gòu)化方法在控制信息組織復(fù)雜性方面所引入的機制

20、?答:結(jié)構(gòu)化方法主要體現(xiàn)在三個方面。一、自頂向下,逐步求精:把程序看成是一個逐步演化的過程。把一個系統(tǒng)與程序看成是一層一層的。例如:戶籍管理系統(tǒng)可以劃分為:戶籍遷入遷出,人員遷入遷出,戶籍注銷,人員注銷等幾個子系統(tǒng),而每個子系統(tǒng)又劃分為接收用戶信息,實施處理,提供返回信息等等部分。二、模塊化:即將幾個系統(tǒng)分成幾個模塊,每個模塊實現(xiàn)特定的功能,最終整個系統(tǒng)由這些模塊組成。模塊跟模塊之間通過接口傳遞信息,模塊最重要的特點就是獨立性,模塊之間還有上下層的關(guān)系,上層模塊調(diào)用下層模塊來實現(xiàn)一些功能。三、語句結(jié)構(gòu)化:順序結(jié)構(gòu)、分支結(jié)構(gòu)、循環(huán)結(jié)構(gòu),都是常用的語句結(jié)構(gòu)。面向?qū)ο蠓椒ㄖ饕校阂?、客觀世界中的事物

21、都是對象,對象之間存在一定的關(guān)系,并且復(fù)雜對象由簡單對象構(gòu)成。二、具有相同屬性和操作的對象屬于一個類,對象是類的一個實例。三、類之間可以有層次結(jié)構(gòu),即類可以有子類,其中,子類繼承父類的全部屬性和操作,而且子類有自己的屬性和操作。四、類具有封裝性,把類內(nèi)部的屬性和一些操作隱藏起來,只有公共的操作對外是可見的,對象只可通過消息來請求其它對象的操作或自己的操作。五、強調(diào)充分運用人在日常邏輯思維中經(jīng)常采用的思想方法與原則。例如:抽象,分類,繼承,聚合,封裝,關(guān)聯(lián)等。45類與對象之間的關(guān)系,舉例說明?答:類是一組具有相同書、操作、關(guān)系、和語義的對象的描述,對象是類的一個實例。一個類可以有多個屬性,也可以

22、沒有屬性。而類的一個對象對其所屬類的每一個屬性應(yīng)有特定的值。46.關(guān)聯(lián)與鏈之間的關(guān)系,試舉例說明答:關(guān)聯(lián)是類目的一種結(jié)構(gòu)關(guān)系,是對一組具有相同結(jié)構(gòu)、相同鏈的描述,鏈?zhǔn)菍ο笾g具有特定語意關(guān)系的抽象,實現(xiàn)之后的鏈通常稱為對象之間的連接,關(guān)聯(lián)用一條連接兩個類目的線段表示,并可對其命名47.何謂對象狀態(tài),如何描述一個對象的狀態(tài)?試舉例說明答:一個狀態(tài)是類目的一個實例在其生存中的一種條件或情況,期間該實力滿足這一條件,執(zhí)行某一活動或等待某一消息;在uml中,通常把一個狀態(tài)表示成一個具有圓角的矩形,分為名字欄和內(nèi)部轉(zhuǎn)換欄,主要包括:名字,是一個表示狀態(tài)的文本串,作為狀態(tài)名;進入/退出效應(yīng),為了有效地抽取

23、一個對象的狀態(tài),控制狀態(tài)抽取的復(fù)雜性,uml在規(guī)約一個狀態(tài)時引入進入/退出效應(yīng);狀態(tài)內(nèi)部轉(zhuǎn)移,是指沒有導(dǎo)致該狀態(tài)改變的內(nèi)部轉(zhuǎn)移;do動作或活動,是指狀態(tài)中一動作或活動沒有完成,就一直執(zhí)行之,并當(dāng)該動作或活動完成時,可能會產(chǎn)生一個完成事件,導(dǎo)致該狀態(tài)的轉(zhuǎn)移。48.何謂組合狀態(tài)?舉例說明之答:含有子狀態(tài)的狀態(tài)稱為組合狀態(tài),組合狀態(tài)包含兩種類型的字狀態(tài)機,即順序子狀態(tài)和并發(fā)子狀態(tài)機49何謂非正交子狀態(tài)機,并簡述非正交子狀態(tài)機的轉(zhuǎn)入與轉(zhuǎn)出答:非正交子狀態(tài)機就是順序子狀態(tài)機50.何謂正交子狀態(tài)機,并簡述正交子狀態(tài)機的轉(zhuǎn)入與轉(zhuǎn)出答:正交子狀態(tài)就是并發(fā)子狀態(tài)機51.何謂事件?對信號事件和調(diào)用事件作一比較答:

24、事件是指對確定的時空內(nèi)一個有意義的規(guī)約信號;事件是指消息的一個類目,是一個消息類型,調(diào)用事件是指對象接受到一個操作的請求,信號事件是一種異步事件,信號通常由狀態(tài)處理機,調(diào)用事件往往是一個同步事件,即發(fā)送者和接受者都處在該操作執(zhí)行期間的一個匯合點,發(fā)送者的控制流一直被掛起,直到該操作執(zhí)行完成52何謂順序圖中的控制操作子?試舉例說明答:為了控制交互行為描述的復(fù)雜性,以便更清晰地表達順序圖中的復(fù)雜控制,uml給出了4種最常用的控制操作子;例如,選擇執(zhí)行操作子:該控制操作子記為“opr”,由兩部分組成,條件執(zhí)行操作子:該操作子記為“alt”,控制體通過水平線將其分為一部分,每一部分表示一個條件分支,每

25、一分支有一個監(jiān)護條件,并發(fā)執(zhí)行操作子:該操作子記為“par”,該控制操作子的體通過水平線將其分為多個部分,迭代執(zhí)行操作子:該操作子記為“l(fā)oop”,其中一個監(jiān)護條件出現(xiàn)在控制體中一條生命線的頂端53何謂順序圖中的控制操作子?試舉例說明。答:為了控制交互行為描述的復(fù)雜性,以便更清晰地表達順序圖中的復(fù)雜控制,給出了個個控制操作子,選擇、條件、并發(fā)、迭代操作控制子。54.演化模型與“rup增量、迭代開發(fā)”之間關(guān)系答:rup迭代、增量式開發(fā)是演化模型的一個變體,即規(guī)定了“大的”迭代數(shù)量4個階段,并規(guī)定了每次迭代的目標(biāo)初使階段:獲得與特定腹部和平臺無關(guān)的系統(tǒng)體系結(jié)構(gòu)輪廓,以此建立產(chǎn)品功能范圍;編制實例業(yè)

26、務(wù)實例,從業(yè)務(wù)角度指出該項目的價值,減少項目主要的錯誤風(fēng)險;精華階段:通過捕獲并描述系統(tǒng)的大部分需求,建立系統(tǒng)體系結(jié)構(gòu)基線的第一個版本,主要包括用況模型和分析模型,減少次要的錯誤風(fēng)險,到該階段未,就能夠估算成本、進步,并能詳細地規(guī)劃構(gòu)造階段;構(gòu)造階段:通過演化,形成最終的系統(tǒng)體系結(jié)構(gòu)基線,開發(fā)完整的系統(tǒng),確保產(chǎn)品可以開始向客戶交付,即具有初始操作能力;移交階段:確保有一個實在的產(chǎn)品發(fā)布給用戶群。期間培訓(xùn)用戶如何使用該軟件。55.rup與uml之間關(guān)系答:rup與uml是一對“姐妹”,它們構(gòu)成了一種特定的軟件開發(fā)方法學(xué)。其中,uml作為一種可視化建模語言,給出了表達事物和事物之間關(guān)系的基本術(shù)語,

27、給出了多種模型的表達工具;而rup利用這些術(shù)語定義了需求獲取層、系統(tǒng)分析層、設(shè)計層、實現(xiàn)層,并給出了實現(xiàn)各層模型之間映射的基本活動以及相關(guān)指導(dǎo)。56什么是特征(teature)?舉例如何描述它。答:從客戶、用戶、計劃者、開發(fā)者想法和意愿中搜取特征,形成特征表。特征是一個新的項及其簡要描述“按不同科目計算平均成績” 計算平均成績:按所學(xué)的不同科目計算每一個學(xué)生的期末考試平均成績,給出分?jǐn)?shù)段并描述其狀態(tài)(如提議、批準(zhǔn)、合并和驗證等)、實施的代價及風(fēng)險、重要程度以及對其他特征的影響等,特征可作為需求,并被轉(zhuǎn)換為其它制品。58.需求獲取模型的基本組成答:使用uml中 的用況、參與者以及依賴等 術(shù)語來抽

28、象客觀實際問題,形成系統(tǒng)的需求獲取模型59.建造一個系統(tǒng)需求獲取模型的活動和任務(wù),以及各活動的輸入和輸出答:發(fā)現(xiàn)描述參與者和用況,輸入:業(yè)務(wù)模型或領(lǐng)域模型,補充需求,特征表;輸出:用況模型概述,術(shù)語表賦予用況優(yōu)先級:輸入:用況模型概述,補充需求,術(shù)語表;輸出:體系結(jié)構(gòu)描述用況模型視角;精華用況:輸入:用況模型概述,補充需求,術(shù)語表;輸出:用況精化構(gòu)造人機接口原型:輸入:用況精華,用況模型概述,補充需求,術(shù)語表;輸出:人機接口原理;用況模型結(jié)構(gòu)化:輸入:用況精華,用況模型概述,補充需求,術(shù)語表;輸出:用況模型精化。60.如何描述系統(tǒng)的參與者和用況?舉例說明答:參與者:發(fā)現(xiàn)參與者與描述參與者:1)

29、之前已經(jīng)存在業(yè)務(wù)用況模型,可依據(jù)業(yè)務(wù)模型直接發(fā)現(xiàn)一些候選參與者,2)沒有業(yè)務(wù)用況模型,即使存在領(lǐng)域模型,也需要系統(tǒng)分析人員與客戶一起來標(biāo)識系統(tǒng)參與者。用況是系統(tǒng)向它的參與者提供結(jié)果(值)的功能塊,表達參與者使用系統(tǒng)的方式,因此一個用況可用于規(guī)約系統(tǒng)可執(zhí)行的、與參與者進行交互的一個動作序列,包括其中一些可選動作序列,并且用況還有自己 的屬性。61.需求分析層及相關(guān)概念答:在系統(tǒng)用況模型的基礎(chǔ)上,創(chuàng)建系統(tǒng)分析模型以及在該分析模型視角下的體系結(jié)構(gòu)描述,系統(tǒng)分析模型是系統(tǒng)的一種概念模型,解決系統(tǒng)用況模型中存在的二義性和不一致性問題,并以一種系統(tǒng)化的形式準(zhǔn)確地表達用戶的需求。62.需求分析模型的基本組成

30、答:rup的分析如同結(jié)構(gòu)化分析,其目標(biāo)之一是在一個特定的抽象層上建立系統(tǒng)分析模型。為此,rup首先給出了3個術(shù)語:分析包、分析類和用況細化,用于表達需求中“大粒度”的概念,開發(fā)人員使用這些術(shù)語可以規(guī)約系統(tǒng)分析中所要使用的信息。分析類:是類的一種衍型,很少有操作和特征標(biāo)記,而用責(zé)任來定義其行為,并且其屬性和關(guān)系也是概念性的,包括:邊界類、實體類、控制類。用況細化:是一個針對一個用況,其行為可用多個分析類之間的相互作用來細化,并記為用況細化分析分析包:分析包是一種控制信息組織復(fù)雜性的機制,提供了分析制品的一種組織手段,形成了一些可管理的部分。63.建造一個系統(tǒng)需求分析模型的活動和任務(wù),以及各活動的

31、輸入和輸出.答:體系結(jié)構(gòu)分析:輸入:用況模型、補充需求、業(yè)務(wù)模型或領(lǐng)域模型、體系結(jié)構(gòu)描述用況模型;輸出:分析包概述、分析類概述、體系結(jié)構(gòu)描述分析;細化用況:輸入:用況模型、補充需求、業(yè)務(wù)模型或領(lǐng)域模型、體系結(jié)構(gòu)描述分析;輸出:用況細化分析、分析類概述對類分析:輸入:用況細化分析、分析類概述 輸出:分析類完成;對包進行分析:輸入:系統(tǒng)體系結(jié)構(gòu)描述分析、分析包概述輸出:分析類完成。64需求分析模型對以后開發(fā)工作的影響答:對設(shè)計中子系統(tǒng)的影響。分析包一般將影響設(shè)計子系統(tǒng)的結(jié)構(gòu)對設(shè)計類的影響。分析包可以作為類設(shè)計時的規(guī)格說明。對用況細化設(shè)計的影響。用況細分分析對用況細化設(shè)計有兩方面影響,一個是它們有乃

32、至于為用況創(chuàng)建更精確的規(guī)格說明,另一個是當(dāng)對用況進行設(shè)計時,用況細化分析可作為其輸入。65.需求獲取模型與需求分析模型之間比較答:語言描述不同:客戶語言與開發(fā)語言視圖:系統(tǒng)外與系統(tǒng)內(nèi)結(jié)構(gòu):使用用況予以結(jié)構(gòu)化,給出外部視角系統(tǒng)結(jié)構(gòu)與使用衍型類結(jié)構(gòu)化,給了部視角系統(tǒng)結(jié)構(gòu)作用:標(biāo)注“系統(tǒng)應(yīng)該做什么,不應(yīng)該做什么”與可以做出開發(fā)者理解系統(tǒng)如何勾畫、如何設(shè)計和如何實現(xiàn)基礎(chǔ)問題:可能存在冗余、不一致和沖突等問題與解決了上述問題捕獲系統(tǒng)功能,包括體系結(jié)構(gòu)方面具有意義的功能與給出細化系統(tǒng)功能,包括在體系結(jié)構(gòu)方面具有意義的功能定義一些進一步需要在分析模型中予以分析用況與定義每一個用況細化。66.設(shè)計層及相關(guān)概念

33、答:設(shè)計目標(biāo):定義滿足系統(tǒng)/產(chǎn)品分析模型所規(guī)約需求的軟件結(jié)構(gòu)基本術(shù)語:設(shè)計子系統(tǒng)、設(shè)計類、用況細化設(shè)計、接口、以及用于表達子系統(tǒng)之間關(guān)系的依賴、用于表達設(shè)計類之間關(guān)系的關(guān)聯(lián)等 ,這些術(shù)語確定了系統(tǒng)設(shè)計模型的各種形態(tài)。67.設(shè)計模型的基本組成答:設(shè)計子系統(tǒng)、設(shè)計類、用況細化設(shè)計、接口、以及用于表達子系統(tǒng)之間關(guān)系的依賴、用于表達設(shè)計類之間關(guān)系的關(guān)聯(lián)等 ,這些術(shù)語確定了系統(tǒng)設(shè)計模型的各種形態(tài)。68.建造一個系統(tǒng)設(shè)計模型的活動和任務(wù),以及各活動的輸入與輸出答:體系結(jié)構(gòu)設(shè)計:輸入:用況模型、補充需求、分析模型、體系結(jié)構(gòu)描述分析模型角度;輸出:子系統(tǒng)概述、接口概述、設(shè)計類概述、部署模型概述、體系結(jié)構(gòu)描述設(shè)

34、計;設(shè)計用況:輸入:用況模型、補充需求、分析模型、部署模型;輸出: 用況設(shè)計-實現(xiàn)、設(shè)計類概述、子系統(tǒng)概述、接口概述;對類設(shè)計:輸入: 用況設(shè)計-實現(xiàn)、設(shè)計類概述、接口概述 、分析類完成;輸出:設(shè)計類完成 ;設(shè)計子系統(tǒng):體系結(jié)構(gòu)描述設(shè)計、子系統(tǒng)概述、接口概述;輸出:子系統(tǒng)完成、接口完成。69.測試過程模型,并分析這一模型在軟件測試技術(shù)研究以及實踐中的作用答:軟件測試是一個有程序的過程,包括測試設(shè)計、測試執(zhí)行、以及測試結(jié)果比較等環(huán)境模型、被測模型和錯誤模型在軟件測試中扮演了一種很重要的角色;這些模型的質(zhì)量,特別是程序模型的質(zhì)量,對發(fā)現(xiàn)錯誤具有關(guān)鍵性的作用軟件測試的錯誤假定是,實際結(jié)果與預(yù)期結(jié)果不

35、符,而后在此基礎(chǔ)上可進一步分析是什么錯誤。70.軟件測試與調(diào)度的區(qū)別答:1).測試從一側(cè)面證明程序員的“失敗”。調(diào)度為了證明程序員是正確的;2).測試以已知條件開始,使用預(yù)告定義的程序且有預(yù)知的結(jié)果,不可預(yù)見的僅是程序是否通過測試;3).測試是有計劃的,并要進行測試設(shè)計。高度是不受時間約束的;4).測試是發(fā)現(xiàn)錯誤、改正錯誤、重新測試的過程。調(diào)試是一個推理過程;5).的執(zhí)行是有規(guī)程的。調(diào) 試的執(zhí)行往往要求程序員進行必要推理;6).測試經(jīng)常由獨立的測試組在不了解軟件技術(shù)的條件下完成的。高度必須由了解詳細設(shè)計的程序員完成;7)大多數(shù)測試的執(zhí)行和設(shè)計可由工具支持。調(diào)試時,程序員能利用的工具主要是調(diào)試器

36、。71.程序流程圖的作用及構(gòu)成答:流程圖的作用是著重于過程屬性描述。72.簡述語名覆蓋、分支覆蓋、條件組合覆蓋、路徑覆蓋的含義及它們之間的關(guān)系答:路徑覆蓋:執(zhí)行所有可能穿過程序控制流程的路徑語句覆蓋:至少執(zhí)行程序中所有語句一次分支覆蓋:至少將程序中的每一個分支執(zhí)行一次條件覆蓋:指每個判定中的所有可能的條件取值至少執(zhí)行一次條件組合覆蓋:設(shè)計足夠測試,使每個判定中的所有可能的條件聚會組合至少執(zhí)行一次存在以下關(guān)系語句覆蓋<分支覆蓋<條件組合覆蓋<路徑覆蓋。73簡術(shù)單元測試、集成測試、有效性測試的含義及它們之間的區(qū)別.。答:單元測試:主檢驗軟件設(shè)計的最小單元模塊。該測試以詳細設(shè)計文檔

37、為指導(dǎo),測試模塊內(nèi)的重要控制路徑。集成測試:是軟件組裝的一個系統(tǒng)化技術(shù),其目標(biāo)是發(fā)現(xiàn)與接口有關(guān)的錯誤有效性測試:發(fā)現(xiàn)軟件實現(xiàn)的功能與需求規(guī)格說明書不一致的錯誤74.簡述路徑測試技術(shù)、事務(wù)流測技術(shù)的主要依據(jù)答:一個依據(jù)程序邏輯結(jié)構(gòu),一個依據(jù)軟件行為描述75簡述程序流程圖與事務(wù)流程圖之間的主要區(qū)別,并分析這些區(qū)別的主要原因答:1)基本模型元素所表達的語義不同;2)一個事務(wù)不等 同于路徑測試中一條路徑,可能在中間某處就完成了某一用戶工作,終結(jié)了一個事務(wù);3).事務(wù)流程圖中的分支和節(jié)點可能是一個復(fù)雜的過程。76、簡述白盒測試技術(shù)的要點,并舉例說明答:白盒測試技術(shù)依據(jù)程序的邏輯結(jié)構(gòu),以控制流程圖作為被測

38、對象建模工具,其中涉及過程塊、分支、節(jié)點、鏈以及路徑,并針對測試民,給出了4種覆蓋策略:語名覆蓋、分支覆蓋、條件組合覆蓋和路徑覆蓋,它們之間具有偏序關(guān)系,并且可根據(jù)項目需求給出其他覆蓋策略。77、事務(wù)流測試技術(shù)的要點,并舉例說明 答:事務(wù)流測試技術(shù)是一種功能測試技術(shù),目前提出了很多功能測試技術(shù),如定義域測試技術(shù)、等價類測試技術(shù)以及基于因果圖的測試技術(shù)等,統(tǒng)稱為黑盒子測試技術(shù)。黑盒測試將被測軟件看成黑盒子,只通過外部的輸入和輸出來發(fā)現(xiàn)軟件中的錯誤,因此黑盒測試是一種基于軟件規(guī)約的測試。78、簡述軟件開發(fā)中的過程類,以及它們的基本作用和它們之間的基本關(guān)系答:分為3類:基本過程:那些軟件生產(chǎn)直接相關(guān)

39、的活動集,分5個過程:獲取過程、供應(yīng)過程、開發(fā)過程、運行過程和維護過程支持過程:有關(guān)各方面按他們的目標(biāo)所從事的一系列相關(guān)支持活動集,有助于提高系統(tǒng)或軟件產(chǎn)品的質(zhì)量,分為:文檔過程、配置管理過程、質(zhì)量保證過程、驗證過程、確認(rèn)過程、聯(lián)合評審過程、審計過程和問題解決過程等組織過程:與軟件生產(chǎn)組織有關(guān)的活動集,分管理過程、基礎(chǔ)設(shè)施過程、培訓(xùn)過程、改進過程79、在iso/iec12207-2008中如何描述一個過程?舉例說明答:.為獲取方獲取一個軟件產(chǎn)品或服務(wù),為供應(yīng)方開發(fā)、運行、維護、提供和銷毀一個軟件產(chǎn)品,建立了一種軟件生存周期框架,包含過程、活動和任務(wù),并通過過程分類、過程描述,給出它們之間的內(nèi)在

40、關(guān)系.為軟件生存周期過程的定義、控制和改進提供了一個過程,即生存周期模型管理過程供應(yīng)過程:為獲取方提供滿足所協(xié)商需求的產(chǎn)品或服務(wù)軟件實現(xiàn)過程:軟件實現(xiàn)過程是為了生產(chǎn)一個已規(guī)約系統(tǒng)元素,作為一個軟件產(chǎn)品或服務(wù)而實現(xiàn)軟件需求分析過程:建立系統(tǒng)軟件部分的需求軟件體系結(jié)構(gòu)設(shè)計:為軟件的實現(xiàn)及其可以按需求進行驗證,提供一種設(shè)計軟件驗證過程:證實一個過程或項目的每一個軟件工作產(chǎn)品/服務(wù)是否正確地反映所規(guī)約的需求軟件確認(rèn)過程:證實所期望的軟件工作產(chǎn)品是否滿足其需求。80、什么是軟件開發(fā)特定的過程類?舉例說明。答:為了更有效的描述軟件開發(fā)活動和任務(wù),把一個系統(tǒng)在其生存周期內(nèi)可執(zhí)行的活動分為兩大類:系統(tǒng)語境的過

41、程,針對軟件開發(fā)的過程,在此基礎(chǔ)上,把生存周期分成7個過程組針對軟件開發(fā)的過程類。81、什么是驗證和確認(rèn)?簡述它們的作用和區(qū)別答:驗證:證實一個過程或項目的每一個軟件工作產(chǎn)品/服務(wù)是否正確地反映所規(guī)約的需求驗證和確認(rèn)是有區(qū)別的。驗證是通過提供的客觀證據(jù),證實規(guī)約的需求是否得以滿足確認(rèn)是通過提供的客觀證據(jù),證實有關(guān)特定期望的使用或應(yīng)用的需求是否得以滿足軟件確認(rèn)過程:證實所期望的軟件工作產(chǎn)品是否滿足其需求82、簡述瀑布模型以及可適應(yīng)的情況瀑布模型將軟件生存周期的各項活動規(guī)定為按固定順序而連接的若干階段工作,形如瀑布流水,最終得到產(chǎn)品適應(yīng)情況:需求已被很好的理解,并且開發(fā)組織非常熟悉為實現(xiàn)這一模型所

42、需求的過程。83、簡述演化模型以及可適應(yīng)的情況答:表達了一種彈性的過程模式,由一些小的開發(fā)步組成,每一步歷經(jīng)需求分析、設(shè)計、實現(xiàn)和驗證,產(chǎn)生軟件產(chǎn)品的一個增量,通過這些迭代,最終完成軟件產(chǎn)品的開發(fā)。主要針對事先不能完整定義需求的軟件開發(fā)。84、簡述增量模型的優(yōu)缺點答:優(yōu)點1)第一個可交付版本所需要的成本和時間是較少的,從而可減少開發(fā)由增量表示的小系統(tǒng)承擔(dān)的風(fēng)險;2)由于很快發(fā)布第一個版本,因此可以減少用戶需求的變更;3)允許增量投資,即在項目開始時可以僅對一個或兩個增量投資。缺點:1)如果沒有對用戶的變更要求進行規(guī)劃,那么產(chǎn)生的初始增量可能會造成后來增量的不穩(wěn)定;2)如果需求不像早期思考的那樣

43、穩(wěn)定和完整,那么一些增量就可能需要重新開發(fā),重新發(fā)布;3)由于進度和配置的復(fù)雜性,可能會增大管理成本,超出組織的能力。85、簡述螺旋模型以及它與其它模型之間的主要區(qū)別答:螺旋模型是瀑布模型與深化模型的基礎(chǔ)上,加入兩者所忽略的風(fēng)險分析所建立的一種軟件開發(fā)模型螺旋模型關(guān)注解決問題的基本步驟,即標(biāo)識問題,標(biāo)識一些可選方案,選擇一個最佳方案,遵循動作步驟并實施后續(xù)工作,突出特征,在開發(fā)的迭代中實際上只有一個迭代過程真正開發(fā)了可交付的軟件2)與深化模型和增量模型相比,同樣使用了瀑布模型作為一個嵌入的過程,即分析、設(shè)計、編碼、實現(xiàn)和維護的過程,并且在框架和全局體系結(jié)構(gòu)方面是等同的。但是,螺旋模型所關(guān)注的階

44、段以及它們的活動是不同的,如增加一些管理活動和支持活動。盡管增量模型也有一些管理活動,但它基于以下假定:需求是最基本的、并且是唯一的風(fēng)險源,因而在螺旋模型中增大了決策和風(fēng)險的空間,螺旋模型擴大了增量模型的管理范圍。如果項目的開發(fā)風(fēng)險很大或客戶不能確定系統(tǒng)需求,在更廣泛的意義上來講,還包括一個系統(tǒng)或系統(tǒng)類型的要求,這時螺旋模型就是一個好的生存周期模型.86. 簡述語句覆蓋、分支覆蓋、條件組合覆蓋、路徑覆蓋的含義及他們之間的關(guān)系答:語句覆蓋:至少執(zhí)行程序中所有語句一次,如果遵循這一規(guī)定,則達到了100%語句覆蓋率(用c1表示)。語句覆蓋是一種最低的測試度量,因此發(fā)現(xiàn)程序錯誤的能力很弱。 分支覆蓋:

45、至少至少將程序中的每一個分支執(zhí)行一次。如果遵循這一規(guī)則,則達到了100%分支覆蓋率(用c2表示)。分值覆蓋是一種語句覆蓋稍強的覆蓋,因為通過了各個分支,則各語句也都覆蓋率了。但分支覆蓋還不能保證一定能查出在判定條件中存在的錯誤。 條件組合覆蓋:是指設(shè)計足夠的測試用例,是每個判定中的所有可能的條件取值組合至少執(zhí)行一次。如果遵循這一規(guī)定,則實現(xiàn)了條件組合覆蓋。只要滿足了條件組合覆蓋,就一定能滿足分支覆蓋。路徑覆蓋:執(zhí)行所有可能穿過程序控制流程的路徑,一般情況下,這一測試嚴(yán)格地限制為所有可能的入口/出口路徑。如果遵循這一規(guī)定,則達到了100%覆蓋率。在路徑測試中,該亮度是最強的,一般是不可實現(xiàn)的。8

46、7. 單元測試、集成測試、有效性測試的含義及它們之間的區(qū)別。答:單元測試主要檢測軟件設(shè)計的最小單位模塊。該測試以詳細詳細設(shè)計文檔為指導(dǎo),測試模塊中的重要控制路徑。一般來說,單元測試往往采用白盒技術(shù)。在單元測試期間,通??紤]模塊的四個特征,以及與之相關(guān)的邊界條件:1)模塊接口。2)局部數(shù)據(jù)結(jié)構(gòu)。3)重要的執(zhí)行路徑。4)錯誤執(zhí)行路徑。集成測試是軟件組裝的一個系統(tǒng)化技術(shù),其目標(biāo)是發(fā)現(xiàn)與接口有關(guān)的錯誤,將經(jīng)過單元測試的模塊構(gòu)成一個滿足設(shè)計要求的軟件結(jié)構(gòu)。集成測試可“自頂向下”地進行,稱為自頂向下的集成測試,也可“自底向上”地進行,稱為自底向上的集成測試。有效測試的目標(biāo)是發(fā)現(xiàn)軟件實現(xiàn)的功能與需求規(guī)格說明

47、書不一致的錯誤。因此,有效性測試通常采用黑盒技術(shù)。為了實現(xiàn)有效性測試,制定的測試計劃應(yīng)根據(jù)采用的測試技術(shù)給出要進行的一組測試,并給出測試用例和預(yù)期結(jié)果的設(shè)計。通常在測試執(zhí)行之前應(yīng)進行配置復(fù)審,其目的是保證軟件配置的所有元素已被正確的開發(fā)并編排目錄,具有必要的細節(jié)以支持和軟件生存周期的維護階段。區(qū)別:單元測試集中于單個模塊的功能和結(jié)構(gòu)檢測;集成測試集中于模塊組合的功能和軟件結(jié)構(gòu)檢測;有效性測試驗證軟件需求的可追溯性。88. 簡述路徑測試技術(shù)、事務(wù)流測試技術(shù)的主要依據(jù).答;路徑測試技術(shù)支持測試過程模型的中間部分; 路徑測試技術(shù)是一種簡單,實用的單元測試技術(shù),通過程序中的控制邏輯可以發(fā)現(xiàn)數(shù)據(jù)錯誤、基

48、本計算錯誤等;路徑測試技術(shù)是基于程序邏輯結(jié)構(gòu)的,對錯誤的假定是軟件通過了與預(yù)想不同的路徑;在路徑測試技術(shù)中,采用控制流程圖作為模型表達工具,支持創(chuàng)建被測試程序的模型;基于路徑的基本屬性,路徑測試技術(shù)給出了幾種常見的測試路徑覆蓋,包括語句覆蓋、分支覆蓋、條件組成覆蓋和路徑覆蓋等,這幾種覆蓋是一個偏序。根據(jù)軟件特定需要,可以在條件組合覆蓋和路徑覆蓋之間定義其他類型的覆蓋;路徑選取是測試用例世紀(jì)的基礎(chǔ)。事務(wù)流測試技術(shù)的要點:玉路徑測試一樣,支持測試過程模型的中間部分;事務(wù)流測試技術(shù)是將路徑測試技術(shù)用于功能測試的產(chǎn)物,通過事物的操作邏輯發(fā)現(xiàn)軟件中的邏輯錯誤、數(shù)據(jù)錯誤、計算錯誤等;事務(wù)流測試技術(shù)是基于軟

49、件規(guī)約的,對錯誤的假定是軟件通過了與預(yù)想不同的事務(wù)路徑;在事務(wù)流測試技術(shù)中,采用事務(wù)流程圖作為模型表達工具,支持創(chuàng)建被測試軟件的模型;基于事務(wù)的基本屬性,事務(wù)流測試技術(shù)最大的問題和最大的代價是獲得事務(wù)流程圖以及用例設(shè)計;一般,事務(wù)流程測試要求達到基本事務(wù)的覆蓋,但是大部分錯誤將在奇異的、不受注意的或非法的操作流中發(fā)現(xiàn),更為重要的是,在事務(wù)處理流程測試中,如果設(shè)計測試用例時能與設(shè)計者討論,將可以發(fā)現(xiàn)比運行測試更多的錯誤。89.針對程序流程圖中出現(xiàn)的各種循環(huán),如何選取測試路徑?答:循環(huán)結(jié)構(gòu)可分為單循環(huán)、嵌套循環(huán)、級聯(lián)循環(huán)和混雜循環(huán)。由于循環(huán)結(jié)構(gòu)的錯誤容易發(fā)生在控制變量的邊界上,對于不同的循環(huán)給出相

50、應(yīng)的路徑選取規(guī)則。 1)單循環(huán)。1.最小循環(huán)次數(shù)為0,最大次數(shù)為n,且無跳躍值。選取:循環(huán)控制變量為-1、0、1典型重復(fù)次數(shù)、n-1、n、n+1的路徑。 2.非0最小循環(huán)次數(shù),且無“跳躍”值。選取:循環(huán)控制變量次數(shù)為“最小循環(huán)次數(shù)-1”、“最小重復(fù)次數(shù)加1”、“典型重復(fù)次數(shù)”、“最大重復(fù)次數(shù)-1”、“最大重復(fù)次數(shù)”、“最大重復(fù)次數(shù)加1”。 3.具有活躍值的單循環(huán),除把每一個跳躍邊界按“最小循環(huán)次數(shù)”、“最大循環(huán)次數(shù)”處理外,其他規(guī)則與前兩種一樣。 2)嵌套循環(huán)。1.從最深層的循環(huán)開始,設(shè)定所有外層循環(huán)取他的最小值。2.測試最小值減一、最小值、最小值加一、典型值、最大值減1、最大值、最大值加1。

51、與此同時,測試“跳躍”值邊界。 3.設(shè)定內(nèi)循環(huán)在典型值處,按2循環(huán)外層循環(huán),直到覆蓋所有循環(huán)。 3)級聯(lián)循環(huán)。如果級聯(lián)循環(huán)中每個循環(huán)的控制變量有關(guān),則可視為嵌套循環(huán)。如果級聯(lián)循環(huán)中每個循環(huán)的控制變量無關(guān),則可視為單循環(huán)。90.cmmi于的基本思想答:該模型基于過程途徑思想,通過過程把軟件質(zhì)量的3個支撐點受訓(xùn)的人員、規(guī)程和方法、工具和設(shè)備進行集成,以開發(fā)所期望的系統(tǒng)/產(chǎn)品。為此,cmmi緊緊圍繞開發(fā)、維護和運行,把經(jīng)過證明的“最佳實踐“放在一個結(jié)構(gòu)中。該結(jié)構(gòu)有乃至于指導(dǎo)組織確定其過程的發(fā)送優(yōu)先次序;有乃至于指導(dǎo)這些改善的實施,以提高其過程能力和成熟度,并且還支持其它領(lǐng)域(如獲取和服務(wù))能力成熟度

52、模型開發(fā)。91么是過程制度化?在cmmi把過程制度化分幾個等級?簡要回答每一等級主要特征答:重現(xiàn)已定義過程的的特征.分5個等級:1級為初始級,2級為已管理等級,3級為已定義級,4級為已定量管理級,5級為持續(xù)優(yōu)化級。92述cmmi模型支持兩種過程改善路徑答:cmmi提供了兩種改善路徑,一是稱為能力等級是一種過程改善路徑,該路徑可使組織針對單一過程域不斷改善該過程域;二是稱為成熟度等級也是一種過程改善路徑,該路徑可使組織通過關(guān)注一組過程域不斷改善一組相關(guān)過程域。93述cmmi模型的模型部件及部件間關(guān)系答:1過程域,2專用目標(biāo),3專用實踐,4公用目標(biāo),5共用實踐,6典型工作產(chǎn)品,7子實踐,8共用實踐

53、的精化,9意圖陳述,10簡介性注釋,11相關(guān)過程域。94用實踐與共用實踐關(guān)系答:專用實踐:每一個過程域中都有一個或多個“專用實踐”,這些專用實踐被認(rèn)為對于達到該過程域的專用目標(biāo)是重要活動,即期望以專用實踐所描述的活動,會導(dǎo)致達到一個過程域的專用目標(biāo)共用實踐:每一個過程域中都有一個或多個“共用實踐”,這些共用實踐被認(rèn)為對于達到該過程域相關(guān)的共用目標(biāo)是重要活動,例如,對共有目標(biāo)“該過程予以制度化,使之成為一個已管理過程“而言,一個共用實踐是”為該過程的執(zhí)行、工作產(chǎn)品的開發(fā)以及該過程的服務(wù),提供充足的資源“。之所以稱為“共用實踐“,是因為同一實踐可應(yīng)用于多個過程。95每一成熟度等級所包含的過程域。答

54、:在成熟度等級,把開發(fā)、維擴、運行中的過程分為4個組。包含7個過程域:配置管理、測量與分析、項目監(jiān)控、項目規(guī)劃、過程和產(chǎn)品質(zhì)量保證、需求管理、提供方協(xié)議管理。包含11個過程域:決策分析與解決、集成項目管理、組織過程定義、緩緩過程關(guān)注、組織培訓(xùn)、產(chǎn)品集成、需求開發(fā)、風(fēng)險管理、技術(shù)解決方案、驗證、確定組織過程性能和定量項目管理原因分析與解決和組織創(chuàng)新和部署96述項目規(guī)劃過程域的專用目標(biāo)與專用實踐答:專用目標(biāo)1:sg1建立估算,4個專用實踐sp1.1估算項目規(guī)模,sp1.2 建立工作產(chǎn)品和任務(wù)屬性的估算sp1.3定義項目生存周期sp1.4確定工作量和成本的估算專用目標(biāo)2:sg2 開發(fā)項目計劃,7個專

55、用實踐:sp2.1建立預(yù)算和進度,sp2.2標(biāo)識項目風(fēng)險sp2.3規(guī)劃數(shù)據(jù)管理sp2.4規(guī)劃項目資源sp2.5規(guī)劃需要的知識和技能sp2.6規(guī)劃利益攸關(guān)方參與sp2.7建立項目計劃專用目標(biāo)3:sg3獲得對該計劃的承諾:sp3.1評審該項目的計劃sp3.2調(diào)和工作和資源等級,使之一致。sp3.3獲得計劃承諾。97述開發(fā)過程的專用目標(biāo)與專用實踐答:專用目標(biāo)1:sg1開發(fā)客戶需求,2個專用實踐 sp1.1引出要求sp1.2開發(fā)客戶需求專用目標(biāo)2:sg2開發(fā)產(chǎn)品需求,3個專用實踐sp2.1 建立產(chǎn)品和產(chǎn)品構(gòu)件的需求sp2.2分配產(chǎn)品構(gòu)件需求sp2.3標(biāo)識接口需求專用目標(biāo)3:sg3分析并驗證需求,5個專

56、用實踐sp3.1建立操作概念和場景sp3.2建立所需功能的定義sp3.3分析需求sp3.4分析需求,達到權(quán)衡sp3.5確認(rèn)需求。98述共用目標(biāo)2及其相關(guān)的共用實踐答:共用目標(biāo)2:gg2把過程制度化為一個已管理過程,10個共用實踐gp2.1建立組織策略gp2.2規(guī)劃該過程gp2.3提供資源gp2.4指定責(zé)任gp2.5培訓(xùn)人員gp2.6管理配置gp2.7標(biāo)識相關(guān)利益方的參與gp2.8監(jiān)控該過程gp2.9客觀地評估過程的符合性gp2.10以高層管理的視覺評審狀態(tài).99.rup的定義及主要特點答:rup是一種軟件開發(fā)過程框架,基于面向?qū)ο蠓栿w系給出了有關(guān)軟件開發(fā)過程組織及實施的指導(dǎo)。該框架體現(xiàn)了3個

57、突出特征,即以用況驅(qū)動、體系結(jié)構(gòu)為中心以及迭代、增量式開發(fā)。1.簡述軟件開發(fā)的本質(zhì)。2.簡述實施軟件開發(fā)的基本途徑。3.簡述何謂模型以及軟件開發(fā)中所涉及的模型。4.簡述軟件開發(fā)所涉及的兩大類技術(shù)。5、簡述需求與需求規(guī)約的基本性質(zhì)。6、簡述軟件需求的分類。7、舉例說明功能需求和非功能需求之間的基本關(guān)系。8、有哪幾種常用的初始需求發(fā)現(xiàn)技術(shù)?9、簡述需求規(guī)約的3種基本形式。10、簡述軟件需求規(guī)約的內(nèi)容和作用。11、簡述需求規(guī)約在項目開發(fā)中的基本作用。12、簡述需求規(guī)約和項目需求的不同。13、何謂模塊耦合?簡述模塊耦合的類型。14、何謂模塊內(nèi)聚?簡述模塊內(nèi)聚的類型。15、何謂模塊的控制域和模塊的作用域?并舉例說明16為了表達系統(tǒng)功能模型,結(jié)構(gòu)化分析方法給出了哪些基本概念?他們是如何表示的

溫馨提示

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

評論

0/150

提交評論