《軟件工程維護》ppt課件

《軟件工程維護》ppt課件

ID:40151041

大?。?10.05 KB

頁數(shù):56頁

時間:2019-07-23

《軟件工程維護》ppt課件_第1頁
《軟件工程維護》ppt課件_第2頁
《軟件工程維護》ppt課件_第3頁
《軟件工程維護》ppt課件_第4頁
《軟件工程維護》ppt課件_第5頁
資源描述:

《《軟件工程維護》ppt課件》由會員上傳分享,免費在線閱讀,更多相關內(nèi)容在教育資源-天天文庫

1、軟件工程 第八章維護第八章維護8.1軟件維護的定義8.2軟件維護的特點8.3軟件維護過程8.4軟件的可維護性(自學)8.5提高可維護性的方法(補充自學)8.6預防性維護(自學)8.7軟件再工程過程(自學)8.1軟件維護的定義在軟件產(chǎn)品被開發(fā)出來并交付用戶使用之后,就進入了軟件的運行維護階段:這個階段是軟件生命周期的最后一個階段,其基本任務是保證軟件在一個相當長的時期能夠正常運行。軟件維護需要的工作量非常大,平均說來,大型軟件的維護成本高達開發(fā)的4倍左右。目前國外許多軟件開發(fā)組織把60%以上的人力用于維護已有的軟件,而且隨著

2、軟件產(chǎn)品數(shù)量增多和使用壽命延長,這個百分比還在持續(xù)上升。軟件工程的主要目標就是提高軟件的可維護性,減少軟件維護所需要的工作量,降低軟件系統(tǒng)的總成本。1.軟件維護的定義:在軟件運行/維護階段對軟件產(chǎn)品進行的修改就是所謂的維護。2.改正性維護:在軟件交付使用后,因開發(fā)時測試的不徹底、不完全,必然會有部分隱藏的錯誤遺留到運行階段。這些隱藏下來的錯誤在某些特定的使用環(huán)境下就會暴露出來。為了識別和糾正軟件錯誤、改正軟件性能上的缺陷、排除實施中的誤使用,應當進行的診斷和改正錯誤的過程就叫做改正性維護。3.適應性維護:在使用過程中,外部

3、環(huán)境(新的硬、軟件配置)和數(shù)據(jù)環(huán)境(數(shù)據(jù)庫、數(shù)據(jù)格式、數(shù)據(jù)輸入/輸出方式、數(shù)據(jù)存儲介質(zhì))可能發(fā)生變化。為使軟件適應這種變化,而去修改軟件的過程。8.1軟件維護的定義4.完善性維護:軟件的使用過程中,用戶往往會對軟件提出新的功能與性能要求。進而需要修改或再開發(fā)軟件,以擴充軟件功能、增強軟件性能、改進加工效率、提高軟件的可維護性的維護活動實踐表明,完善性維護所占的比重最大。即大部分維護工作是改變和加強軟件,而不是糾錯。完善性維護占了幾乎一半的工作量。完善性維護不一定是救火式的緊急維修,而可以是有計劃、有預謀的一種再開發(fā)活動。事

4、實證明,來自用戶要求擴充、加強軟件功能、性能的維護活動約占整個維護工作的50%。5.預防性維護:采用先進的軟件工程方法對需要維護的軟件或軟件中的某一部分(重新)進行設計、編制和測試。是為了提高軟件的可維護性、可靠性等,為以后進一步改進軟件打下良好基礎。8.1軟件維護的定義軟件維護活動所花費的工作占整個生存期工作量的70%以上,這是由于在漫長的軟件運行過程中需要不斷對軟件進行修改,以改正新發(fā)現(xiàn)的錯誤、適應新的環(huán)境和用戶新的要求,這些修改需要花費很多精力和時間,而且有時會引入新的錯誤。8.1軟件維護的定義1.影響維護工作量的因

5、素在軟件的維護過程中,需要花費大量的工作量,從而直接影響了軟件維護的成本。系統(tǒng)大小:系統(tǒng)越大,理解掌握起來越困難,所執(zhí)行功能越復雜。因而需要更多的維護工作量。程序設計語言:語言的功能越強,程序的模塊化和結(jié)構化程度越高,程序的可讀性越好。系統(tǒng)年齡:數(shù)據(jù)庫技術的應用程度先進的軟件開發(fā)技術其它:應用的類型、數(shù)學模型、任務的難度、開關與標記、IF嵌套深度、索引或下標數(shù)等對維護工作量都有影響。8.2軟件維護的特點2.結(jié)構化維護與非結(jié)構化維護差別巨大非結(jié)構化維護的代價很高(浪費精力并且遭受挫折),這種維護方式是沒有使用軟件工程方法學出

6、來的軟件的必然結(jié)果。以完整的軟件配置為基礎的結(jié)構化維護,是在軟件開發(fā)過程中應用軟件過程方法學的結(jié)果。雖然有了軟件的完整配置并不能保證維護時沒有問題,但是確實能減少精力的浪費并且可以提高維護的總體質(zhì)量在過去的幾十年中,軟件維護的費用穩(wěn)步上升。1970年用于維護已有軟件的費用只占軟件總預算的35%~40%,1980年上升為40%~60%,1990年上升為70%~80%。8.2軟件維護的特點3、維護成本(維護的代價高昂)有形的軟件維護成本是花費了多少錢,無形的維護成本有更大的影響。不能及時安排,使得客戶不滿意;變更的結(jié)果引入新的

7、故障,使軟件整體質(zhì)量下降把軟件人員抽調(diào)到維護工作中,干擾了軟件開發(fā)軟件維護的代價是降低了生產(chǎn)率,在做老程序的維護時非常明顯。例如,開發(fā)每一行源代碼耗資25美元,維護每一行源代碼需要耗資1000美元。維護工作量包括生產(chǎn)性活動(如分析和評價、設計修改和實現(xiàn))和“輪轉(zhuǎn)”活動(如力圖理解代碼在做什么、試圖判明數(shù)據(jù)結(jié)構、接口特性、性能界限等)。8.2軟件維護的特點維護工作量的模型M是維護中消耗的總工作量p是上面描述的生產(chǎn)性工作量K是一個經(jīng)驗常數(shù)c是因缺乏好的設計和文檔而導致復雜性的度量d是對軟件熟悉程度的度量。模型指明,如果使用了不

8、好的軟件開發(fā)方法(未按軟件工程要求做),原來參加開發(fā)的人員或小組不能參加維護,則工作量(及成本)將按指數(shù)級增加。8.2軟件維護的特點4.維護的問題很多與軟件維護有關的絕大部分問題,都可歸因于軟件開發(fā)的方法有缺點。在軟件生命周期的頭兩個時期沒有嚴格而又科學的管理和規(guī)劃,幾乎必然會導致在最后階段出現(xiàn)問題。和

當前文檔最多預覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學公式或PPT動畫的文件,查看預覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。