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