《02333软件工程课后习题答案-2011版 王立福》
?
第1章 緒論
1、解釋術語
(1)軟件: 軟件是指計算機系統中的程序及其文檔。P16
(2)軟件工程:軟件工程是應用計算機科學理論和技術以及工程管理原則和方法,按預算和進度實現滿足用戶要求的軟件產品的工程,或以此為研究對象的學科。P15
(3)軟件危機:軟件生產率、軟件質量遠遠滿足不了社會發展的需求,成為社會,經濟發展的制約因素,人們通常把這一現象稱為“軟件危機”。P15
答:軟件開發的本質就是實現問題空間的概念和處理邏輯到解空間的概念和處理邏輯之間的映射。P19
答:實施軟件開發的基本途徑是系統建模。所謂系統建模,是指運用所掌握的知識,通過抽象,給出該系統的一個結構——系統模型。P19
答:模型是一個抽象。該抽象是在意圖所確定的角度和抽象層次對物理系統的一個描述,描述其中的成分和成分之間所具有的特定語義的關系,還包括對該系統邊界的描述。
軟件開發中所涉及的模型可分為兩大類,一類稱為概念模型,描述了系統是什么;另一類統稱為軟件模型,描述了實現概念模型的軟件解決方案。P19
(4).簡述軟件開發所涉及的兩大類技術。
答:軟件開發所涉及的兩大類技術為:一是求解軟件的開發邏輯,二是求解軟件的開發手段。P17
第2章 軟件需求與軟件需求規約
1、解釋術語
(1)軟件需求
?????軟件需求以一種技術形式,描述了一個產品/系統應該具有的功能、性能和其它性質。P23
(2)功能需求
?????功能需求規約了系統或系統構件必須執行的功能。P24
(3)非公能需求
非公能需求是性能、外部接口、設計約束和質量屬性這4類需求的統稱。P23
?(4) 需求規約
?????需求規約是一個軟件項/產品/系統所有需求陳述的正式文檔,它表達了一個軟件產品/系統的概念模型。P28
?2、簡述需求與需求規約的基本性質。
????答:需求的基本性質:
1) 必要的,該需求是用戶所要求的。
2)無歧義的,該需求只能用一種方式解釋。
???????3)可測的,該需求是可進行測試的。
???????4)可跟蹤的,該需求可從一個開發階段跟蹤到另一個階段。
???????5)可測量的,該需求是可測量的。P23
???????需求規約的基本性質:
???????1)重要性和穩定性程度:按需求的重要性和穩定性,對需求進行分級。
???????2)可修改的:在不過多地影響其他需求的前提下,可以容易地修改一個單一需求。
3)完整的:沒有被遺漏的需求。
4)一致的:不存在互斥的需求。P28
3、簡述軟件需求的分類。
????答:軟件需求可以分為兩大類:一類是功能需求,一類是非公能需求,而非公能需求可分為性能需求,外部接口需求、設計約束和質量屬性需求。P23
4、舉例說明功能需求和非功能需求之間的基本關系。
???答:非功能需求可作用于一個或多個功能需求,例如
??????????????????????????????????????????????……
作用于
?
其中,非功能需求1作用于功能需求1和功能需求3等;非功能需求2作用于功能需求2等。P24
5、有哪幾種常用的初始需求發現技術?
答:有5種常用的需求發現技術:自悟、交談、觀察、小組會和提煉。P26
6、簡述需求規約的3種基本形式。
??????(1) 非形式化的需求規約。非形式化的需求規約即以一種自然語言來表達需求規約,如同使用一種自然語言寫了一篇文章。
??????(2) 半形式化的需求規約。半形式化的需求規約即以半形式化符號體系(包括術語表、標準化的表達格式等)來表達需求規約。
??????(3)形式化的需求規約。形式化的需求規約即以一種基于良構數學概念的符號體系來編制需求規約,一般往往伴有解釋性注釋的支持。 P29
7、簡述軟件需求規約的內容和作用。
答:軟件需求規約的內容有:引言、總體描述、特定需求、附錄、索引。P28
需求規約的作用可概括為以下4點:
1)需求規約是軟件開發組織和用戶之間一份事實上的技術合同書,是產品功能及其環境的體現。
?????2)對于項目的其余大多數工作,需求規約是一個管理控制點。
?????3)對于產品/系統的設計,需求規約是一個正式的、受控的起始點。
?????4)需求規約是創建產品驗收測試計劃和用戶指南的基礎。P31
8、簡述需求規約在項目開發中的基本作用。
答:需求規約的作用可概括為以下4點:
1)需求規約是軟件開發組織和用戶之間一份事實上的技術合同書,是產品功能及其環境的體現。
?????2)對于項目的其余大多數工作,需求規約是一個管理控制點。
?????3)對于產品/系統的設計,需求規約是一個正式的、受控的起始點。
?????4)需求規約是創建產品驗收測試計劃和用戶指南的基礎。P31
9、簡述需求規約和項目需求的不同。
答:需求規約和項目需求是兩個不同的概念。需求規約是軟件開發組織和用戶之間一份事實上的技術合同書,即關注產品需求,回答“交付給客戶的產品/系統是什么”;而項目需求是客戶和開發者之間有關技術合同——產品/系統需求的理解,應記錄在工作陳述中或其他某一項目文檔中,即關注項目工作與管理,回答“開發組要做的是什么”。P30
第三章 結構化方法
1.基本概念
需求分析:一般來說,分析是系統地使用信息,對一個問題的估算。軟件需求分析是這一概念的特化,即系統化地使用“數據流”、“加工”、“數據存儲”、“數據源”和“數據潭”等術語所表達的信息,對待建系統“是什么”給出一個估算――系統概念模型
軟件設計:在需求分析的基礎上,定義滿足需求所需要的結構,即針對給定的問題,給出該問題的軟件解決方案,確定“怎么做”的問題
數據流圖:表達功能模型的工具,即數據流圖(Dataflow Diagram) 簡稱DFD圖,簡單的說,DFD圖是一種描述數據變換的圖形化工具,其中飲食的元素可以是數據流、數據存儲、加工、數據源和數據潭等
?
變換型數據流圖:具有較明顯的輸入部分和變換(主加工)部分之間的界面變換部分和輸出部分之間界面的數據流圖
?
事務型數據流圖:數據到達一個加工T,該加工T根據輸入數據的值,在其后的基干動作序號(稱為一個事務)中選出一個來執行
?
模塊:執行一個特殊任務的一個過程以及相關的數據結構
?
1.簡答題
2.何謂模塊耦合?簡述模塊耦合的類型。
答:耦合是不同模塊之間相互依賴程序的度量
內容耦合:當一個模塊直接修改或操作另一個模塊的數據,或一個模塊不通過正常入口而轉入到另一個模塊時,
公共耦合:兩個或兩個以上的模塊共同引用一個全局數據項
控制耦合一個模塊通過氣喘吁吁向另一個模塊傳遞一個控制信息,接收信號的模塊根據信號值進行適當的動作
標記耦合:若一個模塊A通過接口向兩個模塊B和C傳遞一個公共參數
數據耦合:模塊之間通過參數來傳遞數據
?
3.何謂模塊內聚?簡述模塊內聚的類型。
答:指一個模塊內部各成分之間相互關聯程度的度量
偶然內聚:一個模塊的各成分之間基本不存在任何關系
邏輯內聚:幾個邏輯上相關的功能被放在同一個模塊中
時間內聚:一個模塊完成的功能必須在同一時間內執行,但這些功能只是因為時間因素關聯在一起
過程內聚:一個模塊內部的處理成分是相關的,而且這些處理必須以特定的次序執行
通信內聚:一個模塊的所有成分都操作同一數據集或生成同一數據集
順序內聚:一個模塊的各個成分和同一個功能密切相關,而且一個成分的輸出作為另一個成分的輸入
功能內聚:最理想的內聚,模塊的所有成分對于完成單一的功能都是基本的。功能內聚的模塊對完成其功能而言是充分必要的
?
?
4.何謂模塊的控制域和模塊的作用域?并舉例說明
控制域:模塊本身以及所有直接或間接從屬于它的模塊的集合。
作用域:受該模塊內的一個判定所影響的所有模塊的影響
?
第四章 面各對象方法-UML
1.基本概念
類及其屬性和操作
類是一組具有相同屬性、操作、關系和語義的對象的描述。類的屬性是類的一個命名特征,該特征是由該類的所有對象所共享、用于表達對象狀態的數據
接口是操作的一個集合,其中每個操作描述了類、構件或子系統的一個服務
關聯及其鏈:關聯是類目之間的一種結構關系,是對一組具有相同結構、相同鏈的描述。鏈是對象之間具有特定語義關系的抽象
泛化:活佛是一般性類目(稱為超類或父類)和它的較為特殊性類目(稱為子類)之間的一種關系,有時稱為”is a kind of ”關系
聚合:聚合是關聯的一種特殊形式,表達的是一種“整體/部分”關系
依賴:依賴是一種使用關系,用于描述一個類目使用另一個類目的信息和服務
2.簡答題
為了表達客觀事物,UML給出了哪些基本術語?
答:為了支持抽象分析和設計中的事物,UML給出了8個基本術語,即類、接口、協作、用況、主動類、構件、制品、結點,并給出了這些基本術語的一些變體。
?
為了表達客觀事物之間的關系,UML給出了哪些基本術語?這些術語之間是什么關系?
關聯、泛化、細化和依賴,以及它們的一些變體
?
什么是對象的構成與表示?并說明。
類是一組具有相同屬性、操作、關系和語義的對象的描述。對象是類的一個實例
?
什么是類圖的構成成分?
答:類圖是可視化地表達系統表態結構模型的工具,通常飲食類、接口、關聯、泛化和依賴
?
什么是順序圖的構成成分?
順序圖是一種交互圖,即由一組對象以及按時序組織的對象之間的關系組成,其中還飲食這些對象之間所發送的消息
?
如何描述對象之間的關聯語義
?
?
用況之間有哪幾種關系?
?
在什么情況下需要建立狀態圖?
狀態圖可用于創建有關系統(或系統成分)的行為生存周期模型,表達有關系紡(或系統成分)的一種動態結構,給出有關系統(或系統成分)在生存期間有哪些階段、每一階段可從事的活動以及對外所呈現的特征等 方面 的信息
?
對象操作和對象狀態之間的關系是什么?
?
同時引入“操作”和“方法”的目的是什么?
答:表達模型化包之間的關系
?
為什么使用包?如何劃分包
?
使用UML可以從那些角度來刻畫一個系統的行為?為什么?
?
何謂順序圖中的控制操作子?試舉例說明。
為了控制交互行為描述的復雜性,以便更清晰地表達順序圖中的復雜控制,給出了個個控制操作子,選擇、條件、并發、迭代操作控制子
?
第五章 面各對象方法-RUP
1.基本概念
RUP的定義及主要特點
RUP是一種軟件開發過程框架,基于面向對象符號體系給出了有關軟件開發過程組織及實施的指導。該框架體現了3個突出特征,即以用況驅動、體系結構為中心以及迭代、增量式開發
?
演化模型與“RUP增量、迭代開發”之間關系
RUP迭代、增量式開發是演化模型的一個變體,即規定了“大的”迭代數量-4個階段,并規定了每次迭代的目標
初使階段:獲得與特定腹部和平臺無關的系統體系結構輪廓,以此建立產品功能范圍;編制實例業務實例,從業務角度指出該項目的價值,減少項目主要的錯誤風險
精華階段:通過捕獲并描述系統的大部分需求,建立系統體系結構基線的第一個版本,主要包括用況模型和分析模型,減少次要的錯誤風險,到該階段未,就能夠估算成本、進步,并能詳細地規劃構造階段
構造階段:通過演化,形成最終的系統體系結構基線,開發完整的系統,確保產品可以開始向客戶交付,即具有初始操作能力
移交階段:確保有一個實在的產品發布給用戶群。期間培訓用戶如何使用該軟件
?
RUP與UML之間關系
RUP與UML是一對“姐妹”,它們構成了一種特定的軟件開發方法學。其中,UML作為一種可視化建模語言,給出了表達事物和事物之間關系的基本術語,給出了多種模型的表達工具;而RUP利用這些術語定義了需求獲取層、系統分析層、設計層、實現層,并給出了實現各層模型之間映射的基本活動以及相關指導
?
什么是特征(Teature)?舉例如何描述它。
從客戶、用戶、計劃者、開發者想法和意愿中搜取特征,形成特征表。特征是一個新的項及其簡要描述
“按不同科目計算平均成績” 計算平均成績:按所學的不同科目計算每一個學生的期末考試平均成績,給出分數段
并描述其狀態(如提議、批準、合并和驗證等)、實施的代價及風險、重要程度以及對其他特征的影響等
特征可作為需求,并被轉換為其它制品
?
需求獲取層及相關概念
需求獲取層目標:使用UML中 的用況、參與者以及依賴等 術語來抽象客觀實際問題,形成系統的需求獲取模型;基本術語:用況、參與者、用于表達用況參與者之間關系的關聯、用于表達況之間的包含和擴展、用于表達參與者之間關系泛化。術語確定了系統用況模型的各種形態
?
?
需求獲取模型的基本組成
使用UML中 的用況、參與者以及依賴等 術語來抽象客觀實際問題,形成系統的需求獲取模型
?
建造一個系統需求獲取模型的活動和任務,以及各活動的輸入和輸出
?
如何描述系統的參與者和用況?舉例說明
參與者:發現參與者與描述參與者:1)之前已經存在業務用況模型,可依據業務模型直接發現一些候選參與者,2)沒有業務用況模型,即使存在領域模型,也需要系統分析人員與客戶一起來標識系統參與者
用況是系統向它的參與者提供結果(值)的功能塊,表達參與者使用系統的方式,因此一個用況可用于規約系統可執行的、與參與者進行交互的一個動作序列,包括其中一些可選動作序列,并且用況還有自己 的屬性
?
?
需求獲取層對以后開發工作的影響?
?
?
需求分析層及相關概念
在系統用況模型的基礎上,創建系統分析模型以及在該分析模型視角下的體系結構描述,系統分析模型是系統的一種概念模型,解決系統用況模型中存在的二義性和不一致性問題,并以一種系統化的形式準確地表達用戶的需求
?
需求分析模型的基本組成
RUP的分析如同結構化分析,其目標之一是在一個特定的抽象層上建立系統分析模型。為此,RUP首先給出了3個術語:分析包、分析類和用況細化,用于表達需求中“大粒度”的概念,開發人員使用這些術語可以規約系統分析中所要使用的信息
分析類:是類的一種衍型,很少有操作和特征標記,而用責任來定義其行為,并且其屬性和關系也是概念性的,包括:邊界類、實體類、控制類
用況細化:是一個針對一個用況,其行為可用多個分析類之間的相互作用來細化,并記為用況細化[分析]
分析包:分析包是一種控制信息組織復雜性的機制,提供了分析制品的一種組織手段,形成了一些可管理的部分。
?
建造一個系統需求分析模型的活動和任務,以及各活動的輸入和輸出
體系結構分析:輸入:用況模型、補充需求、業務模型或領域模型、體系結構描述[用況模型];輸出:分析包[概述]、分析類[概述]、體系結構描述[分析]
細化用況:輸入:用況模型、補充需求、業務模型或領域模型、體系結構描述[分析];輸出:用況細化[分析]、分析類[概述]
對類分析:輸入:用況細化[分析]、分析類[概述] 輸出:分析類[完成]
對包進行分析:輸入:系統體系結構描述[分析]、分析包[概述]輸出:分析類[完成]
?
?
需求分析模型對以后開發工作的影響
?
需求獲取模型與需求分析模型之間比較
?
?
設計層及相關概念
設計目標:定義滿足系統/產品分析模型所規約需求的軟件結構
基本術語:設計子系統、設計類、用況細化[設計]、接口、以及用于表達子系統之間關系的依賴、用于表達設計類之間關系的關聯等 ,這些術語確定了系統設計模型的各種形態
?
設計模型的基本組成
設計子系統、設計類、用況細化[設計]、接口、以及用于表達子系統之間關系的依賴、用于表達設計類之間關系的關聯等 ,這些術語確定了系統設計模型的各種形態
?
?
建造一個系統設計模型的活動和任務,以及各活動的輸入與輸出
體系結構設計:輸入:用況模型、補充需求、分析模型、體系結構描述[分析模型角度];輸出:
子系統[概述]、接口[概述]、設計類[概述]、部署模型[概述]、體系結構描述[設計]
設計用況:輸入:用況模型、補充需求、分析模型、部署模型;
輸出: 用況[設計-實現]、設計類[概述]、子系統[概述]、接口[概述]
對類設計:輸入: 用況[設計-實現]、設計類[概述]、接口[概述] 、分析類[完成];輸出:設計類[完成]
設計子系統:體系結構描述[設計]、子系統[概述]、接口[概述];輸出:子系統[完成]、接口[完成]
?
如何處理需求中所捕獲的非功能需求。
?
?
需求分析模型與設計模型之間的比較
?
?
?
?
第六章 軟件生存周期過程與管理
1.基本概念
軟件測試:有規程地發現錯誤的過程,其中錯誤(ERROR):與所期望的設計之間的偏差,該偏差可能產生不期望的系統行為或失效。失效(FAILURE):與所規約的系統執行之間的偏差。失效是系統故障或錯誤的后果。故障(FAULT):導致錯誤或失效的不正常條件。故障可以是偶然性的或是系統性的。
?
測試用例:為了發現程序中的故障而專門設計的一組數據或腳本
測試覆蓋率:定量描述一個或一組測試的效率
?
2.簡答題
測試過程模型,并分析這一模型在軟件測試技術研究以及實踐中的作用
答:軟件測試是一個有程序的過程,包括測試設計、測試執行、以及測試結果比較等
?
軟件測試與調度的區別
答:
2).測試以已知條件開始,使用預告定義的程序且有預知的結果,不可預見的僅是程序是否通過測試
3).測試是有計劃的,并要進行測試設計。高度是不受時間約束的
4).測試是發現錯誤、改正錯誤、重新測試的過程。調試是一個推理過程
5).的執行是有規程的。調 試的執行往往要求程序員進行必要推理
6).測試經常由獨立的測試組在不了解軟件技術的條件下完成的。高度必須由了解詳細設計的程序員完成
7)大多數測試的執行和設計可由工具支持。調試時,程序員能利用的工具主要是調試器
?
程序流程圖的作用及構成
答:著重于過程屬性描述
?
簡述語名覆蓋、分支覆蓋、條件組合覆蓋、路徑覆蓋的含義及它們之間的關系
答:路徑覆蓋:執行所有可能穿過程序控制流程的路徑
語句覆蓋:至少執行程序中所有語句一次
分支覆蓋:至少將程序中的每一個分支執行一次
條件覆蓋:指每個判定中的所有可能的條件取值至少執行一次
條件組合覆蓋:設計足夠測試,使每個判定中的所有可能的條件聚會組合至少執行一次
存在以下關系:
語句覆蓋《分支覆蓋《條件組合覆蓋《。。。路徑覆蓋
?
?
簡術單元測試、集成測試、有效性測試的含義及它們之間的區別
答:單元測試:主檢驗軟件設計的最小單元――模塊。該測試以詳細設計文檔為指導,測試模塊內的重要控制路徑。
集成測試:是軟件組裝的一個系統化技術,其目標是發現與接口有關的錯誤
有效性測試:發現軟件實現的功能與需求規格說明書不一致的錯誤
?
簡述路徑測試技術、事務流測技術的主要依據
答:一個依據程序邏輯結構,一個依據軟件行為描述
?
簡述程序流程圖與事務流程圖之間的主要區別,并分析這些區別的主要原因
答:1)基本模型元素所表達的語義不同
2)一個事務不等 同于路徑測試中一條路徑,可能在中間某處就完成了某一用戶工作,終結了一個事務
3).事務流程圖中的分支和節點可能是一個復雜的過程
?
?
簡述白盒測試技術的要點,并舉例說明
答:白盒測試技術依據程序的邏輯結構,以控制流程圖作為被測對象建模工具,其中涉及過程塊、分支、節點、鏈以及路徑,并針對測試民,給出了4種覆蓋策略:語名覆蓋、分支覆蓋、條件組合覆蓋和路徑覆蓋,它們之間具有偏序關系,并且可根據項目需求給出其他覆蓋策略
?
?
?
事務流測試技術的要點,并舉例說明
答:事務流測試技術是一種功能測試技術,目前提出了很多功能測試技術,如定義域測試技術、等價類測試技術以及基于因果圖的測試技術等,統稱為黑盒子測試技術。黑盒測試將被測軟件看成黑盒子,只通過外部的輸入和輸出來發現軟件中的錯誤,因此黑盒測試是一種基于軟件規約的測試
?
第七章 軟件生存周期過程與管理
1.基本概念
軟件生存周期過程:軟件生存周期是軟件產品或系統的一系列相關活動的全周期。從形成概念開媽,歷經開發、交付使用、在使用中不斷修訂和演化,直到最后被淘汰,讓位于新的軟件產品
?
軟件生存周期模型:是一個包括軟件產品開發、運行和維護中有關過程、活動和任務的框架,覆蓋了從該系統的需求定義到系統的使用終止
?
過程管理:過程規則與管理是軟件項目管理的一項重要工作。沒有過程規劃就淡不上過程管理乃至項目管理,沒有過程管理就不可能存在有效的軟件工程
?
?
2.簡述軟件開發中的過程類,以及它們的基本作用和它們之間的基本關系
答:分為3類
基本過程:那些軟件生產直接相關的活動集,分5個過程:獲取過程、供應過程、開發過程、運行過程和維護過程
支持過程:有關各方面按他們的目標所從事的一系列相關支持活動集,有助于提高系統或軟件產品的質量,分為:文檔過程、配置管理過程、質量保證過程、驗證過程、確認過程、聯合評審過程、審計過程和問題解決過程等
組織過程:與軟件生產組織有關的活動集,分管理過程、基礎設施過程、培訓過程、改進過程
?
?
3.在ISO/IEC12207-2008中如何描述一個過程?舉例說明
答:1).為獲取方獲取一個軟件產品或服務,為供應方開發、運行、維護、提供和銷毀一個軟件產品,建立了一種軟件生存周期框架,包含過程、活動和任務,并通過過程分類、過程描述,給出它們之間的內在關系
2).為軟件生存周期過程的定義、控制和改進提供了一個過程,即生存周期模型管理過程
?
供應過程:為獲取方提供滿足所協商需求的產品或服務
軟件實現過程:軟件實現過程是為了生產一個已規約系統元素,作為一個軟件產品或服務而實現
軟件需求分析過程:建立系統軟件部分的需求
軟件體系結構設計:為軟件的實現及其可以按需求進行驗證,提供一種設計
軟件驗證過程:證實一個過程或項目的每一個軟件工作產品/服務是否正確地反映所規約的需求
軟件確認過程:證實所期望的軟件工作產品是否滿足其需求???
?
?
4.什么是軟件開發特定的過程類?舉例說明
?
?
5.什么是驗證和確認?簡述它們的作用和區別
答:驗證:證實一個過程或項目的每一個軟件工作產品/服務是否正確地反映所規約的需求
驗證和確認是有區別的。
驗證是通過提供的客觀證據,證實規約的需求是否得以滿足
確認是通過提供的客觀證據,證實有關特定期望的使用或應用的需求是否得以滿足
軟件確認過程:證實所期望的軟件工作產品是否滿足其需求
?
?
6.簡述瀑布模型以及可適應的情況
瀑布模型將軟件生存周期的各項活動規定為按固定順序而連接的若干階段工作,形如瀑布流水,最終得到產品
適應情況:需求已被很好的理解,并且開發組織非常熟悉為實現這一模型所需求的過程
?
7.簡述演化模型以及可適應的情況
答:表達了一種彈性的過程模式,由一些小的開發步組成,每一步歷經需求分析、設計、實現和驗證,產生軟件產品的一個增量,通過這些迭代,最終完成軟件產品的開發
?
主要針對事先不能完整定義需求的軟件開發
?
?
8.簡述增量模型的優缺點
答:優點1)第一個可交付版本所需要的成本和時間是較少的,從而可減少開發由增量表示的小系統承擔的風險
2)由于很快發布第一個版本,因此可以減少用戶需求的變更
3)允許增量投資,即在項目開始時可以僅對一個或兩個增量投資
?
缺點:1)如果沒有對用戶的變更要求進行規劃,那么產生的初始增量可能會造成后來增量的不穩定
2)如果需求不像早期思考的那樣穩定和完整,那么一些增量就可能需要重新開發,重新發布
3)由于進度和配置的復雜性,可能會增大管理成本,超出組織的能力
?
?
9簡述螺旋模型以及它與其它模型之間的主要區別
答:螺旋模型是瀑布模型與深化模型的基礎上,加入兩者所忽略的風險分析所建立的一種軟件開發模型
?
螺旋模型關注解決問題的基本步驟,即標識問題,標識一些可選方案,選擇一個最佳方案,遵循動作步驟并實施后續工作,突出特征,在開發的迭代中實際上只有一個迭代過程真正開發了可交付的軟件
2)與深化模型和增量模型相比,同樣使用了瀑布模型作為一個嵌入的過程,即分析、設計、編碼、實現和維護的過程,并且在框架和全局體系結構方面是等同的。但是,螺旋模型所關注的階段以及它們的活動是不同的,如增加一些管理活動和支持活動。盡管增量模型也有一些管理活動,但它基于以下假定:需求是最基本的、并且是唯一的風險源,因而在螺旋模型中增大了決策和風險的空間,螺旋模型擴大了增量模型的管理范圍。
如果項目的開發風險很大或客戶不能確定系統需求,在更廣泛的意義上來講,還包括一個系統或系統類型的要求,這時螺旋模型就是一個好的生存周期模型
?
?
?
?
第八章 集成化能力成熟度模型
一、術語解釋
過程域:是一個業務域中一束相關實踐,當它們一起得以實現時,就滿足被認為對該過程域的改善具有重要作用的一組條件。
過程改善:是指人為設計的一個活動程序,其目的是改進組織的過程性能和成熟度,并改進這一程序的結果
專用目標:每一個過程域中都有一個或多個“專用目標”,用于描述該過程域必須呈現的一些獨有特征
共用目標:每一個過程域中都有一個或多個“共用目標”,用于描述實現制度化的該過程必須呈現的特征
專用實踐:每一個過程域中都有一個或多個“專用實踐”,這些專用實踐被認為對于達到該過程域的專用目標是重要活動,即期望以專用實踐所描述的活動,會導致達到一個過程域的專用目標
共用實踐:每一個過程域中都有一個或多個“共用實踐”,這些共用實踐被認為對于達到該過程域相關的共用目標是重要活動
能力等級:是指單一過程域中已達到的過程改善,能力等級是為了管理,對過程改善程序所設定的幾個“臺階”
成熟度等級:是指達到預先定義的一組過程域所有目標的一種過程改善等級
2.簡答題
CMMI提出所基于的基本思想
答:該模型基于過程途徑思想,通過過程把軟件質量的3個支撐點――受訓的人員、規程和方法、工具和設備進行集成,以開發所期望的系統/產品。為此,CMMI緊緊圍繞開發、維護和運行,把經過證明的“最佳實踐“放在一個結構中。該結構有乃至于指導組織確定其過程的發送優先次序;有乃至于指導這些改善的實施,以提高其過程能力和成熟度,并且還支持其它領域(如獲取和服務)能力成熟度模型開發。
?
什么是過程制度化?在CMMI把過程制度化分幾個等級?簡要回答每一等級主要特征
?
?
簡述CMMI模型支持兩種過程改善路徑
答:CMMI提供了兩種改善路徑,一是稱為能力等級是一種過程改善路徑,該路徑可使組織針對單一過程域不斷改善該過程域
二是稱為成熟度等級也是一種過程改善路徑,該路徑可使組織通過關注一組過程域不斷改善一組相關過程域
?
簡述CMMI模型的模型部件及部件間關系
組圖
?
?
簡述專用實踐與共用實踐關系
答:專用實踐:每一個過程域中都有一個或多個“專用實踐”,這些專用實踐被認為對于達到該過程域的專用目標是重要活動,即期望以專用實踐所描述的活動,會導致達到一個過程域的專用目標
共用實踐:每一個過程域中都有一個或多個“共用實踐”,這些共用實踐被認為對于達到該過程域相關的共用目標是重要活動,例如,對共有目標“該過程予以制度化,使之成為一個已管理過程“而言,一個共用實踐是”為該過程的執行、工作產品的開發以及該過程的服務,提供充足的資源“。
之所以稱為“共用實踐“,是因為同一實踐可應用于多個過程。
?
簡述專用實踐與共用實踐之間的區別區別與聯系
答:
?
簡述每一成熟度等級所飲食的過程域
答
?
?
簡述每一成熟度等級所包含的過程域。
答:在成熟度等級,把開發、維擴、運行中的過程分為4個組。
?
3.簡述項目規劃過程域的專用目標與專用實踐
答:專用目標1:SG1建立估算,4個專用實踐
???SP1.1估算項目規模,SP1.2 建立工作產品和任務屬性的估算SP1.3定義項目生存周期SP1.4確定工作量和成本的估算
專用目標2:SG2 開發項目計劃,7個專用實踐:
SP2.1建立預算和進度,SP2.2標識項目風險SP2.3規劃數據管理SP2.4規劃項目資源SP2.5規劃需要的知識和技能SP2.6規劃利益攸關方參與SP2.7建立項目計劃
專用目標3:SG3獲得對該計劃的承諾:
SP3.1評審該項目的計劃SP3.2調和工作和資源等級,使之一致。SP3.3獲得計劃承諾
?
4.簡述開發過程的專用目標與專用實踐
答:專用目標1:SG1開發客戶需求,2個專用實踐
?SP1.1引出要求SP1.2開發客戶需求
???專用目標2:SG2開發產品需求,3個專用實踐
SP2.1 建立產品和產品構件的需求SP2.2分配產品構件需求SP2.3標識接口需求
???專用目標3:SG3分析并驗證需求,5個專用實踐
SP3.1建立操作概念和場景SP3.2建立所需功能的定義SP3.3分析需求SP3.4分析需求,達到權衡SP3.5確認需求
?
?
5.簡述共用目標2及其相關的共用實踐
共用目標2:GG2把過程制度化為一個已管理過程,10個共用實踐
GP2.1建立組織策略GP2.2規劃該過程GP2.3提供資源GP2.4指定責任GP2.5培訓人員GP2.6管理配置GP2.7標識相關利益方的參與GP2.8監控該過程GP2.9客觀地評估過程的符合性GP2.10以高層管理的視覺評審狀態
?
?
6.簡述各共用目標及其相關的共用實踐
?
?
簡述共用目標2及其相關的共用實踐
答
總結
以上是生活随笔為你收集整理的《02333软件工程课后习题答案-2011版 王立福》的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: vue-socket.io 对IE浏览器
- 下一篇: 高层建筑电气设计说明书