




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1第7章軟件維護主要內(nèi)容7.1軟件維護的定義7.2軟件維護的特點7.3軟件維護過程7.4軟件的可維護性7.5預防性維護7.6軟件再工程過程23第八章軟件維護7.1軟件維護的定義軟件維護
----就是在軟件已經(jīng)交付使用之后,為保證軟件在相當長的時期能夠正常運作所進行的軟件活動。
維護的類型有四種:
改正性維護適應(yīng)性維護擴充與完善性維護預防性維護4改正性維護---CorrectiveMaintenance在軟件交付使用后,因開發(fā)時測試的不徹底、不完全,必然會有部分隱藏的錯誤遺留到運行階段。這些隱藏下來的錯誤在某些特定的使用環(huán)境下就會暴露出來。為了識別和糾正軟件錯誤、改正軟件性能上的缺陷、排除實施中的誤使用,所進行的診斷和改正錯誤的過程就叫做改正性維護。5適應(yīng)性維護
---AdaptiveMaintenance
在使用過程中,外部環(huán)境(新的硬、軟件配置)
數(shù)據(jù)環(huán)境(數(shù)據(jù)庫、數(shù)據(jù)格式、數(shù)據(jù)輸入/輸出方式、數(shù)據(jù)存儲介質(zhì))可能發(fā)生變化。為使軟件適應(yīng)這種變化,而去修改軟件的過程就叫做適應(yīng)性維護。
6擴充與完善性維護---PerfectiveMaintenance
在軟件的使用過程中,用戶往往會對軟件提出新的功能與性能要求。為了滿足這些要求,需要修改或再開發(fā)軟件,以擴充軟件功能、增強軟件性能、改進加工效率、提高軟件的可維護性。這種情況下進行的維護活動叫做擴充與完善性維護。7預防性維護---PreventiveMaintenance預防性維護是為了提高軟件的可維護性、可靠性等,為以后進一步改進軟件打下良好基礎(chǔ)。預防性維護定義為:采用先進的軟件工程方法對需要維護的軟件或軟件中的某一部分(重新)進行設(shè)計、編制和測試。8各種維護所占比例:其它維護4%適應(yīng)性維護18%~25%改正性維護
17%~
21%擴充與完善性維護50%~60%1.維護過程存在的問題多1)理解別人寫的程序通常非常困難,而且困難程度隨著軟件配置成分的減少而迅速增加。2)需要維護的軟件往往沒有合格的文檔,或者文檔資料顯著不足。3)當要求對軟件進行維護時,不能指望由開發(fā)人員給我們仔細說明軟件或開發(fā)人員已經(jīng)不在附近了。4)絕大多數(shù)軟件在設(shè)計時沒有考慮將來的修改。5)軟件維護不是一項吸引人的工作,形成這種觀念很大程度上是因為維護工作經(jīng)常遭受挫折。7.2軟件維護的特點
2.維護的代價高昂
在過去的幾十年中,軟件維護的費用穩(wěn)步上升。軟件維護成本是軟件開發(fā)成本的四倍左右。維護費用只不過是軟件維護的最明顯的代價,但還有一些無形的代價:
可用的資源必須供維護任務(wù)使用,以致耽誤甚至喪失了開發(fā)的良機;
當看來合理的有關(guān)改錯或修改的要求不能及時滿足時將引起用戶不滿;由于維護時的改動,在軟件中引入了潛伏的錯誤,從而降低了軟件的質(zhì)量;當必須把軟件工程師調(diào)去從事維護工作時,將在開發(fā)過程中造成混亂;生產(chǎn)率大幅度下降。3、遠程維護是現(xiàn)代軟件維護的新途徑通信和網(wǎng)絡(luò)技術(shù)的發(fā)展為軟件的維護提供了便捷的方式,軟件使用中會出現(xiàn)各種各樣的問題,其中許多問題可以通過電話、E-mail、在線交談和視頻指導等方式加以解決。114.結(jié)構(gòu)化維護與非結(jié)構(gòu)化維護差別巨大非結(jié)構(gòu)化維護:維護軟件時,如果沒有一個完整的軟件配置存在,甚至只有程序代碼,那么維護人員只能進行非結(jié)構(gòu)化維護。非結(jié)構(gòu)化維護需要付出很大代價,這種維護方式是沒有使用良好定義的方法學開發(fā)出來的軟件的必然結(jié)果。
非結(jié)構(gòu)化維護步驟分析用戶需求;代碼評價;評價反饋;重新編碼;復查;交付使用。13結(jié)構(gòu)化維護結(jié)構(gòu)化維護:維護軟件時,如果有一個完整的軟件配置存在,那么維護人員可以進行結(jié)構(gòu)化維護。有了軟件的完整配置并不能保證維護中沒有問題,但是確實能減少精力的浪費并且能提高維護的總體質(zhì)量。14結(jié)構(gòu)化維護的步驟確定軟件結(jié)構(gòu)特點;性能特點分析;接口特點分析;估計改動帶來的影響;計劃實施途徑;修改設(shè)計并對所做的修改仔細復查;編寫相應(yīng)的源程序;回歸測試;交付使用155、影響軟件維護的因素系統(tǒng)的規(guī)模系統(tǒng)的年齡系統(tǒng)的結(jié)構(gòu)系統(tǒng)的開發(fā)方法16177.3軟件維護過程維護過程本質(zhì)上是修改和壓縮了的軟件定義和開發(fā)過程,而且事實上遠在提出一項維護要求之前,與軟件維護有關(guān)的工作已經(jīng)開始了。為了有效地進行軟件維護,應(yīng)事先就開始做組織工作。
首先建立維護的機構(gòu)
申明提出維護申請報告的過程及評價的過程
為每一個維護申請規(guī)定標準的處理步驟
建立維護活動的記錄保管,并規(guī)定復審的標準181、維護機構(gòu)除了較大的軟件開發(fā)公司外,通常在軟件維護工作方面,并不保持一個正式的組織機構(gòu)。雖然不要求建立一個正式的維護機構(gòu),但是在開發(fā)部門確立一個非正式的維護機構(gòu)則是非常必要的。19每個維護要求都通過維護管理員轉(zhuǎn)交給相應(yīng)的系統(tǒng)管理員去評價(系統(tǒng)管理員是被指定去熟悉一小部分產(chǎn)品程序的技術(shù)人員)。系統(tǒng)管理員對維護任務(wù)做出評價之后,由變化授權(quán)人決定應(yīng)該進行的活動。202.維護報告應(yīng)該用標準化的格式表達所有軟件維護申請(要求)。維護申請報告或稱軟件問題報告,由申請維護的用戶填寫。用戶必須完整地說明產(chǎn)生錯誤的情況,包括輸入數(shù)據(jù)、錯誤清單以及其它有關(guān)材料。如果申請的是適應(yīng)性維護或完善性維護,用戶必須提出一份修改說明書,列出所有希望的修改。21維護申請報告將由維護管理員和系統(tǒng)管理員來研究處理。他們應(yīng)相應(yīng)地做出軟件修改報告,指明:所需修改變動的性質(zhì);申請修改的優(yōu)先級;為滿足某個維護申請報告,所需的工作量預計修改后的狀況.軟件修改報告應(yīng)提交給變化授權(quán)人(修改負責人),經(jīng)批準后才能開始進一步安排維護工作。3、維護的事件流用戶維護人員安排改正性維護確認維護類型維護實施評價優(yōu)先級進行問題分析復審評價錯誤嚴重程度進行問題分析確定更改要求維護要求完善性適應(yīng)性將安排好的工作量列入計劃低高糾錯性嚴重不嚴重將改正錯誤列入計劃人員安排人員安排交付使用的軟件理解分析程序安排計劃修改程序測試程序或或或或軟件維護的工作流程圖修改過的軟件23盡管維護申請的類型不同,但都要進行同樣的技術(shù)工作。修改軟件需求說明修改軟件設(shè)計設(shè)計評審對源程序做必要的修改單元測試集成測試(回歸測試)
確認測試軟件配置評審等。24
在每次軟件維護任務(wù)完成后進行情況評審,對以下問題做一總結(jié):
(1)
在目前情況下,設(shè)計、編碼、測試中的哪一方面可以改進?
(2)
哪些維護資源應(yīng)該有但沒有?
(3)
工作中主要的或次要的障礙是什么?
(4)
從維護申請的類型來看是否應(yīng)當有預防性維護?
情況評審對將來的維護工作如何進行會產(chǎn)生重要的影響。254、維護檔案記錄①程序標識;②源語句數(shù);③機器指令條數(shù);④使用的程序設(shè)計語言;⑤程序安裝的日期;⑥自從安裝以來程序運行的次數(shù);⑦自從安裝以來程序失效的次數(shù);⑧程序變動的層次和標識;⑨因程序變動而增加的源語句數(shù);⑽因程序變動而刪除的源語句數(shù);⑾每個改動耗費的人時數(shù);⑿程序改動的日期;⒀軟件工程師的名字;⒁維護要求表的標識;⒂維護類型;⒃維護開始和完成的日期;⒄累計用于維護的人時數(shù);⒅與完成的維護相聯(lián)系的純效益。265、維護評價評價維護活動比較困難,因為缺乏可靠的數(shù)據(jù)。如果維護的檔案記錄做得比較好,可以得出一些維護“性能”方面的度量值。
(1)每次程序運行平均失效的次數(shù);(2)用于每一類維護活動的總?cè)藭r數(shù);(3)平均每個程序、每種語言、每種維護類型所做的程序變動數(shù);(4)維護過程中增加或刪除一個源語句平均花費的人時數(shù);(5)維護每種語言平均花費的人時數(shù);(6)一張維護要求表的平均周轉(zhuǎn)時間;(7)不同維護類型所占的百分比。根據(jù)對維護工作定量度量的結(jié)果,可以做出關(guān)于開發(fā)技術(shù)、語言選擇、維護工作量規(guī)劃、資源分配及其他許多方面的決定,而且可以利用這樣的數(shù)據(jù)去分析評價維護任務(wù)。277.4軟件的可維護性許多軟件的維護十分困難,原因在于這些軟件的文檔不全、質(zhì)量差、開發(fā)過程不注意采用好的方法,忽視程序設(shè)計風格等。軟件可維護性是指維護人員理解、改正、改動或改進軟件的難易程度。287.4.1決定軟件可維護性的因素1.可理解性2.可測試性3.可修改性4.可移植性
5.可重用性
297.4.2文檔文檔是影響軟件可維護性的決定因素。往往文檔比程序代碼更重要。軟件系統(tǒng)的文檔可以分為用戶文檔和系統(tǒng)文檔兩類。
----用戶文檔主要描述系統(tǒng)功能和使用方法,并不關(guān)心這些功能是怎樣實現(xiàn)的;
----系統(tǒng)文檔描述系統(tǒng)設(shè)計、實現(xiàn)和測試等各方面的內(nèi)容。30軟件文檔應(yīng)該滿足下述要求:(1)必須描述如何使用這個系統(tǒng),沒有這種描述時即使是最簡單的系統(tǒng)也無法使用;(2)必須描述怎樣安裝和管理這個系統(tǒng);(3)必須描述系統(tǒng)需求和設(shè)計;(4)必須描述系統(tǒng)的實現(xiàn)和測試,以便使系統(tǒng)成為可維護的。311.用戶文檔用戶文檔是用戶了解系統(tǒng)的第一步,它應(yīng)該能使用戶獲得對系統(tǒng)的準確的初步印象。文檔的結(jié)構(gòu)方式應(yīng)該使用戶能夠方便地根據(jù)需要閱讀有關(guān)的內(nèi)容。用戶文檔至少應(yīng)該包括下述5方面的內(nèi)容:(1)功能描述;(2)安裝文檔;(3)使用手冊;(4)參考手冊;(5)操作員指南(如果需要有系統(tǒng)操作員的話)。
322.系統(tǒng)文檔
----所謂系統(tǒng)文檔指從問題定義、需求說明到驗收測試計劃這樣一系列和系統(tǒng)實現(xiàn)有關(guān)的文檔。
----描述系統(tǒng)設(shè)計、實現(xiàn)和測試的文檔對于理解程序和維護程序來說是極端重要的。
----和用戶文檔類似,系統(tǒng)文檔的結(jié)構(gòu)也應(yīng)該能把讀者從對系統(tǒng)概貌的了解,引導到對系統(tǒng)每個方面每個特點的更形式化更具體的認識。337.4.3可維護性復審在軟件工程過程的每一個階段都應(yīng)該考慮并努力提高軟件的可維護性,在每個階段結(jié)束前的技術(shù)審查和管理復審中,應(yīng)該著重對可維護性進行復審。34在完成了每項維護工作之后,都應(yīng)該對軟件維護本身進行仔細認真的復審。
---維護應(yīng)該針對整個軟件配置,不應(yīng)該只修改源程序代碼。當對源程序代碼的修改沒有反映在設(shè)計文檔或用戶手冊中時,就會產(chǎn)生嚴重的后果。
---每當對數(shù)據(jù)、軟件結(jié)構(gòu)、模塊過程或任何其他有關(guān)的軟件特點做了改動時,必須立即修改相應(yīng)的技術(shù)文檔。不能準確反映軟件當前狀態(tài)的設(shè)計文檔可能比完全沒有文檔更壞。
---用戶通常根據(jù)描述軟件特點和使用方法的用戶文檔來使用、評價軟件。如果對軟件的可執(zhí)行部分的修改沒有及時反映在用戶文檔中,則必然會使用戶因為受挫折而產(chǎn)生不滿。357.5預防性維護預防性維護方法是由Miller提出來的,他把這種方法定義為:“把今天的方法學應(yīng)用到昨天的系統(tǒng)上,以支持明天的需求?!遍_發(fā)和維護者不應(yīng)等待用戶的維護申請,在條件具備時應(yīng)該主動地進行預防性維護。預防性維護對象:預計若干年內(nèi)將繼續(xù)使用的程序當今正成功使用的程序最近的將來要進行大修改和完善的程序再工程是一個重構(gòu)活動(類比重建一所房子)開始重建前,首先檢查一下房子。確定它是否確實需要重建?在拆掉并重建房子前,確定其結(jié)構(gòu)是否牢固。若結(jié)構(gòu)良好,則可能是“改造”。在開始重建前,確保你已經(jīng)了解房子最初是如何建造的。(墻內(nèi)部,了解布線、管道以及內(nèi)部結(jié)構(gòu)。)如果開始重建,應(yīng)該使用最現(xiàn)代的,耐久的材料。如果決定重建,一定要采用嚴格的方式,使用現(xiàn)在及將來都將獲得高質(zhì)量的做法。7.6軟件再工程過程(SoftwareReengineering)
377.6軟件再工程過程(SoftwareReengineering)
軟件再工程過程模型軟件再工程是一類軟件工程活動,是一個工程過程,它將逆向工程、
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 火鍋餐飲行業(yè)2025年火鍋餐飲市場競爭力研究報告
- 智能家居系統(tǒng)集成項目在2025年智能家居租賃市場的應(yīng)用可行性分析
- 老齡化趨勢下2025年老年長期照護服務(wù)模式與社區(qū)養(yǎng)老機構(gòu)服務(wù)模式創(chuàng)新報告
- 食品添加劑在食品色澤改善中的安全性評估與合規(guī)性分析報告
- 2025年元宇宙社交平臺界面設(shè)計創(chuàng)新與實踐案例分析報告
- 醫(yī)療行業(yè)大數(shù)據(jù)隱私保護在2025年醫(yī)療數(shù)據(jù)安全風險評估與控制策略中的應(yīng)用報告
- 有機食品市場細分領(lǐng)域投資機會與風險評估報告
- 2025年醫(yī)藥企業(yè)研發(fā)外包(CRO)與臨床試驗國際化合作報告001
- 2025年國際教育交流項目學生跨文化心理調(diào)適與心理健康研究報告
- 2025年北京市燕山區(qū)七下英語期中達標檢測試題含答案
- 國開(山東)地域文化(本)形成性考核1-3答案
- 厚皮甜瓜設(shè)施栽培技術(shù)規(guī)程
- 駐足思考瞬間整理思路并有力表達完整版
- 成都市青羊區(qū)2023年數(shù)學四下期末教學質(zhì)量檢測試題含解析
- TSGR0003-2023年《簡單壓力容器安全技術(shù)監(jiān)察規(guī)程》
- 2023年山東濟南市婦幼保健院招考聘用勞務(wù)派遣人員筆試題庫含答案解析
- 2023年考研英語大綱樣題
- 廣州市預拌混凝土企業(yè)名單及分布圖
- 駕照體檢表通用
- 【企業(yè)薪酬管理研究國內(nèi)外文獻綜述4400字】
- 2023年新改版蘇教版五年級下冊科學全冊精編知識點(附問答題總結(jié))
評論
0/150
提交評論