![軟件工程(第6版)-第10章-軟件維護(hù)_第1頁](http://file4.renrendoc.com/view/6863580e70b56fec1307325b48b4311c/6863580e70b56fec1307325b48b4311c1.gif)
![軟件工程(第6版)-第10章-軟件維護(hù)_第2頁](http://file4.renrendoc.com/view/6863580e70b56fec1307325b48b4311c/6863580e70b56fec1307325b48b4311c2.gif)
![軟件工程(第6版)-第10章-軟件維護(hù)_第3頁](http://file4.renrendoc.com/view/6863580e70b56fec1307325b48b4311c/6863580e70b56fec1307325b48b4311c3.gif)
![軟件工程(第6版)-第10章-軟件維護(hù)_第4頁](http://file4.renrendoc.com/view/6863580e70b56fec1307325b48b4311c/6863580e70b56fec1307325b48b4311c4.gif)
![軟件工程(第6版)-第10章-軟件維護(hù)_第5頁](http://file4.renrendoc.com/view/6863580e70b56fec1307325b48b4311c/6863580e70b56fec1307325b48b4311c5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
軟件維護(hù)第十章本章要點(diǎn)
理解軟件維護(hù)的類型和特點(diǎn);
掌握軟件維護(hù)的一般過程;
理解軟件的可維護(hù)性及提高可維護(hù)性的方法;
理解軟件維護(hù)的副作用;
了解軟件的再生工程。軟件工程(第6版)-第10章-軟件維護(hù)全文共22頁,當(dāng)前為第1頁。10.1軟件維護(hù)的類型與策略第10章軟件維護(hù)是指已完成開發(fā)工作,并交付用戶使用以后,對軟件產(chǎn)品所進(jìn)行的一些軟件工程活動(dòng)。軟件維護(hù)是軟件生存周期中時(shí)間最長的階段,也是花費(fèi)精力和費(fèi)用最多的階段。實(shí)踐表明,在開發(fā)階段結(jié)束后,在軟件運(yùn)行過程中仍然有必要對軟件進(jìn)行變動(dòng),主要原因如下:(1)改正在運(yùn)行中新發(fā)現(xiàn)的錯(cuò)誤和設(shè)計(jì)上的缺陷,這些錯(cuò)誤和缺陷在開發(fā)后期的測試階段未被發(fā)現(xiàn)。(2)改進(jìn)設(shè)計(jì),以便增強(qiáng)軟件的功能,提高軟件的性能。(3)要求已運(yùn)行的軟件能適應(yīng)特定的硬件、軟件、外部設(shè)備和通信設(shè)備等的工作環(huán)境,或者要求適應(yīng)已變動(dòng)的數(shù)據(jù)或文件等。(4)為使已運(yùn)行的軟件與其他相關(guān)的軟件有良好的接口,以利于協(xié)同工作。(5)為擴(kuò)充軟件的應(yīng)用范圍。10.1.1軟件維護(hù)工作的必要性軟件工程(第6版)-第10章-軟件維護(hù)全文共22頁,當(dāng)前為第2頁。10.1軟件維護(hù)的類型與策略第10章1.改正性維護(hù)改正性維護(hù)是改正在系統(tǒng)開發(fā)階段已發(fā)生的而系統(tǒng)測試階段尚未發(fā)現(xiàn)的錯(cuò)誤。2.適應(yīng)性維護(hù)為適應(yīng)軟件運(yùn)行環(huán)境的變化而進(jìn)行的維護(hù)稱適應(yīng)性維護(hù)。3.完善性維護(hù)為擴(kuò)充軟件的功能或用戶提出的新需求而進(jìn)行的維護(hù)稱完善性維護(hù)。4.預(yù)防性維護(hù)為改進(jìn)軟件效率、可靠性、可維修性而進(jìn)行的維護(hù)稱預(yù)防性維護(hù)。10.1.2軟件維護(hù)的類型軟件工程(第6版)-第10章-軟件維護(hù)全文共22頁,當(dāng)前為第3頁。10.1軟件維護(hù)的類型與策略第10章1.改正性維護(hù)使用新技術(shù)可產(chǎn)生更可靠的代碼,從而大大提高軟件的可靠性,并減少改正性維護(hù)的需要。這些新技術(shù)包括:數(shù)據(jù)庫管理系統(tǒng);軟件開發(fā)環(huán)境;程序自動(dòng)生成系統(tǒng);高級(第四代)語言。10.1.3軟件維護(hù)的策略軟件工程(第6版)-第10章-軟件維護(hù)全文共22頁,當(dāng)前為第4頁。10.1軟件維護(hù)的類型與策略第10章2.適應(yīng)性維護(hù)這一類維護(hù)不可避免,但可以控制。(1)在配置管理時(shí),把硬件、操作系統(tǒng)和其他相關(guān)環(huán)境因素的可能變化考慮在內(nèi),可以減少某些適應(yīng)性維護(hù)的工作量。(2)把與硬件、操作系統(tǒng)以及其他外圍設(shè)備有關(guān)的程序歸結(jié)到特定的程序模塊中,可把因環(huán)境變化而必須修改的程序局部于某些程序模塊中。(3)使用內(nèi)部程序列表、外部文件以及處理的例行程序包,為維護(hù)時(shí)修改程序提供方便。(4)使用面向?qū)ο蠹夹g(shù),增強(qiáng)軟件系統(tǒng)的穩(wěn)定性,并使之易于修改和移植。10.1.3軟件維護(hù)的策略軟件工程(第6版)-第10章-軟件維護(hù)全文共22頁,當(dāng)前為第5頁。10.1軟件維護(hù)的類型與策略第10章3.完善性維護(hù)利用前兩類維護(hù)中列舉的方法,也可以減少這一類維護(hù)。特別是使用數(shù)據(jù)庫管理系統(tǒng)、程序生成器、應(yīng)用軟件包等可以減少維護(hù)工作量。此外,建立軟件系統(tǒng)的原型并在開發(fā)實(shí)際系統(tǒng)之前提供給用戶,用戶通過運(yùn)行原型,進(jìn)一步完善他們的功能要求,可以減少以后完善性維護(hù)的需要。10.1.3軟件維護(hù)的策略軟件工程(第6版)-第10章-軟件維護(hù)全文共22頁,當(dāng)前為第6頁。10.2軟件維護(hù)的特點(diǎn)第10章1.非結(jié)構(gòu)化維護(hù)和結(jié)構(gòu)化維護(hù)軟件的開發(fā)過程對軟件的維護(hù)有較大影響。如果不采用軟件工程方法開發(fā)軟件,則軟件只有程序而無文檔,維護(hù)工作非常困難,這是非結(jié)構(gòu)化維護(hù)。如果采用軟件工程方法開發(fā)軟件,則各階段都有相應(yīng)的文檔,容易進(jìn)行維護(hù)工作,這是結(jié)構(gòu)化維護(hù)。(1)非結(jié)構(gòu)化維護(hù)因?yàn)橹挥性闯绦?,沒有文檔或文檔很少,維護(hù)活動(dòng)只能從閱讀、理解和分析源程序代碼開始,而這是相當(dāng)困難的。(2)結(jié)構(gòu)化維護(hù)運(yùn)用軟件工程思想開發(fā)的軟件具有各個(gè)階段的文檔,這對于理解、掌握軟件功能、性能、軟件結(jié)構(gòu)、數(shù)據(jù)結(jié)構(gòu)、系統(tǒng)接口和設(shè)計(jì)約束有很大作用。軟件工程(第6版)-第10章-軟件維護(hù)全文共22頁,當(dāng)前為第7頁。10.2軟件維護(hù)的特點(diǎn)第10章2.軟件維護(hù)的困難性軟件維護(hù)的困難性主要是由于軟件需求分析和開發(fā)方法的缺陷造成的。在軟件生存周期中的前兩個(gè)時(shí)期沒有采用嚴(yán)格而科學(xué)的管理和規(guī)劃,必然會(huì)引起軟件運(yùn)行時(shí)的維護(hù)困難。這種困難表現(xiàn)在如下幾方面:(1)難以讀懂他人的程序。(2)無文檔或文檔不一致。(3)軟件開發(fā)和軟件維護(hù)在人員和時(shí)間上的差異(4)維護(hù)工作毫無吸引力,缺乏成就感。(5)難以追蹤軟件的建立過程。(6)通過多種版本的發(fā)行,難以追蹤軟件版本的演化過程。(7)軟件在設(shè)計(jì)時(shí)未考慮修改需要。軟件工程(第6版)-第10章-軟件維護(hù)全文共22頁,當(dāng)前為第8頁。10.3軟件維護(hù)的過程與組織第10章1.維護(hù)機(jī)構(gòu)維護(hù)機(jī)構(gòu)通常以維護(hù)小組形式出現(xiàn)。維護(hù)小組分為臨時(shí)維護(hù)小組和長期維護(hù)小組。臨時(shí)維護(hù)小組是非正式機(jī)構(gòu),它執(zhí)行一些特殊的或臨時(shí)的維護(hù)任務(wù);對于長期運(yùn)行的復(fù)雜系統(tǒng)一般需要一個(gè)長期穩(wěn)定的維護(hù)小組。但除了較大的軟件開發(fā)公司外,通常在軟件維護(hù)方面,并不需要建立一個(gè)正式的組織機(jī)構(gòu)。維護(hù)工作往往是在沒有計(jì)劃的情況下進(jìn)行的。軟件工程(第6版)-第10章-軟件維護(hù)全文共22頁,當(dāng)前為第9頁。10.3軟件維護(hù)的過程與組織第10章維護(hù)機(jī)構(gòu)中的人員與職責(zé)如下:(1)維護(hù)負(fù)責(zé)人。(2)維護(hù)管理員。(3)系統(tǒng)監(jiān)督員。(4)配置管理員。(5)維護(hù)人員。軟件工程(第6版)-第10章-軟件維護(hù)全文共22頁,當(dāng)前為第10頁。10.3軟件維護(hù)的過程與組織第10章2.制定維護(hù)文檔所有軟件維護(hù)申請都應(yīng)按規(guī)定的方式提出。軟件維護(hù)組織通常提供維護(hù)申請報(bào)告(MaintenanceRequestReport,MRR)或稱軟件問題報(bào)告,由申請維護(hù)的用戶填寫。如果發(fā)現(xiàn)了軟件的錯(cuò)誤,用戶必須完整地說明產(chǎn)生錯(cuò)誤的情況,包括輸入數(shù)據(jù)、錯(cuò)誤清單以及其他有關(guān)材料。如果維護(hù)申請屬于適應(yīng)性維護(hù)或完善性維護(hù),用戶必須提出一份簡要的維護(hù)規(guī)格說明書,列出所有希望的修改。維護(hù)申請報(bào)告將由維護(hù)管理員和系統(tǒng)監(jiān)督員來研究處理。軟件工程(第6版)-第10章-軟件維護(hù)全文共22頁,當(dāng)前為第11頁。10.3軟件維護(hù)的過程與組織第10章3.維護(hù)流程軟件工程(第6版)-第10章-軟件維護(hù)全文共22頁,當(dāng)前為第12頁。10.3軟件維護(hù)的過程與組織第10章4.維護(hù)記錄在維護(hù)階段需要記錄一些與維護(hù)有關(guān)的信息,這些信息可作為估計(jì)維護(hù)有效程度,確定軟件產(chǎn)品的質(zhì)量,估算維護(hù)費(fèi)用等工作的原始依據(jù)。5.維護(hù)評價(jià)根據(jù)維護(hù)文檔記錄,可以對維護(hù)工作做一些度量。軟件工程(第6版)-第10章-軟件維護(hù)全文共22頁,當(dāng)前為第13頁。10.4軟件的可維護(hù)性第10章1.可理解性指維護(hù)人員通過閱讀程序代碼和相關(guān)文檔,了解程序的結(jié)構(gòu)、功能及其如何運(yùn)行的難易程度。2.可測試性表明預(yù)建立的測試準(zhǔn)則對軟件可進(jìn)行測試的程度。3.可修改性指軟件容易修改,而不至于產(chǎn)生副作用的程度。4.可移植性指一個(gè)軟件系統(tǒng)從一個(gè)計(jì)算機(jī)環(huán)境移植到另一個(gè)計(jì)算機(jī)環(huán)境的容易程度。10.4.1決定軟件可維護(hù)性的因素軟件工程(第6版)-第10章-軟件維護(hù)全文共22頁,當(dāng)前為第14頁。10.4軟件的可維護(hù)性第10章1.明確軟件的質(zhì)量目標(biāo)和優(yōu)先級如果要程序滿足可維護(hù)性的七種特性的全部要求,那是不現(xiàn)實(shí)的。因?yàn)?,有些特性是相互促進(jìn)的,而有些特性則是相互矛盾的。每一種質(zhì)量特性的相對重要性不但因維護(hù)類型而不同,而且因程序的用途和計(jì)算環(huán)境而不同。因此,在提出質(zhì)量目標(biāo)的同時(shí)還必須規(guī)定它們的優(yōu)先級,這樣有助于提高軟件的質(zhì)量,減少軟件生存周期的費(fèi)用。2.使用先進(jìn)的軟件開發(fā)技術(shù)和工具為了改善軟件可維護(hù)性,應(yīng)及時(shí)學(xué)習(xí)并盡量使用能提高軟件質(zhì)量的技術(shù)和工具。例如,模塊化技術(shù)、結(jié)構(gòu)化程序設(shè)計(jì)技術(shù)、面向?qū)ο蟮认冗M(jìn)的軟件開發(fā)技術(shù)。10.4.2提高軟件可維護(hù)性的方法軟件工程(第6版)-第10章-軟件維護(hù)全文共22頁,當(dāng)前為第15頁。10.4軟件的可維護(hù)性第10章3.質(zhì)量保證審查要提高軟件可維護(hù)性,必須要進(jìn)行質(zhì)量保證審查。質(zhì)量保證審查可分為四種類型。(1)在檢查點(diǎn)檢查。(2)驗(yàn)收檢查。(3)周期性維護(hù)檢查。(4)對軟件包檢查。10.4.2提高軟件可維護(hù)性的方法軟件工程(第6版)-第10章-軟件維護(hù)全文共22頁,當(dāng)前為第16頁。10.4軟件的可維護(hù)性第10章4.選擇可維護(hù)的程序設(shè)計(jì)語言編碼所使用的程序設(shè)計(jì)語言對軟件的可維護(hù)性影響很大。低級語言很難理解,因此也很難維護(hù)。高級語言比低級語言容易理解,有更好的可維護(hù)性。某些高級語言可能比另一些更容易理解。尤其是第四代語言更容易理解,更容易編程,因此更容易維護(hù)。5.改進(jìn)程序的文檔程序文檔對提高程序的可理解性有著重要作用。規(guī)范、完整、一致的文檔是建立可維護(hù)性的基本條件。在軟件生存周期的每個(gè)階段的技術(shù)復(fù)審和管理復(fù)審中,都應(yīng)對文檔進(jìn)行檢查,對可維護(hù)性進(jìn)行復(fù)審。10.4.2提高軟件可維護(hù)性的方法軟件工程(第6版)-第10章-軟件維護(hù)全文共22頁,當(dāng)前為第17頁。10.5軟件維護(hù)的副作用第10章1.代碼副作用最危險(xiǎn)的副作用是修改軟件源程序而產(chǎn)生的。在修改源代碼時(shí),最容易引入下列錯(cuò)誤:(1)刪除或修改子程序、語句標(biāo)號(LABEL)和標(biāo)識符。(2)改變程序的執(zhí)行效率。(3)改變程序代碼的時(shí)序關(guān)系、改變占用存儲(chǔ)的大小。(4)修改邏輯運(yùn)算符。(5)修改文件的打開或關(guān)閉操作。(6)由設(shè)計(jì)變動(dòng)引起的代碼修改。(7)為邊界條件的邏輯測試而做出的修改。軟件工程(第6版)-第10章-軟件維護(hù)全文共22頁,當(dāng)前為第18頁。10.5軟件維護(hù)的副作用第10章2.?dāng)?shù)據(jù)副作用在修改數(shù)據(jù)結(jié)構(gòu)時(shí),有可能造成軟件設(shè)計(jì)與數(shù)據(jù)結(jié)構(gòu)的不匹配,因而導(dǎo)致軟件錯(cuò)誤。數(shù)據(jù)副作用是指修改軟件信息結(jié)構(gòu)導(dǎo)致的不良后果,主要有以下幾種:(1)局部變量或全局變量的重新定義,記錄或文件格式的重新定義。(2)增加或減少一個(gè)數(shù)組或其他復(fù)雜數(shù)據(jù)結(jié)構(gòu)的大小。(3)修改全局或公共數(shù)據(jù)。(4)重新初始化控制標(biāo)志或指針。(5)重新排列輸入/輸出或函數(shù)(子程序)的參數(shù)。軟件工程(第6版)-第10章-軟件維護(hù)全文共22頁,當(dāng)前為第19頁。10.5軟件維護(hù)的副作用第10章3.文檔副作用在軟件維護(hù)過程中應(yīng)統(tǒng)一考慮整個(gè)軟件配置,必須對相關(guān)技術(shù)文檔進(jìn)行相應(yīng)修改,不僅僅是源代碼。否則會(huì)導(dǎo)致文檔與程序不匹配,使文檔不能反映軟件當(dāng)前的狀態(tài),這比沒有文檔更麻煩。一次維護(hù)完成后,在再次交付軟件之前應(yīng)仔細(xì)復(fù)審整個(gè)軟件配置,以減少文檔副作用。事實(shí)上,某些維護(hù)申請的提出只是由于用戶文檔不夠清楚。這時(shí),只需對文檔維護(hù)即可,并不需要修改軟件設(shè)計(jì)或源程序。為了控制因修改而引起的副作用,要做到:按模塊把修改分組;自頂向下的安排被修改模塊的順序;每次只修改一個(gè)模塊;對每個(gè)修改了的模塊,在安排修改下一個(gè)模塊前,要確定這個(gè)修改的副作用,可使用交叉引用表、存儲(chǔ)映像表、執(zhí)行流程跟蹤等。軟件工程(第6版)-第10章-軟件維護(hù)全文共22頁,當(dāng)前為第20頁。10.6軟件逆向工程與再生工程第10章逆向工程與再生工程是目前預(yù)防性維護(hù)采用的主要技術(shù)。逆向工程術(shù)語源于硬件制造業(yè),相互競爭的公司為了了解對方設(shè)計(jì)和制造工藝的機(jī)密,在得不到設(shè)計(jì)和制造說明書的情況下,通過拆卸實(shí)物獲取信息。軟件的逆向工程也基本相似,不過通?!敖馄省钡牟粌H是競爭對手的程序,而且還包括本公司多年前的產(chǎn)品,此時(shí)得不到設(shè)計(jì)“機(jī)密”的主要障礙是缺乏文檔。因此,所謂軟件的逆向工程就是對已有的程序,尋求比源代碼更高級的抽象表達(dá)形式。一般認(rèn)為,凡是在軟件生存周期內(nèi),將軟件某種形式的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030年變色玻璃幕墻廣告牌企業(yè)制定與實(shí)施新質(zhì)生產(chǎn)力戰(zhàn)略研究報(bào)告
- 2025-2030年塑木兒童游樂設(shè)施行業(yè)深度調(diào)研及發(fā)展戰(zhàn)略咨詢報(bào)告
- 2025-2030年新型鉆井液添加劑企業(yè)制定與實(shí)施新質(zhì)生產(chǎn)力戰(zhàn)略研究報(bào)告
- 2025-2030年原產(chǎn)地核桃直供平臺(tái)行業(yè)跨境出海戰(zhàn)略研究報(bào)告
- 二零二五年度蘇州房產(chǎn)買賣稅費(fèi)結(jié)算合同
- 塑料家用器具成型工藝考核試卷
- 干部休養(yǎng)所養(yǎng)老服務(wù)質(zhì)量提升措施與效果考核試卷
- 國際商務(wù)代理文化差異適應(yīng)考核試卷
- 辦事處環(huán)保合作協(xié)議(2025年度)管理規(guī)范
- 康復(fù)輔具維護(hù)與保養(yǎng)知識考核試卷
- 托育園老師培訓(xùn)
- 人教版八年級英語上冊Unit1-10完形填空閱讀理解專項(xiàng)訓(xùn)練
- 脊柱外科護(hù)理進(jìn)修心得
- 4.1中國特色社會(huì)主義進(jìn)入新時(shí)代+課件-2024-2025學(xué)年高中政治統(tǒng)編版必修一中國特色社會(huì)主義
- 護(hù)理工作中的人文關(guān)懷
- 完整液壓系統(tǒng)課件
- 2024年山東省青島市中考道德與法治試題卷(含答案及解析)
- 生產(chǎn)制造工藝流程規(guī)范與作業(yè)指導(dǎo)書
- 班級建設(shè)方案中等職業(yè)學(xué)校班主任能力大賽
- T-TJSG 001-2024 天津市社會(huì)組織社會(huì)工作專業(yè)人員薪酬指導(dǎo)方案
- 芯片設(shè)計(jì)基礎(chǔ)知識題庫100道及答案(完整版)
評論
0/150
提交評論