軟件工程-原理方法與應(yīng)用總結(jié)歸納第三版重點(diǎn)_第1頁
軟件工程-原理方法與應(yīng)用總結(jié)歸納第三版重點(diǎn)_第2頁
軟件工程-原理方法與應(yīng)用總結(jié)歸納第三版重點(diǎn)_第3頁
軟件工程-原理方法與應(yīng)用總結(jié)歸納第三版重點(diǎn)_第4頁
軟件工程-原理方法與應(yīng)用總結(jié)歸納第三版重點(diǎn)_第5頁
已閱讀5頁,還剩39頁未讀 繼續(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. 軟件:是能夠完成預(yù)定功能和性能的可執(zhí)行的計(jì)算機(jī)誠(chéng)信度。包括使程序正常執(zhí)行所需的數(shù)據(jù),以及有關(guān)描述程序操作和使用的文檔。即:軟件二程序+文檔2. 軟件的特征:軟件的開發(fā)不同于硬件設(shè)計(jì)、不同于硬件制造、不同于硬件維修。3. 軟件工程方法學(xué):把在軟件生命周期全過程中使用的一整套技術(shù)方法的集合。三要素:方法、工具、過程4. 軟件工程學(xué)的范疇:軟件開發(fā)技術(shù)(軟件開發(fā)方法學(xué)、軟件工具、軟件工程環(huán)境)、軟件工程管理(軟 聲、-IC _丿件管理學(xué)、軟件經(jīng)濟(jì)學(xué)、度量學(xué))。5. 軟件工程:是指導(dǎo)計(jì)算機(jī)軟件開發(fā)和維護(hù)的工程學(xué)科。 它采用工程的概念、原理、 技術(shù)和方法來開發(fā)與維護(hù)軟件,目的是為

2、了實(shí)現(xiàn)按照預(yù)期的進(jìn)度和經(jīng)費(fèi)完成軟件 生產(chǎn)計(jì)劃,同時(shí)提高軟件的生產(chǎn)率和可靠性。6. 軟件的發(fā)展:大體經(jīng)歷了 程序、軟件、軟件產(chǎn)品3個(gè)階段。7. 工具和方法是軟件開發(fā)技術(shù)的2大支柱。8. 3種編程泛型:過程式編程泛型、面向?qū)ο缶幊谭盒汀⒒跇?gòu)件技術(shù)的編程泛型X9. 面向?qū)ο蟪绦蛟O(shè)計(jì)中,數(shù)據(jù)和操作被封裝在一個(gè)對(duì)象中,對(duì)象之間則是通過消息 相互聯(lián)系。10. 構(gòu)件:標(biāo)準(zhǔn)化/規(guī)格化的對(duì)象類。11.3種編程泛型的差異:粒度由小到大依次是:過程式編程范式、面向?qū)ο缶幊谭?式、基于構(gòu)件的編程泛型。12. 軟件工程的分化:1、傳統(tǒng)軟件工程2、面向?qū)ο筌浖こ?、基于構(gòu)件的軟件 工程13. 消除軟件危機(jī)的途徑:正確

3、認(rèn)識(shí)計(jì)算機(jī)軟件;充分認(rèn)識(shí)到軟件開發(fā)是一種組織良好、管理嚴(yán)密、各類人員協(xié)同工作的工程項(xiàng)目;推廣使用在實(shí)踐中總結(jié) 出來的開發(fā)軟件的成功的技術(shù)和方法;開發(fā)和使用更好的軟件工具。第二章 軟件生存周期與軟件過程I-.V,1. 軟件生存周期:計(jì)劃、開發(fā)、運(yùn)行 3個(gè)時(shí)期。需求分析-軟件分析-軟件設(shè)計(jì)-編碼測(cè)試-軟件測(cè)試-運(yùn)行維護(hù)2. 需求分析(用戶視角):功能需求、性能需求、環(huán)境約束、外部接口描述。3. 軟件分析(開發(fā)人員視角):建立與需求模型一致的,與實(shí)現(xiàn)無關(guān)的軟件分析模 型。4. 軟件設(shè)計(jì):總體設(shè)計(jì)/概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)(確定軟件的數(shù)據(jù)結(jié)構(gòu)和操作)。5. 軟件測(cè)試:?jiǎn)卧獪y(cè)試、集成測(cè)試、系統(tǒng)測(cè)試。6. 軟件

4、開發(fā)方法可區(qū)分:形式化方法、非形式化方法。開發(fā)模型特點(diǎn)場(chǎng)合瀑布模型(歷史悠久、廣為人知,它的優(yōu)勢(shì)在于它是規(guī)范的、文檔驅(qū)動(dòng)的方法;這種模型的問題是,最終開發(fā)的軟件產(chǎn)品可能并不是客戶真正需要的)線性模型,每個(gè)階段必須完成 固定文檔需求明確的中小型軟件開 發(fā)快速原型模型(正是為了克服瀑布模型的缺點(diǎn)提出來的,他通過快速構(gòu)建起一個(gè)可以在計(jì)算機(jī)上運(yùn)行的原型系統(tǒng),讓用戶使用原型并收集用戶反饋意見的方法,獲取用戶的真實(shí)需求)用戶介入早,通過迭代完善用 戶需求,應(yīng)用快速開發(fā)工具需求模糊的小型軟件開發(fā)增量模型(具有可在軟件開發(fā)的早期階使投資獲得明顯回報(bào)和交易維護(hù)每次迭代完成一個(gè)增量,可用于0C開發(fā)容易分塊的大型軟

5、件開發(fā)的優(yōu)點(diǎn),但是,要求軟件具有開放的結(jié)構(gòu)是使用這種模型固有的困難。)螺旋模型(適用于內(nèi)開發(fā)的大型軟件項(xiàng)目,但是只有在開發(fā)人員具有風(fēng)險(xiǎn)分 析和排除風(fēng)險(xiǎn)的經(jīng)驗(yàn)及專門知識(shí)時(shí),使用這種模型才會(huì)成功。)典型迭代模型,重視風(fēng)險(xiǎn)分 析,可用于OO開發(fā)具有不確定性的大型軟件開發(fā)構(gòu)件集成模型(面向?qū)ο蠡跇?gòu)件庫,融合螺旋模型的特征,支持軟件開發(fā)與構(gòu)件開發(fā)平行進(jìn)領(lǐng)域工程,行業(yè)的中型軟行,主要用于00開發(fā)件開發(fā),主要用于00開發(fā)軟件開發(fā),迭代方法,軟件復(fù)用思想)轉(zhuǎn)換模型 (是將形式化軟件開發(fā)和程序自動(dòng)生成技術(shù)相結(jié)合的一種軟件形式化的需求規(guī)格說明書,自理想化的模型,尚無成熟動(dòng)的程序變換系統(tǒng)工具支持開發(fā)模型。)1凈室

6、模型(是一種形式化的增量開發(fā)模型,其基本思想是力求在分析和形式化的增量開發(fā)模型,在潔開發(fā)團(tuán)隊(duì)熟悉形式化方凈狀態(tài)下實(shí)現(xiàn)軟件的制作法,中小型軟件開發(fā)設(shè)計(jì)階段就消除錯(cuò)誤,確保正確,然后在無缺陷或潔凈的狀態(tài)下實(shí)現(xiàn)軟件的制作。)7. 形式化開發(fā)模型:轉(zhuǎn)換模型、凈室模型8. 軟件可行性研究:經(jīng)濟(jì)可行性、技術(shù)可行性、運(yùn)行可行性、法律可行性。Ij. .z9. 可行性研究的步驟:對(duì)當(dāng)前系統(tǒng)進(jìn)行調(diào)查研究、導(dǎo)出新系統(tǒng)的解決方案、提出推薦方案、編寫可行性論證報(bào)告。10. 可行性論證報(bào)告的內(nèi)容:系統(tǒng)概述、可行性分析、結(jié)論意見。11. 軟件風(fēng)險(xiǎn)分析包括:風(fēng)險(xiǎn)識(shí)別(項(xiàng)目風(fēng)險(xiǎn)、技術(shù)風(fēng)險(xiǎn)、商業(yè)風(fēng)險(xiǎn))、風(fēng)險(xiǎn)預(yù)測(cè)、風(fēng)險(xiǎn)的駕馭和監(jiān)控

7、。12. 軟件計(jì)劃的7種類型:項(xiàng)目實(shí)施計(jì)劃、質(zhì)量保證計(jì)劃、軟件測(cè)試計(jì)劃、文檔編制計(jì)劃、用戶培訓(xùn)計(jì)劃、綜合支持計(jì)劃、軟件分發(fā)計(jì)劃。第三章 結(jié)構(gòu)化分析與設(shè)計(jì)1. 瀑布模型的生命周期:需求定義與分析-總體設(shè)計(jì)-詳細(xì)設(shè)計(jì)-編碼-測(cè)試-維護(hù)2. 系統(tǒng)的開發(fā)流程(SA和SD流程):結(jié)構(gòu)化分析(工具:DFD PSPEC -分析模型(分層DFD圖)+SRS結(jié)構(gòu)化設(shè)計(jì)(工具:SC圖(映射)-初始設(shè)計(jì)模型(初始SC圖)初始設(shè)計(jì)模型(初始SC圖)(優(yōu)化)最終設(shè)計(jì)模型(最終SC圖)3. SA需求分析的兩項(xiàng)基本任務(wù):建立系統(tǒng)分析模型、編寫SRS4. 分析模型組成:功能模型、數(shù)據(jù)模型、行為模型3種。5. 抽象和分解是結(jié)構(gòu)

8、化分析的主要指導(dǎo)思想,細(xì)化的實(shí)質(zhì)是分解。分解和細(xì)化是軟件設(shè)計(jì)的策略。6. SD階段把分析模型中的DFD圖轉(zhuǎn)換為 最終SC圖。7. 傳統(tǒng)軟件的開發(fā)技術(shù):結(jié)構(gòu)化設(shè)計(jì)、模塊設(shè)計(jì)。# | J yc_ 一丿8. 軟件設(shè)計(jì):總體設(shè)計(jì)/概要設(shè)計(jì)(初始SC圖、最終SC圖)、詳細(xì)設(shè)計(jì)(用逐步細(xì) 化的方法,完成模塊的說明)。9. 需求分析的步驟:需求獲取、需求提煉、需求描述、需求驗(yàn)證。10. DFD圖不能表示程序的控制結(jié)構(gòu)(如選擇、循環(huán)結(jié)構(gòu))。11. 加工規(guī)格說明通常用結(jié)構(gòu)化語言、判定表、判定樹作為描述工具。12. 軟件中的數(shù)據(jù)分為3類:數(shù)據(jù)項(xiàng)(數(shù)據(jù)元素)、數(shù)據(jù)流(多個(gè)相關(guān)數(shù)據(jù)項(xiàng))、數(shù)y' x 1 企據(jù)文

9、件和數(shù)據(jù)庫。1/13. 數(shù)據(jù)字典的組成:數(shù)據(jù)項(xiàng)、數(shù)據(jù)流、數(shù)據(jù)存儲(chǔ)(文件或數(shù)據(jù)庫)、加工(處理邏輯)、外部項(xiàng)(人、物或其它軟件系統(tǒng))14.SD模型是由SA模型映射而來的。SA模型的數(shù)據(jù)字典可轉(zhuǎn)換為待開發(fā)系統(tǒng)的數(shù)據(jù)設(shè)計(jì)數(shù)據(jù)流圖可轉(zhuǎn)換為體系結(jié)構(gòu)設(shè)計(jì)(SC圖)與接口設(shè)計(jì)加工規(guī)格說明可轉(zhuǎn)換為模塊內(nèi)部的詳細(xì)過程設(shè)計(jì)15.SD模型的組成:從上到下依次是:過程設(shè)計(jì)、接口設(shè)計(jì)、體系結(jié)構(gòu)設(shè)計(jì)、數(shù)據(jù)設(shè)計(jì)。16. 結(jié)構(gòu)化分析的基本步驟:自頂向下對(duì)系統(tǒng)進(jìn)行功能分解,畫出 DFD圖;由后向前定義系統(tǒng)的數(shù)據(jù)和加工;編制DD和PEPES寫出SRSI17. 把不需要分解的加工成為基本加工。把逐步分解成為“自頂向下,逐步細(xì)化”。

10、18. DFD的優(yōu)點(diǎn):便于實(shí)現(xiàn),便于使用。19. 傳統(tǒng)的軟件設(shè)計(jì)可細(xì)分為:面向數(shù)據(jù)流設(shè)計(jì)(SD方法)、面向數(shù)據(jù)結(jié)構(gòu) 設(shè)計(jì)(Jacks on 方法)。20. 用數(shù)據(jù)流圖表示邏輯模型,在設(shè)計(jì)階段,按照數(shù)據(jù)流圖的不同類型(變換型、事務(wù)型)轉(zhuǎn)換為相應(yīng)的軟件結(jié)構(gòu)。21. 結(jié)構(gòu)化設(shè)計(jì)通常從DFD圖到SC圖的映射開始。22. 面向數(shù)據(jù)流的設(shè)計(jì)方法:從DFD圖到SC圖的變挽型卄門初始sc "|映射的4個(gè)步驟:手犁T'一處1、復(fù)審DFD圖,必要時(shí)可再次進(jìn)行修改或細(xì)化;I2、鑒別DFD圖的結(jié)構(gòu)特征:事務(wù)?變換?;3、按照規(guī)則,把DFD圖為初始的SC圖;4、改進(jìn)初始的SC圖。23. 變換型結(jié)構(gòu):由

11、輸入、變換中心和輸出三部分組成。事務(wù)型結(jié)構(gòu):具有在多種事務(wù)中選擇執(zhí)行某類事物的能力。24. 變換映射的步驟:劃分 DFD圖的邊界、建立初始SC圖的框架、分解SC圖的各個(gè)分支。事務(wù)映射的步驟:在DFD圖上確定邊界、畫出SC圖框架、分解和細(xì)化接受分支和發(fā)送分支。25. 優(yōu)化結(jié)構(gòu)設(shè)計(jì)的指導(dǎo)規(guī)則:對(duì)模塊分割、合并和變動(dòng)調(diào)用關(guān)系的指導(dǎo)規(guī)則、保持高扇入/低扇出的原則、作用域/控制域規(guī)則。I26. 模塊設(shè)計(jì)(詳細(xì)設(shè)計(jì))的主要任務(wù)是編寫軟件的模塊設(shè)計(jì)說明書。目的是確定模塊采用的算法和塊內(nèi)數(shù)據(jù)結(jié)構(gòu)。27. 模塊設(shè)計(jì)的原則:清晰第一的設(shè)計(jì)風(fēng)格、結(jié)構(gòu)化的控制結(jié)構(gòu)、逐步細(xì)化的實(shí)現(xiàn)方法。28. 結(jié)構(gòu)化程序設(shè)計(jì)原理和逐步

12、細(xì)化的實(shí)現(xiàn)方法是完成模塊設(shè)計(jì)的基礎(chǔ)。第四章 面向?qū)ο蠛蚒ML1. 面向?qū)ο蟮幕咎卣鳎撼橄蟆⒎庋b、集成、多態(tài)。2. 面向?qū)ο箝_發(fā)的優(yōu)點(diǎn):提高軟件系統(tǒng)的可復(fù)用性、可擴(kuò)展性、可維護(hù)性、面向?qū)Α?"I象符合人類習(xí)慣的思維方式。Z 1% %3. 元素之間的聯(lián)系有:關(guān)聯(lián)、泛化、依賴、實(shí)現(xiàn)、聚集、組合。I4. UML的 4個(gè)抽象層次:用戶模型、模型、元模型、元元模型。5. UML的 2 類圖:靜態(tài)圖(用例圖、類圖、對(duì)象圖、構(gòu)件圖、部署圖);動(dòng)態(tài)圖(狀態(tài)圖、時(shí)序圖、協(xié)作圖、活動(dòng)圖)UML的 5種視圖:用例視圖、邏輯視圖、進(jìn)程視圖、構(gòu)件視圖、部署視圖。6. UML勺特點(diǎn):統(tǒng)一標(biāo)準(zhǔn)、面向?qū)ο蟆⒈磉_(dá)能力

13、強(qiáng),可視化。7. UML模型作為測(cè)試階段的依據(jù):?jiǎn)卧獪y(cè)試使用類圖和類規(guī)格說明; 集成測(cè)試使用構(gòu)件圖和協(xié)作圖;系統(tǒng)測(cè)試使用 用例圖來驗(yàn)證系統(tǒng)行為。8. UM沖用例圖由系統(tǒng)邊界、用例、參與者、關(guān)聯(lián)組成。用例之間存在的關(guān)系:擴(kuò) 展關(guān)系、包含關(guān)系。I包與包之間的關(guān)系有:依賴、泛化。9. 根據(jù)類/對(duì)象之間的具體情況,可分為普通關(guān)聯(lián),遞歸關(guān)聯(lián)、多重關(guān)聯(lián)、有序關(guān)聯(lián)、限制關(guān)聯(lián)、或關(guān)聯(lián)、關(guān)聯(lián)類10. 消息(類里面的方法加參數(shù)):簡(jiǎn)單消息、同步消息、異步消息。狀態(tài)圖有:初 態(tài)、終態(tài)、中間態(tài)。11. 時(shí)序圖中的消息可以是信號(hào)或操作調(diào)用。12. 時(shí)序圖著重體現(xiàn)交互的時(shí)間順序;協(xié)作圖著重體現(xiàn)交互對(duì)象間的靜態(tài)鏈接。13.

14、 時(shí)序圖和協(xié)作圖適合描述單個(gè)用例中幾個(gè)對(duì)象的行為;活動(dòng)圖適合表現(xiàn)跨越多 用例或多線程的復(fù)雜行為。Z 1% %14. 構(gòu)件圖可以用來表現(xiàn)、編譯、鏈接、執(zhí)行時(shí)構(gòu)件間的依賴關(guān)系。I15. UML用圖表示語法,用元模型表示語義,米用模型來描述系統(tǒng)的結(jié)構(gòu)(靜態(tài)特征) 以及行為(動(dòng)態(tài)特征)。第五章 需求工程和需求分析1. 軟件需求的3個(gè)層次:業(yè)務(wù)需求、用戶需求、功能需求。軟件項(xiàng)目中40%60的問題源自軟件需求階段。2. 軟件需求的6個(gè)特性:功能性、可用性、可靠性、性能、可支持性、設(shè)計(jì)約束。3. 需求分析的步驟:需求獲取、需求建模、需求描述(編寫SRS、需求驗(yàn)證。4. 需求分析的主要任務(wù):建立需求模型。需求

15、分析是迭代過程。常見模型有:用例圖、數(shù)據(jù)流圖、實(shí)體聯(lián)系圖、控制流圖、狀態(tài)轉(zhuǎn)換圖。5. 需求獲取的方法:1、建立聯(lián)合分析小組2、用戶訪談。6. 獲得用例的方法通過問問題:1、系統(tǒng)用戶是誰?系統(tǒng)維護(hù)時(shí)誰?從哪獲得信息?I給誰?7. 需求建模方法:結(jié)構(gòu)化分析建模方法、面向?qū)ο蠓治鼋!?. 結(jié)構(gòu)化需求模型由3部分組成:功能模型(數(shù)據(jù)流圖、加工規(guī)格說明書)、數(shù)據(jù)I. "模型(數(shù)據(jù)字典、ER圖)、行為模型(狀態(tài)轉(zhuǎn)換圖、控制流圖、控制規(guī)格說明書)。9. 面向?qū)ο笮枨竽P停河美P停ㄓ美龍D、用例規(guī)約)、補(bǔ)充規(guī)約、術(shù)語表。10. 面向?qū)ο笮枨蠼5牟襟E:畫用例圖、寫用例規(guī)約、描述補(bǔ)充規(guī)約、編寫術(shù)語表

16、、調(diào)整優(yōu)化。11. 用例規(guī)約文檔的內(nèi)容:簡(jiǎn)要說明、事件流、特殊需求、前置條件和后置條件。” "I12. 用例規(guī)約的檢查:功能需求的完備性、模型是否易于理解、是否存在不一致性、Z 1% %避免二義性。I13. 軟件需求規(guī)格說明書 SRS的內(nèi)容:引言、信息描述、功能描述、行為描述、質(zhì)量保證、接口描述、其他描述。14. 需求管理的流程:需求確認(rèn)、需求跟蹤、需求變更。需求跟蹤有兩種方式,正向跟蹤與逆向跟蹤。需求變更的流程:變更申請(qǐng)、審批、更改、更新確認(rèn)。2019年一9月精心整理第六章 面向?qū)ο蠓治?. 建立面向?qū)ο蠓治瞿P筒襟E:1、建立類/對(duì)象層(抽象出類和對(duì)象)、2、建立屬 性層(設(shè)計(jì)靜態(tài)

17、屬性和關(guān)系)、3、建立服務(wù)層(定義動(dòng)態(tài)屬性和消息通信)、4、 建立結(jié)構(gòu)層(定義層次結(jié)構(gòu)關(guān)系)、5、建立主題層2. 00A方法的共同特征:類和類層次的表示、建立對(duì)象 -關(guān)系模型、建立對(duì)象-行為 模型。I3. 面向?qū)ο箝_發(fā)的全過程:00A(分析)、00(設(shè)計(jì))、00P(編碼)、00T(測(cè)試)。4. 用例模型是面向?qū)ο蠓治鲎畛S玫囊环N模型。5. 分析類的類型:邊界類、控制類、實(shí)體類。¥ K I -J yL_ _丿6. 每個(gè)參與者與用例之間確定一個(gè)邊界類, 每個(gè)用例設(shè)置一個(gè)控制類,而實(shí)體類為 現(xiàn)實(shí)生活中的對(duì)象,類(屬性與方法)或用于保存和更新信息的有關(guān)對(duì)象。7. 邊界類包括:用戶界面類、系統(tǒng)

18、接口類、設(shè)備接口類。如事務(wù)管理器、資源協(xié)調(diào) 器、錯(cuò)誤處理器都可為控制類。8. 控制類分離邊界類和實(shí)體類,可用來建立系統(tǒng)的動(dòng)態(tài)行為模型。實(shí)體類用于保存"I和更新一些對(duì)象的有關(guān)信息。Z 1% %9. 為分析類分配職責(zé)是00D勺重點(diǎn)。實(shí)體類具有持久性。I10. 對(duì)象-關(guān)系模型的內(nèi)容:分析類的屬性、分析類的關(guān)聯(lián)、分析類圖、分析類的合并。(用類圖來表示)11. 對(duì)象行為模型用狀態(tài)轉(zhuǎn)換圖、時(shí)序圖、協(xié)作圖、活動(dòng)圖來表示。12. 面向?qū)ο蠓治鰰r(shí):1、確定分析類,2、靜態(tài)模型建立畫類圖,3、動(dòng)態(tài)模型建立 畫時(shí)序圖和協(xié)作圖。2019年一9月精心整理13. 時(shí)序圖中的元素有:對(duì)象、對(duì)象生命線、消息。協(xié)作圖

19、中的元素有:對(duì)象、鏈接、消息流。14. 面向?qū)ο蠓治龅娜蝿?wù)是:將需求階段產(chǎn)生的需求模型轉(zhuǎn)換為 軟件分析模型。面向?qū)ο笤O(shè)計(jì)的任務(wù)是:將分析階段建立的分析模型轉(zhuǎn)換為 軟件設(shè)計(jì)模型。第七章 面向?qū)ο笤O(shè)計(jì)1. 軟件設(shè)計(jì)的基本概念:模塊(擁有明確定義的輸入、輸出和特性的程序?qū)嶓w)與I構(gòu)件、抽象與細(xì)化、信息隱藏、軟件復(fù)用。2. 軟件設(shè)計(jì)的基礎(chǔ):分析階段對(duì)目標(biāo)系統(tǒng)的數(shù)據(jù)、功能、行為建模。3. 軟件設(shè)計(jì)的任務(wù):把分析階段產(chǎn)生的分析模型轉(zhuǎn)換為軟件設(shè)計(jì)模型。 K、 I#|1_4. 軟件設(shè)計(jì)包括:數(shù)據(jù)設(shè)計(jì)、體系結(jié)構(gòu)設(shè)計(jì)、接口設(shè)計(jì)、過程設(shè)計(jì)。5. 面向?qū)ο笤O(shè)計(jì)準(zhǔn)則:模塊化;抽象;信息隱藏;弱耦合;強(qiáng)內(nèi)聚;可重用6.

20、分解和模塊獨(dú)立性是實(shí)現(xiàn)模塊設(shè)計(jì)的重要指導(dǎo)思想。7. 模塊的獨(dú)立性從2個(gè)方面度量:模塊本身的內(nèi)聚、模塊之間的耦合。8. 內(nèi)聚分類:低內(nèi)聚(偶然性內(nèi)聚、邏輯性內(nèi)聚、時(shí)間性內(nèi)聚)、中內(nèi)聚(過程性"I內(nèi)聚、通訊性內(nèi)聚)、高內(nèi)聚(順序性內(nèi)聚、功能性內(nèi)聚)。Z 1% %9. 耦合分類:弱耦合(非直接耦合、數(shù)據(jù)耦合、特征耦合)、中耦合(控制耦合)I較強(qiáng)耦合(外部耦合、公共耦合)、強(qiáng)耦合(內(nèi)容耦合)。10. 一個(gè)模塊,一個(gè)功能 是模塊化設(shè)計(jì)的一條準(zhǔn)則。11.00設(shè)計(jì)模型由系統(tǒng)架構(gòu)層、類和對(duì)象層、消息層、責(zé)任層4個(gè)層次組成。12.面向?qū)ο笤O(shè)計(jì)中,數(shù)據(jù)和過程被封裝為類/對(duì)象的屬性和操作;接口被封裝為對(duì)象

21、間的消息,而體系結(jié)構(gòu)的設(shè)計(jì)則體現(xiàn)為系統(tǒng)的技術(shù)基礎(chǔ)設(shè)施和具有控制流程的2019年一9月精心整理對(duì)象間的協(xié)作。13. 傳統(tǒng)的軟件設(shè)計(jì)任務(wù)包括:概要設(shè)計(jì)和詳細(xì)設(shè)計(jì)14. 概要設(shè)計(jì)(總體設(shè)計(jì)):包括軟件的 結(jié)構(gòu)和接口設(shè)計(jì),并編寫概要設(shè)計(jì)文檔。詳 細(xì)設(shè)計(jì),確定模塊內(nèi)部的算法和數(shù)據(jù)結(jié)構(gòu),產(chǎn)生描述各模塊程序過程的詳細(xì)文檔。 每個(gè)階段完成的文檔都必須經(jīng)過復(fù)審。15.00D勺軟件設(shè)計(jì)任務(wù)可劃分為2個(gè)層次:系統(tǒng)架構(gòu)設(shè)計(jì)、系統(tǒng)元素設(shè)計(jì)。I16. 系統(tǒng)架構(gòu)設(shè)計(jì)的內(nèi)容:系統(tǒng)高層結(jié)構(gòu)設(shè)計(jì)、確定設(shè)計(jì)元素、確定任務(wù)管理策略、 實(shí)現(xiàn)分布式機(jī)制、設(shè)計(jì)數(shù)據(jù)存儲(chǔ)方案、人機(jī)界面設(shè)計(jì)。系統(tǒng)元素設(shè)計(jì)的內(nèi)容:子 系統(tǒng)設(shè)計(jì)、分包設(shè)計(jì)、類/對(duì)象

22、設(shè)計(jì)。17. 常用的架構(gòu)模式有:層次架構(gòu)、模型-視圖-控制(MVC架構(gòu)、管道-過濾器架 構(gòu)、黑板架構(gòu)。18. 面向并行需求,任務(wù)管理策略主要 3種解決方案:多處理機(jī)方案、操作系統(tǒng)方 案、應(yīng)用程序方案。19. 分包的原則:將邊界類打包、將功能相關(guān)的類打包。高內(nèi)聚-低耦合的原則,包"I之間的耦合表現(xiàn)為依賴關(guān)系。Z 1% %20. a向b發(fā)送消息的必要條件是a能夠引用b, a可以通過4種方式引用b,對(duì)應(yīng)I于從a到b的4種連接可見度:1、全局:b是可以在全局范圍內(nèi)直接引用的對(duì)象。2、參數(shù):b作為a的某一項(xiàng)操作的參數(shù)或返回值。3、局部:b在a的某一操作中充當(dāng)臨時(shí)變量。4 、域:b作為a的數(shù)據(jù)成

23、員。精心整理21. 操作的可見性:公有:除了累本身以外,操作對(duì)其他模型元素也是可見的;也可以用“ +”表示;保護(hù):操作只對(duì)類本身、它的子類也是可見的;也可以用“#”表示。私有:操作只對(duì)類本身是可見的,也可以用“一”表示。第八章編碼和測(cè)試I1. 編碼的風(fēng)格:1、追求“聰明”和“技巧”-提倡“簡(jiǎn)明”和“直接” 2、使 用標(biāo)準(zhǔn)的控制結(jié)構(gòu)3、清晰的前提下求取效率2. 編碼的目的:設(shè)計(jì)模型(不可執(zhí)行的)->(編碼)源程序- 可執(zhí)行代碼3. 選擇編碼語言的標(biāo)準(zhǔn):1、應(yīng)用領(lǐng)域2、算法與計(jì)算復(fù)雜性3、數(shù)據(jù)結(jié)構(gòu)的復(fù)雜性4、效率的考慮4. 測(cè)試和糾錯(cuò):測(cè)試(testing )的目的與任務(wù):目的:發(fā)現(xiàn)程序的錯(cuò)

24、誤;任務(wù):通過執(zhí)行程序, 暴露潛在的錯(cuò)誤。”"I糾錯(cuò)(debugging)的目的與任務(wù):目的:定位和糾正錯(cuò)誤;任務(wù):消除軟件故Z 1% %障,保證程序的可靠運(yùn)行。I5. 測(cè)試的特性:挑剔型、復(fù)雜性、不徹底性、經(jīng)濟(jì)型。6. 測(cè)試分類:靜態(tài)分析(靜態(tài)分析器分析、代碼評(píng)審(代碼會(huì)審、走查、辦公桌檢查);動(dòng)態(tài)測(cè)試(黑盒測(cè)試(功能測(cè)試)、白盒測(cè)試(結(jié)構(gòu)測(cè)試)。7. 黑盒測(cè)試分類(根據(jù)被測(cè)試程序功能來進(jìn)行測(cè)試):等價(jià)類法、邊界值法、錯(cuò)誤精心整理猜測(cè)法。8. 白盒測(cè)試分類(以程序結(jié)構(gòu)為依據(jù)的測(cè)試方法):路經(jīng)測(cè)試(點(diǎn)覆蓋、邊覆蓋、 路徑覆蓋)、邏輯覆蓋測(cè)試(語句覆蓋、判定覆蓋、條件覆蓋、判定 /條件

25、覆蓋、 條件組合覆蓋)。第九章軟件維護(hù)1. 決定軟件可維護(hù)性的因素I2. 軟件副作用的類型:修改編碼的副作用、修改數(shù)據(jù)的副作用、修改文檔的副作用。3什么是再工程:將新技術(shù)和新工具應(yīng)用于老的軟件的一種較“徹底”的預(yù)防性維 護(hù)。I. _4. 軟件配置項(xiàng)包括:程序(源代碼和可執(zhí)行程序),文檔,數(shù)據(jù)5. 基線(Baseline) 是軟件文檔或源碼(或其它產(chǎn)出物)的一個(gè)穩(wěn)定版本,它是進(jìn)一 步開發(fā)的基礎(chǔ)。6. 維護(hù)的代價(jià)i. 有形代價(jià):"Iii. 無形代價(jià):Z 1% %占用資源以致延誤開發(fā);修改不及時(shí)引起用戶不滿;維護(hù)引入新錯(cuò)誤,降低了I軟件質(zhì)量;等等。維護(hù)工作量的經(jīng)驗(yàn)?zāi)P停篗二P + KeA(

26、c-d)其中:M=維護(hù)用的總工作量;P =生產(chǎn)性活動(dòng)(如.分析,評(píng)價(jià),修改設(shè)計(jì), 編碼,測(cè)試等);K =經(jīng)驗(yàn)系數(shù);c =復(fù)雜度(非結(jié)構(gòu)化設(shè)計(jì)和缺少文檔會(huì)增加復(fù)雜度)d = 維護(hù)人員2019年一9月精心整理對(duì)軟件的熟悉程度第十章 軟件復(fù)用1. 軟件復(fù)用的定義:(SR)定義為利用工程知識(shí)或方法,由一已存在的系統(tǒng),來建造 一新系統(tǒng)。目的:這種技術(shù),可改進(jìn)軟件產(chǎn)品質(zhì)量和生產(chǎn)率。還有軟件檢查、軟 件計(jì)量、軟件可靠性、軟件可維修性、軟件工具評(píng)估和選擇等。2. 軟件復(fù)用的目的是能更快、更好、成本更低地生產(chǎn)軟件制品。I3. 按照可復(fù)用的粒度,軟件制品從小到大分為以下幾類:源代碼復(fù)用(高級(jí)語言編寫的源代碼)、軟

27、件體系結(jié)構(gòu)復(fù)用(已有軟件的體系結(jié)構(gòu))、應(yīng)用程序生成器(對(duì) 整個(gè)軟件體系結(jié)構(gòu)、相應(yīng)的子系統(tǒng)、特定的數(shù)據(jù)結(jié)構(gòu)和算法)、領(lǐng)域特定的軟件i. "體系結(jié)構(gòu)的復(fù)用(特定領(lǐng)域中存在的公共體系結(jié)構(gòu)及其構(gòu)件)。4. 領(lǐng)域:指的是一組具有相似或相近軟件需求的應(yīng)用系統(tǒng)所覆蓋的功能區(qū)域。領(lǐng)域工程:通過領(lǐng)域分析(domain analysis)找出最優(yōu)復(fù)用,對(duì)它們進(jìn)行設(shè)計(jì)和構(gòu)造,形成為可復(fù)用構(gòu)件,進(jìn)而建立大規(guī)模的軟件構(gòu)件倉(cāng)庫的過程。5. 橫向復(fù)用:是指復(fù)用不同應(yīng)用領(lǐng)域中的軟件元素。V "|縱向復(fù)用:是指在一類具有較多公共性的應(yīng)用領(lǐng)域之間進(jìn)行軟件構(gòu)件進(jìn)行復(fù)用。Z 1% %6. 領(lǐng)域分析:領(lǐng)域分析是在特

28、定應(yīng)用領(lǐng)域?qū)ふ易顑?yōu)復(fù)用,以公共對(duì)象、類、子集合I和框架等形式進(jìn)行標(biāo)識(shí)、分析和規(guī)約。目標(biāo):是獲得領(lǐng)域分析模型。7. 構(gòu)件應(yīng)具有的特征:通用性、可變性、易組裝性;基于面向?qū)ο蠹夹g(shù)的復(fù)用通用 構(gòu)件。8. 領(lǐng)域構(gòu)件的設(shè)計(jì)框架:標(biāo)準(zhǔn)數(shù)據(jù):標(biāo)識(shí)標(biāo)準(zhǔn)的全局?jǐn)?shù)據(jù)結(jié)構(gòu);標(biāo)準(zhǔn)接口協(xié)議:三 個(gè)層次(構(gòu)件內(nèi)、外、人機(jī)接口);程序模板:成形的結(jié)構(gòu)模型作為新程序的體系結(jié)構(gòu)設(shè)計(jì)的模板9. 幾種流行的構(gòu)件技術(shù):組件對(duì)象模型技術(shù)(COM)、公共對(duì)象請(qǐng)求代理體系結(jié)構(gòu)(CORB)開放式文檔接口。10. 建立可復(fù)用構(gòu)件庫目前最常用的有三種分類模式:枚舉分類、呈面分類(呈面<=8)、屬性-值分類。11. 應(yīng)用系統(tǒng)工程(ASE:定

29、義:在基于構(gòu)件的軟件開發(fā)中,通過復(fù)用構(gòu)件系統(tǒng)開 發(fā)某個(gè)特定應(yīng)用系統(tǒng)的構(gòu)件工程。聲廠"、遙h £X""-)'J12. ASE過程的基本步驟:獲取需求(建立用例模型)、分析(用用例模型輸入來組 裝和特化分析構(gòu)件)、設(shè)計(jì)應(yīng)用系統(tǒng)(用分析模型輸入來組裝和特化設(shè)計(jì)構(gòu)件)I二二- 實(shí)現(xiàn)應(yīng)用系統(tǒng)(用設(shè)計(jì)模型輸入來組裝和特化實(shí)現(xiàn)構(gòu)件)、測(cè)試應(yīng)用系統(tǒng)(組裝 和特化測(cè)試構(gòu)件,測(cè)試應(yīng)用系統(tǒng))、應(yīng)用系統(tǒng)打包。13.OO方法對(duì)軟件復(fù)用的支持:OOA模型、OOA與OOD勺分工、對(duì)象的表示、一般- 特殊結(jié)構(gòu)、整體-部分結(jié)構(gòu)、實(shí)例連接、類描述模板、用例。14. 復(fù)用技術(shù)對(duì)OC方

30、法的支持:類庫、構(gòu)件庫、構(gòu)架庫、工具、OOA過程。<'- ""l / F 廣、x題目1:多模塊程序的測(cè)試有哪些層次?各層測(cè)試主要解決什么問題?解答:多模塊測(cè)試的層次所處時(shí)段解決的問題涉及測(cè)試方法成果單元測(cè)試/模塊測(cè)試編碼階段1. 對(duì)模塊代碼進(jìn)行編譯,發(fā)現(xiàn)并糾正其語法錯(cuò)誤;2. 進(jìn)行靜態(tài)分析,驗(yàn)證模塊結(jié)構(gòu)及其內(nèi) 部調(diào)用序列是否正確;3. 確定模塊的測(cè)試策略,并據(jù)此設(shè)計(jì)一 組測(cè)試用例和必要的測(cè)試軟件;4. 用選定的測(cè)試用例對(duì)模塊進(jìn)行測(cè)試, 直至滿足測(cè)試終止標(biāo)準(zhǔn)為止;5. 注重執(zhí)行路徑、岀錯(cuò)處理路徑、局部黑盒測(cè)試一一程序外部測(cè)試、功能性測(cè)試測(cè)試報(bào)告數(shù)據(jù)結(jié)構(gòu)、模塊的對(duì)

31、外接口的測(cè)試白盒測(cè)試程序內(nèi)部測(cè)試、覆蓋測(cè)試6.編制單元測(cè)試報(bào)告。集成測(cè)試集成1.制訂集成測(cè)試實(shí)施策略模塊(子系統(tǒng)或小系統(tǒng)) 集成測(cè)試;訓(xùn)練驅(qū)動(dòng)與樁已組測(cè)試2.確定集成測(cè)試的實(shí)施步驟,設(shè)計(jì)的設(shè)計(jì)、組合及集成測(cè)試。裝軟階段測(cè)試用例件3.逐地添加模塊,進(jìn)行測(cè)試高確集成1.已確進(jìn)步驗(yàn)證軟件的有效性,即驗(yàn)* J級(jí)認(rèn)測(cè)試證軟件的功能和性能是否與用戶認(rèn)軟測(cè)測(cè)階段的要求致l"/X-j|_ -1 _Lt件試試/ 卜;系驗(yàn)收1.測(cè)試是否與硬件協(xié)調(diào)運(yùn)行系統(tǒng)的性能檢驗(yàn)和可運(yùn)統(tǒng)階段2.測(cè)試是否和原來就有的其它軟件軟件系統(tǒng)實(shí)時(shí)運(yùn)行行的測(cè)協(xié)調(diào)運(yùn)行狀況的測(cè)試系統(tǒng)試IV /3.測(cè)試是否完成SRS對(duì)它的要求軟件測(cè)試表7

32、.1“電話號(hào)碼”的等價(jià)分類輸入數(shù)據(jù)有效等價(jià)類無效等價(jià)類地區(qū)碼1、空2、3位數(shù)字3、非空,但有非數(shù)字字符4、非空,位數(shù)小于3位數(shù)字5、非空,位數(shù)多于3位數(shù)字電話號(hào)碼前三6、非 000 且非7、空位111 '的3位數(shù)字i&非空,但有非數(shù)字字符9、非空,位數(shù)小于3位數(shù)字10、非空,位數(shù)多于3位 j8 , J£ . /數(shù)字電話號(hào)碼后四11、任意4位數(shù)字12、空位13、非空,但有非數(shù)字字”-一、 -一;1符、廣-一-214、非空,位數(shù)小于4位 ,5 /Z-* Cz*- '孑一、疔八數(shù)字比 hJ g 'Xz>仝 ,ii > x/ . 、:15、非空,位

33、數(shù)多于4位/ Z | 卜 數(shù)字表7.2有效等價(jià)類的測(cè)試用例測(cè)試數(shù)據(jù)期望結(jié)果測(cè)試范圍地區(qū)碼號(hào)碼前三位號(hào)碼后四位NULL1234567輸入有效1、6、112019年一9月0102345678輸入有效2、6、11表7.3無效等價(jià)類的測(cè)試用例測(cè)試數(shù)據(jù)期望結(jié)果測(cè)試范圍地區(qū)碼號(hào)碼前三號(hào)碼后四位位#1*1234567地區(qū)碼輸入無效3、6、11012345678地區(qū)碼輸入無效4、6、1101232588888地區(qū)碼輸入無效5、6、11NULLNULL8888號(hào)碼前三位輸入1、7、11無效010#1*6666號(hào)碼前三位輸入1、& 11=. 無效02045/尹廣;'*1-6688號(hào)碼前三位輸入1、

34、9、11無效NULLJ 1 1-1,7898866號(hào)碼前三位輸入1、10、11L無效NULL666NULL號(hào)碼后四位輸入2、6、12無效010888*02#號(hào)碼后四位輸入2、6、13無效02068823號(hào)碼后四位輸入2、6、14無效NULL86645678號(hào)碼后四位輸入無效2、6、15閱讀下列程序:PROCEDURE SAMPALGB: REAL VAR X: REAL);BEGINIF (A>3) AND (B=2)THEN X:=X/A廠A /IF (A=6) OR (X>4)/x'- j| ,-I L '/ I.THEN X:=X+1END;為上述程序設(shè)計(jì)測(cè)試

35、用例(參考教材相關(guān)例題)。實(shí)驗(yàn)要求:形成相應(yīng)的實(shí)驗(yàn)報(bào)告。包括:1、畫出程序流程圖,程序圖” "I2、實(shí)現(xiàn)語句覆蓋用例設(shè)計(jì)jT Z 1- flk %3、實(shí)現(xiàn)判定覆蓋用例設(shè)計(jì)I4、實(shí)現(xiàn)條件覆蓋用例設(shè)計(jì)5、實(shí)現(xiàn)判定/條件覆蓋用例設(shè)計(jì)6、實(shí)現(xiàn)條件組合覆蓋用例設(shè)計(jì)7、實(shí)現(xiàn)路徑覆蓋用例設(shè)計(jì)(完全覆蓋)。第一部分:程序流程圖、程序圖精心整理設(shè)本例中的兩個(gè)判斷IF (A>3) AND (B=2) 記為P1, IF (A=6) OR (X>4) 記為P2。第二部分:語句覆蓋用例設(shè)計(jì) 使程序中每個(gè)語句至少執(zhí)行一次。測(cè)試用例P1P2執(zhí)行路徑ABX6236TTa-c-e第三部分:判定覆蓋用例設(shè)計(jì)

36、一一使每個(gè)判定的真假分支都至少執(zhí)行一次測(cè)試用例P1P2執(zhí)行路徑 R Z'、” JABX8232TFa-c-d6032FTa-b-e第四部分:條件覆蓋用例設(shè)計(jì)一一使每個(gè)判定的每個(gè)條件的可能取值至少執(zhí)行 次。2019年一9月第一判定表達(dá)式:設(shè)條件A>3取真記為T1假 -T1條件B=2取真記為T2假 -T2第二判定表達(dá)式:設(shè)條件A=6取真記為T3假 -T3條件X>4取真記為T4假 -T4測(cè)試用例第判疋表達(dá)式第_判疋表達(dá)式執(zhí)行路徑ABXA>3B=2A=6X>43236-T1T2-T3T4a-b-e6024T1-T2T3-T4a-b-e未覆蓋c、d分支,不滿足判定覆蓋的要

37、求。條件覆蓋不一定包含判定覆蓋,判定覆蓋也不一定包含條件覆蓋。第五部分:判定/條件覆蓋用例設(shè)計(jì)一一選取足夠多的測(cè)試用例,使判斷中的每個(gè)條件的所有可能取值至少執(zhí)行一次,同時(shí)每個(gè)判斷本身的所有可能判斷結(jié)果至少執(zhí)行一次。測(cè)試用例第判疋表達(dá)式第_判疋表達(dá)式C i /./執(zhí)行路徑ABXA>3B=2A=6X>46236T1T2T3T4a-c-e3236-T1T2-T3T4a-b-e6024T1-T2T3-T4a-b-e6024-T1-T2-T3-T4a-b-d能同時(shí)滿足判定、條件兩種覆蓋標(biāo)準(zhǔn)。第六部分:條件組合覆蓋用例設(shè)計(jì)一一所有可能的條件取值組合至少執(zhí)行一次A>3, B=2; A>

38、;3, B 工 2 ; A> 3, B=2; A> 3,2I /A=6, X>4; A=6, X > 4 ;心 6, X>4; Am 6, X > 4測(cè)試用例第判疋表達(dá)式第_判疋表達(dá)式執(zhí)行路徑ABXA>3B=2A=6X>46236T1T2T3T4a-c-e3236-T1T2-T3T4a-b-e6024T1-T2T3-T4a-b-e6024-T1-T2-T3-T4a-b-d第七部分:實(shí)現(xiàn)路徑覆蓋用例設(shè)計(jì)一一覆蓋每一個(gè)可能的路徑測(cè)試用例第判疋表達(dá)式第二判疋表達(dá)式執(zhí)行路徑ABXA>3B=2A=6X>46236T1T2T3T4a-c-e421

39、6T1T2-T3-T4a-c-d3024-T1-T2-T3T4a-b-e6024-T1-T2-T3-T4a-b-d第一章1、什么是軟件危機(jī)?為什么會(huì)產(chǎn)生軟件危機(jī)?. fl- 0、 -S J1 J!- V-答:軟件危機(jī)是指在計(jì)算機(jī)軟件的開發(fā)和維護(hù)過程中遇到的一系列嚴(yán)重問題,如軟件費(fèi)用、軟件可靠性、軟件維護(hù)、軟件生產(chǎn)、軟件重用等。(1).軟件維護(hù)費(fèi)用急劇上升,直接威脅計(jì)算機(jī)應(yīng)用的擴(kuò)大。(2).軟件生產(chǎn)技術(shù)進(jìn)步緩慢2、何謂面向?qū)ο筌浖こ蹋亢?jiǎn)述它與傳統(tǒng)軟件工程的差別和聯(lián)系?傳統(tǒng)方法學(xué):采用結(jié)構(gòu)化技術(shù);軟件生命周期的全過程依次劃分為若干階段;自頂向下提高軟件開發(fā)的成功率系把通過發(fā)送消順序完成;優(yōu)點(diǎn):便

40、于分工協(xié)作,每個(gè)階段采用科學(xué)的管理技術(shù)和良好的技術(shù)方法 丄口面向?qū)ο蠓椒▽W(xué):是一種以數(shù)據(jù)為主線,把數(shù)據(jù)和對(duì)數(shù)據(jù)的操作結(jié)合起來的方法。 據(jù)及數(shù)據(jù)上的操作行的統(tǒng)一的軟件構(gòu)件;劃分類;按照繼承關(guān)系系優(yōu)點(diǎn):降低了軟件產(chǎn)品的復(fù)雜性,提高了軟件的可理解性,簡(jiǎn)化了軟件的開發(fā)和維護(hù)工作; 了軟件的可重用性。第二章1.什么是軟件生存周期?把生存周期劃分為階段的目的是什么?缺點(diǎn):只能面向?qū)ο蠛托袨榇穑很浖嬷芷谑侵敢粋€(gè)軟件從提出需求開始直到該軟件報(bào)廢為止的整個(gè)時(shí)期。需求 分析、軟件分析、軟件設(shè)計(jì)、編碼、軟件測(cè)試、運(yùn)行維護(hù)等活動(dòng),可以將這些活動(dòng)以適 當(dāng)方式分配到不同階段去完成。;把整個(gè)生存周期劃分為較小的階段,給

41、每個(gè)階段賦予確 定而有限的任務(wù),就能夠化簡(jiǎn)每一步的工作內(nèi)容,使因?yàn)檐浖?guī)模而增長(zhǎng)而大大增加了 軟件復(fù)雜性變得交易控制和管理。2. 傳統(tǒng)的瀑布模型把生存周期分為哪些階段?瀑布模型軟件開發(fā)有哪些特點(diǎn)? 答:瀑布模型在編碼以前安排了分析階段和設(shè)計(jì)階段;階段間具有順序性和依賴性。3. 什么是快速原型法?其快速表現(xiàn)在哪里?答:首先建立一個(gè)能夠反映用戶主要需求的原型,讓用戶實(shí)際看一看未來系統(tǒng)的概貌,以 便判斷哪些功能是符合需要的,哪些方面還需要改進(jìn)。然后將原型改進(jìn),最終建立完全I(xiàn) i / /_/ ? w,符合用戶要求的新系統(tǒng)。它的快速表現(xiàn)在能夠縮短開發(fā)周期的語言和工具,能在短時(shí)間 內(nèi)提供出成品,但不包括成

42、品中的細(xì)節(jié),然后讓客戶進(jìn)行對(duì)比。6. 比較增量模型和螺旋模型的特點(diǎn),有什么不同和相似的地方?答:增量模型是瀑布模型的順序特征與快速原型法的迭代特征相結(jié)合的產(chǎn)物。螺旋模型 是一種迭代模型,每迭代一次,螺旋線就前進(jìn)一周。增量模型每個(gè)增量具有高內(nèi)聚低耦yJ'1.|合,高度的獨(dú)立性。而螺旋模型它在結(jié)合瀑布模型與快速原型的基礎(chǔ)上還增加了風(fēng)險(xiǎn)分 析。8哪些開發(fā)模型適用于面向?qū)ο蟮能浖_發(fā)?I答:構(gòu)件集成模型、轉(zhuǎn)換模型、凈室模型。第三章問題1需求分析的任務(wù)是什么?怎樣理解分析階段的任務(wù)是決定“做什么”,而不是“怎么做”?答:需求分析主要有兩個(gè)任務(wù):第一是通過對(duì)問題及其環(huán)境的理解、分析和綜合建立分 析

43、模型;第二是在完全弄清用戶對(duì)軟件系統(tǒng)的確切要求的基礎(chǔ)上,用“軟件需求規(guī)格說明書”把用戶的需求表達(dá)出來。需求分析的任務(wù)就是為了明確要開發(fā)的是一個(gè)什么樣的系統(tǒng),而不是去怎么去實(shí)現(xiàn)這個(gè)系統(tǒng)。2. 需求分析要經(jīng)過哪些步驟?答:需求獲取、需求提煉、需求描述、需求驗(yàn)證。3. 有哪兩種主要的分析模型,它們有什么聯(lián)系?答:面向?qū)ο蠓治瞿P汀⒔Y(jié)構(gòu)化分析模型。前者是采用面向?qū)ο蟮乃枷脒M(jìn)行軟件需求分析的建模過程,而后者模型的核心是DD它是設(shè)計(jì)各種數(shù)據(jù)對(duì)象的總和。他們的模型分別 起到了描述數(shù)據(jù)模型,功能模型與行為模型的作用。5.什么是面向?qū)ο蠓治觯科渲饕枷胧鞘裁矗縇 i / 答:OOA面向?qū)ο蟮姆治鍪遣捎妹嫦驅(qū)ο蟮?/p>

44、思想進(jìn)行軟件需求分析建模的過程.主要思想是采用面向?qū)ο蟮乃枷搿?. 為什么DFD要分層?畫分層DFD要遵循哪些原則?答:大型復(fù)雜的軟件系統(tǒng),其 DFD可能含有數(shù)百乃至數(shù)千個(gè)加工,不能設(shè)想一次就將它 們?nèi)慨孆R。正確的做法是:從系統(tǒng)的基本模型(把整個(gè)系統(tǒng)看成一個(gè)加工)開始,逐yJ'1.|層地對(duì)系統(tǒng)進(jìn)行分解。原則:由頂向下,逐步細(xì)化。第四章問題*XJ |1、面向?qū)ο笥心男┗咎卣鳎糠庋b,繼承,抽象,多態(tài)2、uml中提供了哪9種圖?試訴每種圖所描述的內(nèi)容1、用例圖?描述角色以及角色與用例之間的連接關(guān)系。說明的是誰要使用系統(tǒng),以及他們使用 該系統(tǒng)可以做些什么。一個(gè)用例圖包含了多個(gè)模型元素,如系

45、統(tǒng)、參與者和用例,并且 顯示了這些元素之間的各種關(guān)系,如泛化、關(guān)聯(lián)和依賴。2、類圖?類圖是描述系統(tǒng)中的類,以及各個(gè)類之間的關(guān)系的靜態(tài)視圖。能夠讓我們?cè)谡_編 寫代碼以前對(duì)系統(tǒng)有一個(gè)全面的認(rèn)識(shí)。類圖是一種模型類型,確切的說,是一種靜態(tài)模 型類型。3、對(duì)象圖?與類圖極為相似,它是類圖的實(shí)例,對(duì)象圖顯示類的多個(gè)對(duì)象實(shí)例,而不是實(shí)際的類。它描述的不是類之間的關(guān)系,而是對(duì)象之間的關(guān)系。4、活動(dòng)圖?描述用例要求所要進(jìn)行的活動(dòng),以及活動(dòng)間的約束關(guān)系,有利于識(shí)別并行活動(dòng)。能 夠演示出系統(tǒng)中哪些地方存在功能,以及這些功能和系統(tǒng)中其他組件的功能如何共同滿 足前面使用用例圖建模的商務(wù)需求。5、狀態(tài)圖?描述類的對(duì)象所

46、有可能的狀態(tài),以及事件發(fā)生時(shí)狀態(tài)的轉(zhuǎn)移條件。可以捕獲對(duì)象、子系統(tǒng)和系統(tǒng)的生命周期。他們可以告知一個(gè)對(duì)象可以擁有的狀態(tài),并且事件(如消息的接收、時(shí)間的流逝、錯(cuò)誤、條件變?yōu)檎娴龋?huì)怎么隨著時(shí)間的推移來影響這些狀態(tài)。一個(gè) 狀態(tài)圖應(yīng)該連接到所有具有清晰的可標(biāo)識(shí)狀態(tài)和復(fù)雜行為的類;該圖可以確定類的行 為,以及該行為如何根據(jù)當(dāng)前的狀態(tài)變化,也可以展示哪些事件將會(huì)改變類的對(duì)象的狀 態(tài)。狀態(tài)圖是對(duì)類圖的補(bǔ)充。6、序列圖(順序圖)?序列圖是用來顯示你的參與者如何以一系列順序的步驟與系統(tǒng)的對(duì)象交互的模型。順序圖可以用來展示對(duì)象之間是如何進(jìn)行交互的。順序圖將顯示的重點(diǎn)放在消息序列上,即強(qiáng)調(diào)消息是如何在對(duì)象之間被發(fā)送

47、和接收的。7、協(xié)作圖?和序列圖相似,顯示對(duì)象間的動(dòng)態(tài)合作關(guān)系。可以看成是類圖和順序圖的交集,協(xié) 作圖建模對(duì)象或者角色,以及它們彼此之間是如何通信的。如果強(qiáng)調(diào)時(shí)間和順序,則使 用序列圖;如果強(qiáng)調(diào)上下級(jí)關(guān)系,則選擇協(xié)作圖;這兩種圖合稱為交互圖。8構(gòu)件圖(組件圖)?描述代碼構(gòu)件的物理結(jié)構(gòu)以及各種構(gòu)建之間的依賴關(guān)系。用來建模軟件的組件及其 相互之間的關(guān)系,這些圖由構(gòu)件標(biāo)記符和構(gòu)件之間的關(guān)系構(gòu)成。在組件圖中,構(gòu)件時(shí)軟 件單個(gè)組成部分,它可以是一個(gè)文件,產(chǎn)品、可執(zhí)行文件和腳本等。9、部署圖(配置圖)?是用來建模系統(tǒng)的物理部署。例如計(jì)算機(jī)和設(shè)備,以及它們之間是如何連接的。部 署圖的使用者是開發(fā)人員、系統(tǒng)集成

48、人員和測(cè)試人員。3、用uml所提供的圖形符號(hào)建立工資管理系統(tǒng)的靜態(tài)模型第五章問題1、軟件需求的任務(wù)是什么?要經(jīng)過哪些步驟?2、 有哪兩種主要的需求模型?它們各由哪些部分組成?1 .結(jié)構(gòu)化需求模型該模型主要由3部分組成:即包括數(shù)據(jù)流圖和加工規(guī)格說明書的功能模型;主要由數(shù)據(jù) 字典和E-R圖組成的數(shù)據(jù)模型;由狀態(tài)轉(zhuǎn)換圖,控制圖和控制規(guī)格說明書等組成的行為 模型。2. 面向?qū)ο笮枨竽P陀扇糠纸M成:用例模型,補(bǔ)充規(guī)約和術(shù)語表。其中用例模型包括用例圖跟用例規(guī)約。3、建立用例模型時(shí),如何確定參與者和用例?參與者泛指所有存在于系統(tǒng)外部并與系統(tǒng)進(jìn)行交互的人,硬件或其他系統(tǒng)。通俗地講, 參與者主要是待開發(fā)系統(tǒng)的使用者,尋找參與者可從以下問題入手:2019年一9月a. 系統(tǒng)開發(fā)完成后,有那些人會(huì)使用這個(gè)系統(tǒng)?b. 系統(tǒng)需要從那些人或其他系統(tǒng)中獲取數(shù)據(jù)?c. 系統(tǒng)會(huì)為納西爾或者其他系統(tǒng)提供數(shù)據(jù)?d. 系統(tǒng)會(huì)與哪些其他系統(tǒng)相關(guān)聯(lián)?e. 系統(tǒng)是由誰來維護(hù)和管理?第六章問題1、軟件分析的目標(biāo)是什么?包含哪些任務(wù) ?2、軟件模型包含哪些內(nèi)容?它們之間有什么聯(lián)系?3、用哪種uml圖可以表示對(duì)象間的交互?第七章問題1、面向?qū)ο笤O(shè)計(jì)的任務(wù)是什

溫馨提示

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