2022年軟件工程導(dǎo)論復(fù)習(xí)重點(diǎn)總結(jié)很全,推薦文檔_第1頁
2022年軟件工程導(dǎo)論復(fù)習(xí)重點(diǎn)總結(jié)很全,推薦文檔_第2頁
2022年軟件工程導(dǎo)論復(fù)習(xí)重點(diǎn)總結(jié)很全,推薦文檔_第3頁
2022年軟件工程導(dǎo)論復(fù)習(xí)重點(diǎn)總結(jié)很全,推薦文檔_第4頁
2022年軟件工程導(dǎo)論復(fù)習(xí)重點(diǎn)總結(jié)很全,推薦文檔_第5頁
已閱讀5頁,還剩43頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、第 1章軟件工程學(xué)概述1.1 軟件危機(jī)1.1.1 軟件危機(jī)的介紹軟件危機(jī) (軟件蕭條、軟件困擾 :是指在計(jì)算機(jī)軟件的開發(fā)和維護(hù)過程中所遇到的一系列嚴(yán)重問題。軟件危機(jī)包含下述兩方面的問題: 如何開發(fā)軟件 ,滿足對(duì)軟件日益增長(zhǎng)的需求; 如何維護(hù)數(shù)量不斷膨脹的已有軟件。軟件危機(jī)的典型表現(xiàn) : (1對(duì)軟件開發(fā)成本和進(jìn)度的估計(jì)常常很不準(zhǔn)確; (2用戶對(duì) “ 已完成的 ” 軟件系統(tǒng)不滿意的現(xiàn)象經(jīng)常發(fā)生; (3軟件產(chǎn)品的質(zhì)量往往靠不住; (4軟件常常是不可維護(hù)的 ; (5軟件通常沒有適當(dāng)?shù)奈臋n資料; (6軟件成本在計(jì)算機(jī)系統(tǒng)總成本中所占的比例逐年上升; (7軟件開發(fā)生產(chǎn)率提高的速度,遠(yuǎn)遠(yuǎn)跟不上計(jì)算機(jī)應(yīng)用迅速

2、普及深入的趨勢(shì)。1.1.2 產(chǎn)生軟件危機(jī)的原因(1與軟件本身的特點(diǎn)有關(guān)(2與軟件開發(fā)與維護(hù)的方法不正確有關(guān)精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 1 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 1 頁,共 48 頁 - - - - - - - - -1.1.3 消除軟件危機(jī)的途徑對(duì)計(jì)算機(jī)軟件有正確的認(rèn)識(shí)。認(rèn)識(shí)到軟件開發(fā)是一種組織良好、管理嚴(yán)密、各類人員協(xié)同配合、共同完成的工程項(xiàng)目。應(yīng)該推廣使用在實(shí)踐中總結(jié)出來的開發(fā)軟件的成功技術(shù)和方法,并繼續(xù)研

3、究探索。應(yīng)該開發(fā)和使用更好的軟件工具。總之,為了解決軟件危機(jī) ,既要有技術(shù)措施 (方法和工具 ,又要有必要的組織管理措施。1.2 1.2.1 軟件工程的介紹軟件工程 :是指導(dǎo)計(jì)算機(jī)軟件開發(fā)和維護(hù)的一門工程學(xué)科。采用工程的概念、原理、技術(shù)和方法來開發(fā)與維護(hù)軟件,把經(jīng)過時(shí)間考驗(yàn)而證明正確的管理技術(shù)和當(dāng)前能夠得到的最好的技術(shù)方法結(jié)合起來,以經(jīng)濟(jì)地開發(fā)出高質(zhì)量的軟件并有效地維護(hù)它,這就是軟件工程。 (期中考軟件工程的本質(zhì)特性 : 軟件工程關(guān)注于大型程序的構(gòu)造軟件工程的中心課題是控制復(fù)雜性軟件經(jīng)常變化開發(fā)軟件的效率非常重要和諧地合作是開發(fā)軟件的關(guān)鍵軟件必須有效地支持它的用戶精品學(xué)習(xí)資料 可選擇p d f

4、 - - - - - - - - - - - - - - 第 2 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 2 頁,共 48 頁 - - - - - - - - -在軟件工程領(lǐng)域中是由具有一種文化背景的人替具有另一種文化背景的人創(chuàng)造產(chǎn)品1.2.2 軟件工程的基本原理用分階段的生命周期計(jì)劃嚴(yán)格管理堅(jiān)持進(jìn)行階段評(píng)審實(shí)行嚴(yán)格的產(chǎn)品控制采用現(xiàn)代程序設(shè)計(jì)技術(shù)結(jié)果應(yīng)能清楚地審查開發(fā)小組的人員應(yīng)該少而精承認(rèn)不斷改進(jìn)軟件工程實(shí)踐的必要性1.2.3 軟件工程方法學(xué)軟件工程包括技術(shù)和管理兩方面的內(nèi)容。軟件工程方法

5、學(xué) 3 要素:方法、工具、過程1.傳統(tǒng)方法學(xué) (生命周期方法學(xué)或結(jié)構(gòu)化范型強(qiáng)調(diào)自頂向下2.面向?qū)ο蠓椒▽W(xué) 強(qiáng)調(diào)主動(dòng)地多次反復(fù)迭代面向?qū)ο蠓椒▽W(xué) 4 個(gè)要點(diǎn) :對(duì)象、類、繼承、消息1.3 軟件生命周期 (必考三個(gè)時(shí)期八個(gè)階段 :軟件生命周期由軟件定義、軟件開發(fā)和運(yùn)行維護(hù)(也稱為軟件維護(hù)三個(gè)時(shí)期組成 ,每個(gè)時(shí)期又進(jìn)一步劃分成若干個(gè)階段。精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 3 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 3 頁,共 48 頁 -

6、- - - - - - - -三個(gè)時(shí)期 :八個(gè)階段 : 軟件生命周期軟件定義軟件開發(fā)軟件維護(hù)問題定義可行性研究需求分析概要設(shè)計(jì)詳細(xì)設(shè)計(jì)編碼和單元測(cè)試綜合測(cè)試運(yùn)行維護(hù)系統(tǒng)設(shè)計(jì)系統(tǒng)實(shí)現(xiàn)1.4 軟件過程1.4.1 瀑布模型精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 4 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 4 頁,共 48 頁 - - - - - - - - -1.4.2 快速原型模型1.4.3 增量模型1.4.4 螺旋模型1.4.5 噴泉模型第

7、2章可行性研究2.1可行性研究的任務(wù)可行性研究的目的 : 不是解決問題 ,而是確定問題是否值得去解決??尚行匝芯康膶?shí)質(zhì) : 進(jìn)行一次大大壓縮簡(jiǎn)化了的系統(tǒng)分析和設(shè)計(jì)的過程,也就是在較高層次上以較抽象的方式進(jìn)行的系統(tǒng)分析和設(shè)計(jì)的過程。可行性研究的內(nèi)容 : 首先進(jìn)一步分析和澄清問題定義,導(dǎo)出系統(tǒng)的邏輯模型 ; 然后從系統(tǒng)邏輯模型出發(fā) ,探索若干種可供選擇的主要解法(即系統(tǒng)實(shí)現(xiàn)方案 ; 對(duì)每種解法都研究它的可行性,至少應(yīng)該從三方面研究每種解法的可行性。主要方面 : 技術(shù)可行性 ,經(jīng)濟(jì)可行性 ,操作可行性 , 其他方面 : 運(yùn)行可行性 ,法律可行性 , 精品學(xué)習(xí)資料 可選擇p d f - - - - -

8、 - - - - - - - - - 第 5 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 5 頁,共 48 頁 - - - - - - - - -2.2 可行性研究過程1.復(fù)查系統(tǒng)規(guī)模和目標(biāo)2. 研究目前正在使用的系統(tǒng)3. 導(dǎo)出新系統(tǒng)的高層邏輯模型4. 進(jìn)一步定義問題5. 導(dǎo)出和評(píng)價(jià)供選擇的解法6. 推薦行動(dòng)方針7. 草擬開發(fā)計(jì)劃8. 書寫文檔提交審查2.3 系統(tǒng)流程圖系統(tǒng)流程圖 :是概括地描繪物理系統(tǒng)的傳統(tǒng)工具。表達(dá)的是數(shù)據(jù)在系統(tǒng)各部件之間流動(dòng)的情況 ,而不是對(duì)數(shù)據(jù)進(jìn)行加工處理的控制過程。2.

9、4數(shù)據(jù)流圖2.4.1符號(hào)基本符號(hào) : 精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 6 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 6 頁,共 48 頁 - - - - - - - - -數(shù)據(jù)存儲(chǔ) :數(shù)據(jù)存儲(chǔ)是處于靜止?fàn)顟B(tài)的數(shù)據(jù); 數(shù)據(jù)流 :數(shù)據(jù)流是處于運(yùn)動(dòng)中的數(shù)據(jù)。附加符號(hào) : 星號(hào)(*:表示“ 與” 關(guān)系加號(hào)(+:表示“ 或” 關(guān)系異或(:表示互斥關(guān)系2.5數(shù)據(jù)字典數(shù)據(jù)流圖和數(shù)據(jù)字典共同構(gòu)成系統(tǒng)的邏輯模型。2.5.1 數(shù)據(jù)字典的內(nèi)容數(shù)據(jù)字典的組成

10、 :數(shù)據(jù)流數(shù)據(jù)流分量 (即數(shù)據(jù)元素 數(shù)據(jù)存儲(chǔ)處理2.5.2定義數(shù)據(jù)的方法方法:對(duì)數(shù)據(jù)自頂向下分解。精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 7 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 7 頁,共 48 頁 - - - - - - - - -數(shù)據(jù)組成方式 (三種基本類型 :順序選擇重復(fù)附加類型 :可選符號(hào): =意思是等價(jià)于 (或定義為 ; +意思是和 (即,連接兩個(gè)分量 ; 意思是或 (即,從方括弧內(nèi)列出的若干個(gè)分量中選擇一個(gè),通常用 “| ”

11、號(hào)隔開供選擇的分量 ; 意思是重復(fù) (即,重復(fù)花括弧內(nèi)的分量 ;常常使用上限和下限進(jìn)一步注釋表示重復(fù)的花括弧。( 意思是可選 (即,圓括弧里的分量可有可無。2.5.3數(shù)據(jù)字典的實(shí)現(xiàn)計(jì)算機(jī)實(shí)現(xiàn)人工實(shí)現(xiàn)2.6成本/效益分析2.6.1 成本估計(jì) :1. 代碼行技術(shù) 2. 任務(wù)分解技術(shù)3. 自動(dòng)估計(jì)成本技術(shù)2.6.2 成本/效益分析的方法成本/效益分析涉及的 4 個(gè)概念 : 1. 貨幣的時(shí)間價(jià)值2. 投資回收期3. 純收入精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 8 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f -

12、 - - - - - - - - - - - - - 第 8 頁,共 48 頁 - - - - - - - - -4. 投資回收率 :p = f1/( 1 + j + f2/( 1 + j 2 + + fn( 1 + j n第 3章需求分析需求分析的任務(wù) : 需求分析是軟件定義時(shí)期的最后一個(gè)階段,它的基本任務(wù)是準(zhǔn)確地回答“ 系統(tǒng)必須做什么 ?” 這個(gè)問題。確定系統(tǒng)必須完成哪些工作,也就是對(duì)目標(biāo)系統(tǒng)提出完整、準(zhǔn)確、清晰、具體的要求。系統(tǒng)分析員應(yīng)該寫出軟件需求規(guī)格說明書,以書面形式準(zhǔn)確地描述軟件需求3.1需求分析的任務(wù)確定對(duì)系統(tǒng)的綜合要求分析系統(tǒng)的數(shù)據(jù)要求導(dǎo)出系統(tǒng)的邏輯模型修正系統(tǒng)開發(fā)計(jì)劃3.1.

13、1確定對(duì)系統(tǒng)的綜合要求1.功能需求2. 性能需求3. 可靠性和可用性需求4. 出錯(cuò)處理需求5. 接口需求精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 9 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 9 頁,共 48 頁 - - - - - - - - -6. 約束7. 逆向需求8. 將來可能提出的要求3.1.2 分析系統(tǒng)的數(shù)據(jù)要求建立數(shù)據(jù)模型 er圖描繪數(shù)據(jù)結(jié)構(gòu) 層次方框圖和 warnier 圖數(shù)據(jù)結(jié)構(gòu)規(guī)范化3.2 與用戶溝通獲取需求的方法訪談:1.

14、 正式訪談 2. 非正式訪談 3. 調(diào)查表 4. 情景分析技術(shù)面向數(shù)據(jù)流自頂向下求精簡(jiǎn)易的應(yīng)用規(guī)格說明技術(shù)快速建立軟件原型 :(1 第四代技術(shù) (4gl(2 可重用的軟件構(gòu)件 (3 形式化規(guī)格說明和原型環(huán)境3.3分析建模與規(guī)格說明3.3.1 分析建模需求分析過程應(yīng)該建立3 種模型 :數(shù)據(jù)模型功能模型行為模型數(shù)據(jù)字典是分析模型的核心實(shí)體-聯(lián)系圖用于建立數(shù)據(jù)模型的圖形數(shù)據(jù)流圖是建立功能模型的基礎(chǔ)精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 10 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - -

15、- - - - - - - - 第 10 頁,共 48 頁 - - - - - - - - -狀態(tài)轉(zhuǎn)換圖是行為建模的基礎(chǔ)3.4實(shí)體-聯(lián)系圖數(shù)據(jù)模型中包含 3 種相互關(guān)聯(lián)的信息 :數(shù)據(jù)對(duì)象、數(shù)據(jù)對(duì)象的屬性、數(shù)據(jù)對(duì)象彼此間相互連接的關(guān)系3.4狀態(tài)轉(zhuǎn)換圖3.6.1狀態(tài)狀態(tài)圖分類 : 表示系統(tǒng)循環(huán)運(yùn)行過程 ,通常不關(guān)心循環(huán)是怎樣啟動(dòng)的。表示系統(tǒng)單程生命期 ,需要標(biāo)明初始狀態(tài)和最終狀態(tài)。3.6.2事件事件就是引起系統(tǒng)做動(dòng)作或(和轉(zhuǎn)換狀態(tài)的控制信息。3.6.3符號(hào)3.7其他圖形工具3.7.1 層次方框圖3.7.2warnier圖3.7.3ipo圖精品學(xué)習(xí)資料 可選擇p d f - - - - - - -

16、- - - - - - - 第 11 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 11 頁,共 48 頁 - - - - - - - - -3.8驗(yàn)證軟件需求 (重點(diǎn)3.8.1 從哪些方面驗(yàn)證軟件需求的正確性一致性完整性現(xiàn)實(shí)性有效性第五章總體設(shè)計(jì)5.1設(shè)計(jì)過程由兩個(gè)主要階段組成 : 系統(tǒng)設(shè)計(jì)階段 ,確定系統(tǒng)的具體實(shí)現(xiàn)方案:設(shè)想供選擇的方案選取合理的方案推薦最佳方案結(jié)構(gòu)設(shè)計(jì)階段 ,確定軟件結(jié)構(gòu) :功能分解設(shè)計(jì)軟件結(jié)構(gòu)設(shè)計(jì)數(shù)據(jù)庫制定測(cè)試文檔書寫文檔審查和復(fù)查5.2設(shè)計(jì)原理5.2.1 模塊化模塊化的作

17、用 : 采用模塊化原理可以使軟件結(jié)構(gòu)清晰,不僅容易設(shè)計(jì)也容易閱讀和理解。模塊化使軟件容易測(cè)試和調(diào)試,因而有助于提高軟件的可靠性。模塊化能夠提高軟件的可修改性。模塊化也有助于軟件開發(fā)工程的組織管理。5.2.2抽象5.2.3逐步求精精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 12 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 12 頁,共 48 頁 - - - - - - - - -5.2.4信息隱藏和局部化5.2.5 模塊獨(dú)立盡量使用數(shù)據(jù)耦合 , 少用

18、控制耦合和特征耦合 , 限制公共環(huán)境耦合的范圍 , 完全不用內(nèi)容耦合。七種內(nèi)聚的優(yōu)劣評(píng)分結(jié)果 : 高內(nèi)聚 :功能內(nèi)聚順序內(nèi)聚中內(nèi)聚 :通信內(nèi)聚過程內(nèi)聚低內(nèi)聚 :時(shí)間內(nèi)聚邏輯內(nèi)聚偶然內(nèi)聚5.3啟發(fā)規(guī)則1.改進(jìn)軟件結(jié)構(gòu)提高模塊獨(dú)立性2.模塊規(guī)模應(yīng)該適中3.深度、寬度、扇出和扇入都應(yīng)適當(dāng)精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 13 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 13 頁,共 48 頁 - - - - - - - - -4.模塊的作用域應(yīng)

19、該在控制域之內(nèi)5.力爭(zhēng)降低模塊接口的復(fù)雜程度6. 設(shè)計(jì)單入口單出口的模塊7. 模塊功能應(yīng)該可以預(yù)測(cè)5.4 描繪軟件結(jié)構(gòu)的圖形工具5.4.1 層次圖和 hipo 圖1. 層次圖 (h 圖精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 14 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 14 頁,共 48 頁 - - - - - - - - -層次圖用來描繪軟件的層次結(jié)構(gòu)。很適于在自頂向下設(shè)計(jì)軟件的過程中使用。2.hipo圖5.4.2結(jié)構(gòu)圖5.5面向數(shù)據(jù)流的

20、設(shè)計(jì)方法結(jié)構(gòu)化設(shè)計(jì)方法 (簡(jiǎn)稱 sd 方法,也就是基于數(shù)據(jù)流的設(shè)計(jì)方法。5.5.1概念面向數(shù)據(jù)流的設(shè)計(jì)方法把信息流映射成軟件結(jié)構(gòu),信息流的類型決定了映射的方法。信息流有兩種類型:變換流事務(wù)流第 6章詳細(xì)設(shè)計(jì)6.1 結(jié)構(gòu)程序設(shè)計(jì)經(jīng)典的結(jié)構(gòu)程序設(shè)計(jì) : 只允許使用順序、 if-then-else 型分支和 do-while 型循環(huán)這 3種基本控制結(jié)構(gòu) ; 擴(kuò)展的結(jié)構(gòu)程序設(shè)計(jì) : 如果除了上述 3 種基本控制結(jié)構(gòu)之外 ,還允許使用 do-case 型多分支結(jié)構(gòu)和do-until 型循環(huán)結(jié)構(gòu) ; 修正的結(jié)構(gòu)程序設(shè)計(jì) : 再加上允許使用 leave( 或 break 結(jié)構(gòu)。6.2人機(jī)界面設(shè)計(jì)6.2.1設(shè)

21、計(jì)問題精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 15 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 15 頁,共 48 頁 - - - - - - - - -設(shè)計(jì)人機(jī)界面過程中會(huì)遇到的4 個(gè)問題 : 系統(tǒng)響應(yīng)時(shí)間 :長(zhǎng)度易變性用戶幫助設(shè)施 :集成的幫助設(shè)施附加的幫助設(shè)施出錯(cuò)信息處理命令交互6.2.3 人機(jī)界面設(shè)計(jì)指南一般交互指南信息顯示指南數(shù)據(jù)輸入指南6.3過程設(shè)計(jì)的工具6.3.1 程序流程圖 (程序框圖程序流程圖的主要缺點(diǎn) : 程序流程圖本質(zhì)上不

22、是逐步求精的好工具,它誘使程序員過早地考慮程序的控制流程 ,而不去考慮程序的全局結(jié)構(gòu)。程序流程圖中用箭頭代表控制流,因此程序員不受任何約束 ,可以完全不顧結(jié)構(gòu)程序設(shè)計(jì)的精神 ,隨意轉(zhuǎn)移控制。程序流程圖不易表示數(shù)據(jù)結(jié)構(gòu)。6.3.2盒圖(n-s 圖盒圖具有下述特點(diǎn) : 精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 16 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 16 頁,共 48 頁 - - - - - - - - -功能域明確。不可能任意轉(zhuǎn)移控制。很

23、容易確定局部和全程數(shù)據(jù)的作用域。很容易表現(xiàn)嵌套關(guān)系 ,也可以表示模塊的層次結(jié)構(gòu)。6.3.3 pad 圖它用二維樹形結(jié)構(gòu)的圖來表示程序的控制流,將這種圖翻譯成程序代碼比較容易。pad 圖的主要優(yōu)點(diǎn)如下 : 使用表示結(jié)構(gòu)化控制結(jié)構(gòu)的pad 符號(hào)設(shè)計(jì)出來的程序必然是結(jié)構(gòu)化程序。pad 圖所描繪的程序結(jié)構(gòu)十分清晰。pad 圖表現(xiàn)程序邏輯易讀、易懂、易記。容易將 pad 圖轉(zhuǎn)換成高級(jí)語言源程序 ,這種轉(zhuǎn)換可用軟件工具自動(dòng)完成。即可表示程序邏輯 ,也可描繪數(shù)據(jù)結(jié)構(gòu)。精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 17 頁,共 48 頁 - - - - - - -

24、 - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 17 頁,共 48 頁 - - - - - - - - -pad 圖的符號(hào)支持自頂向下、逐步求精方法的使用。6.3.4 判定表判定表卻能夠清晰地表示復(fù)雜的條件組合與應(yīng)做的動(dòng)作之間的對(duì)應(yīng)關(guān)系。判定表的缺點(diǎn) : 判定表的含義不是一眼就能看出來的,初次接觸這種工具的人理解它需要有一個(gè)簡(jiǎn)短的學(xué)習(xí)過程。當(dāng)數(shù)據(jù)元素的值多于兩個(gè)時(shí),判定表的簡(jiǎn)潔程度也將下降。6.3.5 判定樹判定樹的優(yōu)點(diǎn) : 它的形式簡(jiǎn)單 ,一眼就可以看出其含義 ,因此易于掌握和使用。判定樹的缺點(diǎn) : 簡(jiǎn)潔性不如判定表 ,數(shù)據(jù)元素的同一個(gè)值往

25、往要重復(fù)寫多遍,而且越接近樹的葉端重復(fù)次數(shù)越多。畫判定樹時(shí)分枝的次序可能對(duì)最終畫出的判定樹的簡(jiǎn)潔程度有較大影響。6.3.6 過程設(shè)計(jì)語言 (偽碼偽代碼的基本控制結(jié)構(gòu) : 精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 18 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 18 頁,共 48 頁 - - - - - - - - -簡(jiǎn)單陳述句結(jié)構(gòu) :避免復(fù)合語句。判定結(jié)構(gòu) :if_then_else 或 case_of結(jié)構(gòu)。選擇結(jié)構(gòu) :while_do 或 r

26、epeat_until 結(jié)構(gòu)。pdl 的優(yōu)點(diǎn) : 可以作為注釋直接插在源程序中間。有助于保持文檔和程序的一致性,提高了文檔的質(zhì)量。可以使用普通的正文編輯程序或文字處理系統(tǒng),很方便地完成 pdl 的書寫和編輯工作。已經(jīng)有自動(dòng)處理程序存在 ,而且可以自動(dòng)由 pdl 生成程序代碼。pdl 的缺點(diǎn) : 不如圖形工具形象直觀 ,描述復(fù)雜的條件組合與動(dòng)作間的對(duì)應(yīng)關(guān)系時(shí),不如判定表清晰簡(jiǎn)單。6.4 面向數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)方法面向數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)方法的最終目標(biāo)是得出對(duì)程序處理過程的描述。6.4.1jackson 精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 19 頁,共

27、 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 19 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 20 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 20 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 21 頁,共

28、 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 21 頁,共 48 頁 - - - - - - - - -a 由 b、c、d 3 個(gè)元素順序組成根據(jù)條件a 是 b 或 c 或 d 中的某一個(gè) a 由 b出現(xiàn) n 次(n 0 組成6.4.2 改進(jìn)的 jackson圖6.4.3 jackson方法6.5 程序復(fù)雜程度的定量度量6.5.1 mccabe方法1. 流圖(程序圖2. 計(jì)算環(huán)形復(fù)雜度的方法v(g=流圖中的區(qū)域數(shù)v(g=e-n+2 其中 e 是流圖中的邊數(shù) ,n 是結(jié)點(diǎn)數(shù)v(g=p+1 其中 p是流圖中

29、判定結(jié)點(diǎn)的數(shù)目6.5.2 halstead方法精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 22 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 22 頁,共 48 頁 - - - - - - - - -令 n1 為程序中運(yùn)算符出現(xiàn)的總次數(shù),n2 為操作數(shù)出現(xiàn)的總次數(shù) ,程序長(zhǎng)度 n 定義為: n=n1+n2 程序中使用的不同運(yùn)算符 (包括關(guān)鍵字的個(gè)數(shù)n1,以及不同操作數(shù) (變量和常數(shù)的個(gè)數(shù) n2。預(yù)測(cè)程序長(zhǎng)度的公式如下: h = n1 log2n1 +

30、 n2 log2n2 預(yù)測(cè)程序中包含錯(cuò)誤的個(gè)數(shù)的公式如下: e = n log2 (n1+n2/3000 第 7章實(shí)現(xiàn)編碼和測(cè)試統(tǒng)稱為實(shí)現(xiàn)。7.1編碼7.1.1 選擇程序設(shè)計(jì)語言主要的實(shí)用標(biāo)準(zhǔn) : 系統(tǒng)用戶的要求可以使用的編譯程序可以得到的軟件工具工程規(guī)模程序員的知識(shí)軟件可移植性要求精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 23 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 23 頁,共 48 頁 - - - - - - - - -軟件的應(yīng)用領(lǐng)域7

31、.1.2 編碼風(fēng)格1. 程序內(nèi)部的文檔 :恰當(dāng)?shù)臉?biāo)識(shí)符適當(dāng)?shù)淖⒔獬绦虻囊曈X組織2. 數(shù)據(jù)說明3. 語句構(gòu)造4. 輸入輸出5. 效率:程序運(yùn)行時(shí)間存儲(chǔ)器效率輸入輸出的效率7.2軟件測(cè)試基礎(chǔ)7.2.1 軟件測(cè)試的目標(biāo)測(cè)試是為了發(fā)現(xiàn)程序中的錯(cuò)誤而執(zhí)行程序的過程; 好的測(cè)試方案是極可能發(fā)現(xiàn)迄今為止尚未發(fā)現(xiàn)的錯(cuò)誤的測(cè)試方案; 成功的測(cè)試是發(fā)現(xiàn)了至今為止尚未發(fā)現(xiàn)的錯(cuò)誤的測(cè)試。7.2.3 測(cè)試方法黑盒測(cè)試 (功能測(cè)試 : 把程序看作一個(gè)黑盒子 ; 完全不考慮程序的內(nèi)部結(jié)構(gòu)和處理過程; 是在程序接口進(jìn)行的測(cè)試。白盒測(cè)試 (結(jié)構(gòu)測(cè)試 : 把程序看成裝在一個(gè)透明的盒子里; 精品學(xué)習(xí)資料 可選擇p d f - -

32、- - - - - - - - - - - - 第 24 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 24 頁,共 48 頁 - - - - - - - - -測(cè)試者完全知道程序的結(jié)構(gòu)和處理算法; 按照程序內(nèi)部的邏輯測(cè)試程序,檢測(cè)程序中的主要執(zhí)行通路是否都能按預(yù)定要求正確工作。7.2.4 測(cè)試步驟1. 模塊測(cè)試 (單元測(cè)試保證每個(gè)模塊作為一個(gè)單元能正確運(yùn)行; 發(fā)現(xiàn)的往往是編碼和詳細(xì)設(shè)計(jì)的錯(cuò)誤。2. 子系統(tǒng)測(cè)試把經(jīng)過單元測(cè)試的模塊放在一起形成一個(gè)子系統(tǒng)來測(cè)試; 著重測(cè)試模塊的接口。3. 系統(tǒng)測(cè)試把

33、經(jīng)過測(cè)試的子系統(tǒng)裝配成一個(gè)完整的系統(tǒng)來測(cè)試; 發(fā)現(xiàn)的往往是軟件設(shè)計(jì)中的錯(cuò)誤,也可能發(fā)現(xiàn)需求說明中的錯(cuò)誤; 不論是子系統(tǒng)測(cè)試還是系統(tǒng)測(cè)試,都兼有檢測(cè)和組裝兩重含義,通常稱為集成測(cè)試。4. 驗(yàn)收測(cè)試 (確認(rèn)測(cè)試把軟件系統(tǒng)作為單一的實(shí)體進(jìn)行測(cè)試; 它是在用戶積極參與下進(jìn)行的,而且可能主要使用實(shí)際數(shù)據(jù)(系統(tǒng)將來要處理的信息進(jìn)行測(cè)試 ; 發(fā)現(xiàn)的往往是系統(tǒng)需求說明書中的錯(cuò)誤。精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 25 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - -

34、- 第 25 頁,共 48 頁 - - - - - - - - -5. 平行運(yùn)行7.2.5 測(cè)試階段的信息流輸入信息有兩類 : 軟件配置 ,包括需求說明書、設(shè)計(jì)說明書和源程序清單等; 測(cè)試配置 ,包括測(cè)試計(jì)劃和測(cè)試方案。7.3 單元測(cè)試單元測(cè)試集中檢測(cè)模塊 ; 單元測(cè)試和編碼屬于軟件過程的同一個(gè)階段; 可以應(yīng)用人工測(cè)試和計(jì)算機(jī)測(cè)試這樣兩種不同類型的測(cè)試方法; 單元測(cè)試主要使用白盒測(cè)試技術(shù),對(duì)多個(gè)模塊的測(cè)試可以并行地進(jìn)行。7.3.1 測(cè)試重點(diǎn)模塊接口局部數(shù)據(jù)結(jié)構(gòu)重要的執(zhí)行通路出錯(cuò)處理通路邊界條件7.3.2 代碼審查由審查小組正式進(jìn)行測(cè)試稱為代碼審查; 一次審查會(huì)上可以發(fā)現(xiàn)許多錯(cuò)誤,可以減少系統(tǒng)驗(yàn)

35、證的總工作量。精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 26 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 26 頁,共 48 頁 - - - - - - - - -7.3.3 計(jì)算機(jī)測(cè)試驅(qū)動(dòng)程序是一個(gè) “ 主程序 ”,它接收測(cè)試數(shù)據(jù) ,傳送給被測(cè)試的模塊 ,并且印出有關(guān)的結(jié)果。存根程序代替被測(cè)試的模塊所調(diào)用的模塊。它使用被它代替的模塊的接口,可能做最少量的數(shù)據(jù)操作,印出對(duì)入口的檢驗(yàn)或操作結(jié)果,并且把控制歸還給調(diào)用它的模塊。7.4 集成測(cè)試集成測(cè)試

36、是測(cè)試和組裝軟件的系統(tǒng)化技術(shù),主要目標(biāo)是發(fā)現(xiàn)與接口有關(guān)的問題。由模塊組裝成程序時(shí)有兩種方法: 7.4.3 不同集成測(cè)試策略的比較混合策略 : 改進(jìn)的自頂向下測(cè)試方法混合法7.4.4 回歸測(cè)試7.5 確認(rèn)測(cè)試確認(rèn)測(cè)試也稱為驗(yàn)收測(cè)試 ,它的目標(biāo)是驗(yàn)證軟件的有效性。7.5.3 alpha和 beta測(cè)試精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 27 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 27 頁,共 48 頁 - - - - - - - - -a

37、lpha 測(cè)試是在受控的環(huán)境中進(jìn)行的。beta測(cè)試是軟件在開發(fā)者不能控制的環(huán)境中的“ 真實(shí)” 應(yīng)用。1.接口測(cè)試2.路徑測(cè)試3.功能測(cè)試4. 健壯性測(cè)試5. 性能測(cè)試6. 用戶界面測(cè)試7. 信息安全測(cè)試8. 壓力測(cè)試9. 可靠性測(cè)試10. 安裝/反安裝測(cè)試確認(rèn)測(cè)試也稱為驗(yàn)收測(cè)試,它的目標(biāo)是驗(yàn)證軟件的有效性。alpha 測(cè)試是在受控的環(huán)境中進(jìn)行的。beta測(cè)試是軟件在開發(fā)者不能控制的環(huán)境中的“ 真實(shí)” 應(yīng)用。4.接口測(cè)試5.路徑測(cè)試6.功能測(cè)試4. 健壯性測(cè)試5. 性能測(cè)試精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 28 頁,共 48 頁 - -

38、- - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 28 頁,共 48 頁 - - - - - - - - -6. 用戶界面測(cè)試7. 信息安全測(cè)試8. 壓力測(cè)試9. 可靠性測(cè)試10. 安裝/反安裝測(cè)試7.6 白盒測(cè)試技術(shù)7.6.1 邏輯覆蓋語句覆蓋判定覆蓋 :比語句覆蓋強(qiáng) ,但對(duì)程序邏輯的覆蓋程度仍不高。條件覆蓋 :判定覆蓋不一定包含條件覆蓋,條件覆蓋也不一定包含判定覆蓋。判定/條件覆蓋 :有時(shí)判定 /條件覆蓋也并不比條件覆蓋更強(qiáng)。條件組合覆蓋 :條件組合覆蓋標(biāo)準(zhǔn)的測(cè)試數(shù)據(jù)并不一定能使程序中的每條路徑都執(zhí)行到。6. 點(diǎn)覆蓋 (語

39、句覆蓋標(biāo)準(zhǔn)相同7. 邊覆蓋 (判定覆蓋一致8. 路徑覆蓋精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 29 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 29 頁,共 48 頁 - - - - - - - - -7.6.2 控制結(jié)構(gòu)測(cè)試覆蓋1. 基本路徑測(cè)試基本路徑測(cè)試是 tom mccabe提出的一種白盒測(cè)試技術(shù)。首先計(jì)算程序的環(huán)形復(fù)雜度; 以該復(fù)雜度為指南定義執(zhí)行路徑的基本集合; 2.條件測(cè)試從該基本集合導(dǎo)出的測(cè)試用例可保證程序中的每條語句至少執(zhí)行

40、一次,而且每個(gè)條件在執(zhí)行時(shí)都將分別取真、假兩種值。3. 循環(huán)測(cè)試循環(huán)測(cè)試是一種白盒測(cè)試技術(shù),它專注于測(cè)試循環(huán)結(jié)構(gòu)的有效性。在結(jié)構(gòu)化的程序中通常只有3 種循環(huán) ,即簡(jiǎn)單循環(huán)、串接循環(huán)和嵌套循環(huán)。7.7 黑盒測(cè)試技術(shù)7.7.1 等價(jià)劃分7.7.2 邊界值分析7.7.3 錯(cuò)誤推測(cè)7.9 軟降可靠性7.9.1 基本概念軟件可靠性 : 程序在給定的時(shí)間間隔內(nèi) ,按照規(guī)格說明書的規(guī)定成功地運(yùn)行的概率。精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 30 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - -

41、 - - - - - - - 第 30 頁,共 48 頁 - - - - - - - - -軟件的可用性 : 程序在給定的時(shí)間點(diǎn) ,按照規(guī)格說明書的規(guī)定 ,成功地運(yùn)行的概率。第 8章維護(hù)軟件工程的目的是要提高軟件的可維護(hù)性,減少軟件維護(hù)所需要的工作量,降低軟件系統(tǒng)的總成本。8.1 軟件維護(hù)的定義軟件維護(hù) :在軟件已經(jīng)交付使用之后 ,為了改正錯(cuò)誤或滿足新的需要而修改軟件的過程。可分為 4 項(xiàng)活動(dòng) : 改正性維護(hù)適應(yīng)性維護(hù)完善性維護(hù)預(yù)防性維護(hù)8.2軟件維護(hù)的特點(diǎn)8.2.1 結(jié)構(gòu)化維護(hù)與非結(jié)構(gòu)化維護(hù)差別巨大8.2.2 維護(hù)的代價(jià)高昂8.2.3 維護(hù)的問題很多8.3軟件維護(hù)過程1.維護(hù)組織2.維護(hù)報(bào)告

42、精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 31 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 31 頁,共 48 頁 - - - - - - - - -3.維護(hù)的事件流4.保存維護(hù)記錄5.評(píng)價(jià)維護(hù)活動(dòng)8.4 軟件的可維護(hù)性決定軟件可維護(hù)性的因素主要有7 個(gè): 可理解性可測(cè)試性可修改性可靠性可移植性可使用性效率第 9章面向?qū)ο蠓椒▽W(xué)引論9.1面向?qū)ο蠓椒▽W(xué)概述9.1.1面向?qū)ο蠓椒▽W(xué)要點(diǎn)(1認(rèn)為客觀世界是由各種對(duì)象組成的,任何事物都是對(duì)象(2把所有對(duì)

43、象都劃分成各種類對(duì)象,每個(gè)對(duì)象類都定義了一組數(shù)據(jù)和一組方法(3按照子類和父類的關(guān)系 ,把若干個(gè)對(duì)象類組成一個(gè)層次結(jié)構(gòu)的系統(tǒng)(4對(duì)象彼此之間僅能通過傳遞消息相互聯(lián)系精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 32 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 32 頁,共 48 頁 - - - - - - - - -9.1.2 面向?qū)ο箝_發(fā)方法面向?qū)ο?=對(duì)象+類 +繼承+通信9.1.4 面向?qū)ο蠓椒ńM成面向?qū)ο蟮姆治雒嫦驅(qū)ο蟮脑O(shè)計(jì)面向?qū)ο蟮某绦蛟O(shè)計(jì)9

44、.1.6 面向?qū)ο蠓椒ǖ膬?yōu)點(diǎn)1.與人類習(xí)慣的思維方式一致2.穩(wěn)定性好3.可重用性好4.可維護(hù)性好5.較易開發(fā)大型軟件產(chǎn)品9.2 面向?qū)ο蟮母拍?.2.1 對(duì)象是客觀事物或概念的抽象表述,即對(duì)客觀存在的事物的描述統(tǒng)稱為對(duì)象,對(duì)象可以是事、物、或抽象概念,是將一組數(shù)據(jù)和使用該數(shù)據(jù)的一組基本操作或過程封裝在一起的實(shí)體。對(duì)象的特點(diǎn)(1 以數(shù)據(jù)為中心。精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 33 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 33 頁,共

45、48 頁 - - - - - - - - -(2 對(duì)象是主動(dòng)的。(3 實(shí)現(xiàn)了數(shù)據(jù)封裝。(4 本質(zhì)上具有并行性。(5 模塊獨(dú)立性好。9.2.2 類是一組具有相同屬性和相同操作的對(duì)象的集合。9.2.3 實(shí)例由某個(gè)特定的類所描述的一個(gè)具體的對(duì)象。9.2.4 消息向?qū)ο蟀l(fā)出的服務(wù)請(qǐng)求 (互相聯(lián)系、協(xié)同工作等。一個(gè)消息包含3 個(gè)部分 :接收消息的對(duì)象 ,消息名 ,消息變?cè)?.2.5 方法方法就是對(duì)象所能執(zhí)行的操作,也就是類中所定義的服務(wù)。9.2.6 屬性屬性就是類中所定義的數(shù)據(jù),它是對(duì)客觀世界實(shí)體所具有的性質(zhì)的抽象。9.2.7 封裝對(duì)象封裝了對(duì)象的數(shù)據(jù)以及對(duì)這些數(shù)據(jù)的操作。9.2.8 繼承(i 繼承是子

46、類自動(dòng)地共享基類中定義的數(shù)據(jù)和方法的機(jī)制。精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 34 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 34 頁,共 48 頁 - - - - - - - - -單重繼承 :子類僅從一個(gè)父類繼承屬性和方法多重繼承 :子類可從多個(gè)父類繼承屬性和方法9.2.9 多態(tài)性9.2.10 重載9.3 面向?qū)ο蠼?(ii 面向?qū)ο箝_發(fā)軟件 ,需要建立 3種形式的模型。對(duì)象模型。描述系統(tǒng)數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)。動(dòng)態(tài)模型。描述系統(tǒng)控制結(jié)構(gòu)

47、執(zhí)行操作。功能模型。描述系統(tǒng)功能 數(shù)值變化。9.4 對(duì)象模型9.4.1類圖的基本符號(hào) (i 1. 定義類精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 35 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 35 頁,共 48 頁 - - - - - - - - -2.定義屬性可見性屬性名 :類型 = 缺省值 性質(zhì)串 可見性 (visibility 表示該屬性對(duì)類外的元素是否可見。分為: public(+公有的 ,即模型中的任何類都可以訪問該屬性。priva

48、te(-私有的 ,表示不能被別的類訪問。protected(# 受保護(hù)的 ,表示該屬性只能被該類及其子類訪問。如果可見性未申明,表示其可見性不確定。3. 定義操作可見性操作名 (參數(shù)表 :返回類型 性質(zhì)串 精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 36 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 36 頁,共 48 頁 - - - - - - - - -9.4.2 表示關(guān)系的符號(hào) (i 9.4.2.1 關(guān)聯(lián)(i 關(guān)聯(lián)表示兩個(gè)類的對(duì)象之間存在某種語

49、義上的聯(lián)系。(1普通關(guān)聯(lián)遞歸關(guān)聯(lián) :一個(gè)類與本身有關(guān)聯(lián)關(guān)系(3限定關(guān)聯(lián)精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 37 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 37 頁,共 48 頁 - - - - - - - - -(4關(guān)聯(lián)類精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 38 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - -

50、 - - - - 第 38 頁,共 48 頁 - - - - - - - - -9.4.2.2 聚集(i (1共享聚集如果在聚集關(guān)系中處于部分方的對(duì)象可同時(shí)參與多個(gè)處于整體方對(duì)象的構(gòu)成,則該聚集稱為共享聚集。(2組合聚集如果部分類完全隸屬于整體類,部分與整體共存 ,整體不存在了部分也會(huì)隨之消失,則該聚集稱為組合聚集。9.4.2.3 泛化(i 精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 39 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 39 頁,共

51、48 頁 - - - - - - - - -(1普通泛化(2受限泛化預(yù)定義的約束有 4 種:多重、不相交、完全和不完全。9.4.2.4 依賴精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 40 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 40 頁,共 48 頁 - - - - - - - - -9.4.2.5 細(xì)化9.5動(dòng)態(tài)模型9.6功能模型9.6.1用例圖模型元素 :系統(tǒng)、行為者、用例及用例之間的關(guān)系(擴(kuò)展關(guān)系、使用關(guān)系用例的實(shí)例是腳本第 10章面向

52、對(duì)象分析10.1 面向?qū)ο蠓治龅幕具^程面向?qū)ο蠓治?:抽取和整理用戶需求并建立問題域精確模型的過程. 理解-用戶、分析員和領(lǐng)域?qū)<冶磉_(dá)-需求規(guī)格說明書 (對(duì)象模型、動(dòng)態(tài)模型、功能模型精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 41 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 41 頁,共 48 頁 - - - - - - - - -驗(yàn)證-二義性 ,完善性對(duì)象模型最基本、最重要、最核心。靜態(tài)結(jié)構(gòu) (對(duì)象模型3個(gè)子模型交互次序 (動(dòng)態(tài)模型數(shù)據(jù)變換 (

53、功能模型復(fù)雜問題的對(duì)象模型的5 個(gè)層次面向?qū)ο蠓治龅倪^程尋找類與對(duì)象識(shí)別結(jié)構(gòu)識(shí)別主題定義屬性建立動(dòng)態(tài)模型精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 42 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 42 頁,共 48 頁 - - - - - - - - -建立功能模型定義服務(wù)10.2 需求陳述需求陳述是闡明 “ 做什么 ”,而不是“ 怎樣做 ”問題范圍功能需求性能需求應(yīng)用環(huán)境假設(shè)條件第 11章面向?qū)ο笤O(shè)計(jì)11.1 面向?qū)ο笤O(shè)計(jì)的準(zhǔn)則1.模塊化2.

54、抽象3. 信息隱藏4.弱耦合耦合指不同對(duì)象之間相互關(guān)聯(lián)的緊密程度。對(duì)象之間的耦合分兩類 : 交互耦合精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 43 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 43 頁,共 48 頁 - - - - - - - - -如果對(duì)象之間的耦合通過消息連接來實(shí)現(xiàn),則這種耦合就是交互耦合。交互耦合應(yīng)盡可能松散。繼承耦合與交互耦合相反 ,應(yīng)該提高繼承耦合程度。5. 強(qiáng)內(nèi)聚在面向?qū)ο笤O(shè)計(jì)中存在下述3 種內(nèi)聚 : 服務(wù)內(nèi)聚 :一個(gè)

55、服務(wù)應(yīng)該完成一個(gè)且僅完成一個(gè)功能。類內(nèi)聚 :一個(gè)類應(yīng)該只有一個(gè)用途,它的屬性和服務(wù)應(yīng)該是高內(nèi)聚的。一般-特殊內(nèi)聚 :設(shè)計(jì)出的一般 -特殊結(jié)構(gòu) ,應(yīng)該符合多數(shù)人的概念6. 可重用11.2 啟發(fā)規(guī)則1. 設(shè)計(jì)結(jié)果應(yīng)該清晰易懂2. 一般-特殊結(jié)構(gòu)的深度應(yīng)適當(dāng)3. 設(shè)計(jì)簡(jiǎn)單的類4. 使用簡(jiǎn)單的協(xié)議5. 使用簡(jiǎn)單的服務(wù)6. 把設(shè)計(jì)變動(dòng)減至最小第 13章軟件項(xiàng)目管理軟件工程計(jì)劃精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 44 頁,共 48 頁 - - - - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - -

56、 - 第 44 頁,共 48 頁 - - - - - - - - -控制度量軟件規(guī)模估算工作量進(jìn)度計(jì)劃風(fēng)險(xiǎn)管理質(zhì)量保證配置管理組織明確軟件開發(fā)的目標(biāo)提供組織機(jī)構(gòu)和資源配置方面的保證保證開發(fā)目標(biāo)的實(shí)現(xiàn)技術(shù)管理13.1估算軟件規(guī)模13.1.1 代碼行技術(shù) 估算方法: 由多名有經(jīng)驗(yàn)的軟件工程師分別做出估計(jì)。每個(gè)人都估計(jì)程序的最小規(guī)模(a、最大規(guī)模 (b 和最可能的規(guī)模 (m, 分別算出這 3 種規(guī)模的平均值之后,再用下式計(jì)算程序規(guī)模的估計(jì)值:?jiǎn)挝唬?loc 或 kloc 。 代精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 45 頁,共 48 頁 - -

57、- - - - - - -精品學(xué)習(xí)資料 可選擇p d f - - - - - - - - - - - - - - 第 45 頁,共 48 頁 - - - - - - - - -碼行技術(shù)的優(yōu)點(diǎn):代碼是所有軟件開發(fā)項(xiàng)目都有的“ 產(chǎn)品” ,而且很容易計(jì)算代碼行數(shù); 有大量參考文獻(xiàn)和數(shù)據(jù)。 代碼行技術(shù)的缺點(diǎn):源程序僅是軟件配置的一個(gè)成分,由源程序度量軟件規(guī)模不太合理;用不同語言實(shí)現(xiàn)同一個(gè)軟件所需要的代碼行數(shù)并不相同;不適用于非過程性語言。 13.1.2 功能點(diǎn)技術(shù) 功能點(diǎn)技術(shù)依據(jù)對(duì)軟件信息域特性和軟件復(fù)雜性的評(píng)估結(jié)果,估算軟件規(guī)模。這種方法用功能點(diǎn) (fp為單位度量軟件規(guī)模。 1. 信息域特性 輸入項(xiàng)

58、數(shù) (inp、輸出項(xiàng)數(shù) (out、查詢數(shù) (inq、主文件數(shù) (maf、外部接口數(shù) (inf 每個(gè)特征根據(jù)其復(fù)雜程度分配一個(gè)功能點(diǎn)數(shù),即信息域特征系數(shù) a1,a2,a3,a4,a5 2. 估算功能點(diǎn)的步驟 (1 計(jì)算未調(diào)整的功能點(diǎn)數(shù)ufp ufp=a1 inp+a2 out+a3 inq+a4 maf+a5 inf (2 計(jì)算技術(shù)復(fù)雜性因子 tcf 技術(shù)因素對(duì)軟件規(guī)模的綜合影響程度 di: 技術(shù)復(fù)雜性因子 tcf 由下式計(jì)算: tcf = 0.65 + 0.01 di 因?yàn)?di 的值在 070 之間,所以 tcf 的值在 0.651.35 之間。 (3 計(jì)算功能點(diǎn)數(shù) fp fp = ufp

59、tcf 功能點(diǎn)技術(shù)優(yōu)點(diǎn):與所用的編程語言無關(guān),比代碼行技術(shù)更合理。功能點(diǎn)技術(shù)缺點(diǎn):在判斷信息域特性復(fù)雜級(jí)別和技術(shù)因素的影響程度時(shí)主觀因素較大,對(duì)經(jīng) 驗(yàn)依賴性較強(qiáng)。 13.2 工作量估算13.2.1 靜態(tài)單變量模型 e ev 是估算變量( kloc 或 fp)。 13.2.2 動(dòng)態(tài)多變量模型 a klocb f i i 1 e = a + b (ev c 17 動(dòng)態(tài)多變量模型也稱為軟件方程式, 該模型把工作量看作是軟件規(guī)模和開發(fā)時(shí)間這兩個(gè)變量的函數(shù)。e=(loc b0.333/p3 (1/t4 13.2.3 cocomo2 模型(構(gòu)造性成本模型) 3 個(gè)層次的估算模型: 應(yīng)用系統(tǒng)組成模型:這個(gè)模型主要用于估算構(gòu)建原型的工作量,模型名字暗示在構(gòu)建原型時(shí)大量使用已有的構(gòu)件。早期設(shè)計(jì)模型:這個(gè)模型適用于體系結(jié)構(gòu)設(shè)計(jì)階段。 后體系結(jié)構(gòu)模型:這個(gè)模型適用于完成體系結(jié)構(gòu)設(shè)計(jì)之后的軟件開發(fā)階段。 cocomo2 使用的 5 個(gè)分

溫馨提示

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