周艷萍
(云南經(jīng)濟管理職業(yè)學院,云南 昆明 650106)
近年來,我國的計算機網(wǎng)絡技術、電子信息技術以及通信技術等得到了前所未有的發(fā)展,各種各樣的計算機軟件開始以全面滲透的方式進入到人類社會生活以及工作中的每一個角落,為人民生活水平的提升、經(jīng)濟技術的高速發(fā)展等帶來了巨大的貢獻。
但是隨著社會生活方式、人類工作習慣以及生產(chǎn)方式的不斷轉變,不同類型的需求層出不窮,生活工作需求的多樣化、多層次化以及創(chuàng)新化等,均使得社會生活中原有的計算機軟件難以適應高速變化的需求。在需求高速變化、計算機軟件技術相對滯后的背景之下,計算機軟件設計者如何通過動態(tài)的眼光和方式對原有的計算機軟件進行優(yōu)化完善,從而使之能夠繼續(xù)服務于當前人們的生產(chǎn)生活需求是當務之急。但是計算機軟件設計者和開發(fā)者在對各種類型的軟件進行優(yōu)化完善時會遇到不同程度的挑戰(zhàn),比如軟件語言的邏輯性問題過于晦澀,難以被清楚地理解,因此缺乏可維護性。可見,在諸多的情況之下計算機軟件設計者需要對原有的系統(tǒng)進行重新設計開發(fā),這不僅僅是一種資源的極大浪費,也使得軟件開發(fā)成本大為增加。由此可見,提升計算機軟件的可維護性和易修改性,不僅對計算機軟件的使用壽命和適用范圍有著非常重要的影響,同時也對計算機軟件設計者和開發(fā)者有著極其重要的影響。
經(jīng)過多年的計算機軟件開發(fā)經(jīng)驗和快速發(fā)展,我國在計算機軟件開發(fā)設計中已經(jīng)開始密切關注到軟件的可維護性和易修改性,并取得了一定的突破性進展,一直到現(xiàn)在,已經(jīng)出現(xiàn)了不少對計算機軟件的可維護性進行評估的綜合衡量方法,但是如何對計算機軟件的可維護性進行定量的評判還是非常困難的,至今為止還沒有一個較為科學便捷的方法對計算機軟件的可維護性進行可靠評估的定量方法。根據(jù)從事多年計算機軟件開發(fā)設計和優(yōu)化維護等方面的工作經(jīng)驗,可以總結出如下幾種方法對計算機軟件的可維護性進行較為可靠的衡量。
一是,質量檢查表,可以用來對計算機軟件測試程序中的一些質量特性的問題進行檢查,并綜合成為一個問題清單,為計算機軟件的可維護性評價提供一個良好的參考依據(jù);二是,質量測試,質量測試指的是對計算機軟件質量是否符合相關規(guī)定進行相應的檢測,為了確保計算機軟件的使用效能等方面達到一定標準而進行的檢測,由此可以將此作為一個定量分析評價的程序之一;三是質量標準,考慮到不同類型的計算機軟件在質量特性方面可能各有不同,甚至會存在相互抵觸的現(xiàn)象,因此可以考慮使用不同的質量標準對不同類型的計算機軟件的可維護性進行分類評估。
在計算機軟件開發(fā)設計的過程之中,計算機軟件的可維護性從一定程度來說指的是當這款計算機軟件被投入使用之后,可以隨著時間的變化針對現(xiàn)實需求的變動進行一些必要的修改,而不是難以對軟件的部分功能進行優(yōu)化調整。但是,在對該計算機軟件進行優(yōu)化修改的時候首先需要對該軟件有著深度的理解和認識,只有在此基礎之上才能較為成功地對軟件進行有效的優(yōu)化調整,然后經(jīng)過嚴謹科學的運行測試、合理的調試,以此確保修改后的計算機軟件能夠正常運行。根據(jù)多年的計算機軟件開發(fā)和維護的經(jīng)驗,可以知道在進行計算機軟件開發(fā)設計時,影響到計算機軟件設計過程中的可維護性關鍵因素主要有如下幾點:
一是計算機軟件的可理解性。這里的可理解性主要是針對軟件設計者外來者來說的,外來者在對原有計算機軟件進行修改完善時,首先需要對軟件的基本功能設置、結構設置、各個接口情況、軟件內部設計以及軟件開發(fā)語言等有一個深入的理解,同時軟件模塊和文檔設計的精確性、合理性以及設計語言的多選擇性等均對計算機軟件的可理解性有著直接的影響,對計算機軟件的可維護性有著至關重要的影響作用。
二是計算機軟件的可測試性。一款計算機軟件是否容易被理解,將直接影響到計算機軟件在修改過程中能否被迅速的診斷和測試難易度,科學合理的計算機軟件設計結構以及軟件文檔將會對計算機軟件的可測試性和有效診斷有著重要的促進作用,可以將計算機軟件測試診斷的難度降到最低;與此同時,需要根據(jù)軟件自身以及軟件需求的實際情況選擇合適的方法運用合適的測試診斷工具,對整個計算機軟件的測試進行規(guī)范化處理,從而為后期的修改奠定良好的準備工作。
三是計算機軟件的可修改性。計算機軟件的設計原理和啟發(fā)規(guī)則與其修改的難易程度有一定的關系,內聚、局部化、耦合、作用域與控制域關系等都對計算機軟件的可修改性有著一定作用的影響。
四是計算機軟件的可重用性。可重用性指的是某一事物在不經(jīng)過任何修改的情況之下能否較好的適應其它的環(huán)境并得到靈活應用。在利用可重用性特質來開發(fā)的計算機軟件往往可以通過如下途徑來提升可維護性。(1)在通常情況之下,每一款計算機軟件需要在不斷地實踐使用中做出適應需求的修改完善,計算機設計者在開發(fā)軟件時需要對軟件的結構設計做出嚴密的分析測量,然后在計算機軟件投入使用之后也需要進行一系列不完善的修改,使得軟件在進行重用時能夠及時糾正錯誤和不合理的設計結構,如此進行下去,可以使得計算機軟件在長時間的使用過程中變得越來越完美,出現(xiàn)錯誤的情況也會越來越少,可見重視計算機的可重用性可以有效降低其維護時間周期。(2)可重用性強其容易修改的計算機軟件在被應用到新情況之下,其對環(huán)境的適用性和可維護性能也會較高。
從當前我國計算機軟件技術的運用情況來看,在計算機軟件開發(fā)設計過程中可以通過如下幾個途徑優(yōu)化軟件的可維護性:
1.構建清晰的計算機軟件質量標準及目標。通常情況之下計算機軟件的功能往往是用戶與計算機硬件之間實現(xiàn)有效溝通的中介橋梁,計算機在運行過程之中離不開軟件方面的支持。從綜合的角度來看計算機軟件進行運行時需要切實滿足消費者的需求,是將信息資源進行有效處理的資源數(shù)據(jù)庫。只有具有高效率、可測試修改、適用性強且理解性強的軟件系統(tǒng)才能夠具備較高的可維護性,如果要確保計算機軟件同時具備上述標準,那么需要付出的代價也是非常巨大的,由于計算機軟件在各種質量特性上具備相互影響的關系,這種關系可以是相互促進的也可以是相互抵觸的,這種關系的存在對于計算機軟件開發(fā)設計來說,由于不同的用戶需求對可維護性的要求也不盡相同,環(huán)境和需求的不同使得計算機在可維護性方面的重要性也有一定的差異 。
2.保障計算機軟件有效的質量審查。計算機軟件設計的最大功能在于能夠滿足不同用戶的各類需求,將計算機軟件質量審查制度引入可以有效實現(xiàn)計算機軟件的質量有效性,這是一項非常關鍵的技術所在。除此之外,計算機軟件質量審查制度還可以在軟件開發(fā)維護的過程中及時檢測到軟件的質量問題,一旦軟件發(fā)生微小的偏差都能被及時地測試出來,并得到有效的糾正,從而將計算機軟件的維護性成本控制在最低的范圍,并有效延長軟件的使用周期。為了最大效度的提升計算機軟件的可維護性,可以從如下幾個方面展開審查工作。一是在計算機軟件檢測點實行復審,在計算機軟件設計時就應該將軟件的質量需求考慮在內,其在軟件研發(fā)的不同時間節(jié)點都應該對其進行持續(xù)性的檢測,通常來說,對計算機軟件的檢測內容主要包括了質量要求是否符合標準、開發(fā)成果是否與預期相結合;二是,對計算機軟件的開發(fā)成果進行驗收檢查,這是在計算機軟件進行交付時的最終審查,從一定程度上來說這是對計算機軟件的每一個部分進行精密嚴謹?shù)臋z測,并從軟件可維護性的角度提出了相應的驗收條件與驗收標準等;最后是對計算機軟件包進行詳細的檢查,由于計算機軟件包具備一定法定的專利權,這就在一定程度上決定了賣主不能將軟件的源代碼、程序方面的相關文檔等信息資源提供給軟件用戶,因此就需要對計算機軟件包進行用戶手冊、培訓教程、軟件特性說明等方面的程序檢查。
3.盡可能選擇維護性較高的軟件設計語言。隨著計算機科學的高速發(fā)展和計算機語言的多樣化發(fā)展,因此在計算機軟件程序設計過程中的語言選擇將對軟件的可維護性產(chǎn)生至關重要的影響,不適當語言選擇將給軟件的可維護性帶來巨大的困境,高級語言往往比低級語言更容易貫通和理解,其能夠較為簡單地檢測出軟件在運行和完善過程中出現(xiàn)的各種問題,從而使得計算機軟件能夠具備較高的可維護性。
綜上所述,隨著我國經(jīng)濟的高速發(fā)展和計算機軟件技術的突飛猛進,計算機軟件在我國社會生活以及工作中得到了廣泛的應用,且有著不可忽視的重要作用。信息技術的高速發(fā)展對計算機軟件的發(fā)展完善提出了更高的要求,因此計算機軟件在設計開發(fā)過程中需要充分考慮需求變化以及自身技術方面的問題,使得軟件在開發(fā)設計過程中的可維護性能不斷升級,最大效度地降低軟件的開發(fā)維護成本,提升計算機軟件的使用效率和生命周期,為我國經(jīng)濟社會的高速健康發(fā)展做出更大的貢獻。
[1]王陸,張忠能.基于改善系統(tǒng)可維護性的軟件設計優(yōu)化與實現(xiàn)[J].計算機工程,2004,(12):53-54.
[2]張創(chuàng).計算機軟件的可維護性的實踐探索[J].電子技術與軟件工程,2013,(6):158-159.
[3]劉錚.大規(guī)模軟件可信性度量分析原理及其方法的研究[D].東北大學,2010.
[4]錢欽虎,張永新.計算機軟件的可維護性問題[J].硅谷,2013,(1):63-64.
[5]巢燕娟.計算機軟件可維護性方法探討[J].計算機光盤軟件與應用,2012,(1):111-113.