軟體維護是指軟體系統交付使用以後,為了改正錯誤或滿足新的需要而修改軟體的過程;
軟體維護的原因或者說驅動力:
在執行中發現軟體錯誤和設計缺陷,這些錯誤和缺陷在測試階段未能發現;
需要改進設計,以便增強軟體的功能,提高軟體的效能;
要求已經執行的軟體能夠適應特定的硬體,軟體,外部裝置和通訊裝置等的工作環境,
或者是要求適應已變動的資料或檔案;
為使投入執行的軟體與其他相關的程式有良好的介面,以利於協同工作;
為使執行軟體的應用範圍得到必要的擴充;
軟體維護與硬體維護的區別:
硬體維護是替換已經損壞的零部件,糾正缺陷,加強設計和保養;
軟體維護不僅可以改正原來設計中的錯誤或不當之處,而且還可以增強軟體功能,
提高軟體效能;
軟體維護工作處於軟體宣告週期的最後階段,佔
67%的生命期;
所以我們原來覺得軟體測試是軟體宣告週期的最後階段的想法是錯誤的;
而且我們認為軟體的編寫將佔據大量的生命週期的想法也是錯誤的;
維護的種類
維護的步驟與方法
維護方法:
1,基本工作: a)
檢查使用者需求說明書,對使用者原來的需求做到心中有數; b)
同使用者和開發人員商討,明確維護的型別; c)
檢查程式和相應的文件; d)
確定程式錯誤的性質與位置,或要增加功能的部分; e)
研究程式修改可行性和修改可能引起的***; f)
對改變的部分進行編碼; g)
修改相應的程式文件和程式庫 2,
改進維護方法的一些建議: a)
使用結構化程式設計技術來修改程式; b)
鼓勵維護人員與使用者和開發人員互相商討問題; c)
建立和加強程式設計和文件標準; d)
改進現有軟體的文件; e)
為檢查維護工作的質量嚴格執行維護複審; f)
提高使用者對維護工作的重視; g)
應以成批方式處理維護請求,而不是以分散的方式處理維護請求; h)
當軟體被修改後,應該特別重視重複測試和重複確認; i)
應對維護人員加強應用領域新知識和新技術的培訓,有利於搞好維護工作; 3,
理解現有系統; 4,
修改現有系統: a)
制定修改計畫; b)
按計畫修改系統 c)
控制系統修改的波動效應(如果修改乙個模組引起其他模組的改變則稱為波動效應) 5,
重新確定新的系統;
軟體系統的可維護性
軟體的可維護性是指維護人員為糾正軟體系統出現的錯誤或缺陷,以及為新的要求而理解,修改和完善軟體系統的難易程度。
簡單地說,軟體的可維護性就是軟體修改的難易程度;
決定可維護性的因素:
可理解性;
可測試性:診斷和測試系統的難易程度;
可修改性;
維護的管理
維護人員:包括開發人員和專職維護人員;
軟體維護階段的文件: 1,
軟體問題報告: a)
登記號和登記日期; b)
軟體名稱,編號,版本號; c)
開發單位名稱; d)
報告人姓名,單位,**; e)
報告時間; f)
問題**; g)
問題描述; h)
處理意見; i)
附註;
2,軟體修改報告: a)
登記號和登記日期; b)
上次修改登記號; c)
修改日期; d)
軟體名稱,編號,版本號; e)
開發單位; f)
「軟體修改申請報告「登記號和登記日期; g)
修改時的執行環境; h)
修改內容; i)
批註者姓名; j)
測試情況(測試專案,測試用例) k)
修改的影響; l)
修改時的資源消耗(人工數,計算機時數); m)
附註;
n)修改者和審核者姓名;
軟體工程 軟體維護
軟體的維護階段,是軟體成型過程中的最後一步,其實我們所使用軟體的不同的版本都是維護過程中出現的,軟體的公升級,文件的更新等等都是建立在原材料的基礎上進行進一步步的優化,更改的!軟體的維護在佔軟體生存期的比例非常的大,因此十分重要!如下圖,軟體維護分為以下的幾種,軟體維護在軟體生存期中占用的比例為70...
軟體工程 軟體維護
前言 軟體維護相當於建築後期的維護 一 維護的型別 如下圖,軟體維護分為以下的幾種,軟體維護在軟體生存期中占用的比例為70.8 它是整個生存期中消耗資金人力最多的環節。1 改正維護 測試為檢錯出錯 改正性維護是指改正在系統開發系統開發階段已發生而系統測試階段尚未發現的錯誤。這方面的維護工作量要佔整個...
軟體工程 軟體維護
軟體工程 軟體維護 軟體維護的必要性 1 軟體維護能夠改正錯誤。2 軟體維護能夠改善設計。3 軟體維護能夠實現軟體的改進。4 軟體維護能夠與其他系統進行互動。5 軟體維護能夠為使用不同的硬體 軟體 系統的新效能以及通訊裝置等而對軟體進行改進。6 軟體維護能夠完成遺留程式的移植。7 軟體退出使用。維護...