




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1第5章軟件開發(fā)技術(shù)基礎(chǔ)程序設(shè)計基礎(chǔ)
軟件工程基礎(chǔ)
結(jié)構(gòu)化程序設(shè)計
面向?qū)ο蟪绦蛟O(shè)計測試用例軟件工程基礎(chǔ)全文共39頁,當前為第1頁。2程序設(shè)計基礎(chǔ)程序設(shè)計程序設(shè)計(Programing)是指利用計算機解決問題的全過程,它包含多方面的內(nèi)容,而編寫程序只是其中的一部分。
分析問題確定處理方案確定操作步驟編寫程序上機運行程序整理結(jié)果
程序設(shè)計的一般步驟:測試用例軟件工程基礎(chǔ)全文共39頁,當前為第2頁。3程序設(shè)計方法與風格程序設(shè)計方法是指關(guān)于以什么觀點來研究問題并進行求解,以及如何進行系統(tǒng)設(shè)計的軟件方法學。程序設(shè)計方法主要經(jīng)過了結(jié)構(gòu)化程序設(shè)計和面向?qū)ο蟪绦蛟O(shè)計兩個階段。
程序設(shè)計基礎(chǔ)測試用例軟件工程基礎(chǔ)全文共39頁,當前為第3頁。4程序設(shè)計方法與風格程序設(shè)計風格是指編寫程序時所表現(xiàn)出的特點、習慣和邏輯思路。程序設(shè)計風格強調(diào)簡單和清晰?!扒逦谝?,效率第二”的觀點是當今主導(dǎo)的程序設(shè)計風格程序設(shè)計基礎(chǔ)測試用例軟件工程基礎(chǔ)全文共39頁,當前為第4頁。5結(jié)構(gòu)化程序設(shè)計采用自頂向下、逐步求精的方法程序結(jié)構(gòu)模塊化,每個模塊只有一個入口和一個出口使用三種基本控制結(jié)構(gòu)描述程序流程原則:結(jié)構(gòu)化程序設(shè)計是指:為使程序具有一個合理的結(jié)構(gòu)以保證程序正確性而規(guī)定的一套如何進行程序設(shè)計的原則。所謂模塊化就是把一個大型的程序按照功能分解為若干相對獨立的、較小的子程序(即模塊),并把這些模塊按層次關(guān)系進行組織。
測試用例軟件工程基礎(chǔ)全文共39頁,當前為第5頁。6順序結(jié)構(gòu)、選擇結(jié)構(gòu)、循環(huán)結(jié)構(gòu)結(jié)構(gòu)化程序設(shè)計基本結(jié)構(gòu):AB假真PAB真假A
P真假A
P測試用例軟件工程基礎(chǔ)全文共39頁,當前為第6頁。7
數(shù)據(jù)與對數(shù)據(jù)的操作(函數(shù))相分離可重用性差結(jié)構(gòu)化程序設(shè)計
程序結(jié)構(gòu)良好程序清晰易讀、易于使用和維護提高編程的效率,降低開發(fā)成本優(yōu)點缺點測試用例軟件工程基礎(chǔ)全文共39頁,當前為第7頁。8面向?qū)ο蟪绦蛟O(shè)計對象在現(xiàn)實生活中,所有東西都是對象。任何對象都有兩個共同的特點:對象的屬性和對象的操作。一個對象通常由對象名、屬性和操作組成。概念測試用例軟件工程基礎(chǔ)全文共39頁,當前為第8頁。9面向?qū)ο蟪绦蛟O(shè)計屬性是用來描述對象的狀態(tài),對象的狀態(tài)又稱為對象的靜態(tài)屬性。概念屬性測試用例軟件工程基礎(chǔ)全文共39頁,當前為第9頁。10面向?qū)ο蟪绦蛟O(shè)計對象的操作又稱為對象的行為,主要表述對象的動態(tài)屬性。概念操作測試用例軟件工程基礎(chǔ)全文共39頁,當前為第10頁。11面向?qū)ο蟪绦蛟O(shè)計封裝就是把對象的屬性和操作結(jié)合成一個不可分割的整體。封裝就是使一個對象形成接口和實現(xiàn)兩個部分。對于用戶來說,接口是可見的,實現(xiàn)是不可見的。概念封裝測試用例軟件工程基礎(chǔ)全文共39頁,當前為第11頁。12面向?qū)ο蟪绦蛟O(shè)計是一組具有相同屬性和相同操作的對象的集合。一個類中的每個對象都是這個類的一個實例。概念
類測試用例軟件工程基礎(chǔ)全文共39頁,當前為第12頁。13面向?qū)ο蟪绦蛟O(shè)計繼承是表達類之間相似性的一種機制,即在已有的類的基礎(chǔ)之上增加構(gòu)造新的類,前者稱為父類(或超類),后者稱為子類。子類除自動擁有父類的全部屬性和操作外,還可以進一步定義新的屬性和操作。如果子類只從一個父類繼承,則稱為單一繼承;如果子類從一個以上父類繼承,則稱為多重繼承。優(yōu)點:能清晰地體現(xiàn)相關(guān)類之間的層次結(jié)構(gòu)關(guān)系;可以減少代碼和數(shù)據(jù)的冗余,增加程序的復(fù)用能力。概念繼承測試用例軟件工程基礎(chǔ)全文共39頁,當前為第13頁。14面向?qū)ο蟪绦蛟O(shè)計對象在收到消息時要予以響應(yīng),不同的對象收到同一消息可產(chǎn)生完全不同的結(jié)果,這一現(xiàn)象叫做多態(tài)性。多態(tài)性增強了軟件的靈活性和重用性。多態(tài)性與繼承性相結(jié)合使軟件具有更廣的重用性和可擴充性。概念多態(tài)性測試用例軟件工程基礎(chǔ)全文共39頁,當前為第14頁。15面向?qū)ο蟪绦蛟O(shè)計面向?qū)ο蟪绦蛟O(shè)計的基本思想特性:基本思想:
將人們在日常生活中習慣的思維方式和表達方式應(yīng)用在程序設(shè)計中,以客觀世界中的對象為中心,以類和繼承為構(gòu)造機制來進行軟件開發(fā)活動。優(yōu)點:
符合人們通常解決問題的思維方式;對象結(jié)構(gòu)穩(wěn)定;軟件具有易于擴充、修改和維護的特性。封裝性、繼承性、多態(tài)性測試用例軟件工程基礎(chǔ)全文共39頁,當前為第15頁。16軟件工程基礎(chǔ)
1.軟件危機
軟件危機是指在軟件的開發(fā)和維護過程中所遇到的一系列嚴重問題。軟件危機主要體現(xiàn)在以下幾個方面:①
軟件開發(fā)的實際成本和進度估計不準確②開發(fā)出來的軟件常常不能使用戶滿意③軟件產(chǎn)品的質(zhì)量不高,存在漏洞,需要經(jīng)常打補丁④大量已有的軟件難以維護⑤軟件的開發(fā)和維護成本不斷提高,直接威脅計算機應(yīng)用的擴大⑥軟件生產(chǎn)技術(shù)進步緩慢,跟不上硬件的發(fā)展和人們需求的增長測試用例軟件工程基礎(chǔ)全文共39頁,當前為第16頁。17看一個實際例子:Windows7的誕生過程2007年12月20日:新技術(shù)預(yù)覽版正式上線;2008年12月12日:軟件評測版(有“發(fā)送反饋信息”鏈接)正式上線;微軟2009年10月22日于美國、2009年10月23日于中國正式發(fā)布Windows72011年2月22日:RTMSP1(補丁)正式上線。測試用例軟件工程基礎(chǔ)全文共39頁,當前為第17頁。18軟件工程基礎(chǔ)軟件工程是指應(yīng)用計算機科學、數(shù)學及管理科學等原理,以工程化的原則和方法來開發(fā)與維護軟件的學科。研究軟件工程的主要目的就是在規(guī)定的時間、規(guī)定的開發(fā)費用內(nèi)開發(fā)出滿足用戶需求的高質(zhì)量的軟件系統(tǒng)(高質(zhì)量是指錯誤率低、好用、易用、可移植、易維護等)。2.軟件工程概述
測試用例軟件工程基礎(chǔ)全文共39頁,當前為第18頁。19軟件工程的原則:①制定階段計劃②階段評審③制定規(guī)范,實行嚴格的產(chǎn)品控制2.軟件工程概述軟件工程基礎(chǔ)測試用例軟件工程基礎(chǔ)全文共39頁,當前為第19頁。20將軟件產(chǎn)品從開始計劃起,到廢棄不用止,稱為軟件生命周期。軟件生命周期一般劃分為計劃、開發(fā)和運行3個時期,每一時期又區(qū)分為若干個階段。
計劃時期有問題定義和可行性研究兩個階段; 開發(fā)時期有需求分析、設(shè)計、編碼和測試4個階段; 運行時期主要是系統(tǒng)維護階段。
—軟件生命周期軟件工程基礎(chǔ)2.軟件工程概述測試用例軟件工程基礎(chǔ)全文共39頁,當前為第20頁。21目的:弄清“用戶需要計算機解決什么問題”,以及項目所需的資源和經(jīng)費任務(wù):編寫出“系統(tǒng)目標與范圍說明書”軟件工程基礎(chǔ)—問題定義3.軟件工程過程測試用例軟件工程基礎(chǔ)全文共39頁,當前為第21頁。22目的:弄清“用戶要解決的問題是否能夠解決和值得解決”任務(wù):寫出“可行性論證報告”。 應(yīng)制訂出“項目實施計劃”,或提出終止該項目的建議軟件工程基礎(chǔ)—可行性研究3.軟件工程過程測試用例軟件工程基礎(chǔ)全文共39頁,當前為第22頁。23目的:要解決的問題是“做什么”。具體而言,就是通過對問題及其環(huán)境的理解、分析和綜合,以確定最終的目標系統(tǒng)必須做哪些工作任務(wù):編寫“需求規(guī)格說明書”,這份文檔應(yīng)包括對軟件的性能需求、功能需求、環(huán)境約束和外部接口等描述軟件工程基礎(chǔ)—需求分析3.軟件工程過程測試用例軟件工程基礎(chǔ)全文共39頁,當前為第23頁。24目的:確定軟件的總體結(jié)構(gòu)、數(shù)據(jù)結(jié)構(gòu)、用戶界面和算法細節(jié)任務(wù):軟件設(shè)計文檔軟件設(shè)計分為總體設(shè)計和詳細設(shè)計
軟件工程基礎(chǔ)—軟件設(shè)計3.軟件工程過程測試用例軟件工程基礎(chǔ)全文共39頁,當前為第24頁。25總體設(shè)計目的:要解決的問題是“怎樣實現(xiàn)目標系統(tǒng)”
任務(wù):確定軟件的總體結(jié)構(gòu),進行模塊劃分,確定每個模塊的功能、接口及模塊之間的調(diào)用關(guān)系,并對全局數(shù)據(jù)結(jié)構(gòu)進行設(shè)計,同時產(chǎn)生概要設(shè)計說明書軟件工程基礎(chǔ)—軟件設(shè)計3.軟件工程過程測試用例軟件工程基礎(chǔ)全文共39頁,當前為第25頁。26詳細設(shè)計
目的:要解決的問題是“應(yīng)該怎樣具體實現(xiàn)目標系統(tǒng)”
任務(wù):在概要設(shè)計的基礎(chǔ)上,設(shè)計每個模塊實現(xiàn)的細節(jié)及對局部數(shù)據(jù)進行設(shè)計(包括模塊的數(shù)據(jù)結(jié)構(gòu)和所需的算法),同時產(chǎn)生詳細設(shè)計說明書軟件工程基礎(chǔ)—軟件設(shè)計3.軟件工程過程測試用例軟件工程基礎(chǔ)全文共39頁,當前為第26頁。27目的:產(chǎn)生能在計算機上執(zhí)行的程序任務(wù):把詳細設(shè)計的結(jié)果翻譯成用該程序設(shè)計語言編寫的程序代碼(源程序)軟件工程基礎(chǔ)—軟件編碼3.軟件工程過程測試用例軟件工程基礎(chǔ)全文共39頁,當前為第27頁。28軟件測試是為了發(fā)現(xiàn)程序中的錯誤而執(zhí)行程序的過程目的和任務(wù):通過在計算機上執(zhí)行程序來盡可能多地發(fā)現(xiàn)軟件產(chǎn)品中的錯誤和缺陷,并改正程序中的錯誤,以保證程序的可靠運行軟件測試分為靜態(tài)分析和動態(tài)測試動態(tài)測試又分為白盒測試和黑盒測試
軟件工程基礎(chǔ)—軟件測試3.軟件工程過程測試用例軟件工程基礎(chǔ)全文共39頁,當前為第28頁。29白盒測試
是測試者完全了解被測程序的內(nèi)部邏輯結(jié)構(gòu)和處理過程,因此,可以對其內(nèi)部結(jié)構(gòu)和處理過程進行測試,檢驗內(nèi)部控制結(jié)構(gòu)和數(shù)據(jù)結(jié)構(gòu)是否有錯,實際的運行結(jié)果與期望的結(jié)果是否一致軟件工程基礎(chǔ)—軟件測試3.軟件工程過程測試用例軟件工程基礎(chǔ)全文共39頁,當前為第29頁。30黑盒測試
是測試者已經(jīng)知道被測程序的功能,而對程序內(nèi)部的邏輯結(jié)構(gòu)和處理過程完全不用考慮,只是對它的每一個功能進行測試,將測試后的結(jié)果與期望的結(jié)果進行分析比較,檢查程序的功能是否符合規(guī)格說明書的要求。軟件工程基礎(chǔ)—軟件測試3.軟件工程過程測試用例軟件工程基礎(chǔ)全文共39頁,當前為第30頁。31軟件測試的每一次測試都需要準備好一些測試數(shù)據(jù),與被測程序一起輸入到計算機中執(zhí)行;一般把程序執(zhí)行一次需要的一組測試數(shù)據(jù)和該組測試數(shù)據(jù)可以得出怎樣的輸出結(jié)果(期望結(jié)果)稱為一個“測試用例”軟件工程基礎(chǔ)—軟件測試3.軟件工程過程測試用例軟件工程基礎(chǔ)全文共39頁,當前為第31頁。32測試用例設(shè)計測試用例是由測試數(shù)據(jù)和期望結(jié)果組成。設(shè)計測試用例的目的就是用盡可能少的測試數(shù)據(jù),達到盡可能大的程序覆蓋面,發(fā)現(xiàn)盡可能多的軟件錯誤和問題軟件工程基礎(chǔ)—軟件測試3.軟件工程過程測試用例軟件工程基礎(chǔ)全文共39頁,當前為第32頁。33軟件測試的原則①確定期望輸出結(jié)果②測試者應(yīng)避免測試自己的程序③對非法和非期望的輸入數(shù)據(jù)也要像合法的和期望的輸入數(shù)據(jù)一樣編寫測試用例④程序模塊經(jīng)測試后,殘存的錯誤數(shù)目與已發(fā)現(xiàn)的錯誤數(shù)目成正比⑤嚴格按測試計劃執(zhí)行,避免測試的隨意性⑥對每一個測試結(jié)果應(yīng)當做全面檢查⑦妥善保存測試計劃、測試用例、出錯統(tǒng)計和最終分析報告,為軟件維護提供方便軟件工程基礎(chǔ)—軟件測試3.軟件工程過程測試用例軟件工程基礎(chǔ)全文共39頁,當前為第33頁。34軟件測試的實施①單元測試:是對每一個編制好的模塊進行測試,其目的在于發(fā)現(xiàn)和排除各模塊內(nèi)部可能存在的差錯及詳細設(shè)計中產(chǎn)生的錯誤。進行單元測試時,根據(jù)程序的內(nèi)部結(jié)構(gòu)設(shè)計測試用例,主要采用白盒測試法軟件工程基礎(chǔ)—軟件測試3.軟件工程過程測試用例軟件工程基礎(chǔ)全文共39頁,當前為第34頁。35軟件測試的實施②集成測試。是在單元測試的基礎(chǔ)上,將所有模塊按照設(shè)計要求組裝成為系統(tǒng)而進行的測試,它的任務(wù)是檢查模塊間的接口和通信、各子功能的組合能否達到預(yù)期要求的功能、全程數(shù)據(jù)結(jié)構(gòu)是否有問題等。集成測試主要發(fā)現(xiàn)設(shè)計階段產(chǎn)生的錯誤,通常采用黑盒測試法軟件工程基礎(chǔ)—軟件測試3.軟件工程過程測試用例軟件工程基礎(chǔ)全文共39頁,當前為第35頁。36軟件測試的實施集成測試時,將各個模塊組裝成系統(tǒng)的方法有:非增量組裝方式是先分別對每個模塊進行單元測試,再把所有模塊按設(shè)計要求組裝在一起進行測試,最終得到所要求的軟件增量組裝方式是把下一個要測試的模塊同已經(jīng)測試好的那些模塊結(jié)合起來進行測試,測試完以后再把下一個應(yīng)該測試的模塊結(jié)合進來測試軟件工程基
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 稀有金屬陶瓷涂層材料企業(yè)縣域市場拓展與下沉戰(zhàn)略研究報告
- 船舶用鐘企業(yè)縣域市場拓展與下沉戰(zhàn)略研究報告
- 2025年文具及類似用品合作協(xié)議書
- 肱骨外科骨折康復(fù)指導(dǎo)
- 2024-2025學年第一學期小學體育教研組工作計劃
- 立德樹人與青少年心理健康心得體會
- 2025年稀土-鐵超磁致伸縮單晶材料合作協(xié)議書
- 科研機構(gòu)危險廢物處置流程措施
- 環(huán)境友好型藝術(shù)材料使用指南與計劃
- 企業(yè)內(nèi)部培訓(xùn)團隊崗位職責
- 病原微生物實驗室生物安全檢查表格
- 鮮肉切片機設(shè)計說明書
- 2018年USB數(shù)據(jù)線檢驗規(guī)范資料
- 廠房及配套設(shè)施工程建設(shè)項目施工組織設(shè)計方案
- 校園管制刀具排查記錄表
- 3 春夜喜雨課件(共16張PPT)
- DB32∕T 3921-2020 居住建筑浮筑樓板保溫隔聲工程技術(shù)規(guī)程
- 基樁低應(yīng)變檢測2
- 中長期人才隊伍建設(shè)戰(zhàn)略規(guī)劃
- 圖解副熱帶高壓
- 鋁合金腳手架操作規(guī)程
評論
0/150
提交評論