軟件工程第八章 軟件維護(hù)_第1頁
軟件工程第八章 軟件維護(hù)_第2頁
軟件工程第八章 軟件維護(hù)_第3頁
軟件工程第八章 軟件維護(hù)_第4頁
軟件工程第八章 軟件維護(hù)_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第八章軟件維護(hù)軟件維護(hù)的概念可維護(hù)性軟件再工程1軟件維護(hù)的概念在軟件運(yùn)行/維護(hù)階段對軟件產(chǎn)品進(jìn)行的修改就是所謂的維護(hù)。維護(hù)的類型有三種:改正性維護(hù)適應(yīng)性維護(hù)完善性維護(hù)此外,為提高軟件產(chǎn)品的可維護(hù)性,還需要進(jìn)行預(yù)防性維護(hù)。21.改正性維護(hù)在軟件交付使用后,因開發(fā)時測試的不徹底、不完全,必然會有部分隱藏的錯誤遺留到運(yùn)行階段。這些隱藏下來的錯誤在某些特定的使用環(huán)境下就會暴露出來。為了識別和糾正軟件錯誤、改正軟件性能上的缺陷、排除實(shí)施中的誤使用,應(yīng)當(dāng)進(jìn)行的診斷和改正錯誤的過程就叫做改正性維護(hù)。32.適應(yīng)性維護(hù)在使用過程中,外部環(huán)境(新的硬、軟件配置)

數(shù)據(jù)環(huán)境(數(shù)據(jù)庫、數(shù)據(jù)格式、數(shù)據(jù)輸入/輸出方式、數(shù)據(jù)存儲介質(zhì))可能發(fā)生變化。為使軟件適應(yīng)這種變化,而去修改軟件的過程就叫做適應(yīng)性維護(hù)。43.完善性維護(hù)在軟件的使用過程中,用戶往往會對軟件提出新的功能與性能要求。為了滿足這些要求,需要修改或再開發(fā)軟件,以擴(kuò)充軟件功能、增強(qiáng)軟件性能、改進(jìn)加工效率、提高軟件的可維護(hù)性。這種情況下進(jìn)行的維護(hù)活動叫做完善性維護(hù)。54.預(yù)防性維護(hù)預(yù)防性維護(hù)是為了提高軟件的可維護(hù)性、可靠性等,為以后進(jìn)一步改進(jìn)軟件打下良好基礎(chǔ)。預(yù)防性維護(hù)定義為:采用先進(jìn)的軟件工程方法對需要維護(hù)的軟件或軟件中的某一部分(重新)進(jìn)行設(shè)計(jì)、編制和測試。6實(shí)踐表明,在幾種維護(hù)活動中,完善性維護(hù)所占的比重最大。即大部分維護(hù)工作是改變和加強(qiáng)軟件,而不是糾錯。完善性維護(hù)不一定是救火式的緊急維修,而可以是有計(jì)劃、有預(yù)謀的一種再開發(fā)活動。事實(shí)證明,來自用戶的要求擴(kuò)充、加強(qiáng)軟件功能、性能的維護(hù)活動約占整個維護(hù)工作的50%。因此,在整個軟件維護(hù)階段所花費(fèi)的全部工作量中,完善性維護(hù)占了幾乎一半的工作量。

7維護(hù)在軟件生

存期所占比例維護(hù)工作量70%開發(fā)工作量30%適應(yīng)性維護(hù)25%改正性維護(hù)20%完善性維護(hù)50%其他維護(hù)5%三類維護(hù)占總維護(hù)比例8軟件維護(hù)活動所花費(fèi)的工作占整個生存期工作量的70%以上,這是由于在漫長的軟件運(yùn)行過程中需要不斷對軟件進(jìn)行修改,以改正新發(fā)現(xiàn)的錯誤、適應(yīng)新的環(huán)境和用戶新的要求,這些修改需要花費(fèi)很多精力和時間,而且有時會引入新的錯誤。9維護(hù)成本有形的軟件維護(hù)成本是花費(fèi)了多少錢,無形的維護(hù)成本有更大的影響。一些合理的修復(fù)或修改請求不能及時安排,使得客戶不滿意;變更的結(jié)果引入新的故障,使得軟件整體質(zhì)量下降;把軟件人員抽調(diào)到維護(hù)工作中,干擾了軟件開發(fā)工作。10軟件維護(hù)的代價是降低了生產(chǎn)率,在做老程序的維護(hù)時非常明顯。例如,開發(fā)每一行源代碼耗資25美元,維護(hù)每一行源代碼需要耗資1000美元。維護(hù)工作量包括生產(chǎn)性活動(如分析和評價、設(shè)計(jì)修改和實(shí)現(xiàn))和“輪轉(zhuǎn)”活動(如力圖理解代碼在做什么、試圖判明數(shù)據(jù)結(jié)構(gòu)、接口特性、性能界限等)。11維護(hù)工作量的模型M是維護(hù)中消耗的總工作量p是上面描述的生產(chǎn)性工作量K是一個經(jīng)驗(yàn)常數(shù)c是因缺乏好的設(shè)計(jì)和文檔而導(dǎo)致復(fù)雜性的度量d是對軟件熟悉程度的度量。12模型指明,如果使用了不好的軟件開發(fā)方法(未按軟件工程要求做),原來參加開發(fā)的人員或小組不能參加維護(hù),則工作量(及成本)將按指數(shù)級增加。13軟件可維護(hù)性許多軟件的維護(hù)十分困難,原因在于這些軟件的文檔不全、質(zhì)量差、開發(fā)過程不注意采用好的方法,忽視程序設(shè)計(jì)風(fēng)格等。許多維護(hù)要求并不是因?yàn)槌绦蛑谐鲥e而提出的,而是為適應(yīng)環(huán)境變化或需求變化而提出的。為了使得軟件能夠易于維護(hù),必須考慮使軟件具有可維護(hù)性。14軟件可維護(hù)性的定義軟件可維護(hù)性是指糾正軟件系統(tǒng)出現(xiàn)的錯誤和缺陷,以及為滿足新的要求進(jìn)行修改、擴(kuò)充或壓縮的容易程度??删S護(hù)性、可使用性、可靠性是衡量軟件質(zhì)量的主要質(zhì)量特性,也是用戶十分關(guān)心的幾個方面。軟件的可維護(hù)性是軟件開發(fā)階段各個時期的關(guān)鍵目標(biāo)。15目前廣泛使用的是用如下三個特性來衡量程序的可維護(hù)性??衫斫庑钥蓽y試性可修改性這些質(zhì)量要求要滲透到而各開發(fā)階段的各個步驟當(dāng)中。因此,為使每一個質(zhì)量特性都達(dá)到預(yù)定的要求,需要在軟件開發(fā)的各個階段采取相應(yīng)的措施加以保證。16軟件再工程,也叫做軟件再生,是一類軟件工程活動,它能夠使我們:增進(jìn)對軟件的理解準(zhǔn)備或直接提高軟件的可維護(hù)性、復(fù)用性或演化性軟件再工程17軟件視圖軟件視圖是軟件的一種表達(dá)形式。視圖信息是視圖中出現(xiàn)的特定信息,或是根據(jù)視圖中信息分解而得到的知識構(gòu)成的信息庫。軟件視圖的實(shí)例包括:規(guī)格說明、數(shù)據(jù)流圖(DFD)、源程序、度量值、靜態(tài)分析報告、表明軟件性能的測試數(shù)據(jù)等。視圖編輯器可用于支持加入、瀏覽和變更視圖信息。18視圖編輯器程序結(jié)構(gòu)圖Petri網(wǎng)視圖編輯器ERA圖視圖編輯器信息庫視圖編輯器程序流程圖規(guī)格說明視

溫馨提示

  • 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論