李振
摘要:計算機軟件在使用時需要根據(jù)市場需求不斷升級和維護,而在實踐中,軟件維護人員易受軟件基礎語言邏輯性不明確的影響,使其對軟件的理解出現(xiàn)偏差,進行不必要的全新軟件的設計與編寫,造成資源浪費,這不僅提高了軟件的使用成本,而且導致其市場價值弱化,無法進行長期利用。面對此種情況,計算機軟件開發(fā)過程中的可維護性必須得到改善。
關鍵詞:計算機;軟件開發(fā);可維護性;弊端
一、可維護性概要
1、軟件維護過程。計算機語言成為軟件為人們服務的工具,對軟件進行維護的過程主要涉及修正、測試、復查、改進等,修正是對計算機軟件中的某一個具體問題進行修改完善,測試是對整個軟件的性能進行檢測,而改進是完善軟件的某一具體功能。
2、軟件維護類型。軟件維護分為適應性維護、改正性維護和完善性維護,適應性維護是指對軟件系統(tǒng)進行維護,使其能夠適應各種復雜的環(huán)境變化。改正性維護是針對計算機軟件運行過程中出現(xiàn)的程序錯誤進行的維護,對程序錯誤進行的識別和糾正活動。完善性維護是對軟件系統(tǒng)的功能進行擴大,使其滿足消費者的需求。由于軟件維護貫穿于軟件使用的整個過程,對計算機軟件進行維護所花費的費用非常昂貴,且軟件的維護難度隨信息技術的發(fā)展而不斷增大,使其逐漸成為當今世界軟件開發(fā)的難題。
二、計算機軟件維護的不足
1、代碼修改中的不當操作。如果程序員在對計算機軟件代碼進行設計和修改中存在不當操作,導致一些很小的錯誤發(fā)生,那么整個軟件系統(tǒng)就會出現(xiàn)大的偏差。比如,程序編程員在進行程序設計時,不小心漏掉一個標識符或插入多余的符號,那么程序中的各個因素都會發(fā)生變化,其邏輯性、存儲大小等都會發(fā)生變化,整個程序呈現(xiàn)混亂狀態(tài),導致程序設計失敗。
2、數(shù)據(jù)修改中的不規(guī)范性。在對相關數(shù)據(jù)進行修改時,操作流程中的瑕疵通常會造成數(shù)據(jù)結構與程序設計不規(guī)范,匹配度低,軟件設置不流暢等多種問題的出現(xiàn)。這說明數(shù)據(jù)修改會改變軟件的整個數(shù)據(jù)結構,因而在操作中需要慎重。對于C++語言程序設計來說,容易出現(xiàn)定義變量的問題,變量又分為局部變量或全局變量,前者只是針對整個程序的一部分,因而其只需提供少量的數(shù)據(jù)服務,對于后者而言,其相關變量在代碼結構中都隸屬于一個數(shù)值,因此,在設計程序時,要注意對數(shù)值進行添加或刪除而引起的整個程序框架的變化。[2]
3、文檔修改中缺乏對應性。軟件的構建、數(shù)據(jù)流都會隨軟件文檔的變化而變化,如果要對設計方面的功能進行完善、修正,就必須修改相關文檔,而在修改文檔時要特別注意文檔和軟件數(shù)據(jù)流的對應關系,避免不必要的軟件問題。此外,在消費者的眼中,軟件即是可執(zhí)行的文檔,對軟件的修改最終都會呈現(xiàn)在文檔中,如果沒有實現(xiàn),軟件的部分功能通常都無法利用。
三、影響軟件可維護性要素
計算機軟件開發(fā)過程中的可維護性是針對此軟件中難以適應新環(huán)境的部分做出相關的升級與修正,在修正過程中,不可盲目進行更改,要在了解整個軟件的基礎上,結合科學的方法對軟件進行測試、調整、修正、升級等,以求軟件在升級后沒有故障出現(xiàn)。計算機軟件開發(fā)中可維護性的因素主要有以下幾方面:
1、可檢驗性和可校正性。計算機軟件的簡單與否直接決定著其修改時間及難易程度,進而影響軟件診斷的詳盡程度。想要使軟件測試的錯誤率降低,就必須科學的設計軟件結構,合理的進行軟件編輯。同時,要結合實踐情況,選擇合適的檢驗工具和調試模式,使測試能夠規(guī)范進行、科學運轉,為獲得良好精準的測試結果打下堅實基礎。計算機程序設計員在進行軟件開發(fā)時一般都會關注用戶潛在的需求,經過科學合理的的設計,盡可能使軟件更加完善,但也需要注意軟件設計原則,明確軟件內部各種關系,為軟件的校正提供幫助。
2、可辨別性。軟件的可辨別性是針對廣大用戶來說的,一個軟件的好壞,直接從用戶的反饋信息中體現(xiàn)出來,由于軟件程序的設計原理復雜、抽象、導致用戶難以理解軟件應用原理,更無法辨別軟件的好壞,這無疑對軟件的市場推廣造成了不利影響,此時,就必須修改原有軟件程序,修改后的程序能否使用戶辨別相關應用的功能,滿足其日益增長的需求,成為影響軟件可維護性的的重要因素。
四、軟件開發(fā)中深化可維護性的措施
1、明晰軟件開發(fā)目標。軟件開發(fā)者的工作是設計一款程序,通過這款程序,用戶能與計算機實現(xiàn)交流,任何一種計算機得以正常工作都離不開軟件的支持,軟件在計算機系統(tǒng)中進行信息分析和處理,相當于一個數(shù)據(jù)庫的功能,目的是滿足不同用戶的需求。計算機系統(tǒng)是否具有可檢驗性、可校正性和可辨別性是衡量計算機軟件開發(fā)中可維護性是否完備的條件,因此,為實現(xiàn)計算計軟件開發(fā)的后期可維護性,在設計時就要考慮到軟件開發(fā)的具體目標,增強后期維護的實效性。
2、加強質量監(jiān)測。在軟件開發(fā)中,為保證軟件的質量可進行質量監(jiān)測,質量監(jiān)測是衡量軟件質量的準則,不僅可以保證軟件開發(fā)成品的質量,而且可以強化在其投入使用后的性能。此外,進行質量監(jiān)測可以發(fā)現(xiàn)軟件內部相關組件的的質量問題,以便及時得到修正和提升,有效地避免軟件的后期維護,節(jié)約維護成本。為了使軟件擁有更長的使用壽命,在監(jiān)測工作中要注意軟件監(jiān)測的各個階段,無論是在軟件開發(fā)前期還是軟件開發(fā)中,都必須定期進行檢測,深入理解各個程序的功能,及時發(fā)現(xiàn)問題、解決問題。
3、提升軟件工具的質量。用戶使用軟件后,會對其質量進行評價,質量好壞會直接影響用戶的選擇,提高計算機軟件質量是非常有必要的。使軟件工具模塊化是提升軟件質量的有效手段,不僅能節(jié)約軟件開發(fā)過程中的資金損耗,還能提高計算機軟件的質量。模塊化即將軟件內部分成不同模塊,改變其中任意模塊不會對其他模塊產生任何影響,如果想要增加一項新的軟件功能,只需要增加一個新的模塊與之對應,不需要改變軟件其他部分。這使軟件設計開發(fā)更加簡潔,軟件程序運行效率更高,系統(tǒng)可維護性更強。
4、選取優(yōu)質維護語言。近些年,我國在信息技術開發(fā)領域取得了較大的突破,軟件開發(fā)者對計算機語言可以說是了如指掌,軟件開發(fā)中的語言選擇決定著軟件后期維護的難易程度。計算機語言中的低級語言和高級語言都難以領悟和控制,這增加了軟件維護的難度。高級語言語句貫通,其有關問題在使用中更容易被檢測,因而盡量選擇高級語言來進行軟件的開發(fā)。[3]此外,高級語言的難易程度并非一致,例如,圖形語言、查詢語言等在軟件開發(fā)中更容易進行編寫,比COBOL語言具有更多的優(yōu)越性。為了后期軟件的可維護性更易進行,軟件開發(fā)中應選擇具有優(yōu)越性的語言。
結語:計算機軟件的應用領域不斷地擴大,其更新?lián)Q代的時間也愈來愈快,這對計算機軟件的使用壽命、維護、價值體現(xiàn)產生了重大影響。因此,軟件開發(fā)者在開發(fā)軟件之前,就應考慮到軟件的可維護性,在進行軟件開發(fā)時,綜合評判軟件可維護性影響因素和不足之處,做好相關參考工作,明確軟件設計的最終目標,加大軟件監(jiān)測力度,選擇極具優(yōu)越性的維護語言,為軟件的可維護性提供充足準備,提升軟件的有效性和壽命性,提升和穩(wěn)固軟件在市場中的地位。
參考文獻:
[1]楊靜. 對計算機軟件開發(fā)過程中的可維護性分析[J]. 電子技術與軟件工程,2014,05:77.
[2]李澍. 關于計算機軟件設計過程中的可維護性探究[J]. 電子技術與軟件工程,2014,21:83.
[3]吳曉陽. 計算機軟件開發(fā)過程中的可維護性探討[J]. 才智,2015,04:326-327.