軟件工程教學(xué)課件:8-第八講(0)_第1頁(yè)
軟件工程教學(xué)課件:8-第八講(0)_第2頁(yè)
軟件工程教學(xué)課件:8-第八講(0)_第3頁(yè)
軟件工程教學(xué)課件:8-第八講(0)_第4頁(yè)
軟件工程教學(xué)課件:8-第八講(0)_第5頁(yè)
已閱讀5頁(yè),還剩26頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、毛新軍毛新軍 教授教授計(jì)算機(jī)科學(xué)與技術(shù)系計(jì)算機(jī)科學(xué)與技術(shù)系602教研室教研室 0731-(45)73649軟件工程導(dǎo)論軟件工程導(dǎo)論 之之Copyright Xinjun Mao軟件維護(hù)軟件維護(hù)2n軟件在交付給用戶使用后,由于應(yīng)用需求、環(huán)境變化以及自身問(wèn)題,對(duì)它進(jìn)行維護(hù)不可避免n軟件維護(hù)是一個(gè)長(zhǎng)期過(guò)程,耗費(fèi)較大Copyright Xinjun Mao軟件維護(hù)軟件維護(hù)31.軟件維護(hù)的分類2.軟件維護(hù)過(guò)程3.軟件的可維護(hù)性4.維護(hù)活動(dòng)5.維護(hù)的副作用6.逆向工程和重構(gòu)工程Copyright Xinjun Mao軟件維護(hù)軟件維護(hù)4n糾正性維護(hù)n完善性維護(hù)n適應(yīng)性維護(hù)n預(yù)防性維護(hù)Copyright Xi

2、njun Mao軟件維護(hù)軟件維護(hù)5n什么是糾正性維護(hù) 糾正軟件中的錯(cuò)誤n起因 用戶在使用軟件過(guò)程中一旦發(fā)現(xiàn)錯(cuò)誤,他們會(huì)向開發(fā)人員提出糾正性維護(hù)的請(qǐng)求n目的 診斷和改正軟件系統(tǒng)中潛藏的錯(cuò)誤Copyright Xinjun Mao軟件維護(hù)軟件維護(hù)6n什么是適應(yīng)性維護(hù) 對(duì)軟件進(jìn)行改造以便適應(yīng)新的環(huán)境和平臺(tái)n原因 軟件運(yùn)行于一定的環(huán)境(硬件、OS、網(wǎng)絡(luò)等)之上,運(yùn)行環(huán)境發(fā)展很快n目的 適應(yīng)環(huán)境變化和發(fā)展而對(duì)軟件進(jìn)行維護(hù)Copyright Xinjun Mao軟件維護(hù)軟件維護(hù)7n什么是改善性維護(hù) 對(duì)軟件進(jìn)行改造以增加新的功能、修改已有的功能n原因 在軟件系統(tǒng)運(yùn)行期間,用戶可能要求增加新的功能、建議修改已

3、有功能或提出其他改進(jìn)意見n目的 滿足用戶日益增長(zhǎng)的各種需求而對(duì)軟件系統(tǒng)進(jìn)行的改善和補(bǔ)充Copyright Xinjun Mao軟件維護(hù)軟件維護(hù)8n什么是預(yù)防性維護(hù) 對(duì)軟件的結(jié)構(gòu)進(jìn)行改造以便提高軟件的可靠性和可維護(hù)性等n原因 為進(jìn)一步改善軟件系統(tǒng)的可維護(hù)性和可靠性,為以后的軟件改進(jìn)奠定基礎(chǔ)的維護(hù)活動(dòng)n目的 獲取軟件結(jié)構(gòu),重新改善軟件結(jié)構(gòu)Copyright Xinjun Mao軟件維護(hù)軟件維護(hù)91.軟件維護(hù)的分類2.軟件維護(hù)過(guò)程3.軟件的可維護(hù)性4.維護(hù)活動(dòng)5.維護(hù)的副作用6.逆向工程和重構(gòu)工程Copyright Xinjun Mao軟件維護(hù)軟件維護(hù)10用用戶戶的的維維護(hù)護(hù)請(qǐng)請(qǐng) 求求軟軟件件研研讀

4、讀設(shè)設(shè)計(jì)計(jì)規(guī)規(guī)劃劃方方案案修修改改設(shè)設(shè)計(jì)計(jì)重重新新編編寫寫代代碼碼復(fù)復(fù)審審苦苦讀讀代代碼碼?重重新新編編寫寫代代碼碼復(fù)復(fù)審審測(cè)測(cè)試試并并交交付付用用 戶戶使使用用Copyright Xinjun Mao軟件維護(hù)軟件維護(hù)11n維護(hù)成本不斷增加 70年代(3540),80(60)n軟件維護(hù)工作量涉及二方面 助動(dòng)性:用于理解代碼功能,結(jié)構(gòu)特征以及性能約束 生產(chǎn)性:用于分析和評(píng)價(jià)、修改設(shè)計(jì)和代碼Copyright Xinjun Mao軟件維護(hù)軟件維護(hù)12n軟件維護(hù)工作量模型:M = P + K * e (c-d) 其中 M= 維護(hù)總工作量 P=生產(chǎn)性工作量 K=經(jīng)驗(yàn)常數(shù) C=復(fù)雜度(表示設(shè)計(jì)好壞和文檔

5、完整程度) D=對(duì)欲維護(hù)軟件的熟悉程度n模型表明:如果沒(méi)有好的軟件開發(fā)方法或者軟件開發(fā)人員不能參與維護(hù),那么軟件維護(hù)工作量會(huì)指數(shù)上升Copyright Xinjun Mao軟件維護(hù)軟件維護(hù)13n軟件版本控制 - 重要問(wèn)題n很難追蹤軟件的創(chuàng)建過(guò)程 - 文檔不齊全n理解他人的軟件比較困難n人員流動(dòng)大,維護(hù)人員得不到開發(fā)人員幫助n軟件修改困難,易出錯(cuò)n缺乏成就感Copyright Xinjun Mao軟件維護(hù)軟件維護(hù)141.軟件維護(hù)的分類2.軟件維護(hù)過(guò)程3.軟件的可維護(hù)性4.維護(hù)活動(dòng)5.維護(hù)的副作用6.逆向工程和重構(gòu)工程Copyright Xinjun Mao軟件維護(hù)軟件維護(hù)15n什么是軟件的可維護(hù)

6、性 軟件被理解、改正、調(diào)整和改進(jìn)的程度n影響軟件可維護(hù)性的因素 軟件開發(fā)方法-結(jié)構(gòu)化、OO、. 文檔是否齊全 開發(fā)人員素質(zhì) 軟件系統(tǒng)結(jié)構(gòu)是否清晰、易于理解 標(biāo)準(zhǔn)的程序設(shè)計(jì)語(yǔ)言 文檔的結(jié)構(gòu)是否標(biāo)準(zhǔn)化 .Copyright Xinjun Mao軟件維護(hù)軟件維護(hù)16n復(fù)審是保證軟件可維護(hù)性的一項(xiàng)重要工作(1) 需求分析的復(fù)審 對(duì)將來(lái)可能修改和改進(jìn)的部分加注釋,對(duì)軟件的可移植性加以討論,并考慮可能影響軟件維護(hù)的系統(tǒng)界面(2) 設(shè)計(jì)階段的復(fù)審 從易于維護(hù)和提高設(shè)計(jì)總體質(zhì)量的角度全面評(píng)審數(shù)據(jù)設(shè)計(jì)、總體結(jié)構(gòu)設(shè)計(jì)、過(guò)程設(shè)計(jì)和人機(jī)界面設(shè)計(jì)Copyright Xinjun Mao軟件維護(hù)軟件維護(hù)17(3) 編碼階

7、段的復(fù)審 強(qiáng)調(diào)編碼風(fēng)格和內(nèi)部文檔(4) 階段性測(cè)試 必要的預(yù)防性維護(hù)(5) 軟件維護(hù)活動(dòng)完成之際也要進(jìn)行復(fù)審Copyright Xinjun Mao軟件維護(hù)軟件維護(hù)181.軟件維護(hù)的分類2.軟件維護(hù)過(guò)程3.軟件的可維護(hù)性4.維護(hù)活動(dòng)5.維護(hù)的副作用6.逆向工程和重構(gòu)工程Copyright Xinjun Mao軟件維護(hù)軟件維護(hù)19n“抓著誰(shuí)就是誰(shuí)”不可取,好的組織模式極為重要Copyright Xinjun Mao軟件維護(hù)軟件維護(hù)20n所有的維護(hù)申請(qǐng)都應(yīng)以標(biāo)準(zhǔn)化的形式 糾正性維護(hù):記錄出錯(cuò)現(xiàn)場(chǎng)(輸入數(shù)據(jù)、出錯(cuò)信息等) 適應(yīng)性和完善性維護(hù):提供簡(jiǎn)短的修改規(guī)格說(shuō)明書 維護(hù)申請(qǐng)單將成為外部文檔,應(yīng)被視

8、為完成維護(hù)任務(wù) 的主要依據(jù)Copyright Xinjun Mao軟件維護(hù)軟件維護(hù)21n確認(rèn)用戶的維護(hù)請(qǐng)求n按關(guān)鍵程度將每一維護(hù)任務(wù)在任務(wù)隊(duì)列中排隊(duì)n對(duì)隊(duì)首的維護(hù)任務(wù)開展工作n狀況復(fù)審Copyright Xinjun Mao軟件維護(hù)軟件維護(hù)22n 記錄維護(hù)活動(dòng)過(guò)程中的各種信息n目的: 估算維護(hù)技術(shù)的有效性 估算維護(hù)技術(shù)的實(shí)際成本Copyright Xinjun Mao軟件維護(hù)軟件維護(hù)23n度量和統(tǒng)計(jì)維護(hù)數(shù)據(jù) 軟件每次運(yùn)行的平均失效次數(shù) 各類維護(hù)的成本 維護(hù)階段增刪一個(gè)語(yǔ)句所花費(fèi)的人時(shí)數(shù) 各類維護(hù)的百分比Copyright Xinjun Mao軟件維護(hù)軟件維護(hù)241.軟件維護(hù)的分類2.軟件維護(hù)過(guò)

9、程3.軟件的可維護(hù)性4.維護(hù)活動(dòng)5.維護(hù)的副作用6.逆向工程和重構(gòu)工程Copyright Xinjun Mao軟件維護(hù)軟件維護(hù)25n改動(dòng) - 新的錯(cuò)誤n維護(hù)的副作用是指由于維護(hù)或者在維護(hù)過(guò)程中其他一些不期望的行為引入的錯(cuò)誤 代碼副作用: 如修改或者刪除程序、修改或者刪除語(yǔ)句標(biāo)號(hào)、修改邏輯符號(hào)等等。慎重,可通過(guò)回歸測(cè)試發(fā)現(xiàn) 數(shù)據(jù)副作用: 因修改信息結(jié)構(gòu)而帶來(lái)的不良后果,如局部和全局?jǐn)?shù)據(jù)的再定義,記錄或者文件格式的再定義等 文檔副作用: 由于在設(shè)計(jì)文檔中未能準(zhǔn)確反映軟件修改情況而帶來(lái)的不良后果 Copyright Xinjun Mao軟件維護(hù)軟件維護(hù)261.軟件維護(hù)的分類2.軟件維護(hù)過(guò)程3.軟件的

10、可維護(hù)性4.維護(hù)活動(dòng)5.維護(hù)的副作用6.逆向工程和重構(gòu)工程Copyright Xinjun Mao軟件維護(hù)軟件維護(hù)27n逆向工程和重構(gòu)工程是預(yù)防性維護(hù)采用的主要技術(shù)n逆向工程:分析已有程序,尋求比源代碼更高級(jí)的抽象形式;或者在軟件生命周期中,將某種形式的描述轉(zhuǎn)換為更高抽象形式描述的活動(dòng)n重構(gòu):在同一抽象級(jí)別上的轉(zhuǎn)換系統(tǒng)的描述形式n設(shè)計(jì)恢復(fù):借助工具從已有程序中抽象出有關(guān)數(shù)據(jù)設(shè)計(jì)、總體結(jié)構(gòu)設(shè)計(jì)和過(guò)程設(shè)計(jì)的信息n重構(gòu)工程:在逆向工程所獲得信息的基礎(chǔ)上修改或者重構(gòu)已有的系統(tǒng),產(chǎn)生系統(tǒng)一個(gè)新版本的過(guò)程Copyright Xinjun Mao軟件維護(hù)軟件維護(hù)28Copyright Xinjun Mao軟件維護(hù)軟件維護(hù)291.軟件維護(hù)的分類2.軟件維

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論