(考研復(fù)試)軟件工程筆記_第1頁(yè)
(考研復(fù)試)軟件工程筆記_第2頁(yè)
(考研復(fù)試)軟件工程筆記_第3頁(yè)
(考研復(fù)試)軟件工程筆記_第4頁(yè)
已閱讀5頁(yè),還剩10頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、1:軟件危機(jī):?jiǎn)栴}1:如何開(kāi)發(fā)軟件,以滿足對(duì)軟件日益增長(zhǎng)的需求。問(wèn)題2:如何維護(hù)數(shù)量不斷膨脹的軟件。表現(xiàn):對(duì)軟件開(kāi)發(fā)成本和時(shí)間估計(jì)不準(zhǔn),用戶對(duì)已完成軟件不滿意,軟件質(zhì)量不可靠,軟件不可維護(hù),軟件缺少文檔,軟件成本過(guò)高,軟件跟不上硬件發(fā)展速度。原因:與軟件本身特點(diǎn)有關(guān),缺乏可見(jiàn)性,質(zhì)量難以評(píng)價(jià),規(guī)模龐大難以維護(hù)。與軟件開(kāi)發(fā)維護(hù)的不當(dāng)方法有關(guān),輕視需求分析和維護(hù),對(duì)用戶的要求沒(méi)有完整準(zhǔn)確的認(rèn)識(shí)就編寫(xiě)程序,忽視程序,文檔,數(shù)據(jù)等軟件配置。2:軟件工程:采用工程的概念,原理,技術(shù)和方法開(kāi)發(fā)與維護(hù)軟件,把正確的管理技術(shù)和軟件開(kāi)發(fā)技術(shù)結(jié)合起來(lái),經(jīng)濟(jì)的開(kāi)發(fā)出高質(zhì)量的軟件并有效的維護(hù)。即把系統(tǒng)化的,規(guī)范的,可

2、度量的途徑應(yīng)用于軟件開(kāi)發(fā),運(yùn)行和維護(hù)的過(guò)程。3: 軟件工程 7 條基本原理:用分階段的生命周期計(jì)劃嚴(yán)格管理,堅(jiān)持進(jìn)行階段評(píng)審,實(shí)行嚴(yán)格的產(chǎn)品控制,采用現(xiàn)代程序設(shè)計(jì)技術(shù),結(jié)果應(yīng)能清楚地審查,開(kāi)發(fā)小組的人員應(yīng)該少而精,承認(rèn)不斷改進(jìn)軟件工程實(shí)踐的必要性。4:軟件工程領(lǐng)域: 軟件需求, 設(shè)計(jì),構(gòu)建(寫(xiě)代碼),測(cè)試,維護(hù),配置管理,工程管理,工程過(guò)程,工程工具,軟件質(zhì)量。5:軟件生命周期:軟件定義(問(wèn)題定義,可行性研究,需求分析),軟件開(kāi)發(fā)(概要設(shè)計(jì),詳細(xì)設(shè)計(jì),編碼和單元測(cè)試,綜合測(cè)試) ,運(yùn)行維護(hù)(改正性維護(hù),適應(yīng)性維護(hù),完善性維護(hù),預(yù)防性維護(hù))。、生命周期模型6:瀑布模型:就是把一個(gè)開(kāi)發(fā)過(guò)程分成收集

3、需求,分析,設(shè)計(jì),編碼,測(cè)試,維護(hù)六部分,只有完成前面一步才能開(kāi)始后面一步,上一步的輸出的文檔就是這一步的輸入文檔,每一步完成都要交出合格的文檔,每一步都會(huì)有反饋,如果反饋有錯(cuò)誤就退回前一步解決問(wèn)題。瀑布模型的缺點(diǎn):實(shí)際的項(xiàng)目開(kāi)發(fā)很難嚴(yán)格按該模型進(jìn)行;由于用戶只能通過(guò)文檔來(lái)了解產(chǎn)品,客戶往往很難清楚地給出所有的需求,而瀑布模型不適應(yīng)用戶需求的變化;軟件的實(shí)際情況必須到項(xiàng)目開(kāi)發(fā)的后期客戶才能看到。7:快速原型模型:就是根據(jù)用戶的需求迅速設(shè)計(jì)出一個(gè)原型系統(tǒng),原型系統(tǒng)具有基本的功能,然后用戶使用原型并對(duì)原型提出需求和改變,開(kāi)發(fā)人員再對(duì)原型進(jìn)行修改和完善知道用戶滿意。優(yōu)點(diǎn):容易適應(yīng)需求的變化;有利于開(kāi)

4、發(fā)與培訓(xùn)的同步;開(kāi)發(fā)費(fèi)用低、 開(kāi)發(fā)周期短且對(duì)用戶更友好。缺點(diǎn):快速建立起來(lái)的系統(tǒng)結(jié)構(gòu)加上連續(xù)的修改可能會(huì)導(dǎo)致產(chǎn)品質(zhì)量低下 ; 使用這個(gè)模型的前提是要有一個(gè)展示性的產(chǎn)品原型,因此在一定程度上可能會(huì)限制開(kāi)發(fā)人員的創(chuàng)新。8:增量模型:就是把軟件分成許多個(gè)構(gòu)件,每個(gè)構(gòu)件分別當(dāng)做一個(gè)軟件來(lái)分析,設(shè)計(jì),編碼,測(cè)試。開(kāi)發(fā)人員一次一個(gè)構(gòu)件的提交給用戶,最后組裝到一起。增量模型的優(yōu)點(diǎn):一開(kāi)始不用投入太多人力,如果核心產(chǎn)品很受歡迎,則可增加人力實(shí)現(xiàn)下一個(gè)增量;可先發(fā)布部分功能給客戶,讓客戶逐漸適應(yīng)。 缺點(diǎn):并行開(kāi)發(fā)構(gòu)件有可能遇到不能集成的風(fēng)險(xiǎn),軟件必須具備開(kāi)放式的體系結(jié)構(gòu)。9:螺旋模型:螺旋模型基本做法是在快速原

5、型模型的每一個(gè)原型前引入一個(gè)非常嚴(yán)格的風(fēng)險(xiǎn)分析,每個(gè)原型經(jīng)過(guò)制定計(jì)劃,風(fēng)險(xiǎn)分析,實(shí)施工程,客戶評(píng)估四步走。每個(gè)原型都標(biāo)識(shí)一個(gè)或多個(gè)主要風(fēng)險(xiǎn),直到所有的主要風(fēng)險(xiǎn)因素都被確定。螺旋模型由風(fēng)險(xiǎn)驅(qū)動(dòng),強(qiáng)調(diào)可選方案和約束條件從而支持軟件的重用,有助于將軟件質(zhì)量作為特殊目標(biāo)融入產(chǎn)品開(kāi)發(fā)之中。優(yōu)點(diǎn):設(shè)計(jì)上的靈活性, 可以在項(xiàng)目的各個(gè)階段進(jìn)行變更;以小的分段來(lái)構(gòu)建大型系統(tǒng), 使成本計(jì)算變得簡(jiǎn)單容易;客戶始終參與每個(gè)階段的開(kāi)發(fā) , 保證了項(xiàng)目不偏離正確方向以及項(xiàng)目的可控性;缺點(diǎn):采用螺旋模型需要具有相當(dāng)豐富的風(fēng)險(xiǎn)評(píng)估經(jīng)驗(yàn)和專門知識(shí),在風(fēng)險(xiǎn)較大的項(xiàng)目開(kāi)發(fā)中,如果未能夠及時(shí)標(biāo)識(shí)風(fēng)險(xiǎn),勢(shì)必造成重大損失;過(guò)多的迭代次數(shù)

6、會(huì)增加開(kāi)發(fā)成本,延遲提交時(shí)間。10:噴泉模型:以用戶需求為動(dòng)力,以對(duì)象為驅(qū)動(dòng)的模型,主要用于描述面向?qū)ο蟮能浖_(kāi)發(fā)過(guò)程。該模型認(rèn)為軟件開(kāi)發(fā)過(guò)程自下而上周期的各階段是相互迭代和無(wú)間隙的特性。噴泉模型不像瀑布模型那樣,需要分析活動(dòng)結(jié)束后才開(kāi)始設(shè)計(jì)活動(dòng),設(shè)計(jì)活動(dòng)結(jié)束后才開(kāi)始編碼活動(dòng)。該模型的各個(gè)階段沒(méi)有明顯的界限,開(kāi)發(fā)人員可以同步進(jìn)行開(kāi)發(fā)。其優(yōu)點(diǎn)是可以提高軟件項(xiàng)目開(kāi)發(fā)效率,節(jié)省開(kāi)發(fā)時(shí)間,適應(yīng)于面向?qū)ο蟮能浖_(kāi)發(fā)過(guò)程。缺點(diǎn):由于噴泉模型在各個(gè)開(kāi)發(fā)階段是重疊的,因此在開(kāi)發(fā)過(guò)程中需要大量的開(kāi)發(fā)人員,因此不利于項(xiàng)目的管理。10.1 :總結(jié):一開(kāi)始是瀑布模型,但是瀑布模型因?yàn)槭俏臋n驅(qū)動(dòng),最終交付的產(chǎn)品不一定符

7、合用戶需求,所以有了快速原型模型,增量模型能在軟件早起就讓投資者獲得回報(bào),但是需要軟件具有開(kāi)發(fā)體系架構(gòu),螺旋模型是風(fēng)險(xiǎn)驅(qū)動(dòng),但是需要專業(yè)的風(fēng)險(xiǎn)分析人,噴泉模型的軟件生命周期是循環(huán)的,適用于面向?qū)ο蠓缎汀?1:rational統(tǒng)一過(guò)程是一個(gè)軟件開(kāi)發(fā)過(guò)程框架,就是指團(tuán)隊(duì)可以根據(jù)具體的項(xiàng)目組或軟件開(kāi)發(fā)企業(yè)的不同需求,能夠定義,配置,定制和實(shí)施一致的軟件開(kāi)發(fā)過(guò)程,包括 3 核心:用于成功開(kāi)發(fā)軟件的一組基本觀念和原則,一套關(guān)于可重用方法內(nèi)容和過(guò)程構(gòu)件的框架(在框架內(nèi)定義自己的開(kāi)發(fā)方法和過(guò)程),基礎(chǔ)的方法和過(guò)程定義語(yǔ)言。12: RUP的最佳實(shí)踐:描述了一個(gè)指導(dǎo)開(kāi)發(fā)團(tuán)隊(duì)達(dá)成目標(biāo)的迭代式的軟件開(kāi)發(fā)過(guò)程,包括:

8、迭代式開(kāi)發(fā)(每次迭代過(guò)程中需求改變,每個(gè)迭代過(guò)程以完成可執(zhí)行版本結(jié)束,讓用戶不斷介入和提出意見(jiàn)并改進(jìn)),管理需求(用腳本來(lái)確定需求),使用基于組件的架構(gòu)(使用功能清晰的模塊),可視化建模(可視化圖形更容易令人理解,幫助人們提高管理軟件復(fù)雜性的能力) ,驗(yàn)證軟件質(zhì)量(軟件質(zhì)量評(píng)估貫穿整個(gè)開(kāi)發(fā)過(guò)程),控制軟件變更(確保每個(gè)更改都是可接受和可跟蹤的)。13:敏捷過(guò)程:宣告了以下4 個(gè)價(jià)值觀:個(gè)體和交互高于過(guò)程和工具(團(tuán)隊(duì)合作很重要,應(yīng)該根據(jù)團(tuán)隊(duì)成員和交互方式配置項(xiàng)目環(huán)境) ,可以使用的軟件高于面面俱到的文檔(主要精力放在創(chuàng)建) ,客戶合作高于合同談判(開(kāi)發(fā)團(tuán)隊(duì)與客戶密切協(xié)作) ,響應(yīng)變化高于遵循計(jì)劃

9、(計(jì)劃必須有足夠的靈活性,在需要時(shí)能夠迅速調(diào)整)14:極限編程:就是把好的開(kāi)發(fā)實(shí)踐運(yùn)用到極致,廣泛運(yùn)用于模糊且經(jīng)常改變的場(chǎng)合。過(guò)程:首先,項(xiàng)目組針對(duì)客戶代表提出的要求進(jìn)行討論,對(duì)體系結(jié)構(gòu)進(jìn)行試探,然后項(xiàng)目組根據(jù)客戶設(shè)定的優(yōu)先級(jí)指定交付計(jì)劃,然后開(kāi)始多個(gè)迭代過(guò)程。迭代期中新用戶故事不在本次迭代內(nèi)解決,開(kāi)發(fā)出的新版本軟件通過(guò)驗(yàn)收測(cè)試之后交付用戶使用。極限編程可以迅速快捷的響應(yīng)變化和不確定的需求,同時(shí)保持開(kāi)發(fā)速度。迭代過(guò)程:項(xiàng)目組根據(jù)項(xiàng)目速率,選擇需要完成的用戶需求或應(yīng)該消除的差錯(cuò),制定出本次迭代計(jì)劃,每天舉行一次站立會(huì)議解決遇到問(wèn)題,調(diào)整迭代計(jì)劃,開(kāi)發(fā)出的新功能必須通過(guò)單元測(cè)試,立即繼承,得到新的

10、可運(yùn)行版本由客戶代表進(jìn)行驗(yàn)收測(cè)試,客戶代表提出問(wèn)題,項(xiàng)目組根據(jù)問(wèn)題提出新的用戶要求,算出新的項(xiàng)目速率,并在站立會(huì)議上討論。15: 能力成熟模型 CMM:因?yàn)閱?wèn)題是由管理軟件過(guò)程的方法不當(dāng)引起的,所以新軟件技術(shù)的運(yùn)用并不會(huì)自動(dòng)提高生產(chǎn)率和軟件質(zhì)量,能力成熟模型有助于軟件開(kāi)發(fā)組織建立一個(gè)有規(guī)律,成熟的軟件過(guò)程, 改進(jìn)后的過(guò)程將開(kāi)發(fā)出高質(zhì)量的軟件,并節(jié)約時(shí)間和經(jīng)費(fèi)。軟件開(kāi)發(fā)既包括技術(shù)方面也包括管理方面, CMM通過(guò)改變管理方面,從而改變技術(shù)方面。16:CMM結(jié)構(gòu):成熟度等級(jí)(對(duì)軟件過(guò)程的改進(jìn)的5 個(gè)步驟),過(guò)程能力(改進(jìn)的軟件過(guò)程實(shí)現(xiàn)預(yù)期結(jié)果的能力),關(guān)鍵過(guò)程域(完成一些關(guān)鍵過(guò)程域就進(jìn)入下一個(gè)成熟度

11、等級(jí)),目標(biāo)(定義每個(gè)關(guān)鍵過(guò)程域的目的),公共特性(把關(guān)鍵實(shí)踐歸入 5 個(gè)公共特性之中,指示一個(gè)關(guān)鍵過(guò)程域的實(shí)施和規(guī)范化是否有效),關(guān)鍵實(shí)踐(若干個(gè)關(guān)鍵實(shí)踐描述關(guān)鍵過(guò)程域)。17:軟件過(guò)程:為了獲得高質(zhì)量軟件產(chǎn)品所需要完成的一系列任務(wù)的框架,規(guī)定各項(xiàng)任務(wù)的工作步驟。傳統(tǒng)方法學(xué)之結(jié)構(gòu)化分析18:傳統(tǒng)的軟件工程采用結(jié)構(gòu)化分析完成需求分析工作。19:需求分析的第一步就是盡可能準(zhǔn)確的了解用戶當(dāng)前的情況和需要解決的問(wèn)題,分析員對(duì)用戶的要求反復(fù)求精細(xì)化,理解用戶需求,得出對(duì)目標(biāo)系統(tǒng)完整的準(zhǔn)確的和具體的要求。結(jié)構(gòu)化分析就是通過(guò)建立數(shù)據(jù)模型,功能模型,行為模型給出完整的需求規(guī)格說(shuō)明書(shū)和全面的設(shè)計(jì)表示。20:與

12、用戶溝通的方法:會(huì)談,簡(jiǎn)易應(yīng)用規(guī)格說(shuō)明書(shū),軟件原型。21:結(jié)構(gòu)化分析實(shí)質(zhì)上是一種創(chuàng)建模型的活動(dòng),模型可以描述用戶需求,為軟件設(shè)計(jì)奠定基礎(chǔ),定義一組需求,一旦開(kāi)發(fā)出軟件產(chǎn)品之后,就可以用這組需求為標(biāo)準(zhǔn)來(lái)驗(yàn)收。分析模型的核心是數(shù)據(jù)字典,圍繞這個(gè)核心有三種圖22:實(shí)體關(guān)系圖可以數(shù)據(jù)對(duì)象描述,數(shù)據(jù)流圖(就是A 和 B兩個(gè)數(shù)據(jù)流經(jīng)過(guò)一個(gè)處理系統(tǒng)出來(lái)C 數(shù)據(jù))可以處理規(guī)格說(shuō)明,狀態(tài)轉(zhuǎn)換圖可以控制規(guī)格說(shuō)明23:通過(guò)需求分析創(chuàng)建分析模型外還要寫(xiě)出軟件規(guī)格需求說(shuō)明,這是分析階段的最終成果。24:數(shù)據(jù)字典:對(duì)數(shù)據(jù)的數(shù)據(jù)項(xiàng)、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)流、數(shù)據(jù)存儲(chǔ)、處理邏輯、外部實(shí)體等進(jìn)行定義和描述,其目的是對(duì)數(shù)據(jù)流程圖中的各個(gè)

13、元素做出詳細(xì)的說(shuō)明從而是用戶和系統(tǒng)分析員雙方對(duì)輸入輸出存儲(chǔ)的成分以及中間計(jì)算結(jié)果有共同的理解。25:結(jié)構(gòu)化分析舉例:項(xiàng)目:系統(tǒng)分析員研究學(xué)校自己的計(jì)算機(jī)生成工資明細(xì)表和各種財(cái)務(wù)報(bào)表的可能性。過(guò)程包括問(wèn)題定義,可行性研究,需求分析3 階段。( 1)問(wèn)題定義:考慮用戶面臨的問(wèn)是什么,用戶為什么要做這個(gè)項(xiàng)目,考慮項(xiàng)目規(guī)模,預(yù)花費(fèi)的費(fèi)用。( 2)可行性研究:抽象和簡(jiǎn)化了的系統(tǒng)分析和設(shè)計(jì)的全過(guò)程,目的是以最小的代價(jià)確定問(wèn)題是否可以解決。澄清系統(tǒng)規(guī)模和目標(biāo),研究現(xiàn)有系統(tǒng),導(dǎo)出高層邏輯模型,進(jìn)一步確定系統(tǒng)規(guī)模和目標(biāo),導(dǎo)出供選擇的解法,推薦最佳方案,草擬開(kāi)發(fā)計(jì)劃,寫(xiě)出文檔提交審查。( 3)需求分析:回答“系統(tǒng)

14、必須做什么” ,在可行性研究的基礎(chǔ)上,以前一段產(chǎn)生的文檔為出發(fā)點(diǎn),分析員設(shè)計(jì)出更為精確的數(shù)據(jù)流圖,寫(xiě)出數(shù)據(jù)字典,更詳盡的定義系統(tǒng)應(yīng)該完成的每一個(gè)邏輯功能。寫(xiě)出文檔初稿,定義邏輯系統(tǒng),細(xì)化數(shù)據(jù)流圖,書(shū)寫(xiě)正式文檔,技術(shù)審查和管理復(fù)查結(jié)構(gòu)化設(shè)計(jì)26:軟件設(shè)計(jì)的目標(biāo)是設(shè)計(jì)出所要開(kāi)發(fā)的軟件的模型。對(duì)軟件需求有了完整,準(zhǔn)確,具體的理解后,接下來(lái)的工作就是用軟件正確的實(shí)現(xiàn)需求。傳統(tǒng)的軟件工程用結(jié)構(gòu)化設(shè)計(jì),把軟件設(shè)計(jì)工作分為概要設(shè)計(jì)(分析軟件規(guī)格說(shuō)明書(shū),對(duì)軟件進(jìn)行功能分解,劃分模塊,設(shè)計(jì)出預(yù)定模塊的結(jié)構(gòu))和詳細(xì)設(shè)計(jì)(詳細(xì)設(shè)計(jì)每個(gè)模塊的算法和數(shù)據(jù)結(jié)構(gòu))。結(jié)構(gòu)化分析為結(jié)構(gòu)化設(shè)計(jì)提供輸入信息,由數(shù)據(jù)模型,功能模型,

15、行為模型描述的軟件需求給軟件設(shè)計(jì)者,軟件設(shè)計(jì)者再完成數(shù)據(jù)設(shè)計(jì),體系結(jié)構(gòu)設(shè)計(jì),接口設(shè)計(jì),過(guò)程設(shè)計(jì)。27:軟件設(shè)計(jì)的原理:模塊化(把程序劃分為獨(dú)立命名獨(dú)立訪問(wèn)的模塊,每個(gè)模塊完成一個(gè)子功能),抽象(高層次抽象一開(kāi)始以概括的方式敘述問(wèn)題的解法,然后低層次抽象把面向問(wèn)題的術(shù)語(yǔ)和面向?qū)崿F(xiàn)的術(shù)語(yǔ)結(jié)合起來(lái)敘述問(wèn)題的解法,最后再最低層用直接實(shí)現(xiàn)的方式敘述問(wèn)題的解法),逐步求精(即將系統(tǒng)功能按層次進(jìn)行分解,每一層不斷將功能細(xì)化,到最后一層都是功能單一、簡(jiǎn)單易實(shí)現(xiàn)的模塊),細(xì)節(jié)隱藏。28: 模塊獨(dú)立:獨(dú)立的模塊比較容易開(kāi)發(fā),測(cè)試和維護(hù),耦合(一個(gè)軟件結(jié)構(gòu)內(nèi)不同模塊之間的互聯(lián)程度,耦合的強(qiáng)度取決于模塊間接口和復(fù)雜程

16、度) ,內(nèi)聚(一個(gè)模塊內(nèi)各個(gè)元素彼此結(jié)合的緊密程度) ,我們追求的是低耦合和高內(nèi)聚。29:結(jié)構(gòu)化設(shè)計(jì)啟發(fā)規(guī)則:提高模塊獨(dú)立性, 模塊規(guī)模適中,深度寬度扇出扇入都要適中,模塊的作用于在可控范圍內(nèi),降低接口復(fù)雜度,模塊單入單出,模塊功能可預(yù)測(cè)。30:軟件結(jié)構(gòu)表示法:層次圖(系統(tǒng)模塊下面是各分模塊,分模塊又引出分分模塊) , HIPO 圖(在層次圖的基礎(chǔ)上家一個(gè) IPO 表,更好的現(xiàn)實(shí)輸入,處理,輸出三部分的關(guān)系) ,結(jié)構(gòu)圖(在層次圖的基礎(chǔ)上,更詳細(xì)的描述了模塊的信息和之間的數(shù)據(jù)流)31:面向數(shù)據(jù)流的設(shè)計(jì)方法定義了一些不同的映射,利用這些映射可以把數(shù)據(jù)流圖變換成軟件結(jié)構(gòu),通常說(shuō)結(jié)構(gòu)化設(shè)計(jì)方法就是基于

17、數(shù)據(jù)流的設(shè)計(jì)方案。數(shù)據(jù)流映射成信息流,信息流有變換流和事務(wù)流兩種。32:人機(jī)界面設(shè)計(jì)問(wèn)題:系統(tǒng)響應(yīng)時(shí)間,用戶幫助設(shè)施,出錯(cuò)信息處理, 命令交互。 人機(jī)界面設(shè)計(jì)也是一個(gè)迭代的過(guò)程,創(chuàng)建設(shè)計(jì)模型,創(chuàng)建原型,用戶評(píng)估返回意見(jiàn)修改。33:過(guò)程設(shè)計(jì):過(guò)程設(shè)計(jì)不僅僅是在邏輯上實(shí)現(xiàn)每個(gè)模塊的功能,更重要的是設(shè)計(jì)出的過(guò)程簡(jiǎn)明易懂。如果一個(gè)程序的代碼塊僅僅通過(guò)順序,選擇,循環(huán)3 鐘控制結(jié)構(gòu)進(jìn)行連接,并每個(gè)代碼塊只有一個(gè)入口和一個(gè)出口,那么這個(gè)就是結(jié)構(gòu)化程序。34:過(guò)程設(shè)計(jì)工具:程序流程圖,盒圖,PAD 圖,判定表,判定樹(shù)35:面向數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)方法:不明確的使用軟件結(jié)構(gòu)的概念,對(duì)于模塊獨(dú)立原理沒(méi)有給予重視,這種

18、方法適合再詳細(xì)設(shè)計(jì)階段,完成軟件結(jié)構(gòu)設(shè)計(jì)之后,用面向數(shù)據(jù)結(jié)構(gòu)的方法來(lái)設(shè)計(jì)每一個(gè)模塊的處理過(guò)程。結(jié)構(gòu)化實(shí)現(xiàn)36: 實(shí)現(xiàn)分為編碼和測(cè)試。37:測(cè)試分為黑盒測(cè)試(知道了產(chǎn)品應(yīng)具有的功能,測(cè)試每個(gè)功能能否正常使用,是在程序接口進(jìn)行的測(cè)試)和白盒測(cè)試(知道產(chǎn)品內(nèi)部工作過(guò)程,通過(guò)測(cè)試來(lái)檢驗(yàn)產(chǎn)品內(nèi)部動(dòng)作是否按照規(guī)格說(shuō)明書(shū)的規(guī)定正常進(jìn)行,是在程序的每條通路測(cè)試)38:測(cè)試準(zhǔn)則:所有的測(cè)試都應(yīng)能有用戶需求的根據(jù);應(yīng)該早早指定測(cè)試計(jì)劃;采用二八原理;逐步測(cè)試小模塊,然后測(cè)試大模塊;窮舉測(cè)試是不可能的;測(cè)試應(yīng)由第三方來(lái)做。38.5 :設(shè)計(jì)測(cè)試方案基本目標(biāo)是選用盡可能少的高校測(cè)試數(shù)據(jù)。39:白盒測(cè)試方案:邏輯覆蓋:語(yǔ)

19、句覆蓋(所有語(yǔ)句都走一遍),判定覆蓋(判定結(jié)果的每個(gè)可能結(jié)果都執(zhí)行一遍),條件覆蓋(判定表達(dá)式中每個(gè)結(jié)果都走一遍),判定 / 條件覆蓋(結(jié)合前面兩個(gè)) ,條件組合覆蓋(判定表達(dá)式的條件的各種組合都執(zhí)行一次)40:白盒測(cè)試技術(shù):邏輯覆蓋,控制結(jié)構(gòu)測(cè)試(基本路徑測(cè)試,條件測(cè)試,數(shù)據(jù)流測(cè)試,循環(huán)測(cè)試)41:黑盒測(cè)試技術(shù):等價(jià)劃分,邊界值分析,錯(cuò)誤推測(cè)。42:測(cè)試4 步驟:?jiǎn)卧獪y(cè)試:最開(kāi)始測(cè)試每個(gè)單獨(dú)的模塊,采用白盒測(cè)試, 檢查模塊控制結(jié)構(gòu)中的特定路徑。集成測(cè)試:把模塊裝配在一起形成完整的軟件包,在裝配的同時(shí)進(jìn)行測(cè)試,解決程序驗(yàn)證和程序構(gòu)造兩個(gè)問(wèn)題,采用黑盒測(cè)試。確認(rèn)測(cè)試:對(duì)軟件所滿足的所有功能,行為

20、,性能需求的最終測(cè)試,采用黑盒測(cè)試。系統(tǒng)測(cè)試:所有系統(tǒng)元素都能正常配合。43:調(diào)試是在測(cè)試發(fā)現(xiàn)錯(cuò)誤之后排除錯(cuò)誤的過(guò)程。44:軟件可靠性:程序在給定時(shí)間間隔內(nèi),按照規(guī)格說(shuō)明書(shū)運(yùn)行的概率。面向?qū)ο蠓椒▽W(xué)45: 傳統(tǒng)的軟件工程方法學(xué)不適合大型軟件產(chǎn)品的開(kāi)發(fā),現(xiàn)在是面向?qū)ο蠓椒▽W(xué),面向?qū)ο箝_(kāi)發(fā)軟件的時(shí)候通常建立3 種模型:對(duì)象模型,動(dòng)態(tài)模型,功能模型。對(duì)象模型是后二者的基礎(chǔ),是最最最核心的。46:用對(duì)象分解取代功能分解,面向過(guò)程的設(shè)計(jì)方法以算法為核心,把數(shù)據(jù)和處理過(guò)程相互分割開(kāi)來(lái)。面向?qū)ο笠詫?duì)象為核心,對(duì)象是對(duì)世界實(shí)體的抽象,把實(shí)體的內(nèi)部狀態(tài),靜態(tài)屬性,動(dòng)態(tài)行為都封裝在一個(gè)對(duì)象里面。對(duì)象之間通過(guò)傳遞消

21、息通信。面向過(guò)程設(shè)計(jì)方法把精力集中在設(shè)計(jì)算法上,按照計(jì)算機(jī)的要求設(shè)計(jì),設(shè)計(jì)者站在計(jì)算機(jī)的立場(chǎng)上,但是計(jì)算機(jī)和人類觀點(diǎn)差別很大,面向?qū)ο缶褪钦驹谌祟愑^點(diǎn)的立場(chǎng)上,面向?qū)ο笫且环N以數(shù)據(jù)或信息為主線,把數(shù)據(jù)和處理相結(jié)合的方法,對(duì)象不被動(dòng)的等待外界對(duì)它操作,而是進(jìn)行處理的主體,必須發(fā)消息讓對(duì)象執(zhí)行對(duì)象自己的操作,而不能從外界直接對(duì)它的私有數(shù)據(jù)進(jìn)行操作。47:面向?qū)ο蠓椒▽W(xué)的優(yōu)點(diǎn):與人類習(xí)慣的思維方法一致,穩(wěn)定性好,可重用性好,可維護(hù)性好,易開(kāi)發(fā)大型軟件。48:對(duì)象模型:對(duì)象模型表示靜態(tài)的,結(jié)構(gòu)化的數(shù)據(jù),描述系統(tǒng)的靜態(tài)結(jié)構(gòu),為后兩個(gè)提供了框架。49:動(dòng)態(tài)模型:表示瞬時(shí)的,行為化的系統(tǒng)的控制性質(zhì),規(guī)定了對(duì)象模型中的對(duì)象的合法變化系列,用狀態(tài)轉(zhuǎn)換圖描述。50:功能模型:表示變化的系統(tǒng)的功能性質(zhì),它指明了系統(tǒng)應(yīng)該做什么,更直接的反應(yīng)了用戶的需求。51:功能模型指明做什么。動(dòng)態(tài)模型規(guī)定什么時(shí)候做,對(duì)象模型規(guī)定,誰(shuí)做。面向?qū)ο蠓治?2:面向?qū)ο蠓治龅年P(guān)鍵在于:識(shí)別出問(wèn)題域內(nèi)的對(duì)象,分析他們之間的關(guān)系,最終建立3 種模型。53:面向?qū)ο蠓治觯簩ふ翌惡蛯?duì)象,識(shí)別結(jié)構(gòu),識(shí)別主題,定義屬性,建立動(dòng)態(tài)模型,建立功能模型,定義服務(wù)。

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論