軟件工程概論.doc_第1頁(yè)
軟件工程概論.doc_第2頁(yè)
軟件工程概論.doc_第3頁(yè)
軟件工程概論.doc_第4頁(yè)
軟件工程概論.doc_第5頁(yè)
已閱讀5頁(yè),還剩4頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

。軟件工程1、軟件危機(jī):軟件危機(jī)是指在計(jì)算機(jī)軟件的開(kāi)發(fā)和維護(hù)過(guò)程中遇到的一系列嚴(yán)重問(wèn)題。包含兩方面的問(wèn)題:(1)如何開(kāi)發(fā)軟件,以滿(mǎn)足對(duì)軟件日益增長(zhǎng)的需求;(2)如何維護(hù)數(shù)量不斷膨脹的已有軟件。2、軟件危機(jī)的主要表現(xiàn):(1)對(duì)軟件開(kāi)發(fā)成本和進(jìn)度的估計(jì)經(jīng)常很不準(zhǔn)確;(2)用戶(hù)對(duì)“已完成的”軟件系統(tǒng)不滿(mǎn)意的現(xiàn)象經(jīng)常發(fā)生;(3)軟件產(chǎn)品的質(zhì)量往往靠不??;(4)軟件常常是不可維護(hù)的;(5)軟件通常沒(méi)有適當(dāng)?shù)奈臋n資料;(6)軟件成本在計(jì)算機(jī)系統(tǒng)總成本中所占的比例逐年上升;(7)軟件開(kāi)發(fā)生產(chǎn)率提高的速度,遠(yuǎn)遠(yuǎn)跟不上計(jì)算機(jī)應(yīng)用迅速普及深入的趨勢(shì)。3、產(chǎn)生軟件危機(jī)的原因(1)從軟件特點(diǎn)上看,軟件是邏輯部件,不是物理部件;(2)軟件是很大的程序,復(fù)雜且有很多技術(shù)問(wèn)題,但缺少?lài)?yán)格而科學(xué)的管理;(3)軟件的參與人員多且成分復(fù)雜(需求人員,開(kāi)發(fā)人員,用戶(hù),維護(hù)人員等);(4)在軟件實(shí)踐過(guò)程中或多或少的采用的錯(cuò)誤的(但當(dāng)時(shí)無(wú)法知曉的)方法和技術(shù)(這是主要原因)4、消除軟件危機(jī)的途徑(1)首先應(yīng)該對(duì)計(jì)算機(jī)軟件有一個(gè)正確的認(rèn)識(shí);(2)更重要的是,必須充分認(rèn)識(shí)到軟件開(kāi)發(fā)不是某種個(gè)體勞動(dòng)的神秘技巧,而應(yīng)該是一種組織良好、管理嚴(yán)密、各類(lèi)人員協(xié)同配合、共同完成的工程項(xiàng)目;(3)應(yīng)該推廣使用在實(shí)踐中總結(jié)出來(lái)的開(kāi)發(fā)軟件的成功的技術(shù)和方法,并且研究探索更好更有效的技術(shù)和方法,盡快消除在計(jì)算機(jī)系統(tǒng)早期發(fā)展階段形成的一些錯(cuò)誤概念和做法;(4)應(yīng)該開(kāi)發(fā)和使用更好的軟件工具總之,為了解決軟件危機(jī),既要有技術(shù)措施(方法和工具),又要有必要的組織管理措施。5、軟件工程:軟件工程是從管理和技術(shù)兩方面研究如何更好地開(kāi)發(fā)和維護(hù)計(jì)算機(jī)軟件的一門(mén)新興學(xué)科。(1)1968年NATO會(huì)議:軟件工程就是為了經(jīng)濟(jì)地獲得可靠的且能在實(shí)際機(jī)器上有效地運(yùn)行的軟件,而建立和使用完善的工程原理。(2)1993IEEE定義:軟件工程是把系統(tǒng)的、規(guī)范的、可度量的途徑應(yīng)用于軟件開(kāi)發(fā)、運(yùn)行和維護(hù)過(guò)程,也就是把工程應(yīng)用于軟件;研究中提到的途徑。6、軟件工程的本質(zhì)特征(1)軟件工程關(guān)注于大型程序的構(gòu)造;(2)軟件工程的中心課題是控制復(fù)雜性;(3)軟件經(jīng)常變化;(4)開(kāi)發(fā)軟件的效率非常重要;(5)和諧地合作是開(kāi)發(fā)軟件的關(guān)鍵;(6)軟件必須有效地支持它的用戶(hù);(7)在軟件工程領(lǐng)域中通常由具有一種文化背景的人替具有另一種文化背景的人創(chuàng)造產(chǎn)品。7、軟件工程的基本原理(1)用分階段的生命周期計(jì)劃嚴(yán)格管理(2)堅(jiān)持進(jìn)行階段評(píng)審(3)實(shí)行嚴(yán)格的(階段性)產(chǎn)品控制(4)采用現(xiàn)代程序設(shè)計(jì)技術(shù)(5)結(jié)果應(yīng)能清楚地審查(6)開(kāi)發(fā)小組的人員應(yīng)該少而精(7)承認(rèn)不斷改進(jìn)軟件工程實(shí)踐的必要性8、軟件生命周期:一個(gè)軟件從定義、開(kāi)發(fā)、使用和維護(hù),直到最終被廢棄,所歷經(jīng)的一個(gè)漫長(zhǎng)的時(shí)期。包括:可行性分析和項(xiàng)目開(kāi)發(fā)計(jì)劃,需求分析,概要設(shè)計(jì),詳細(xì)設(shè)計(jì),編碼,測(cè)試,維護(hù)。(1)軟件定義時(shí)期:確定軟件開(kāi)發(fā)工程必須完成的總目標(biāo);確定工程的可行性;導(dǎo)出實(shí)現(xiàn)工程目標(biāo)應(yīng)該采用的相關(guān)策略及系統(tǒng)必須完成的功能;估計(jì)完成該項(xiàng)工程需要的資源和成本,并適當(dāng)估計(jì)完成進(jìn)度表。(2)軟件開(kāi)發(fā)時(shí)期:總體設(shè)計(jì);詳細(xì)設(shè)計(jì);編碼和單元測(cè)試;綜合測(cè)試。(3)軟件維護(hù)時(shí)期:主要任務(wù)是使軟件更持久地滿(mǎn)足用戶(hù)需要。具體地說(shuō),當(dāng)軟件在使用過(guò)程中發(fā)現(xiàn)錯(cuò)誤時(shí)應(yīng)該加以改正;當(dāng)環(huán)境改變時(shí)應(yīng)該修改軟件以適應(yīng)新的環(huán)境;當(dāng)用戶(hù)有新要求時(shí)應(yīng)該及時(shí)改進(jìn)軟件以滿(mǎn)足用戶(hù)的新需要。9、軟件生命周期每個(gè)階段的基本任務(wù)(1)問(wèn)題定義:“要解決的問(wèn)題是什么?”;(2)可行性研究:“對(duì)于上一個(gè)階段所確定的問(wèn)題有行得通的解決方案嗎?”(3)需求分析:“為了解決這個(gè)問(wèn)題,目標(biāo)系統(tǒng)必須做什么。”(4)總體設(shè)計(jì):“概括地說(shuō),應(yīng)該怎樣實(shí)現(xiàn)目標(biāo)系統(tǒng)?”(5)詳細(xì)設(shè)計(jì):“應(yīng)該怎樣具體地實(shí)現(xiàn)這個(gè)系統(tǒng)呢?”(6)編碼和單元測(cè)試:關(guān)鍵任務(wù)是寫(xiě)出正確的容易理解、容易維護(hù)的程序模塊。(7)綜合測(cè)試:關(guān)鍵任務(wù)是通過(guò)各種類(lèi)型的測(cè)試(及相應(yīng)的調(diào)試)使軟件達(dá)到預(yù)定的要求。(8)軟件維護(hù):通過(guò)各種必要的維護(hù)活動(dòng)使系統(tǒng)持久地滿(mǎn)足用戶(hù)的需要。10、什么是軟件生命周期模型?有哪些主要模型?(1)生存周期模型:描述軟件開(kāi)發(fā)過(guò)程中各種活動(dòng)如何執(zhí)行的模型。對(duì)軟件開(kāi)發(fā)提供強(qiáng)有力的支持,為開(kāi)發(fā)過(guò)程中的活動(dòng)提供統(tǒng)一的政策保證,為參與開(kāi)發(fā)的人員提供幫助和指導(dǎo),是軟件生存周期模型化技術(shù)的基礎(chǔ),也是建立軟件開(kāi)發(fā)環(huán)境的核心。(2)主要有:瀑布模型,增量模型,螺旋模型,噴泉模型,基于知識(shí)的模型,變換模型。11、可行性研究的任務(wù):用最小的代價(jià)在盡可能短的時(shí)間內(nèi)確定問(wèn)題是否能夠解決。技術(shù)可行性;經(jīng)濟(jì)可行性;操作可行性;法律、社會(huì)效益、道德、政治等諸多方面的因素。12、可行性研究過(guò)程的步驟:(1)復(fù)查系統(tǒng)的規(guī)模和目標(biāo)(2)研究目前正在使用的系統(tǒng)(3)導(dǎo)出新系統(tǒng)的高層邏輯模型(4)進(jìn)一步定義問(wèn)題(5)導(dǎo)出和評(píng)價(jià)供選擇的解法(6)推薦行動(dòng)方針(7)草擬開(kāi)發(fā)計(jì)劃(8)書(shū)寫(xiě)文檔提交審查13、可行性分析報(bào)告的主要內(nèi)容:項(xiàng)目背景;客戶(hù)需求;商務(wù)前景;市場(chǎng)計(jì)劃;技術(shù)方案;實(shí)施周期;財(cái)務(wù)分析;風(fēng)險(xiǎn)管理。14、數(shù)據(jù)流圖(DFD):以圖形的方式描述數(shù)據(jù)在系統(tǒng)中流動(dòng)和處理的過(guò)程。只反映系統(tǒng)必須完成的邏輯功能,是一種功能模型。15、畫(huà)數(shù)據(jù)流圖應(yīng)注意的事項(xiàng):(1)命名:不能使用缺乏具體含義的名字,加工名應(yīng)能反映出處理的功能。(2)畫(huà)數(shù)據(jù)流而不是控制流,一般不畫(huà)物質(zhì)流。(3)每個(gè)加工至少有一個(gè)輸入數(shù)據(jù)流和一個(gè)輸出數(shù)據(jù)流,反映出此加工數(shù)據(jù)的來(lái)源與加工的結(jié)果 。(4)編號(hào):子圖應(yīng)編號(hào)子圖上的所有加工也應(yīng)編號(hào),子圖的編號(hào)應(yīng)與父圖的編號(hào)相對(duì)應(yīng)。(5)父圖與子圖的平衡:子圖的輸入輸出數(shù)據(jù)流同父圖相應(yīng)加工的輸入輸出數(shù)據(jù)流必須一致。(6)局部數(shù)據(jù)存儲(chǔ)。 (7)注意數(shù)據(jù)流圖的易理解性。16、數(shù)據(jù)字典:數(shù)據(jù)字典是關(guān)于數(shù)據(jù)的信息的集合,也就是對(duì)數(shù)據(jù)流圖中包含的所有元素的定義的集合。內(nèi)容:數(shù)據(jù)流;數(shù)據(jù)流分量(即數(shù)據(jù)元素);數(shù)據(jù)存儲(chǔ);處理。17、需求分析的任務(wù)(1)確定對(duì)系統(tǒng)的綜合要求 (2)分析系統(tǒng)的數(shù)據(jù)要求(3)導(dǎo)出系統(tǒng)的邏輯模型(4)修正系統(tǒng)開(kāi)發(fā)計(jì)劃18、軟件設(shè)計(jì)的目標(biāo)和任務(wù):根據(jù)用信息域表示的軟件需求,以及功能和性能需求,進(jìn)行數(shù)據(jù)設(shè)計(jì)、系統(tǒng)結(jié)構(gòu)設(shè)計(jì)、過(guò)程設(shè)計(jì)、界面設(shè)計(jì)。19、什么是軟件概要設(shè)計(jì)?該階段的基本任務(wù)是什么?(1)把一個(gè)軟件需求轉(zhuǎn)換為軟件表示時(shí),首先設(shè)計(jì)出軟件總的體系結(jié)構(gòu)。稱(chēng)為概要設(shè)計(jì)或結(jié)構(gòu)設(shè)計(jì)。(2)基本任務(wù):設(shè)計(jì)軟件系統(tǒng)結(jié)構(gòu) 進(jìn)行數(shù)據(jù)結(jié)構(gòu)及數(shù)據(jù)庫(kù)的設(shè)計(jì)編寫(xiě)概要設(shè)計(jì)的文檔評(píng)審。20、總體設(shè)計(jì)(概要設(shè)計(jì))原理:(1)模塊化:把程序劃分成若干個(gè)模塊,每個(gè)模塊完成一個(gè)子功能,把這些模塊集總起來(lái)組成一個(gè)整體,可以完成指定的功能,滿(mǎn)足問(wèn)題的功能。(2)抽象:抽出事物的本質(zhì)特性而暫時(shí)不考慮它們的細(xì)節(jié)。(3)逐步求精(4)信息隱蔽和局部化(5)模塊獨(dú)立:每個(gè)模塊完成一個(gè)相對(duì)獨(dú)立的子功能,并且和其他模塊之間的關(guān)系很簡(jiǎn)單。21、模塊獨(dú)立程度的衡量標(biāo)準(zhǔn):耦合和內(nèi)聚(1)耦合:也稱(chēng)塊間聯(lián)系,模塊之間相互聯(lián)系程度的度量,聯(lián)系越緊密,耦合性越強(qiáng),獨(dú)立性越差,以低耦合為設(shè)計(jì)目標(biāo)。內(nèi)容耦合、公共耦合、控制耦合、標(biāo)記耦合、數(shù)據(jù)耦合、無(wú)耦合。(2)內(nèi)聚:又稱(chēng)為塊內(nèi)聯(lián)系,指模塊內(nèi)部各成分之間相互關(guān)聯(lián)的程度,以高內(nèi)聚為設(shè)計(jì)目標(biāo)。偶然內(nèi)聚、邏輯內(nèi)聚、時(shí)間內(nèi)聚、過(guò)程內(nèi)聚、通信內(nèi)聚、順序內(nèi)聚、功能內(nèi)聚。22、概要設(shè)計(jì)的啟發(fā)式準(zhǔn)則:(1)改進(jìn)軟件結(jié)構(gòu),提高模塊獨(dú)立性(2)模塊規(guī)模應(yīng)該適中(3)深度、寬度、扇出和扇入都應(yīng)適當(dāng)(4)模塊的作用域應(yīng)該在控制域之內(nèi)(5)力爭(zhēng)降低模塊借口的復(fù)雜程度(6)設(shè)計(jì)單入口單出口的模塊(7)模塊功能應(yīng)該可以預(yù)測(cè)23、面向數(shù)據(jù)流的設(shè)計(jì)方法:把信息流映射成軟件結(jié)構(gòu)。有兩種類(lèi)型:(1)交換流:根據(jù)基本系統(tǒng)模型,信息通常以“外部世界”的形式進(jìn)入軟件系統(tǒng),經(jīng)過(guò)處理以后再以“外部世界”的形式離開(kāi)系統(tǒng)。由輸入、輸出、變換(或稱(chēng)處理)三部分組成,是一順序結(jié)構(gòu)。(2)事務(wù)流:數(shù)據(jù)沿輸入通路到達(dá)一個(gè)處理T,這個(gè)處理根據(jù)輸入數(shù)據(jù)的類(lèi)型在若干個(gè)動(dòng)作序列中選出一個(gè)來(lái)執(zhí)行,這類(lèi)數(shù)據(jù)流稱(chēng)為事務(wù)流。處理T稱(chēng)為事務(wù)中心。24、詳細(xì)設(shè)計(jì)的基本任務(wù):(1)為每個(gè)模塊進(jìn)行詳細(xì)的算法設(shè)計(jì) (2)為模塊內(nèi)的數(shù)據(jù)結(jié)構(gòu)進(jìn)行設(shè)計(jì)(3)對(duì)數(shù)據(jù)庫(kù)進(jìn)行物理設(shè)計(jì)(4)其他設(shè)計(jì)(5)編寫(xiě)詳細(xì)設(shè)計(jì)說(shuō)明書(shū)(6)評(píng)審25、結(jié)構(gòu)程序設(shè)計(jì):(1)如果一個(gè)程序的代碼塊僅僅通過(guò)順序、選擇和循環(huán)這3種基本控制結(jié)構(gòu)進(jìn)行連接,并且每個(gè)代碼塊只有一個(gè)入口和一個(gè)出口,則稱(chēng)這個(gè)程序是結(jié)構(gòu)化的。(2)結(jié)構(gòu)化程序設(shè)計(jì)的基本要點(diǎn):采用自頂向下、逐步求精的程序設(shè)計(jì)方法使用三種基本控制結(jié)構(gòu)構(gòu)造程序主程序員組的組織形式。26、選擇程序設(shè)計(jì)語(yǔ)言基本原則:(1)系統(tǒng)用戶(hù)的要求(2)可以使用的編譯語(yǔ)言(3)可以得到的軟件工具(4)工程規(guī)模(5)程序員的知識(shí)(6)軟件可移植性要求(7)軟件的應(yīng)用領(lǐng)域27、為了編制出清晰、緊湊、高效的程序,一般應(yīng)依次考慮下列原則:(1)編制易于修改和維護(hù)的代碼(2)編制易于測(cè)試的代碼(3)必須將編程和編文檔的工作統(tǒng)一起來(lái)(4)編程中采用統(tǒng)一的標(biāo)準(zhǔn)和約定,降低程序復(fù)雜性(5)限定每一層的副作用,減少耦合度(6)盡可能地復(fù)用28、軟件測(cè)試的目標(biāo):(1)測(cè)試是為了發(fā)現(xiàn)程序中的錯(cuò)誤而執(zhí)行程序的過(guò)程(2)好的測(cè)試方案是極可能發(fā)現(xiàn)迄今為止尚未發(fā)現(xiàn)的錯(cuò)誤的測(cè)試方案(3)成功的測(cè)試是發(fā)現(xiàn)了至今為止尚未發(fā)現(xiàn)的錯(cuò)誤的測(cè)試29、軟件測(cè)試的準(zhǔn)則:(1)所有測(cè)試都應(yīng)該能追溯到用戶(hù)需求(2)應(yīng)該遠(yuǎn)在測(cè)試開(kāi)始之前就制定出測(cè)試計(jì)劃(3)把Pareto原理應(yīng)用到軟件測(cè)試中(4)應(yīng)該從“小規(guī)?!睖y(cè)試開(kāi)始,并逐步進(jìn)行“大規(guī)?!睖y(cè)試(5)窮舉測(cè)試是不可能的(6)為了達(dá)到最佳的測(cè)試效果,應(yīng)該由獨(dú)立的第三方從事測(cè)試工作。30、測(cè)試的步驟:(1)模塊測(cè)試:保證每個(gè)模塊作為一個(gè)單元能夠正確運(yùn)行,又稱(chēng)為單元測(cè)試(2)子系統(tǒng)測(cè)試:集成測(cè)試、組裝測(cè)試、聯(lián)合測(cè)試;重點(diǎn)在于測(cè)試模塊之間的接口;(3)系統(tǒng)測(cè)試:將經(jīng)過(guò)測(cè)試的子系統(tǒng)裝配成一個(gè)完整的系統(tǒng)來(lái)測(cè)試;發(fā)現(xiàn)設(shè)計(jì)和編碼的錯(cuò)誤,驗(yàn)證系統(tǒng)是否滿(mǎn)足需求說(shuō)明所定義的功能及其動(dòng)態(tài)特性;也稱(chēng)為集成測(cè)試。(4)驗(yàn)收測(cè)試:有用戶(hù)參加的系統(tǒng)測(cè)試;驗(yàn)證是否滿(mǎn)足用戶(hù)的需要(5)平行運(yùn)行:同時(shí)運(yùn)行新舊兩個(gè)系統(tǒng),并且對(duì)處理的結(jié)果進(jìn)行比較,以確定新系統(tǒng)是否滿(mǎn)足相關(guān)性能指標(biāo)。31、非漸增式和漸增式測(cè)試方法(1)非漸增式測(cè)試方法:先分別測(cè)試每個(gè)模塊,再把所有模塊按設(shè)計(jì)要求放在一起結(jié)合成所要的程序,這種方法稱(chēng)為非漸增式測(cè)試方法。(2)漸增式測(cè)試方法:把下一個(gè)要測(cè)試的模塊同已經(jīng)測(cè)試好的那些模塊結(jié)合起來(lái)進(jìn)行測(cè)試,測(cè)試完以后再把下一個(gè)應(yīng)該測(cè)試的模塊結(jié)合進(jìn)來(lái)測(cè)試。這種每次增加一個(gè)模塊的方法稱(chēng)為漸增式測(cè)試。(3)非漸增式和漸增式測(cè)試方法的優(yōu)缺點(diǎn)比較:非漸增式方法要對(duì)每個(gè)模塊編寫(xiě)驅(qū)動(dòng)模塊和樁模塊,工作量較大;而漸增式方法可以利用部分已測(cè)試過(guò)的模塊作為測(cè)試軟件;非漸增式方法發(fā)現(xiàn)模塊間的接口錯(cuò)誤較晚,而漸增式方法則要早一些;非漸增式方法發(fā)現(xiàn)錯(cuò)誤后較難定位;而漸增式方法則要容易一些;非漸增式方法可以并行測(cè)試所有模塊,可充分利用人力,加快工程進(jìn)度;漸增式方法接近全真運(yùn)行環(huán)境,需要較多的測(cè)試運(yùn)行時(shí)間,但對(duì)程序模塊的測(cè)試較為徹底。32、什么是白盒測(cè)試法?有哪些覆蓋標(biāo)準(zhǔn)?試對(duì)他們的檢錯(cuò)能力進(jìn)行比較?(1)白盒法測(cè)試法把測(cè)試對(duì)象看作一個(gè)打開(kāi)的盒子,測(cè)試人員須了解程序內(nèi)部結(jié)構(gòu)和處理過(guò)程,以檢查處理過(guò)程的細(xì)節(jié)為基礎(chǔ),對(duì)程序中盡可能多的邏輯路徑進(jìn)行測(cè)試,檢驗(yàn)內(nèi)部控制結(jié)構(gòu)和數(shù)據(jù)結(jié)構(gòu)是否有錯(cuò),實(shí)際的運(yùn)行狀態(tài)與預(yù)期的狀態(tài)是否一致。(2)白盒法的覆蓋標(biāo)準(zhǔn):語(yǔ)句覆蓋;判定覆蓋;條件覆蓋;判定/條件覆蓋;條件組合覆蓋;路徑覆蓋(3)從上到下的覆蓋標(biāo)準(zhǔn)其檢錯(cuò)能力也從弱到強(qiáng),其中條件組合發(fā)現(xiàn)錯(cuò)誤的能力較強(qiáng),凡滿(mǎn)足其標(biāo)準(zhǔn)的測(cè)試用例,也必然滿(mǎn)足前四種覆蓋標(biāo)準(zhǔn)。在實(shí)際的邏輯測(cè)試中,一般以條件組合覆蓋為主設(shè)計(jì)測(cè)試用例,然后再補(bǔ)充部分用例來(lái)達(dá)到路徑覆蓋的測(cè)試標(biāo)準(zhǔn)。33、什么是黑盒測(cè)試法?采用黑盒技術(shù)測(cè)試用例有哪幾種方法?這些方法各有什么特點(diǎn)?(1)黑盒測(cè)試法:把被測(cè)試對(duì)象看成是一相黑盒子,測(cè)試人員完全不考慮程序的內(nèi)部結(jié)構(gòu)和處理過(guò)程,只在軟件接口處進(jìn)行測(cè)試,依據(jù)需求規(guī)格說(shuō)明書(shū),檢查程序是否滿(mǎn)足功能要求。(2)采用黑盒技術(shù)測(cè)試用例的方法有:等價(jià)類(lèi)的劃分、邊界值分析、錯(cuò)誤推測(cè)和因果圖。等價(jià)類(lèi)的劃分,是將輸入數(shù)據(jù)按有效的或無(wú)效的(也稱(chēng)合理的或不合理的)劃分成若干個(gè)等價(jià)類(lèi),測(cè)試每個(gè)等價(jià)類(lèi)的代表值就等于對(duì)該類(lèi)其他值的測(cè)試。這樣就把漫無(wú)邊跡的隨機(jī)測(cè)試改為有針對(duì)性的等價(jià)類(lèi)測(cè)試,用少量有代表性的例子代替大量測(cè)試目的相同的例子,能有效地提高測(cè)試效率。但這個(gè)方法的缺點(diǎn)是沒(méi)有注意選擇某些高效的、能夠發(fā)現(xiàn)更多錯(cuò)誤的測(cè)試用例。邊界值分析法一般與等價(jià)類(lèi)劃分結(jié)合起來(lái)。但它不是從一個(gè)等價(jià)類(lèi)中任選一個(gè)例子做代表,而是將測(cè)試邊界情況作為重點(diǎn)目標(biāo),選取正好等于、剛剛大于和剛剛小于邊界值的測(cè)試數(shù)據(jù)。(邊界情況是指輸入等價(jià)類(lèi)和輸入等價(jià)類(lèi)邊界上的情況。)這種方法可以查出更多的錯(cuò)誤,因?yàn)樵诔绦蛑型谔幚磉吔缜闆r時(shí)易發(fā)生錯(cuò)誤。錯(cuò)誤推測(cè)法是在測(cè)試程序時(shí),人們根據(jù)經(jīng)驗(yàn)或直覺(jué)推測(cè)程序中可能存在的錯(cuò)誤,從而有針對(duì)性地編寫(xiě)檢查這些錯(cuò)誤的測(cè)試用例。因果圖能夠有效地檢測(cè)輸入條件的各種組合可能會(huì)引起的錯(cuò)誤。它的基本原理是通過(guò)畫(huà)因果圖,把用自然語(yǔ)言描述的功能說(shuō)明轉(zhuǎn)換為判定表,最后為判定表的每一列設(shè)計(jì)一個(gè)測(cè)試用例。34、軟件維護(hù):就是在軟件已經(jīng)交付使用之后,為了改正錯(cuò)誤或滿(mǎn)足新的需要而修改軟件的過(guò)程。軟件維護(hù)工作分為以下四類(lèi):(1)矯正性維護(hù):目標(biāo)是識(shí)別和矯正功能錯(cuò)誤、性能錯(cuò)誤和實(shí)現(xiàn)錯(cuò)誤。(2)適應(yīng)性維護(hù):使軟件適應(yīng)于外界環(huán)境的改變而對(duì)軟件所做的修改工作。(3)完善性維護(hù):為了擴(kuò)充軟件的功能或改善軟件的性能對(duì)軟件所做的改變。(4)預(yù)防性維護(hù):為了以后更便于維護(hù),或者為了改進(jìn)可靠性,或者提供更好的基礎(chǔ)便于將來(lái)提高性能而修改軟件。35、決定軟件可維護(hù)性的因素:可理解性;可測(cè)試性;可修改性;可移植性;可重用性。36、提高可維護(hù)性的方法 (1)建立明確的軟件質(zhì)量目標(biāo)和優(yōu)先級(jí)(2)使用提高軟件質(zhì)量的技術(shù)和工具(3)進(jìn)行明確的質(zhì)量保證審查(4)選擇可維護(hù)的程序設(shè)計(jì)語(yǔ)言(5)改進(jìn)程序的文檔 37、軟件維護(hù)的副作用有哪些?(1)編碼副作用。在使用程序設(shè)計(jì)語(yǔ)言修改源代碼時(shí)可能引入的錯(cuò)誤。(2)數(shù)據(jù)副作用。在修改數(shù)據(jù)結(jié)構(gòu)時(shí),有可能造成軟件設(shè)計(jì)與數(shù)據(jù)結(jié)構(gòu)不匹配,因而導(dǎo)致軟件錯(cuò)誤。數(shù)據(jù)副作用是修改軟件信息結(jié)構(gòu)導(dǎo)致的結(jié)果。但它可以通過(guò)詳細(xì)的設(shè)計(jì)文檔加以控制。(3)文檔副作用。如果對(duì)可執(zhí)行軟件的修改沒(méi)有反映在文檔中,就會(huì)產(chǎn)生文檔副作用。(以上根據(jù)老師課件和軟件工程概論整理)38、某廠對(duì)部分職工重新分配工作的政策是:年齡在20歲以下者,初中文化程度脫產(chǎn)學(xué)習(xí),高中文化程度當(dāng)電工。20歲至40歲之間,中學(xué)文化程度,男性當(dāng)鉗工,女性當(dāng)車(chē)工,大學(xué)文化程度都當(dāng)技術(shù)員。年齡在40歲以上者,中學(xué)文化程度當(dāng)材料員,大學(xué)文化程度當(dāng)技術(shù)員。請(qǐng)用結(jié)構(gòu)化語(yǔ)言判定表或判定樹(shù)描述上述問(wèn)題的加工邏輯。(1)判定樹(shù)(2)判定表(3)結(jié)構(gòu)化語(yǔ)言: 精選資料,歡迎下載CASE 年齡20CASE 文化程度 初中 分配工種 脫產(chǎn)學(xué)習(xí) CASE 文化程度 高中 分配工種 電工ENDCASECASE 年齡=20CASE 文化程度 初中.OR.高中 CASE 性別 男 分配工種 鉗工CASE 性別 女 分配工種 車(chē)工ENDCASEENDCASECASE 文化程度 大學(xué)分配工種 技術(shù)員ENDCASEENDCASECASE 年齡40CASE 文化程度 初中.OR.高中 分配工種 材料員CASE 文化程度 大

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論