版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
軟件工程導(dǎo)論復(fù)習(xí)要點(diǎn)第一章.軟件的定義:軟件是計(jì)算機(jī)程序、數(shù)據(jù)以及運(yùn)行計(jì)算機(jī)系統(tǒng)可能需要的相關(guān)文檔。(1)程序:程序是計(jì)算任務(wù)的處理對(duì)象和處理規(guī)則的描述。(軟件!=程序)(2)數(shù)據(jù):使程序能正常操縱信息的數(shù)據(jù)結(jié)構(gòu)(即數(shù)據(jù)的組織形式卜(3)文檔:文檔是為了便于了解程序所需的闡明性資料。.軟件工程的定義:把系統(tǒng)的、規(guī)范的、可度量的途徑應(yīng)用于軟件開發(fā)、運(yùn)行和維護(hù)過程,也就是把工程應(yīng)用于軟件;研究上面提到的途徑。.軟件工程三要素:過程:開發(fā)軟件產(chǎn)品的一組活動(dòng)及其結(jié)果。方法:為軟件開發(fā)過程提供“如何做”的技術(shù)。工具:為軟件開發(fā)方法提供自動(dòng)的或半自動(dòng)的軟件支撐環(huán)境。.軟件過程的四個(gè)基本活動(dòng):規(guī)格說明:定義軟件功能以及對(duì)其使用的限制。軟件開發(fā):設(shè)計(jì)和實(shí)現(xiàn)滿足規(guī)格說明的軟件。軟件確認(rèn):驗(yàn)證軟件足以保證能夠滿足客戶的要求。軟件演化:改進(jìn)軟件以適應(yīng)不斷變化的需求。.兩種主要的開發(fā)方法:結(jié)構(gòu)化(面向過程)的方法、面向?qū)ο蟮姆椒?。第二?軟件工程發(fā)展歷史:(1)第一階段:軟件危機(jī)——是指計(jì)算機(jī)軟件的開發(fā)和維護(hù)過程所遇到的一系列嚴(yán)重問題主要表現(xiàn):軟件開發(fā)費(fèi)用和進(jìn)度失控;軟件的可靠性差;生產(chǎn)出來的軟件難以維護(hù);軟件開發(fā)生產(chǎn)率提高的速度遠(yuǎn)遠(yuǎn)跟不上計(jì)算機(jī)應(yīng)用迅速普及深入的需要。(1968年10月軟件工程大會(huì)在德國(guó)由北約出資舉辦)(2)第二階段:傳統(tǒng)軟件工程——一是從管理的角度,希望實(shí)現(xiàn)軟件開發(fā)過程的工程化(軟 件生命周期模型;確定了一些重要文檔格式的標(biāo)準(zhǔn));二是側(cè)重于對(duì)軟件開發(fā)過程中、分析設(shè)計(jì)的方法的研究(結(jié)構(gòu)化卜(3)第三階段:現(xiàn)代軟件工程——從管理和技術(shù)兩方面研究如何更好地開發(fā)和維護(hù)計(jì)算機(jī)軟 件的一門新興學(xué)科。發(fā)展趨勢(shì):模塊化;開放計(jì)算;合理的開發(fā)治理;全球化軟件協(xié)作交付。第三章.計(jì)算機(jī)網(wǎng)絡(luò)的概念:計(jì)算機(jī)網(wǎng)絡(luò)是指將地理位置不同的具有獨(dú)立功能的多臺(tái)計(jì)算機(jī)及其外部設(shè)備,通過通信線路連接起來,在網(wǎng)絡(luò)操作系統(tǒng)、網(wǎng)絡(luò)管理軟件及網(wǎng)絡(luò)通信協(xié)議的管理和協(xié)調(diào)下,實(shí)現(xiàn)資源共享和信息傳遞的計(jì)算機(jī)系統(tǒng)。.互聯(lián)網(wǎng)的概念:又稱網(wǎng)際網(wǎng)絡(luò),或音譯因特網(wǎng)(1討6「他小英特網(wǎng)?;ヂ?lián)網(wǎng)始于1969年美國(guó)的阿帕網(wǎng),這種將計(jì)算機(jī)網(wǎng)絡(luò)互相聯(lián)接在一起的方法稱作“網(wǎng)絡(luò)互聯(lián)。在這基礎(chǔ)上發(fā)展出覆蓋全世界的全球性互聯(lián)網(wǎng)絡(luò)稱互聯(lián)網(wǎng),即是網(wǎng)絡(luò)與網(wǎng)絡(luò)之間所串連成的龐大網(wǎng)絡(luò)這些網(wǎng)絡(luò)以一組通用的協(xié)議相連,形成邏輯上的單一巨大國(guó)際網(wǎng)絡(luò)。(互聯(lián)網(wǎng)+:以互聯(lián)網(wǎng)平臺(tái)為基礎(chǔ),利用信息通信技術(shù)與各行業(yè)跨界融合,推動(dòng)產(chǎn)品轉(zhuǎn)型升級(jí),并不斷創(chuàng)造出新產(chǎn)品、新業(yè)務(wù)與新模式,構(gòu)建連接一切的新生態(tài)(傳統(tǒng)行業(yè)與互聯(lián)網(wǎng)行業(yè)雙向滲透)).物聯(lián)網(wǎng)的概念:物聯(lián)網(wǎng)是新一代信息技術(shù)的重要組成部分,也是“信息化”時(shí)代的重要發(fā)展階段。其英文名稱是“Internetofthings(IoT汽顧名思義,物聯(lián)網(wǎng)就是物物相連的互聯(lián)網(wǎng)。這有兩層意思:其一,物聯(lián)網(wǎng)的核心和基礎(chǔ)仍然是互聯(lián)網(wǎng),是在互聯(lián)網(wǎng)基礎(chǔ)上的延伸和擴(kuò)展的網(wǎng)絡(luò)其二,其用戶端延伸和擴(kuò)展到了任何物品與物品之間,進(jìn)行信息交換和通信,也就是物物相息。物聯(lián)網(wǎng)通過智能感知、識(shí)別技術(shù)與普適計(jì)算等通信感知技術(shù),廣泛應(yīng)用于網(wǎng)絡(luò)的融合中。.人工智能的概念:人工智能(ArtificialIntelligence),英文縮寫為AI。它是研究、開發(fā)用于模擬、延伸和擴(kuò)展人的智能的理論、方法、技術(shù)及應(yīng)用系統(tǒng)的一門新的技術(shù)科學(xué)。人工智能是計(jì)算機(jī)科學(xué)的一個(gè)分支,它企圖了解智能的實(shí)質(zhì),并生產(chǎn)出一種新的能以人類智能相似的方式做出反應(yīng)的智能機(jī)器,該領(lǐng)域的研究包括機(jī)器人、語言識(shí)別、圖像識(shí)別、自然語言處理和專家系統(tǒng)等。第四章.軟件工程過程:ISO9000定義:軟件工程過程是把輸入轉(zhuǎn)化為輸出的一組彼此相關(guān)的資源和活動(dòng)。從軟件開發(fā)的觀點(diǎn)看,它就是使用適當(dāng)?shù)馁Y源(包括人員、硬軟件工具、時(shí)間等),為開發(fā)軟件進(jìn)行的一組開發(fā)活動(dòng),在過程結(jié)束時(shí)將輸入(用戶要求)轉(zhuǎn)化為輸出(軟件產(chǎn)品).四個(gè)基本活動(dòng)(PDCA):(1)P(Plan)軟件規(guī)格說明:規(guī)定軟件的功能及其運(yùn)行的限制。軟件規(guī)格說明是確定系統(tǒng)需要的服務(wù)以及運(yùn)行與開發(fā)中所受的約束的過程,也稱為需求工程。進(jìn)行需求分析工作,通過與用戶的反
復(fù)交流,搞清楚用戶對(duì)該軟件的具體需求,這些需求是進(jìn)行軟復(fù)交流,搞清楚用戶對(duì)該軟件的具體需求,這些需求是進(jìn)行軟件設(shè)計(jì)的依據(jù);在編寫程序之前需要先進(jìn)行設(shè)計(jì)。(2)D(Do)軟件開發(fā):產(chǎn)生滿足規(guī)格說明的軟件。軟件設(shè)計(jì)是根據(jù)需求規(guī)格說明,確定軟件體系結(jié)構(gòu),進(jìn)一步設(shè)計(jì)每個(gè)系統(tǒng)部件的實(shí) 現(xiàn)算法、數(shù)據(jù)結(jié)構(gòu)及其接口等。軟件實(shí)現(xiàn)是將軟件設(shè)計(jì)轉(zhuǎn)換成程序代碼。通常,大 型軟件的設(shè)計(jì)工作又分成兩個(gè)階段進(jìn)行,先進(jìn)行總體設(shè)計(jì)(又稱為概要設(shè)計(jì)),再進(jìn)行詳細(xì)設(shè)計(jì);編寫程序?qū)嵸|(zhì)上是把設(shè)計(jì)結(jié)果翻譯成用某種程序設(shè)計(jì)語言書寫的程序;(3)C(Check)軟件確認(rèn):確認(rèn)軟件能夠完成客戶提出的要求。驗(yàn)證和確認(rèn)(VerificationandValidation)需要指出軟件是否符合規(guī)格說明以及是否滿足客戶的需求?!?yàn)證和確認(rèn)包括檢查和評(píng)審過程以及系統(tǒng)測(cè)試?!到y(tǒng)測(cè)試是使用由規(guī)格說明產(chǎn)生的測(cè)試用例執(zhí)行軟件的過程。程序編寫出來之后,還需要經(jīng)過嚴(yán)格的測(cè)試過程(需要的工作量通常占軟件開發(fā)全部工作量的40%?50%),軟件確實(shí)符合用戶需求而且質(zhì)量合格,才能交付給用戶使用。(4)A(Action)軟件演進(jìn):為滿足客戶的變更要求,軟件必須在使用的過程中演進(jìn)。軟件的內(nèi)在本質(zhì)是靈活和可變的:隨著業(yè)務(wù)需求的變化,軟件必須進(jìn)化和變更;盡管在開發(fā)過程和演化過程中存在劃分,但是現(xiàn)實(shí)中全新的系統(tǒng)越來越少。認(rèn)識(shí)軟件演化過程:好的軟件需要維護(hù);維護(hù)軟件的成本是很高的,應(yīng)該在開發(fā)階段考慮維護(hù)問題;文檔是很重要的,但在實(shí)際開發(fā)中經(jīng)常存在文檔過時(shí)或缺少文檔的情況。.軟件的生存周期:軟件有一個(gè)孕育、誕生、成長(zhǎng)、成熟、衰亡的生存過程。這個(gè)過程即為計(jì)算機(jī)軟件的生存期。軟件生存周期就是軟件產(chǎn)品從提出、實(shí)現(xiàn)、使用維護(hù)到停止使用退役的全過程。階段劃分:軟件定義,軟件開發(fā)->軟件運(yùn)行維護(hù)。(1)軟件定義時(shí)期:?jiǎn)栴}定義->可行性分析->需求分析;(2)軟件開發(fā)時(shí)期:概要設(shè)計(jì)(總體設(shè)計(jì)),詳細(xì)設(shè)計(jì)->編碼->測(cè)試(單元測(cè)試和綜合測(cè)試);(3)軟件運(yùn)行維護(hù)時(shí)期:在軟件被淘汰之前,要經(jīng)歷多次的糾錯(cuò)性、完善性和適應(yīng)性維護(hù)活動(dòng)。.軟件生存周期的六個(gè)步驟:制定計(jì)劃、需求分析、設(shè)計(jì)、程序編碼、測(cè)試及運(yùn)行維護(hù)。(1)制定計(jì)劃:確定要開發(fā)軟件系統(tǒng)的總目標(biāo);給出功能、性能、可靠性以及接口等方面的要求;完成該軟件任務(wù)的可行性研究;估計(jì)可利用的資源(計(jì)算機(jī)硬件,軟件,人力等)、成本、效益、開發(fā)進(jìn)度;制定出完成開發(fā)任務(wù)的實(shí)施計(jì)劃,連同可行性研究報(bào)告,提交管理部門審查(2)需求分析和定義:對(duì)待開發(fā)軟件提出的需求進(jìn)行分析并給出詳細(xì)的定義;編寫軟件需求說明書或系統(tǒng)功能說明書及初步的系統(tǒng)用戶手冊(cè);提交管理機(jī)構(gòu)評(píng)審。(3)軟件設(shè)計(jì):概要設(shè)計(jì):把各項(xiàng)需求轉(zhuǎn)換成軟件的體系結(jié)構(gòu)。結(jié)構(gòu)中每一組成部分都是意義明確的模塊,每個(gè)模塊都和某些需求相對(duì)應(yīng);詳細(xì)設(shè)計(jì):對(duì)每個(gè)模塊要完成的工作進(jìn)行具體的描述,為源程序編寫打下基礎(chǔ);編寫設(shè)計(jì)說明書,提交評(píng)審。(4)程序編碼:把軟件設(shè)計(jì)轉(zhuǎn)換成計(jì)算機(jī)可以接受的程序代碼,即寫成以某一種特定程序設(shè)計(jì)語言表示的“源程序清單”;寫出的程序應(yīng)當(dāng)是結(jié)構(gòu)良好、清晰易讀的,且與設(shè)計(jì)相一致的。(5)軟件測(cè)試:?jiǎn)卧獪y(cè)試:查找各模塊在功能和結(jié)構(gòu)上存在的問題并加以糾正;組裝測(cè)試,將已測(cè)試過的模塊按一定順序組裝起來;按規(guī)定的各項(xiàng)需求,逐項(xiàng)進(jìn)行有效性測(cè)試,決定已開發(fā)的軟件是否合格,能否交付用戶使用(6)運(yùn)行/維護(hù):改正性維護(hù):運(yùn)行中發(fā)現(xiàn)了軟件中的錯(cuò)誤需要修正;適應(yīng)性維護(hù):為了適應(yīng)變化了的軟件工作環(huán)境,需做適當(dāng)變更;完善性維護(hù)為了增強(qiáng)軟件的功能需做變更。.軟件生存周期模型:是跨越整個(gè)生存期的系統(tǒng)開發(fā)、運(yùn)作和維護(hù)所實(shí)施的全部過程、活動(dòng)和任務(wù)的結(jié)構(gòu)框架(也稱軟件開發(fā)模型、軟件過程模型、軟件工程范型)簡(jiǎn)單地說,是軟件產(chǎn)品或軟件系統(tǒng)從設(shè)計(jì)、投入使用到被淘汰的全過程。編碼修復(fù)模型、瀑布模型、增量模型、快速原型模型、螺旋模型。增量模型:先完成一個(gè)系統(tǒng)核心產(chǎn)品的開發(fā),再按同樣的開發(fā)步驟增加功能,每一個(gè)線性序列產(chǎn)生軟件的一個(gè)可發(fā)布的“增量。如此遞增直至滿足全部需求??焖僭湍P停河脩艚o出軟件產(chǎn)品的基本需求;開發(fā)小組和用戶共同定義軟件總體目標(biāo):標(biāo)識(shí)已知需求;對(duì)界面、功能、人機(jī)交互方式等,進(jìn)行設(shè)計(jì)并建造原型;強(qiáng)調(diào)“快速”,采用基于構(gòu)件的軟件開發(fā)方法,盡量縮短軟件開發(fā)周期,不宜采用過多的新技術(shù);用戶對(duì)原型進(jìn)行評(píng)估;修改需求、更新設(shè)計(jì)、完善原型直至確定需求。第五章.模塊的概念:指具有相對(duì)獨(dú)立性的,由數(shù)據(jù)說明、執(zhí)行語句等程序?qū)ο髽?gòu)成的集合。程序中的每個(gè)模塊都需要單獨(dú)命名,通過名字可實(shí)現(xiàn)對(duì)指定模塊的訪問。在高級(jí)語言中,模塊具體表現(xiàn)為函數(shù)、子程序、過程等。.模塊化:將程序劃分成若干個(gè)獨(dú)立的模塊,每個(gè)模塊完成一個(gè)特定子功能,每個(gè)模塊既是相對(duì)獨(dú)立的,又是相互聯(lián)系的,它們共同完成系統(tǒng)指定的各項(xiàng)功能。(降低軟件的復(fù)雜性).模塊獨(dú)立性:軟件系統(tǒng)中每個(gè)模塊只涉及軟件要求的具體的子功能,而和軟件系統(tǒng)中其他模塊的接口是簡(jiǎn)單的。.耦合和內(nèi)聚:衡量軟件模塊獨(dú)立性使用模塊本身的內(nèi)聚和模塊之間的耦合兩個(gè)定性的度量標(biāo)準(zhǔn)。內(nèi)聚性:一個(gè)模塊內(nèi)部各個(gè)元素之間彼此結(jié)合的緊密程度的度量。耦合性:模塊之間互相連接的緊密程度的度量。模塊設(shè)計(jì)準(zhǔn)則:高內(nèi)聚,低耦合。.軟件工程主要開發(fā)方法:結(jié)構(gòu)化方法、面向?qū)ο蠓椒ā?結(jié)構(gòu)化編程的基本單位:模塊。程序核心:計(jì)算方法。,—I-第八章.軟件工具:軟件工具是用來輔助計(jì)算機(jī)軟件的開發(fā)、運(yùn)行、維護(hù)、管理、支持過程中的活動(dòng)或任務(wù)的軟件。.分類:(1)支持軟件開發(fā)過程的工具:主要有需求分析工具、設(shè)計(jì)工具(通常還可以分為概要設(shè)計(jì)工具和詳細(xì)設(shè)計(jì)工具)、編碼工具、排錯(cuò)工具、測(cè)試工具等;(2)支持軟件維護(hù)過程的工具:主要有版本控制工具、文檔分析工具、信息庫開發(fā)工具、逆向工程工具、再工程工具等;(3)支持軟件管理過程和支持過程的工具主要有項(xiàng)目管理工具、配置管理工具、軟件評(píng)價(jià)工具等。.統(tǒng)一建模語言UML由:用例圖、靜態(tài)圖、行為圖、交互圖、實(shí)現(xiàn)圖來定義。用例圖:從用戶角度描述系統(tǒng)功能,是用戶所能觀察到的系統(tǒng)功能的模型圖,用例是系統(tǒng)中的一個(gè)功能單元。靜態(tài)圖:包括類圖、對(duì)象圖和包圖。行為圖:描述系統(tǒng)的動(dòng)態(tài)模型和組成對(duì)象間的交互關(guān)系。交互圖:描述對(duì)象間的交互關(guān)系。實(shí)現(xiàn)圖:如部署圖,定義系統(tǒng)中軟硬件的物理體系結(jié)構(gòu)。.UML特點(diǎn):統(tǒng)一標(biāo)準(zhǔn);面向?qū)ο?;可視化,表達(dá)能力強(qiáng);獨(dú)立于過程;容易掌握使用;與編程語言的關(guān)系。第七章.程序設(shè)計(jì)語言:是一組用來定義計(jì)算機(jī)程序的語法規(guī)則程序設(shè)計(jì)語言有3個(gè)方面的因素,即語法、語義和語用。.分類:(1)按應(yīng)用范圍:通用語言、專用語言、系統(tǒng)程序設(shè)計(jì)語言、科學(xué)計(jì)算語言、事務(wù)處理語言、實(shí)時(shí)控制語言;(2)按客觀系統(tǒng)的描述:面向過程語言和面向?qū)ο笳Z言;(3)按與硬件的聯(lián)系程度:機(jī)器語言、匯編語言、高級(jí)語言(與機(jī)器硬件基本無關(guān)卜.機(jī)器語言特點(diǎn):質(zhì)量高,運(yùn)行速度快,占儲(chǔ)存空間?。痪幊屉y度大、指令難記、繁瑣、直觀性差、容易出錯(cuò)、檢查調(diào)試?yán)щy、通用性差、不兼容。4.匯編語言:匯編語言或符號(hào)語言被稱為第二代程序設(shè)計(jì)語言。它是將機(jī)器語言符號(hào)化,即用英文助記符來代替機(jī)器語言中的指令和數(shù)據(jù),比用機(jī)器語言編寫的程序簡(jiǎn)單,容易理解和掌握。特點(diǎn):
質(zhì)量高、執(zhí)行速度快、占存儲(chǔ)空間小、可讀性有所提高;大型程序難以開發(fā),依賴于具體計(jì)算機(jī),類似機(jī)器語言,通用性、可移植性差,與人的自然語言還相差很懸殊。.高級(jí)語言:高級(jí)語言被稱為第三代程序設(shè)計(jì)語言,是一種獨(dú)立于機(jī)器的算法語言。高級(jí)語言的表達(dá)方式接近于人們?nèi)粘J褂玫淖匀徽Z言和數(shù)學(xué)表達(dá)式,并且有一定的語法規(guī)則。特點(diǎn):接近人們?nèi)粘J褂玫淖匀徽Z言(主要是英語)容易理解、記憶和使用;編程簡(jiǎn)單易學(xué)、可移植性好、可讀性強(qiáng)、調(diào)試容易;編寫的程序運(yùn)行要慢一些。.翻譯方式:用高級(jí)語言編寫的程序稱為源程序,計(jì)算機(jī)不能直接識(shí)別和執(zhí)行源程序。在執(zhí)行源程序前需要通過翻譯成機(jī)器語言形式的目標(biāo)行源程序。在執(zhí)行源程序前需要通過翻譯成機(jī)器語言形式的目標(biāo)程序,這種“翻譯”通常有兩種方式,即編譯方式和解釋方式。(1)編譯方式:編譯方式是一次性全部翻譯,然后執(zhí)行。如果編譯過程中發(fā)現(xiàn)程序有錯(cuò),計(jì)算機(jī)系統(tǒng)會(huì)給出相應(yīng)的提示,這時(shí)必須修改程序并重新編譯,直到程序編譯正確為止。當(dāng)程序編譯正確后,將產(chǎn)生一個(gè)目標(biāo)程序;(2)解釋方式:解釋方式的翻譯工作由解釋器來完成,邊掃描源程序邊翻譯執(zhí)行,若解釋時(shí)發(fā)現(xiàn)錯(cuò)誤,便會(huì)立即停止,報(bào)錯(cuò)并提醒用戶修改程序。如此繼續(xù),整個(gè)過程不產(chǎn)生目標(biāo)程序。.模塊的組成:接口,功能,內(nèi)部數(shù)據(jù),程序代碼。(1)接口:模塊的輸入輸出;用于實(shí)現(xiàn)模塊與其他模塊間的數(shù)據(jù)傳送,即向模塊傳入所需的原始數(shù)據(jù)及從模塊傳出得到的結(jié)果數(shù)據(jù);(2)功能:指模塊實(shí)現(xiàn)什么功能,有什么作用;(3)內(nèi)部數(shù)據(jù):描述模塊內(nèi)部實(shí)現(xiàn)功能需求所需數(shù)據(jù);(4)程序代碼:用于描述實(shí)現(xiàn)模塊功能的具體方法和步驟。.模塊的特征:模塊的輸入/輸出和功能構(gòu)成了模塊的外部特征;模塊的內(nèi)部數(shù)據(jù)和程序代碼反映的是模塊的內(nèi)部特征。.模塊的設(shè)計(jì)準(zhǔn)則:模塊規(guī)模應(yīng)該適中;降低模塊接口的復(fù)雜程度和冗余程度并提高一致性;設(shè)計(jì)單入口、單出口的模塊;模塊功能應(yīng)該可以預(yù)測(cè)。.結(jié)構(gòu)化語言的設(shè)計(jì)準(zhǔn)則:使用語言中的順序、選擇、循環(huán)等有限的基本控制結(jié)構(gòu)表示程序;選用的控制結(jié)構(gòu)只準(zhǔn)許有一個(gè)入口和一個(gè)出口;程序語句組成容易識(shí)別的塊,每塊只有一個(gè)入口和一個(gè)出口;復(fù)雜結(jié)構(gòu)應(yīng)該用基本控制結(jié)構(gòu)進(jìn)行組合嵌套來實(shí)現(xiàn);嚴(yán)格控制GOTO語句。.結(jié)構(gòu)化語言的控制結(jié)構(gòu):順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)。.面向?qū)ο笏拇蠡咎卣鳎撼橄螅庋b,繼承,多態(tài)。(1)抽象:是指對(duì)具體問題(對(duì)象)進(jìn)行概括,抽出一類對(duì)象的公共性質(zhì)并加以描述的過程。(2)封裝:將抽象得到的數(shù)據(jù)與操作數(shù)據(jù)的行為相結(jié)合,形成一個(gè)有機(jī)的整體。(3)繼承:就是從先輩處得到屬性和行為特征。類的繼承,是新的類從已有類那里得到已有 的特性。(4)多態(tài):是指類中具有相似功能的不同函數(shù)使用同一個(gè)名稱來實(shí)現(xiàn)。使用同一個(gè)函數(shù)可以 調(diào)用不同的行為。第八章.與測(cè)試相關(guān)的三個(gè)重要觀點(diǎn):測(cè)試是為了證明程序有錯(cuò),而不是證明程序無錯(cuò)誤;一個(gè)好的測(cè)試用例是在于它能發(fā)現(xiàn)至今未發(fā)現(xiàn)的錯(cuò)誤;一個(gè)成功的測(cè)試是發(fā)現(xiàn)了至今未發(fā)現(xiàn)的錯(cuò)誤的測(cè)試。.測(cè)試用例:即用于測(cè)試的輸入數(shù)據(jù)及預(yù)期的輸出結(jié)果。(測(cè)試數(shù)據(jù)+執(zhí)行條件+期望結(jié)果).測(cè)試結(jié)果:測(cè)試數(shù)據(jù)+執(zhí)行條件+期望結(jié)果+實(shí)際結(jié)果。.軟件測(cè)試的概念:軟件測(cè)試是為了發(fā)現(xiàn)錯(cuò)誤而執(zhí)行程序的過程?;蛘哒f,軟件測(cè)試是根據(jù)軟件開發(fā)各階段的規(guī)格說明和程序內(nèi)部結(jié)構(gòu)而精心設(shè)計(jì)的一批測(cè)試用例(即輸入數(shù)據(jù)及預(yù)期的輸出結(jié)果),并利用這些測(cè)試用例去運(yùn)行程序,以發(fā)現(xiàn)程序錯(cuò)誤的過程。.軟件測(cè)試的準(zhǔn)則:所有測(cè)試都應(yīng)該能追溯到用戶需求;應(yīng)該遠(yuǎn)在測(cè)試前就制定出測(cè)試計(jì)劃;充分注意測(cè)試中的群集現(xiàn)象。測(cè)試后程序中殘存的錯(cuò)誤數(shù)目與該程序中已發(fā)現(xiàn)的錯(cuò)誤數(shù)目成正比;應(yīng)該從“小規(guī)模”測(cè)試開始,并逐步進(jìn)行“大規(guī)?!睖y(cè)試;窮盡測(cè)試是不可能的(包含所有可能情況的測(cè)試稱為窮盡測(cè)試);為了達(dá)到最佳測(cè)試效果,應(yīng)該由獨(dú)立的第三方從事測(cè)試工作;嚴(yán)格執(zhí)行測(cè)試計(jì)劃,排除測(cè)試的隨意性;應(yīng)當(dāng)對(duì)每一個(gè)測(cè)試結(jié)果做全面檢查;妥善保存測(cè)試計(jì)劃,測(cè)試用例,出錯(cuò)統(tǒng)計(jì)和最終分析報(bào)告,為維護(hù)提供方便。.軟件測(cè)試的對(duì)象:軟件測(cè)試并不等于程序測(cè)試。軟件測(cè)試應(yīng)貫穿于軟件定義與開發(fā)的整個(gè)期間;需求分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)以及程序編碼等各階段所得到的文檔,包括需求規(guī)格說明、概要設(shè)計(jì)規(guī)格說明、詳細(xì)設(shè)計(jì)規(guī)格說明以及源程序,都應(yīng)成為軟件測(cè)試的對(duì)象。.軟件測(cè)試用例的設(shè)計(jì):在設(shè)計(jì)測(cè)試用例時(shí),應(yīng)包括合理的輸入條件和不合理的輸入條件兩種常用方法:白盒測(cè)試和黑盒測(cè)試。白盒測(cè)試:也叫玻璃盒測(cè)試或結(jié)構(gòu)測(cè)試。對(duì)軟件的過程性細(xì)節(jié)做細(xì)致的檢查。這一方法是把測(cè)試對(duì)象看作一個(gè)打開的盒子,它允許測(cè)試人員利用程序內(nèi)部的邏輯結(jié)構(gòu)及有關(guān)信息,來設(shè)計(jì)或選擇測(cè)試用例,對(duì)程序所有邏輯路徑進(jìn)行測(cè)試。此方法把測(cè)試對(duì)象看做一個(gè)玻璃盒子,它允許測(cè)試人員利用程序內(nèi)部的邏輯結(jié)構(gòu)及有關(guān)信息,設(shè)計(jì)或選擇測(cè)試用例,對(duì)程序所有邏輯路徑進(jìn)行測(cè)試;通過在不同點(diǎn)檢查程序的狀態(tài),確定實(shí)際的狀態(tài)是否與預(yù)期的狀態(tài)一致。因此白盒測(cè)試又稱為結(jié)構(gòu)測(cè)試或邏輯驅(qū)動(dòng)測(cè)試。.軟件測(cè)試的步驟:(1)模塊測(cè)試:又稱單元測(cè)試,它把每個(gè)模塊作為單獨(dú)的實(shí)體來測(cè)試;(2)子系統(tǒng)測(cè)試:是把經(jīng)過單元測(cè)試的模塊放在一起形成一個(gè)子系統(tǒng)來測(cè)試;(3)系統(tǒng)測(cè)試:是把經(jīng)過測(cè)試的子系統(tǒng)裝配成一個(gè)完整的系統(tǒng)來測(cè)試;(4)驗(yàn)收測(cè)試:把軟件系統(tǒng)作為單一的實(shí)體進(jìn)行測(cè)試(利用用戶的實(shí)際數(shù)據(jù)測(cè)試);(5)平行運(yùn)行:是同時(shí)運(yùn)行新開發(fā)出來的系統(tǒng)和將被它取代的舊系統(tǒng),以便比較新舊兩個(gè)系統(tǒng)的處理結(jié)果。.軟件測(cè)試的V模型:左邊每個(gè)開發(fā)活動(dòng)都與
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度水電工程招投標(biāo)合同5篇
- 2025年度新能源車輛采購及運(yùn)營(yíng)合同3篇
- 2024食堂食品安全保障與供貨合同
- 2025年度智能家居系統(tǒng)采購與施工安裝合同3篇
- 年度科創(chuàng)大數(shù)據(jù)市場(chǎng)分析及競(jìng)爭(zhēng)策略分析報(bào)告
- 年度分步重復(fù)光刻機(jī)競(jìng)爭(zhēng)策略分析報(bào)告
- 2025年私人房產(chǎn)交易合同范本下載6篇
- 2024-2025學(xué)年高中英語Unit4Learningeffectively單元復(fù)習(xí)課教師用書教案新人教版選修10
- 二零二四年南京二手房買賣合同及物業(yè)交接細(xì)則3篇
- 二零二五年度新能源電動(dòng)車銷售及分期付款協(xié)議2篇
- GA 1551.5-2019石油石化系統(tǒng)治安反恐防范要求第5部分:運(yùn)輸企業(yè)
- 拘留所教育課件02
- 沖壓生產(chǎn)的品質(zhì)保障
- 《腎臟的結(jié)構(gòu)和功能》課件
- 2023年湖南聯(lián)通校園招聘筆試題庫及答案解析
- 上海市徐匯區(qū)、金山區(qū)、松江區(qū)2023屆高一上數(shù)學(xué)期末統(tǒng)考試題含解析
- 護(hù)士事業(yè)單位工作人員年度考核登記表
- 天津市新版就業(yè)、勞動(dòng)合同登記名冊(cè)
- 產(chǎn)科操作技術(shù)規(guī)范范本
- 人教版八年級(jí)上冊(cè)地理全冊(cè)單元測(cè)試卷(含期中期末試卷及答案)
- 各種焊工證件比較和釋義
評(píng)論
0/150
提交評(píng)論