軟件工程各章知識(shí)點(diǎn)_第1頁
軟件工程各章知識(shí)點(diǎn)_第2頁
軟件工程各章知識(shí)點(diǎn)_第3頁
軟件工程各章知識(shí)點(diǎn)_第4頁
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡(jiǎn)介

1、軟件危機(jī):在計(jì)算機(jī)軟件的開發(fā)與維護(hù)當(dāng)中所遇到的問題。軟件工程的五個(gè)面向理論:(1)面向流程分析:就是面向流程進(jìn)行需求分析。(2)面向數(shù)據(jù)分析:就是面向元數(shù)據(jù)進(jìn)行概要設(shè)計(jì)。(3)面向?qū)ο髮?shí)現(xiàn):就是面向?qū)ο筮M(jìn)行詳細(xì)設(shè)計(jì)和編程實(shí)現(xiàn)。(4)面向功能測(cè)試:就是面向功能進(jìn)行單元測(cè)試、集成測(cè)試、Alpha測(cè)試和Beta測(cè)試。(5)面向過程管理:就是面向過程對(duì)軟件生存周期各個(gè)階段進(jìn)行管理和控制。螺旋模型:引入了風(fēng)險(xiǎn)驅(qū)動(dòng)的思想,適合大型復(fù)雜的系統(tǒng)。原型模型:在初步需求分析之后,馬上向客戶展示一個(gè)軟件產(chǎn)品原型,對(duì)客戶進(jìn)行培訓(xùn),讓客 戶試用,在試用中收集客戶意見,根據(jù)客戶意見立刻修改原型,之后再讓客戶試用,反復(fù)循環(huán)

2、幾次, 宜到客戶確認(rèn)為止。原到模型通過向用戶提供原型獲取用戶的反響,使開發(fā)出的軟件能夠真正 反映用戶的需求.原型模型優(yōu)點(diǎn):開發(fā)速度快,用戶意見反響實(shí)時(shí),有利于開發(fā)商在短時(shí)間內(nèi)推廣并實(shí)施多個(gè)客 戶??焖僭头ǎ哼m用于有效適應(yīng)用戶的動(dòng)態(tài)變化,及早地提供工作軟件。瀑布模型特點(diǎn):以文檔為驅(qū)動(dòng),適合于需求明確的工程。軟件生存周期:立項(xiàng)(或簽合同)、下達(dá)任務(wù)書、需求分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼實(shí)現(xiàn)、軟件測(cè)試、軟件發(fā)布 與實(shí)施、軟件維護(hù)、版本更新或退役。軟件開發(fā)進(jìn)度書:用進(jìn)度表示,明確每個(gè)階段需要完成的任務(wù)的一張表。軟件需求規(guī)格說明書的規(guī)格:(1)引言:編寫目的、背景說明、術(shù)語定義及參考資料等。(2)概述

3、主要功能、約束條件或特殊需求。(3)數(shù)據(jù)流圖與數(shù)據(jù)字典。(4)用戶接口、硬件接口及軟件接口。(5)性能需求、屬性等。(6)其它需求,如數(shù)據(jù)庫、操作及故障處理等。軟件開發(fā)過程中抽取和整理用戶的需求、數(shù)據(jù)需求分析的最終目標(biāo):導(dǎo)出系統(tǒng)的詳細(xì)的邏輯模型,通常用數(shù)據(jù)流圖、E-R圖、狀態(tài)轉(zhuǎn)換 圖、數(shù)據(jù)字典和主要的處理算法描述這個(gè)邏輯模型。面向?qū)ο蟮娜N方法?(對(duì)象、過程、數(shù)據(jù))E-R圖包括哪三個(gè)局部?(實(shí)體、實(shí)體間聯(lián)系、實(shí)體屬性)需求分析的主要任務(wù):準(zhǔn)確定義未來系統(tǒng)的目標(biāo),確定為了滿足用戶的需要系統(tǒng)必須做什 么。模塊的耦合程度越弱,說明模塊獨(dú)立性越強(qiáng)。模塊的作用域:應(yīng)該在控制域內(nèi)一個(gè)模塊的控制域,是模塊本

4、身及其所有附屬(及所有可供他調(diào) 用的下級(jí)模塊)。一個(gè)模塊的作用域,是受這個(gè)模塊中決策影響的其他模塊。軟件結(jié)構(gòu)圖的形態(tài)特征反映重入率 扇入(軟件結(jié)構(gòu)的深度.寬度.扇入.及扇出應(yīng)適當(dāng))。軟件結(jié)構(gòu)圖不出故障、持續(xù)運(yùn)行的可用性概要設(shè)計(jì)得到的是優(yōu)化后的軟件結(jié)構(gòu)圖。PAD圖(問題分析圖)的優(yōu)點(diǎn)之一:支持逐步細(xì)化、從左到右的完成。模塊的內(nèi)聚性最高:模塊的內(nèi)聚反映模塊內(nèi)部聯(lián)系的緊密程度。如果一個(gè)模塊內(nèi)部相關(guān)性很高, 而且都是為了同一個(gè)功能,我們就說它的內(nèi)聚程度高。總體設(shè)計(jì)時(shí),加強(qiáng)模塊間的聯(lián)系模塊的定義:是數(shù)據(jù)說明、可執(zhí)行語句等對(duì)象的集合。程序問題程序問題5.1、軟件建模的三個(gè)模型:功能模型、業(yè)務(wù)模型、數(shù)據(jù)模型

5、。成功的測(cè)試指:發(fā)現(xiàn)了至今沒有發(fā)現(xiàn)的錯(cuò)誤。測(cè)試計(jì)劃在何時(shí)實(shí)行?1)why為什么要進(jìn)行這些測(cè)試;2) whal測(cè)試哪些方面,不同階段的工作內(nèi)容;3)when測(cè)試不同階段的起止時(shí)間;4) where相應(yīng)文檔,缺陷的存放位置,測(cè)試環(huán)境等;5)who工程有關(guān)人員組成,安排哪些測(cè)試人員進(jìn)行測(cè)試6) how如何去做,使用哪些測(cè)試工具以及測(cè)試方法進(jìn)行測(cè)試。測(cè)試時(shí),覆蓋哪一個(gè)最好?(1)為每個(gè)等價(jià)類編號(hào);(2)設(shè)計(jì)一個(gè)新的測(cè)試方案,以盡可能多的覆蓋尚未被覆蓋的有效等價(jià)類,重復(fù)這一步驟,直到所有有效 等價(jià)類被覆蓋為止。(3)設(shè)計(jì)一個(gè)新的測(cè)試方案,使它覆蓋一個(gè)尚未被覆蓋的無效等價(jià)類,重復(fù)這一步驟,直到所有無效等價(jià)

6、 類被覆蓋為止。I語句覆蓋:語句覆蓋就是設(shè)計(jì)假設(shè)干個(gè)測(cè)試用例,運(yùn)行被測(cè)試程序,使得每一條可執(zhí)行語句至少執(zhí)行 一次;2判定覆蓋(也稱為分支覆蓋):設(shè)計(jì)假設(shè)干個(gè)測(cè)試用例,運(yùn)行所測(cè)程序,使程序中每個(gè)判斷的取真分 支和取假分支至少執(zhí)行一次;3條件覆蓋:設(shè)計(jì)足夠多的測(cè)試用例,運(yùn)行所測(cè)程序,使程序中每個(gè)判斷的每個(gè)條件的每個(gè)可能取值 至少執(zhí)行一次;4判定.條件覆蓋:設(shè)計(jì)足夠多的測(cè)試用例,運(yùn)行所測(cè)程序,使程序中每個(gè)判斷的每個(gè)條件的所有可 能取值至少執(zhí)行一次,并且每個(gè)可能的判斷結(jié)果也至少執(zhí)行一-次,換句話說,即是要求各個(gè)判斷的所 有可能的條件取值組合至少執(zhí)行一次;5條件組合測(cè)試:設(shè)計(jì)足夠多的測(cè)試用例,運(yùn)行所測(cè)程

7、序,使程序中每個(gè)判斷的所有可能的條件取值 組合至少執(zhí)行一次;6路徑測(cè)試:設(shè)計(jì)足夠多的測(cè)試用例,運(yùn)行所測(cè)程序,要覆蓋程序中所有可能的路徑。軟件測(cè)試的目的:發(fā)現(xiàn)軟件錯(cuò)誤。白盒測(cè)試是根據(jù)內(nèi)部邏輯進(jìn)行測(cè)試的。測(cè)試用例:是為某個(gè)特殊目標(biāo)而編制的一組測(cè)試輸入、執(zhí)行條件以及預(yù)期結(jié)果,以便測(cè)試某個(gè) 程莊路徑或核實(shí)是否滿足某個(gè)特定需求。黑盒測(cè)試?也稱為功能測(cè)試,它著眼于程序的外部特征,而不考慮程序的內(nèi)部邏輯結(jié)構(gòu)。測(cè)試者把 被測(cè)程序看成一個(gè)黑盒,不用關(guān)心程序的內(nèi)部結(jié)構(gòu)。黑盒測(cè)試是在程序接口處進(jìn)行測(cè)試,它只檢查程 序功能是否能按照規(guī)格說明書的規(guī)定正常使用,程序是否能適當(dāng)?shù)亟邮蛰斎霐?shù)據(jù)產(chǎn)生正確的輸出信 息,并且保持外

8、部信息(如數(shù)據(jù)庫或文件)的完整性。黑盒測(cè)試主要采用的技術(shù)有:等價(jià)分類法、邊沿值分析法、錯(cuò)誤推測(cè)法和因果圖等技術(shù)。軟件維護(hù):1改正性維護(hù):滿足用戶對(duì)已開發(fā)產(chǎn)品的性能與運(yùn)行環(huán)境不斷提高的要求,進(jìn)而到達(dá)延長(zhǎng)軟件壽命的 目的。2適應(yīng)性維護(hù):對(duì)程序使用期間發(fā)現(xiàn)的程序錯(cuò)誤進(jìn)行診斷和改正的過程,配合變化了的環(huán)境進(jìn)行修改 軟件的活動(dòng);3完善性維護(hù):滿足用戶在使用過程中提出增加新的功能或修改已有功能的建議而進(jìn)行的工作;4預(yù)防性維護(hù):為了改善未來的可維護(hù)性或可靠性而修改軟件的工作。軟件維護(hù)哪一個(gè)最重要?系統(tǒng)應(yīng)錯(cuò)誤而發(fā)生錯(cuò)誤的運(yùn)行的軟件:容錯(cuò)軟件。軟件配置管理協(xié)調(diào)開發(fā),使錯(cuò)誤降為最小并最有效地提高生產(chǎn)效率,降低混亂

9、。.讀者同意“四種開發(fā)方法”和“五個(gè)面向理論”的提法嗎?為什么?“四種開發(fā)方法”是指“面向過程的方法、面向?qū)ο蟮姆椒ā⒚嫦驍?shù)據(jù)的方法、形式化方法面向過 程的方法來源于面向過程的程序設(shè)計(jì);面向?qū)ο蟮姆椒▉碓从诿嫦驅(qū)ο蟮某绦蛟O(shè)計(jì);面向數(shù)據(jù)的方法 就是面向元數(shù)據(jù)的方法,它來源于關(guān)系數(shù)據(jù)庫程序設(shè)計(jì);形式化方法來源于離散數(shù)學(xué)中的集合運(yùn)算和 邏輯運(yùn)算。四種方法各適用于不同的場(chǎng)合,各有優(yōu)缺點(diǎn),互相促進(jìn),構(gòu)成開發(fā)方法論的多極化世界?!拔鍌€(gè)面向理論”是指“面向流程分析、面向數(shù)據(jù)設(shè)計(jì)、面向?qū)ο髮?shí)現(xiàn)、面向功能測(cè)試、面向過程管 理“,它是在綜合“四種開發(fā)方法”各自的優(yōu)點(diǎn)之后提出的軟件工程實(shí)施理論,是對(duì)前者的繼承與開展

10、。 總之,上述提法既精彩又實(shí)用。.如何用面向數(shù)據(jù)的編程方法進(jìn)行數(shù)據(jù)處理?首先是在數(shù)據(jù)庫服務(wù)器上編制存儲(chǔ)過程和觸發(fā)器,其次是用建、/:視圖與運(yùn)行視圖的方法進(jìn)行大量的 數(shù)據(jù)統(tǒng)計(jì)處理,最后是用SQL語句進(jìn)行各種查詢統(tǒng)計(jì)和報(bào)表輸出。.需求分析的基本思路是什么?需求分析的思路,是從用戶的功能需求(系統(tǒng)需要做什么)出發(fā),由系統(tǒng)的業(yè)務(wù)流程和數(shù)據(jù)流程 導(dǎo)出系統(tǒng)的業(yè)務(wù)模型和功能模型,識(shí)別出系統(tǒng)的元數(shù)據(jù)和中間數(shù)據(jù),為今后設(shè)計(jì)數(shù)據(jù)模型做好充分準(zhǔn) 備。同時(shí),對(duì)系統(tǒng)的軟、硬件環(huán)境配置,開發(fā)工具,開發(fā)工期,費(fèi)用,開發(fā)進(jìn)度,培訓(xùn),系統(tǒng)風(fēng)險(xiǎn)進(jìn) 行評(píng)估。.業(yè)界存在哪三種需求分析方法?你認(rèn)為哪種更好?業(yè)界存在三種需求分析方法:面

11、向功能分析、面向?qū)ο蠓治?、面向?shù)據(jù)分析。以上這三種方法,各自適用于不同的目標(biāo)系統(tǒng)。目前時(shí)尚的方法是面向?qū)ο螅嫦蛑黧w和面向 方法。總的來說,對(duì)于系統(tǒng)軟件和應(yīng)用軟件來說,面向功能需求分析的方法簡(jiǎn)單明了,而面向?qū)ο蟮?需求分析方法那么負(fù)責(zé)抽象。對(duì)于以關(guān)系數(shù)據(jù)庫為平臺(tái)的信息系統(tǒng)軟件來說,面向數(shù)據(jù)需求分析方法的 特點(diǎn)是抓住了本質(zhì)。但是,這三種分析方法都離不開面向流程分析這根總線:功能、對(duì)象、數(shù)據(jù)都是 在流程中產(chǎn)生的,又都是為流程服務(wù)的。.概要設(shè)計(jì)說明書和詳細(xì)設(shè)計(jì)說明書有何區(qū)別?概要設(shè)計(jì)說明書,是要覆蓋需求規(guī)格說明書的全部?jī)?nèi)容,二是要作為指導(dǎo)詳細(xì)設(shè)計(jì)的依據(jù)。 他注重框架上的設(shè)計(jì),它是軟件系統(tǒng)的總體結(jié)

12、構(gòu)設(shè)計(jì)、全局?jǐn)?shù)據(jù)庫(包括數(shù)據(jù)結(jié)構(gòu))設(shè)計(jì)、外部接口 設(shè)計(jì)、功能部件分配設(shè)計(jì)、部件之間的內(nèi)部接口設(shè)計(jì),它要覆蓋需求規(guī)格說明書中的功能點(diǎn)列表、性 能點(diǎn)列表、接口列表。詳細(xì)設(shè)計(jì)說明書,一是要覆蓋概要設(shè)計(jì)說明書的全部?jī)?nèi)容,而是要作為指導(dǎo)程序設(shè)計(jì)的依據(jù),他 注重微觀上和框架內(nèi)的設(shè)計(jì),它是各子系統(tǒng)的公用部件實(shí)現(xiàn)設(shè)計(jì)、專業(yè)部件實(shí)現(xiàn)設(shè)計(jì)、存儲(chǔ)過程實(shí)現(xiàn) 設(shè)計(jì)、觸發(fā)器實(shí)現(xiàn)設(shè)計(jì)、外部接口實(shí)現(xiàn)設(shè)計(jì)、部門角色授權(quán)設(shè)計(jì)和其他詳細(xì)設(shè)計(jì)等。兩者的設(shè)計(jì)者不同,在一般情況下,概要設(shè)計(jì)說明書是由系統(tǒng)設(shè)計(jì)師負(fù)責(zé),詳細(xì)設(shè)計(jì)說明書那么 由高級(jí)程序員負(fù)責(zé)。.怎樣理解”面向數(shù)據(jù)方法用在數(shù)據(jù)庫服務(wù)器層次上系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn),面向?qū)ο蠓椒ㄓ迷诔龜?shù)據(jù)

13、庫 服務(wù)器層次外的其他層次上系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn),面向過程方法用在其他兩種方法本身內(nèi)部函數(shù)的設(shè)計(jì) 與實(shí)現(xiàn)”?上述提法是實(shí)事求是的。我們知道,所謂的“面向過程的方法是傳統(tǒng)的軟件工程方法,面向?qū)ο蟮姆?法是現(xiàn)代軟件工程方法”的觀點(diǎn)是淺薄的。這三種方法不是互相孤立、亳無聯(lián)系、彼此對(duì)立的,而是 相互幫助、取長(zhǎng)補(bǔ)短、彼此有關(guān)的。三種設(shè)計(jì)方法各有所長(zhǎng),所以各有應(yīng)用空間。又各有所短,所以 各有局限性。我們只能揚(yáng)長(zhǎng)避短、為我所用。一般而言,對(duì)于一個(gè)大型信息系統(tǒng)的建設(shè),由于其分析、設(shè)計(jì)、實(shí)現(xiàn)、測(cè)試、維護(hù)的重點(diǎn)是數(shù)據(jù)庫 服務(wù)器上的數(shù)據(jù),所以在實(shí)施的過程中,在宏觀上仍然要遵守“五個(gè)面向”的實(shí)施理論,即“面向流程 分析、面向數(shù)據(jù)設(shè)計(jì)、面向?qū)ο髮?shí)現(xiàn)、面向功能測(cè)試、面向過程管理”。.請(qǐng)說明“三個(gè)模型”的定義及三者之間的關(guān)系。功能模型是描述系統(tǒng)能做什么,即對(duì)系統(tǒng)的功能、性能、接口和界面進(jìn)行定義。業(yè)務(wù)模型是描述系統(tǒng)在何時(shí)、何地、由何角色、按什么業(yè)務(wù)規(guī)那么去做,以及做的步驟或流程,即對(duì) 系統(tǒng)的操作流程進(jìn)行定義。數(shù)據(jù)模型是描述系統(tǒng)工作前的數(shù)據(jù)來自何處,工作中的數(shù)據(jù)存到什么地方,工作后的數(shù)據(jù)放到何

溫馨提示

  • 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)論