


版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、軟件工程概念第一章:軟件定義1. 軟件( Software ):計算機系統(tǒng)中與硬件相互依存的另一部分,它是包括 程序( Program ) ,數(shù)據(jù)( Data )及其相關(guān) 文檔 ( Document )的完整集合。2. 軟件的特征 :邏輯復(fù)雜,開發(fā)復(fù)雜,成本高,風(fēng)險大,維護困難。3. 按軟件功能分類 :系統(tǒng)軟件,支撐軟件,應(yīng)用軟件。系統(tǒng)軟件 :操作系統(tǒng),數(shù)據(jù)庫管理系統(tǒng),設(shè)備驅(qū)動程序,通信處理程序等 。支撐軟件 :文本編輯程序,文件格式化程序,程序庫系統(tǒng)等應(yīng)用軟件 :商業(yè)數(shù)據(jù)處理軟件, 工程與科學(xué)計算軟件, 計算機輔助設(shè)計制造軟件, 系統(tǒng)仿 真軟件,智能嵌入軟件,醫(yī)療、制藥軟件,事務(wù)管理、辦公自
2、動化軟件。按軟件規(guī)模分類:微型,小型,中型,大型,甚大型,極大型。 按軟件工作式分:實時處理軟件,分時軟件,交互式軟件,批處理軟件4. 軟件危機 : 是指在計算機軟件的開發(fā)和維護過程中所遇到的一系列重問題5. 軟件危機主要是兩個問題 :1.如開發(fā)軟件,以滿足對軟件的日益增長的需求?2. 如維護數(shù)量不斷膨脹的已有軟件?5. 軟件危機的表現(xiàn) :1.成本高,開發(fā)成本估計不準確2.軟件質(zhì)量不高、可靠性差 3. 進度難以控制 4. 維護非常困難 5. 用戶不滿意 6. 由于軟件質(zhì)量問題導(dǎo)致失敗的軟件項目非常多。6. 產(chǎn)生軟件危機的原因 : 1.與軟件本身的特點有關(guān) 2. 與軟件開發(fā)與維護的法不正確有關(guān)
3、. 軟件工程學(xué)的目的 :以較低的成本研制具有較高質(zhì)量的軟件 軟件工程技術(shù)的兩個明顯特點: 1.強調(diào)規(guī)化 2. 強調(diào)文檔化軟件工程的基本原理 (7 條) : 1.用分階段的生命期計劃格管理2.堅持進行階段評審 3.實格的產(chǎn)品控制 4. 采用現(xiàn)代程序設(shè)計技術(shù) 5.結(jié)果應(yīng)能清楚地審查 6. 開發(fā)小組的人員應(yīng)該少而精 7. 承認不斷改進軟件工程實踐的必要性8. 軟件工程法學(xué)包含 3 個要素: 法、工具和過程9. 軟件生命期: 軟件定義(問題定義,可行性研究,需求分析) ,軟件開發(fā)( 總體設(shè)計,詳 細設(shè)計,編碼和單元測試,集成測試) ,運行維護 ( 持久滿足用戶需求)10. 軟件過程模型:瀑布模型,快速
4、原型模型,增量模型,螺旋模型,噴泉模型。11軟件過程模型RUP :初始階段,細化階段,構(gòu)造階段,移交階段第二章:可行性研究的任務(wù)1. 可行性研究的五個案 :技術(shù)可行性,經(jīng)濟可行性,操作可行性,法律可行性,社會效益2. 可行性研究過程: 1.復(fù)查系統(tǒng)規(guī)模與目標(biāo)、 2.研究目前的系統(tǒng)、 3. 導(dǎo)出新系統(tǒng)的高層邏輯 模型、 4. 進一步定義問題、 5. 導(dǎo)出和評價供選擇的解法、 6. 推薦行動針、 7. 草擬開發(fā)計 劃、 8.書寫文檔提交審查3. 系統(tǒng)流程圖 :用來描述物理系統(tǒng)的工具。4. 系統(tǒng)流程圖表達 :是數(shù)據(jù)在系統(tǒng)各部件之間流動的情況, 而不是對數(shù)據(jù)進行加工處理的控 制過程。即:系統(tǒng)流程圖工程
5、序流程圖。5. 系統(tǒng)流程圖的基本思想 :用圖形符號以黑盒子形式描繪組成系統(tǒng)的每個部件6. 系統(tǒng)流程圖元素: 處理,輸入輸出,連接,換頁連接,數(shù)據(jù)流。7. 數(shù)據(jù)流圖 : 用來描述邏輯系統(tǒng)的工具。數(shù)據(jù)流圖 (DFD) 是一種圖形化技術(shù), 它描繪信息流和數(shù)據(jù)從輸入移動到輸出的過程中所經(jīng)受 的變換,即數(shù)據(jù)流圖描繪數(shù)據(jù)在軟件中流動和被處理的邏輯過程。8. 數(shù)據(jù)流圖四種基本符號 :數(shù)據(jù)加工 /處理 / 變換,數(shù)據(jù)源點或終點 (外部實體),數(shù)據(jù)存儲, 數(shù)據(jù)流。9. 數(shù)據(jù)字典的組成 :數(shù)據(jù)流,數(shù)據(jù)流分量(數(shù)據(jù)元素) ,數(shù)據(jù)存儲,處理。10. 數(shù)據(jù)元素 : 順序,選擇,重復(fù),可選。第三章:需求分析1. 需求分析
6、: 軟件定義時期的最后一個階段,2. 需求分析的基本任務(wù): 不是確定系統(tǒng)怎樣完成它的工作, 而是確定系統(tǒng)必須完成哪些工作, 也就是對目標(biāo)系統(tǒng)提出完整、準確、清晰、具體的要求 。3. 軟件需求的組成: 業(yè)務(wù)需求, 用戶需求,系統(tǒng)需求。4. 需求分析法:面向數(shù)據(jù)流的結(jié)構(gòu)化分析法(SA),面向?qū)ο蟮姆治龇?(00A)等5. 邏輯模型:數(shù)據(jù)流圖(DFD),數(shù)據(jù)字典(DD),實體-關(guān)系圖(ERD),狀態(tài)轉(zhuǎn)換圖(STD)6. 物理模型:系統(tǒng)流程圖,7. 需求分析的基本思想 :“自頂向下,逐步求精” ,抽象和分解8. 需求分析 ;功能模型數(shù)據(jù)流圖,數(shù)據(jù)模型實體 -關(guān)系圖,行為模型狀態(tài)轉(zhuǎn)換圖9. 實體 -關(guān)系
7、圖 (ERD) :描述數(shù)據(jù)對象及數(shù)據(jù)對象之間的關(guān)系10. 數(shù)據(jù)流圖(DFD):描述數(shù)據(jù)在系統(tǒng)中如被傳送或變換,以及描述如對數(shù)據(jù)流進行變換的功能(子功能)11狀態(tài)轉(zhuǎn)換圖(STD):描述系統(tǒng)對外部事件如響應(yīng),如動作模型的核心是數(shù)據(jù)字典12. 實體-聯(lián)系圖(ER)組成:數(shù)據(jù)對象(實體)、數(shù)據(jù)對象的屬性及數(shù)據(jù)對象彼此間相互連接 的關(guān)系。聯(lián)系:一對一聯(lián)系,一對多聯(lián)系,多對多聯(lián)系。通常用矩形框代表實體; 用連接相關(guān)實體的菱形框表示關(guān)系; 用橢圓形或圓角矩形表示實體 (或關(guān)系 )的屬性;并用直線把實體 (或關(guān)系 )與其屬性連接起來。13. 數(shù)據(jù)規(guī)化目的是: 1.消除數(shù)據(jù)冗余,即消除表格中數(shù)據(jù)的重復(fù); 2.消
8、除多義性,使關(guān)系中 的屬性含義清楚、單一; 3.使關(guān)系的“概念”單一化,讓每個數(shù)據(jù)項只是一個簡單的數(shù)或字 符串,而不是一個組項或重復(fù)組; 4. 便操作。使數(shù)據(jù)的插入、刪除與修改操作可行并便; 5. 使關(guān)系模式更靈活,易于實現(xiàn)接近自然語言的查詢式。14. 狀態(tài)轉(zhuǎn)換圖 (簡稱為狀態(tài)圖 ):通過描繪系統(tǒng)的狀態(tài)及引起系統(tǒng)狀態(tài)轉(zhuǎn)換的事件,來表示 系統(tǒng)的行為。此外,狀態(tài)圖還指明了作為特定事件的結(jié)果,系統(tǒng)將做哪些動作(例如,處理數(shù)據(jù))。15. 狀態(tài):初態(tài):一個,終態(tài):0 或多個,中間狀態(tài)16. 驗證軟件需求:一致性,完整性,現(xiàn)實性,有效性。第五章:總體設(shè)計1. 總體設(shè)計(概要設(shè)計) :將軟件需求轉(zhuǎn)化為數(shù)據(jù)結(jié)
9、構(gòu)和軟件的系統(tǒng)結(jié)構(gòu)2. 數(shù)據(jù)庫設(shè)計包括三個步驟:模式設(shè)計,子模式設(shè)計,存儲模式設(shè)計。3. 軟件設(shè)計原理:模塊化,抽象,逐步求精,信息隱藏與信息局部化,模塊獨立4. 模塊 :是由邊界元素限定的相鄰程序元素 (例如,數(shù)據(jù)說明,可執(zhí)行的語句 )的序列,而且 有一個總體標(biāo)識符代表它。 C、 C+ 和 Java 語言中的 . 對過程、函數(shù)、子程序和宏等面 向?qū)ο蠓▽W(xué)中的對象是模塊,對象的法也是模塊模塊化是好的軟件設(shè)計的一個基本準則5 .模塊獨立的含義 :模塊完成獨立的功能, 符合信息隱藏和信息局部化原則,模塊間關(guān)連和 依賴程度盡量小。6. 獨立性的度量:耦合、聚。7. 耦合是對一個軟件結(jié)構(gòu)不同模塊之間互
10、連程度的度量。8. 耦合的強弱取決于模塊間接口的復(fù)雜程度,進入或訪問一個模塊的點以及通過接口的數(shù)據(jù)9. 模塊間的耦合程度強烈影響系統(tǒng)的可理解性、可測試性、可靠性和可維護性。 耦合性越高,模塊獨立性越弱10. 耦合強度依賴的因素: 一模塊對另一模塊的引用 一模塊向另一模塊傳遞的數(shù)據(jù)量 一模塊施加到另一模塊的控制的數(shù)量 模塊間接口的復(fù)雜程度11. 耦合性由強到弱排列為:容耦合,公共耦合,特征耦合,控制耦合,數(shù)據(jù)耦合。12. 原則:盡量使用數(shù)據(jù)耦合,少用控制耦合,限制公共耦合的圍,完全不用容耦合。13. 聚 (Cohesion) :標(biāo)志一個模塊各元素彼此結(jié)合的緊密程度。14. 聚有七種, 由弱到強分
11、別為: 偶然聚 -邏輯聚 -時間聚 -過程聚 -通信聚-順序聚 - 功能聚。15. 深度 = 分層的層數(shù)。過大表示分工過細。16. 寬度 = 同一層上模塊數(shù)的最大值。過大表示系統(tǒng)復(fù)雜度大。17. 扇出 = 一個模塊直接調(diào)用 / 控制的模塊數(shù)。18. 扇入 = 直接調(diào)用該模塊的模塊數(shù)。19 控制域:這個模塊本身以及所有直接或間接從屬于它的模塊的集合。20. 作用域:受該模塊中的一個判定所影響的所有模塊的集合。 面向數(shù)據(jù)流的設(shè)計法:變換流,事務(wù)流。第六章:詳細設(shè)計1. 詳細設(shè)計: 描述系統(tǒng)的每個程序,包括每個模塊和子程序名稱、標(biāo)識符、層次結(jié)構(gòu)系2. 對程序的功能、性能、輸入、輸出、算法、流程、接口
12、等進行描述3. 程序控制結(jié)構(gòu):順序、選擇,循環(huán),(多分支, DO While ,DO Until) 五種基本控制結(jié)構(gòu)。4. 程序流程圖又稱為程序框圖:是對一個模塊的部執(zhí)行過程用圖形來描述。5. 盒圖 :只能從上邊進入,從下邊走出,沒有其他的入口和出口,6. 盒圖的基本符號:順序,選擇型(lf-then-else),多分支選擇型(CASE型),DO-WHILE 循環(huán) (先測試循環(huán) ), DO-UNTIL 循環(huán)(后測試循環(huán) ). 調(diào)用子程序 .7. PAD圖:PAD圖中豎線的總條數(shù)就是程序中的層次數(shù)8. PAD圖基本符號:順序選擇循環(huán),Case分支,語句標(biāo)號,定義9. 判定表 :左上部列出所有的
13、條件 ,左下部是所有可能的 操作,右上部是各種條件的 組合矩 陣,右下部是每種條件組合對應(yīng)的 動作第七章:軟件實現(xiàn)1. 實現(xiàn):編碼和測試2 編碼:把軟件設(shè)計結(jié)果翻譯成用某種程序設(shè)計語言書寫的程序3. 程序設(shè)計語言:機器語言,匯編語言,高級語言4. 程序部的文檔包括:恰當(dāng)?shù)臉?biāo)識符,適當(dāng)?shù)淖⑨?,程序的視覺組織。5. 符號名即標(biāo)識符 ;包括模塊名、變量名、常量名、標(biāo)號名、子程序名、數(shù)據(jù)區(qū)名以及緩 沖區(qū)名等。6. 程序的注釋 :程序員與日后的程序讀者之間通信的重要手段7. 注釋分為序言性注釋和功能性注釋 .8. 軟件測試是保證軟件質(zhì)量的關(guān)鍵步驟,是對軟件規(guī)格說明、設(shè)計和編碼的最后復(fù)審, 其工件量約占總
14、工作量 40% 以上(對于人命關(guān)天的情況,測試相當(dāng)于其它部分總成本 的 3 5 倍)。8.軟件測試法 :靜態(tài)測試法 ,動態(tài)測試法9. 靜態(tài)測試法 :人工測試法 ,計算機輔助靜態(tài)分析法10. 動態(tài)測試法 :白盒測試法 ,黑盒測試法 .11. 黑盒測試法又稱功能測試 :把程序看作一個黑盒子,完全不考慮程序的部結(jié)構(gòu) 和處理過程12. 白盒測試法又稱為結(jié)構(gòu)測試:把程序看成裝在一個透明的白盒子,測試者完 全知道程序的結(jié)構(gòu)和處理算法13. 軟件測試步驟: 1.模塊測試又稱(單元測試) , 2. 子系統(tǒng)測試, 3. 系統(tǒng)測試稱 為集成測試, 4.驗收測試也稱為確認測試, 5. 平行運行14. 單元測試主要使
15、用白盒測試技術(shù)。15. 單元測試重點:模塊接口,局部數(shù)據(jù)結(jié)構(gòu),重要的執(zhí)行通路,出錯處理通路,邊界條件。16. 集成測試法: 非漸增式測試法,漸增式測試法17. 漸增式測試策略: 可使用深度優(yōu)先的策略,或?qū)挾葍?yōu)先的策略18. 回歸測試:是指重新執(zhí)行已經(jīng)做過的測試的某個子集,以保證修改變化沒有帶來非 預(yù)期的副作用。19. 白盒測試技術(shù): 邏輯覆蓋20. 邏輯覆蓋是以程序部的邏輯結(jié)構(gòu)為基礎(chǔ)的設(shè)計測試用例的技術(shù)。21. 邏輯覆蓋: 語句覆蓋, 判定覆蓋 ,條件覆蓋,判定條件覆蓋, 條件組合覆蓋,21. 路徑覆蓋,點覆蓋 = 語句覆蓋,邊覆蓋 = 判定覆蓋,路徑覆蓋 與條件組合覆蓋。22. 語句覆蓋:
16、每條語句至少執(zhí)行一次23. 判定覆蓋 :每一判定的每個分支至少執(zhí)行一次24. 條件覆蓋: 每一判定中的每個條件,分別按“真” 、“假”至少各執(zhí)行一次25. 判定條件覆蓋: 同時滿足判定覆蓋和條件覆蓋的要求26. 條件組合覆蓋: 求出判定中所有條件的各種可能組合值,每一可能的條件組合至少 執(zhí)行一次。27. 路徑覆蓋: 每條可能的路徑都至少執(zhí)行一次,若圖中有環(huán),則每個環(huán)至少經(jīng)過一次28. 黑盒測試著重測試軟件功能。29. 黑盒測試技術(shù): 等價類劃分,邊界值分析法,錯誤推測法30. 等價類:有 效等價類和無效等價類31. 邊界值分析法, 應(yīng)該選取剛好等于、稍小于和稍大于等價類邊界值的數(shù)據(jù)作為測試 數(shù)
17、據(jù)32. 調(diào)試途徑調(diào)試策略: 蠻干法,回溯法,原因排除法 -33. 原因排除法-包括:對分查找法、歸納法、演繹法34. 軟件可靠性:可靠性,可用性,正確性35可靠性和可用性的區(qū)別是:可靠性是在0到t時間間隔,系統(tǒng)沒有失效的概率。而可用性是在t時刻,系統(tǒng)正常運行的概率。第九章:軟件維護1軟件維護的定義:在軟件已經(jīng)交付使用之后,為了改正錯誤或滿足新的需要而修改軟 件的過程。2. 軟件維護的原因:在運行中發(fā)現(xiàn)軟件錯誤和設(shè)計缺陷,這些錯誤和缺陷在測試階段未 能發(fā)現(xiàn)。3. 軟件維護的類型:改正性維護,適應(yīng)性維護,完善性維護,預(yù)防性維護4. 軟件維護的容:程序維護,數(shù)據(jù)維護,硬件維護5. 軟件維護的特點:結(jié)構(gòu)化維護與非結(jié)構(gòu)化,維護的代價分(有形代價和無形代價),維護的問題。6. 軟件維護過程:建立維護組織,維護報告,維護的事件流,保存維護記錄,評價維護 活動,7. 軟件的可維護性:1決定軟件可維護性的因素(可理解性,可測試性,可修改性,可移植性, 可重用性)2.文檔 影響可維護性的決定因素,比代碼更重要。3.復(fù)審2、某銀行計算機儲蓄系統(tǒng)
溫馨提示
- 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)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 北海市檢測合同范例
- 代建房屋租賃合同范本
- 企業(yè)消防合同范本
- 主體變更合同范本
- 個人建設(shè)工程合同范本
- 農(nóng)村房屋驗收合同范本
- 辦證代理合同范本
- 代理土地合同范本
- 乳膠卷材供貨合同范本
- 加工輔料采購合同范本
- AI在知識庫領(lǐng)域的應(yīng)用
- 易制毒化學(xué)品經(jīng)營管理制度
- 2024年中國成人心肌炎臨床診斷與治療指南解讀課件
- 全國川教版信息技術(shù)八年級下冊第一單元第2節(jié)《制作創(chuàng)意掛件》信息技術(shù)教學(xué)設(shè)計
- 2024山東能源集團中級人才庫選拔【重點基礎(chǔ)提升】模擬試題(共500題)附帶答案詳解
- 中國古典風(fēng)格設(shè)計
- 市政綜合項目工程竣工項目驗收總結(jié)報告自評
- GB/T 22919.8-2024水產(chǎn)配合飼料第8部分:巴沙魚配合飼料
- T-BJCC 1003-2024 首店、首發(fā)活動、首發(fā)中心界定標(biāo)準
- 網(wǎng)絡(luò)營銷推廣與策劃教學(xué)大綱
- 北師大版五年級數(shù)學(xué)下冊教材分析解讀課件完整版
評論
0/150
提交評論