當前位置:學問谷 >

校園範例 >考試 >

計算機考試四級軟件維護的複習綱要

計算機考試四級軟件維護的複習綱要

【提要】計算機等級四級信息 : 全國計算機考試四級複習綱要:軟件維護

計算機考試四級軟件維護的複習綱要

軟件維護階段覆蓋了從軟件交付使用到軟件被淘汰為止的整個時期,它是在軟件交付使用後,為了改正軟件中隱藏的錯誤,或者為了使軟件適應新的環境,或者為了擴充和完善軟件的功能或性能而修改軟件的過程。一個軟件的開發時間可能需要一兩年,但它的使用時間可能要幾年或幾十年,而整個使用期都可能需要進行軟件維護,所以軟件維護的代價是很大的,而且維護的代價還在逐年上升,據1994年Software Engineering Encyclopedia記載,在整個軟件生存週期所花費的代價中,20世紀80年代末用於軟件維護的代價約為75%到90年代初為90%。因此,如何提高軟件維護的效率、降低維護的代價成為十分重要的問題。

  (一) 軟件維護的分類

根據引用軟件維護的原因,軟件維護通常可分成改正性維護、適應性維護、完善性維護、預防性維護。

  1.改正性維護

由於程序正確性證明尚未得到圓滿的解決,軟件測試又不可能找出程序中的所有錯誤,因此,在交付使用的軟件中都可能隱藏着某些尚未被發現的錯誤,而這些錯誤在某種使用環境下會暴露出來。改正性維護就是在使用過程中發現了隱藏的錯誤後,為了診斷和改正這些隱藏錯誤而修改軟件的活動。

  2.適應性維護

由於計算機的發展非常迅速,新的機型、新的操作系統、新的軟件系統不斷地湧現,為了適應計算機的飛速發展,可能要更正在運行的軟件的運行環境,如新的機型、數據庫管理系統等。適應性維護就是為了適應變化了的環境而修改軟件的活動。

  3.完善性維護

用户在使用軟件的過程中,隨着業務的發展,常常希望擴充原有軟件的功能,或者希望改進原有的功能或性能,以滿足用户的新要求,完善性維護就是為了擴充或完善原有軟件的功能或性能而修改軟件的活動。

  4.預防性維護

軟件維護活動主要是上述三類維護,另有一類維護稱為預防性維護,它是為了提高軟件的可維護性和可靠性,為未來的進一步改進打下基礎而修改軟件的活動。據有關資料統計,在整個軟件維護活動中,改正性維護約佔20%,適應性維護約佔25%,完善性維護約佔50%以上,其他維護約佔4%。

  (二) 與軟件維護有關的問題

軟件維護人員通常不是該軟件的'開發人員,這給軟件維護帶來很大的困難,特別是有些軟件在開發時沒有遵循軟件開發的準則,沒有開發方法的支持,維護這樣的軟件就更困難。下面列舉一些與軟件維護有關的問題。

(1)要維護一個軟件,首先要理解它。而理解別人的程序通常是非常困難的,尤其是對軟件配置(指各種文檔)不齊的軟件,理解起來更為困難。

(2)需要維護的軟件往往缺少合格的文檔,或者文檔資料不齊,甚至沒有文檔。在軟件維護中,合格的文檔十分重要,它有助於理解被維護的軟件。合格的文檔不僅要完整正確地反映開發過程各階段的工作結果,而且應該容易理解並應程序源代碼一致。而錯誤的文檔會把對程序的理解引入歧途。

(3)在軟件維護時,不要指望得到原來開發該軟件的人員的幫助。開發人員開發完一個軟件後,往往去從事另一軟件的開發,甚至已調離開發單位。即使原先的開發人員還在,也可能因為相隔時間太久而遺忘了實現的細節。

(4)多數軟件在設計時沒有考慮今後的修改,給軟件的修改帶來困難,而且在修改軟件時容易帶來新的差錯。對那些缺乏模塊獨立性和非結構化的程序來説,更是如此。

(5)軟件維護通常不是一件吸引人的工作。從事維護工作常使維護人員感到缺乏成就感。這也嚴重影響維護工作。從而導致維護質量的不高。可以看出,上述的有些問題都與被維護的質量密切相關,所以在開發軟件時,要認真寫好各類文檔,並且應注意提高軟件的可維護性,這樣可在很大程序上緩解軟件維護的困難。

  (三) 可維護性軟件可維護性是指理解、改正、改動、改進軟件的難易程度。通常影響軟件可維護性的因素有可理解性、可測試性和可修改性。

  1.可理解性

  2.可測試性

可測試性是指測試和診斷軟件(主要指程序)中錯誤的難易程度。測試主要是發現軟件中的錯誤,而診斷錯誤的性質和出錯的位置通常是調試的任務。提高軟件可測試性的措施有:書寫詳細正確的文檔,採用良好的程序結構,使用測試工具和調試工具,保存以前的測試過程和測試用例等等。

  3.可修改性

可修改性是指修改軟件(主要指程序)的難易程度。在修改程序時經常會發生這樣的情況:修改程序中某個錯誤的同時又產生新的錯誤(由程序的修改引起的),或者在程序中增加了某個功能的同時,原先的某些功能不能正常執行。這主要是因為程序中各成分之間存在着許多聯繫,當程序中某處修改時,這個修改可能會影響到程序的其他部分。如果修改程序時稍有考慮不周,就會出現上述顧此失彼的情況。因此,如果一處修改所涉及到的範圍越少,發生上述情況的概率也越小,其可修改性也越好。在軟件設計中我們介紹的那些設計準則都是影響可修改性的因素,如信息隱蔽原則、模塊獨立、模塊間聯繫的低耦合高

內聚等等。

  (四) 軟件維護活動流程

凡是需要軟件維護,都應有一個軟件維護的申請報告。改正性維護的申請報告應完整地描述導致錯誤的環境,包括輸入數據、錯誤清單以及有關的材料。適應性維護或完善性維護的申請報告應提供一份簡短的需求説明書。維護申請書由維護管理員和系統管理員審批。並指明所需修改的性質,申請修改的優先級,所需的工作量等。維護活動的第一步是確定維護的類型,若是改正性維護,則要估計錯誤的嚴重程度,對嚴重的錯誤,則馬上分派人員執行維護任務;對不嚴重的錯誤,則可將其暫時保存,在以後適當時候再進行改正。若是適應性維護或完善性維護,則要根據其優先級來決定維護的先後次序,優先級高的維護則馬上開始;優先級低的可暫時保存,以便統籌安排。適應性維護或完善性維護的過程相當於一個小的開發過程,它同樣要經歷需求分析、設計、編碼、測試等階段。不管是哪種維護,有些工作是每種維護活動都必須做的,如在修改程序代碼的同時還要修改(如有必要)相應的需求説明文檔、設計文檔等,還要進行迴歸測試和軟件配置複審等。

  • 文章版權屬於文章作者所有,轉載請註明 https://xuewengu.com/flxy/kaoshi/94pjke.html