![12 公共基礎(chǔ)3-軟件工程基礎(chǔ)_第1頁](http://file4.renrendoc.com/view/4b588aaf90167ca3e4d525e8bb12c498/4b588aaf90167ca3e4d525e8bb12c4981.gif)
![12 公共基礎(chǔ)3-軟件工程基礎(chǔ)_第2頁](http://file4.renrendoc.com/view/4b588aaf90167ca3e4d525e8bb12c498/4b588aaf90167ca3e4d525e8bb12c4982.gif)
![12 公共基礎(chǔ)3-軟件工程基礎(chǔ)_第3頁](http://file4.renrendoc.com/view/4b588aaf90167ca3e4d525e8bb12c498/4b588aaf90167ca3e4d525e8bb12c4983.gif)
![12 公共基礎(chǔ)3-軟件工程基礎(chǔ)_第4頁](http://file4.renrendoc.com/view/4b588aaf90167ca3e4d525e8bb12c498/4b588aaf90167ca3e4d525e8bb12c4984.gif)
![12 公共基礎(chǔ)3-軟件工程基礎(chǔ)_第5頁](http://file4.renrendoc.com/view/4b588aaf90167ca3e4d525e8bb12c498/4b588aaf90167ca3e4d525e8bb12c4985.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、軟件工程基礎(chǔ) 公共基礎(chǔ)知識軟件工程基本概念,軟件生命周期概念,軟件工具與軟件開發(fā)環(huán)境。結(jié)構(gòu)化分析方法,數(shù)據(jù)流圖,數(shù)據(jù)字典,軟件需求規(guī)格說明書。結(jié)構(gòu)化設(shè)計方法,總體設(shè)計與詳細設(shè)計。軟件測試的方法,白盒測試與黑盒測試,測試用例設(shè)計,軟件測試的實施,單元測試、集成測試和系統(tǒng)測試。程序的調(diào)試2內(nèi)容提要3.1 軟件工程基本概念軟件的定義和組成計算機軟件(Software)是計算機系統(tǒng)中與硬件相互依賴的另一部分,包括程序、數(shù)據(jù)、文檔。軟件分成三類:應用軟件系統(tǒng)軟件(操作系統(tǒng)、數(shù)據(jù)庫管理系統(tǒng)、編譯程序、設(shè)備驅(qū)動程序等)支撐軟件(介于應用軟件與系統(tǒng)軟件間,協(xié)助用戶開發(fā)軟件的工具性軟件,比如需求分析工具軟件、編
2、碼工具軟件、測試/維護工具軟件)43.1.1 軟件定義與軟件特點軟件危機落后的軟件生產(chǎn)方式無法滿足迅速增長的計算機軟件需求,從而導致軟件開發(fā)與維護過程中出現(xiàn)一系列嚴重問題的現(xiàn)象。嚴重問題歸結(jié)為成本、質(zhì)量和生產(chǎn)率等問題為了解決軟件危機,1968年提出了軟件工程這一概念,并逐漸形成了軟件工程學。(軟件工程源自于軟件危機)53.1.2 軟件危機與軟件工程軟件工程將工程化應用到軟件開發(fā)過程中(在軟件的開發(fā)工程中應用工程化原則)軟件工程學工程學的新興領(lǐng)域軟件工程3個要素:方法: 完成工程項目的技術(shù)手段工具:支持軟件開發(fā)、管理、文檔生成的工具過程:對開發(fā)的各個環(huán)節(jié)進行控制和管理63.1.2 軟件危機與軟件
3、工程軟件工程過程軟件開發(fā)過程:把用戶的要求轉(zhuǎn)變?yōu)檐浖a(chǎn)品的過程。73.1.3 軟件工程過程與軟件生命周期3.1.3 軟件工程過程與軟件生命周期軟件的生命周期軟件產(chǎn)品從提出、實現(xiàn)、使用維護、停止使用到退役的過程3個階段軟件定義軟件開發(fā)軟件運行維護6個階段工作8可行性報告軟件規(guī)格說明書測試分析報告3.1.3 軟件工程過程與軟件生命周期定義階段可行性研究與計劃指定:能做嗎?需求分析:做什么?開發(fā)階段:軟件設(shè)計:如何做?,分為概要設(shè)計和詳細設(shè)計兩個階段。軟件實現(xiàn):實現(xiàn),編碼。軟件測試:做的怎么樣?運行維護階段使用,不斷維護9可行性報告軟件規(guī)格說明書測試分析報告概要設(shè)計說明書詳細設(shè)計說明書完成編碼及面向
4、用戶的手冊軟件工程的目標在給定成本、進度的前提下,開發(fā)出具有有效性、可靠性、可理解性、可維護性、可重用性、可適應性、可移植性、可追蹤性和可互操作性且滿足用戶需求的產(chǎn)品軟件工程學的范疇103.1.4 軟件工程的目標與原則軟件工程原則抽象抽取事物最基本的特性和行為,忽略非本質(zhì)細節(jié)信息隱蔽采用封裝技術(shù),將程序模塊的實現(xiàn)細節(jié)隱藏起來模塊化解決一個復雜問題時自頂向下逐層把軟件系統(tǒng)劃分成若干模塊局部化確定性一致性完備性可驗證性113.1.4 軟件工程的目標與原則軟件開發(fā)工具協(xié)助開發(fā)人員進行軟件開發(fā)活動所使用的軟件或環(huán)境 需求分析工具、設(shè)計工具、編碼工具、排錯工具、測試工具等。軟件開發(fā)環(huán)境 全面支持軟件開發(fā)
5、全過程的軟件工具的集合計算機輔助軟件工程:CASE123.1.5 軟件開發(fā)工具與軟件開發(fā)環(huán)境3.2 結(jié)構(gòu)化分析方法1需求分析定義:任務:導出目標系統(tǒng)的邏輯模型全面理解用戶的各項要求,準確地表達各項要求主要工作:需求獲取需求分析編寫需求規(guī)格說明書需求審評(驗證需求文檔的一致性、可行性、完整性和有效性)2.需求分析方法:結(jié)構(gòu)化分析方法面向數(shù)據(jù)流的結(jié)構(gòu)化分析方法(SA)、面向數(shù)據(jù)結(jié)構(gòu)的Jackson方法(JSD)、面向數(shù)據(jù)結(jié)構(gòu)的結(jié)構(gòu)化數(shù)據(jù)系統(tǒng)開發(fā)方法(DSSD)面向?qū)ο蠓治龇椒ǎ∣OA)靜態(tài)分析方法、動態(tài)分析方法143.2.1 需求分析與需求分析方法需求分析:解決“做什么”問題1關(guān)于結(jié)構(gòu)化分析方法結(jié)
6、構(gòu)化程序設(shè)計理論在需求分析階段的運用面向數(shù)據(jù)流進行需求分析的方法自頂向下、逐層分解主要工具:數(shù)據(jù)流圖(DFD)、數(shù)據(jù)字典(DD)、結(jié)構(gòu)化英語、判定樹、判定表153.2.2 結(jié)構(gòu)化分析方法2結(jié)構(gòu)化分析的常用工具數(shù)據(jù)流圖(DFD) 數(shù)據(jù)字典(DD)結(jié)構(gòu)化分析方法的核心對數(shù)據(jù)流圖(DFD)中出現(xiàn)的被命名的圖形元素的確切解釋判定樹、判定表以圖形形式描述數(shù)據(jù)流圖(DFD)的加工邏輯163.2.2 結(jié)構(gòu)化分析方法數(shù)據(jù)流圖(DFD):173.2.2 結(jié)構(gòu)化分析方法基本圖形元素軟件需求規(guī)格說明書是需求分析階段的最后成果特點:正確性;無歧義性;完整性;可驗證性;一致性;可理解性;可修改性;可追蹤性。最重要的是正
7、確性183.2.3 軟件需求規(guī)格說明書3.3 結(jié)構(gòu)化設(shè)計方法1軟件設(shè)計的基礎(chǔ)開發(fā)階段包括了軟件設(shè)計、實現(xiàn)(編碼)和軟件測試三部分,軟件設(shè)計是開發(fā)階段最重要的步驟。從工程管理角度來看,軟件設(shè)計分兩步完成:概要設(shè)計和詳細設(shè)計203.3.1 軟件設(shè)計的基本概念需求分析:解決“做什么”問題軟件設(shè)計:解決“怎么做”問題2軟件設(shè)計的基本原理 抽象抽出事物本質(zhì)的共同特點模塊化信息隱蔽每個模塊的實現(xiàn)細節(jié)對于其它模塊來說是隱蔽的模塊獨立性每個模塊只涉及軟件要求的具體的子功能和軟件系統(tǒng)中其它的模塊的接口是簡單的衡量指標:耦合性:模塊間互相連接的緊密程序的度量內(nèi)聚性:模塊內(nèi)部各個元素之間彼此結(jié)合的緊密程度的度量應做
8、到:高內(nèi)聚,低耦合213.3.1 軟件設(shè)計的基本概念1概要設(shè)計的基本任務系統(tǒng)結(jié)構(gòu)設(shè)計數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)庫的設(shè)計編寫概要設(shè)計文檔概要設(shè)計的評審常用的軟件結(jié)構(gòu)設(shè)計工具是結(jié)構(gòu)(SC)圖223.3.2 概要設(shè)計3面向數(shù)據(jù)流的設(shè)計方法數(shù)據(jù)流圖(DFD):需求分析工具系統(tǒng)結(jié)構(gòu)圖(SC):概要設(shè)計工作主要任務:數(shù)據(jù)流圖變換成結(jié)構(gòu)圖數(shù)據(jù)流的類型:變換流/事務流 實施要點與設(shè)計過程分析、確認數(shù)據(jù)流圖的類型,區(qū)分是事務型還是變換型說明數(shù)據(jù)流的邊界數(shù)據(jù)流圖映射為程序結(jié)構(gòu)根據(jù)設(shè)計準則把數(shù)據(jù)流轉(zhuǎn)換成程序結(jié)構(gòu)圖233.3.2 概要設(shè)計(續(xù))詳細設(shè)計的任務:確定實現(xiàn)算法和局部數(shù)據(jù)結(jié)構(gòu)不同于編碼或編程常用過程設(shè)計工具:圖形工具:
9、程序流程圖、N-S、PAD(問題分析圖)和HIPO表格工具:判定表;語言工具:PDL(偽碼)243.3.3 詳細設(shè)計3.3.3 詳細設(shè)計(續(xù))程序流程圖圖形元素:方框:處理步驟菱形:邏輯條件箭頭:控制流5種控制結(jié)構(gòu)順序型選擇型先判斷重復型后判斷重復型多分支選擇型。253.4 軟件測試測試是為了發(fā)現(xiàn)錯誤而執(zhí)行程序的過程,沒有改正錯誤一個好的測試用例在于能發(fā)現(xiàn)至今未發(fā)現(xiàn)的錯誤一個成功的測試是發(fā)現(xiàn)了至今未發(fā)現(xiàn)的錯誤的測試準則:所有的測試都應該追溯到需求程序員應避免檢查自己的程序測試用例(Test Case):為測試設(shè)計的數(shù)據(jù),包含兩部分:輸入值集和輸出值集。273.4 軟件測試從是否需要執(zhí)行被檢測的
10、軟件的角度,分為靜態(tài)測試與動態(tài)測試靜態(tài)測試人工評審軟件文檔或程序,借以發(fā)現(xiàn)其中的錯誤主要方法:代碼檢查、靜態(tài)結(jié)構(gòu)分析、代碼質(zhì)量度量動態(tài)測試上機測試關(guān)鍵:設(shè)計高效、合理的測試用例分兩類:白盒測試方法和黑盒測試方法283.4 軟件測試按照功能劃分,分為白盒測試和黑盒測試白盒測試也稱結(jié)構(gòu)測試或邏輯驅(qū)動測試在程序內(nèi)部進行,主要用于完成軟件內(nèi)部操作的驗證。測試用例是根據(jù)程序的內(nèi)部邏輯來設(shè)計主要用于單元測試基本原則保證所測模塊中每一個獨立路徑至少執(zhí)行一次保證所測模塊所有判斷的每一個分支至少執(zhí)行一次保證所測模塊每一個循環(huán)都在邊界條件和一般條件至少執(zhí)行一次驗證所有內(nèi)部數(shù)據(jù)結(jié)構(gòu)的有效性主要方法:邏輯覆蓋、基本路
11、徑測試293.4 軟件測試按照功能劃分,分為白盒測試和黑盒測試黑盒測試也稱功能測試或數(shù)據(jù)驅(qū)動測試對軟件已經(jīng)實現(xiàn)的功能是否滿足需求進行測試和驗證根據(jù)程序的功能說明來設(shè)計測試用例主要用于確認測試主要方法等價類劃分法邊界值分析法錯誤推測法303.4 軟件測試31軟件測試步驟:單元測試、集成測試、確認測試、系統(tǒng)測試3.4 軟件測試1單元測試對象:針對程序模塊,進行正確性檢驗的測試目的:發(fā)現(xiàn)各模塊內(nèi)部可能存在的各種差錯依據(jù):從程序的內(nèi)部結(jié)構(gòu)出發(fā)設(shè)計測試用例,其依據(jù)是詳細的設(shè)計說明書和源程序方法:以白盒測試為主,輔以黑盒測試在編碼階段進行驅(qū)動模塊(相當于被測模塊的主程序,將測試數(shù)據(jù)傳遞給被測試的模塊)樁模
12、塊(代替被測模塊調(diào)用的其他模塊)323.4 軟件測試1單元測試驅(qū)動模塊:相當于被測模塊的主程序,將測試數(shù)據(jù)傳遞給被測試的模塊樁模塊:代替被測模塊調(diào)用的其他模塊 333.4 軟件測試2集成測試任務:把模塊在按照設(shè)計要求組裝起來的同時進行測試目的:發(fā)現(xiàn)與接口有關(guān)的錯誤依據(jù):集成測試的依據(jù)是概要設(shè)計說明書內(nèi)容:軟件單元的接口測試、全局數(shù)據(jù)結(jié)構(gòu)測試、邊界條件和非法輸入的測試方式:非增量方式組裝與增量方式組裝。343.4 軟件測試3確認測試又稱有效性測試目的:驗證軟件的功能和性能及其它特性是否與用戶的要求一致依據(jù):軟件需求規(guī)格說明書方法:黑盒測試法4系統(tǒng)測試任務:在實際運行(使用)環(huán)境下,對計算機系統(tǒng)進行一系列的組裝測試和確認測試目的:在于通過與系統(tǒng)的需求定義作比較,發(fā)現(xiàn)軟件與系統(tǒng)定義不符合或與之矛盾的地方依據(jù): 需求分析規(guī)格說明來設(shè)計內(nèi)容:功能測
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 溫州市南浦小學2022年藝術(shù)節(jié)活動方案范文
- 環(huán)保教育培養(yǎng)下一代綠色生活意識
- 現(xiàn)代教育技術(shù)助力創(chuàng)新教學方法的推廣
- 現(xiàn)代辦公家具中的穩(wěn)固與美觀并存
- 國慶節(jié)成都漢服活動方案
- 現(xiàn)代遠程教育在海外的發(fā)展趨勢分析
- 汽車行業(yè)的社交媒體廣告投放策略
- 國慶節(jié)旅游宣傳活動方案
- 溫控技術(shù)在綠色辦公樓宇的革新發(fā)展
- 現(xiàn)代建筑設(shè)計的情感化表達
- 2024年海南公務員考試申論試題(A卷)
- 中醫(yī)培訓課件:《經(jīng)穴推拿術(shù)》
- 臨床藥師進修匯報課件
- 北京市首都師大附中2025屆數(shù)學高三第一學期期末達標測試試題含解析
- 專升本-英語高頻詞匯
- 《修辭立其誠》課件+2023-2024學年統(tǒng)編版高中語文選擇性必修中冊
- excel培訓課件教學
- 2024年貴州省高職(??疲┓诸惪荚囌惺罩新毊厴I(yè)生文化綜合考試語文試題
- 政治丨廣東省2025屆高中畢業(yè)班8月第一次調(diào)研考試廣東一調(diào)政治試卷及答案
- 項目三任務3:超聲波雷達的故障診斷與處理(課件)
- 派出所績效考核總結(jié)分析報告
評論
0/150
提交評論