胡瑩石
摘要:在我國計算機(jī)技術(shù)高速發(fā)展的今天,各種應(yīng)用軟件不斷被研發(fā)出來,并在社會各個領(lǐng)域得到了應(yīng)用,為了能夠更好地為社會各界服務(wù),軟件工程也在不斷完善,這樣就使得軟件開發(fā)日漸復(fù)雜,創(chuàng)建出一條科學(xué)的實踐方法,保障軟件系統(tǒng)的可靠性、安全性以及可維護(hù)性顯得更加迫切。該文就已計算機(jī)軟件的可維護(hù)性進(jìn)行幾個方面的探索研究。
關(guān)鍵詞:計算機(jī)軟件;可維護(hù)性;實踐探索
中圖分類號:TP311 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2017)22-0064-02
計算機(jī)軟件是用戶與計算機(jī)之間的銜接橋梁,通過各種軟件,用戶才能夠與計算機(jī)進(jìn)行“溝通”。因此,軟件是非常重要的,也是計算機(jī)系統(tǒng)設(shè)計的根據(jù)。為了能夠為用戶提供更多的便利,使計算機(jī)整體運行效率更高,計算機(jī)系統(tǒng)設(shè)計時必須要綜合考量軟件與硬件的情況,而軟件保護(hù)技術(shù),額可以防止破解合法軟件的行為,能夠有效保護(hù)軟件中的數(shù)據(jù)。在軟件生命周期中,每個階段都需要科學(xué)的管理與技術(shù)支持,并且還需要進(jìn)行全面而嚴(yán)格的審查,落實好每一個環(huán)節(jié)的設(shè)計與開發(fā)工作,對于計算機(jī)軟件可維護(hù)性實踐探索有著非常大的意義。
1可維護(hù)性的內(nèi)涵
軟件的可維護(hù)性主要是當(dāng)軟件出現(xiàn)問題和特殊情況下,軟件的維修人員可以及時地進(jìn)行解決,全方面地對軟件系統(tǒng)進(jìn)行修改和完善,從而可以使系統(tǒng)自身不斷滿足各方面的需求。而在軟件工程的行業(yè)中,最重要的就是轉(zhuǎn)件的可維護(hù)性,他既是軟件工程未來發(fā)展的一個趨勢,也在發(fā)展過程中有著非常重要的作用。除此之外,對于軟件質(zhì)量的好壞,主要可以依據(jù)以下幾個方面來進(jìn)行評定軟件能否正常的運行嗯哼維護(hù),同時這些問題也是用戶最關(guān)注的。在對軟件實際發(fā)展的過程中,軟件維護(hù)也是非常重要的。因為給軟件維護(hù)性造成影響的原因也有很多,并且每一種因素都會使軟件的可維護(hù)性造成比較大的影響。
軟件維護(hù)階段的關(guān)鍵任務(wù)是,通過各種必要的維護(hù)活動使系統(tǒng)持久地滿足用戶的需要。通常有幾類維護(hù)活動:
1)糾錯性維護(hù):在開發(fā)過程中要生成100%可靠無誤的軟件通常是不太現(xiàn)實的,為了識別和糾正軟件錯誤、改正軟件性能上的缺陷、排除實施中的誤使用,應(yīng)當(dāng)進(jìn)行的診斷和改正錯誤的過程就叫做改正性維護(hù)。
2)適應(yīng)性維護(hù):在使用過程中,外部環(huán)境(如新的硬、軟件配置)、數(shù)據(jù)環(huán)境(如數(shù)據(jù)庫、數(shù)據(jù)格式、數(shù)據(jù)輸入/輸出力一式、數(shù)據(jù)存儲介質(zhì))可能發(fā)生變化。為使軟件適應(yīng)這種變化,而去修改軟件的過程就叫做適應(yīng)性維護(hù)。
3)完善性維護(hù)或增強(qiáng):在軟件的使用過程中,用戶往往會對軟件提出新的功能與性能要求。為了滿足這些要求,需要修改或再開發(fā)軟件,以擴(kuò)充軟件功能、增強(qiáng)軟件性能、改進(jìn)加工效率、提高軟件的可維護(hù)性。這種情況下進(jìn)行的維護(hù)叫做完善性維護(hù)。
4)預(yù)防性維護(hù)或再工程:即修改軟件,為將來的維護(hù)活動預(yù)先做準(zhǔn)備。
除此四類維護(hù)活動外,還有一些其他類型的維護(hù)活動,如:支援性維護(hù):通過提供最新用戶文檔或聯(lián)機(jī)用戶文檔,進(jìn)行適當(dāng)?shù)挠脩襞嘤?xùn)或設(shè)立專門的維護(hù)人員等力一式來減少此類維護(hù)活動。
結(jié)算機(jī)可維護(hù)性是一項長期而艱巨的任務(wù),在以上幾個方面的維護(hù)工作中,的哥層面與第二層面的維護(hù)性所占的份額最大,基本會占據(jù)總維護(hù)工作的8成左右,也就說,軟件的維護(hù)費用是非常大的,開發(fā)費用占總費用的55%-70%左右。隨著計算機(jī)技術(shù)的發(fā)展,各項軟件維護(hù)的難度也更大。
2軟件可維護(hù)性的意義
對于軟件可維護(hù)性主要分為以下幾個方面:
1)易分析性:在軟件內(nèi)部出現(xiàn)的問題和故障是否可以非常輕松的檢查出來。
2)易改動性:在軟件內(nèi)發(fā)現(xiàn)問題和故障的情況下,能夠進(jìn)行整體或者部分的改動。
3)穩(wěn)定性:在軟件內(nèi)發(fā)現(xiàn)問題和故障的情況下,在接收修理的同時是否可以承擔(dān)相應(yīng)的風(fēng)險。
4)易測試性:在發(fā)現(xiàn)軟件內(nèi)出現(xiàn)和故障的時候,在修理的同時是否可以對之前的問題進(jìn)行檢測。
以上幾個方面的屬性都是程序軟件自身想要實現(xiàn)可維護(hù)性的一個重要環(huán)節(jié),并且開發(fā)人員和維護(hù)人員也需要對程序軟件的自身有一個正確的認(rèn)識和了解,只有這樣才可以真正的滿足維護(hù)過程中的各方面需求。但是,如果軟件自身非常容易進(jìn)行修改,就會消耗大量的人力資源和經(jīng)濟(jì)成本,而且可維護(hù)性的自身意義就需要體現(xiàn)出產(chǎn)品自身的品質(zhì)。另外,軟件在進(jìn)行實際開發(fā)的階段,就需要重點對可維護(hù)性的意義進(jìn)行考慮,因為可維護(hù)性的意義和軟件自身發(fā)揮出的功能有著密不可分的聯(lián)系。
3影響軟件設(shè)計中可維護(hù)性的因素
在對軟件進(jìn)行開發(fā)和設(shè)計的過程中,最重要的就是軟件的可維護(hù)性。所以,就針對了可維護(hù)性的影響因素進(jìn)行了全方面地分析和研究。
3.1可理解性
對于外來者來說,可理解性這個因素是需要在傳統(tǒng)軟件的基礎(chǔ)上進(jìn)行完善和創(chuàng)新,而可理解性也都在軟件結(jié)構(gòu)和軟件內(nèi)部處理的復(fù)雜程度體現(xiàn)出來。在軟件自身的結(jié)構(gòu)中,軟件的模塊是否合理和軟件文檔是否明確以及軟件設(shè)計編程語言的選擇是否科學(xué)等等,都和軟件的可理解性有著密不可分的聯(lián)系,最終也會對軟件的可維護(hù)性造成很大的影響。
3.2可測試性
對于軟件理解的難易程度和軟件診斷以及測試難易的程度有著密不可分的聯(lián)系。另外,軟件診斷的測試和軟件的文檔,對于軟件設(shè)計的結(jié)構(gòu)是否合理也有著非常重要的影響,因為軟件文檔和軟件設(shè)計結(jié)構(gòu)的合理,軟件診斷測試的難度也就會相應(yīng)地降低。除此之外,在選擇測試和診斷工具以及調(diào)式方式的時候,就應(yīng)該針對軟件使用者的實際情況,來進(jìn)行比較合理的選擇,還要嚴(yán)格對軟件測試的過程進(jìn)行處理,對實際測試的過程進(jìn)行科學(xué)化的設(shè)計,將最基礎(chǔ)的工作做好。
3.3可重用性
可重用性主要指的是同一件事情,對沒有經(jīng)過修改的失誤可以在各種環(huán)境中進(jìn)行重復(fù)的試用。而對具備可重用特性的軟件開發(fā)和設(shè)計新軟件的過程中,就需要通過以下幾個方面的建議進(jìn)行提高。endprint
1)一般情況下來說,對于軟件的開發(fā)和設(shè)計,不是在設(shè)計的前期就可以做得非常完美,而是需要經(jīng)過不斷的試用和不斷的修改以及完善,才能夠在后期的時候更加完美。實際在地軟件進(jìn)行設(shè)計和開發(fā)的過程中,應(yīng)該全方面地對軟件的結(jié)構(gòu)進(jìn)行分析,當(dāng)軟件進(jìn)入試用階段的時候,也會經(jīng)常出現(xiàn)一些問題和特殊的問題,所以,就需要在這個時候?qū)ο嚓P(guān)的問題進(jìn)行分析和解決。除此之外,在重用時,就需要鎖著問題的出現(xiàn)及時地進(jìn)行解決,在設(shè)計過程中及時將問題進(jìn)行解決,就會降低后期出現(xiàn)問題的幾率。所以,只有合理對軟件的可重新進(jìn)行利用,就可以有效降低軟件后期維護(hù)的時間。
2)具備可重用性的軟件自身就具有比較好的修改性能,就可以廣泛運用這方面的軟件,這樣不僅可以提高軟件的適用性和完善性,還可以給軟件的維護(hù)帶來方便。
4計算機(jī)軟件可維護(hù)性方法
基于以上對計算機(jī)軟件可維護(hù)性內(nèi)涵、意義、影響因素的分析之后,下面對其維護(hù)方法進(jìn)行具體研究和分析:
4.1提升軟件工具模塊化和質(zhì)量技術(shù)
降低計算機(jī)開發(fā)成本,是計算軟件可維護(hù)性的關(guān)鍵,目前具體可以進(jìn)行如下操作:
首先,如果需要改變模塊功能,那么一定要在保障不會影響其他模塊的前提下進(jìn)行。
其次,如果需要添加一項功能,那么就必須要單獨進(jìn)行。
再次,在可維護(hù)性方面,最容易的就是程序測試與重復(fù)測量,通過這些測試,可以發(fā)現(xiàn)尋列錯誤,從而達(dá)到提升整體程序運行效率的目的。另外,通過結(jié)構(gòu)化程序設(shè)計,能夠有效提升可維護(hù)性,這種設(shè)計需要對更換模塊特征掌握和了解,需要考慮內(nèi)部運作的狀態(tài)。這樣既可以降低問題的發(fā)生,還可以提供一個全新的結(jié)構(gòu)化模塊,最終采用自動重建結(jié)構(gòu)和重新格式化的工具。
4.2創(chuàng)建精密的軟件品質(zhì)目標(biāo)和優(yōu)先級
提高程序自身的維護(hù)性是可以理解和修改測試的。為了可以實現(xiàn)這些目標(biāo),就需要付出比較大的成本。一些程度本身是存在互補(bǔ)性的,具體來說,包括可理解性、可測實性以及可修改性等等。但同時,一些程序質(zhì)量也會互相矛盾。比如;效率、可移植性、效率以及可變性等等。因此,不同品質(zhì)特性不同,其維護(hù)性的需求也不同,最關(guān)鍵的是必須要順應(yīng)程序的使用作用與使用環(huán)境,進(jìn)行維護(hù)。
4.3選有可維護(hù)的程序設(shè)計語言
從程序的可維護(hù)性方面來看,選擇程序設(shè)計語言造成的硬性很大,這是因為低層次的語言,是機(jī)械語言和匯編語言,就很對其進(jìn)行理解和掌握,后期的維護(hù)就會更加困難。無論是什么語言,利用程序編制出來之后,都是很難進(jìn)行理解和修改的。
4.4建立明確的質(zhì)量保證
1)在檢查點進(jìn)行檢查。為了保障軟件質(zhì)量,在進(jìn)行軟件開發(fā)的初期,不需要將質(zhì)量控制放在第一位,在每個開發(fā)階段的重點,進(jìn)行檢查點檢查,查看其是否存在質(zhì)量問題,能否滿足質(zhì)量要求,在進(jìn)行不同檢查檢測的時候,其側(cè)重點是不同的。
2)驗收檢查。驗收檢查具有一定的特殊性,它是交付使用之前最后一次檢查,也是保障軟件可維護(hù)性的最后一道關(guān)卡,因此必須要嚴(yán)格按照驗收標(biāo)準(zhǔn)和要求進(jìn)行,要完全符合維護(hù)條件。
3)周期性的維護(hù)檢查。在軟件運行的過程中,會出現(xiàn)一些錯誤,為了能夠更好地進(jìn)行糾錯,并適應(yīng)計算環(huán)境的變化,滿足用戶的各項需求,必須要進(jìn)行修改。因此就會導(dǎo)致軟件質(zhì)量下降,定期進(jìn)行硬件檢查,每月一次或者二月一次是非常必要的。周期性維護(hù)審查實際上是開發(fā)階段檢查點復(fù)查的繼續(xù),并且采用的檢查力一法、檢查內(nèi)容都是相同的。為了便于用戶進(jìn)行運行管理,適時提供維護(hù)工具以及有關(guān)信息是很重要的。維護(hù)審查的結(jié)果可以同以前的維護(hù)檢查的結(jié)果、以前的驗收檢查的結(jié)果和檢查點檢查的結(jié)果相比較,任何一種改變都表明在軟件質(zhì)量上或其他類型的問題上可能起了變化。對于改變的原因應(yīng)當(dāng)進(jìn)行分析,例如,如果使用的是復(fù)雜性度量標(biāo)準(zhǔn),則應(yīng)當(dāng)隨機(jī)地選擇少量模塊,再次測量其復(fù)雜性。
5加強(qiáng)計算機(jī)軟件可維護(hù)性方法發(fā)展與研究
對軟件進(jìn)行實際檢查的過程中,經(jīng)常會出現(xiàn)多個方面的情況。例如:一員工的流失率逐漸的增長等等;二程序和文檔不符合,軟件自身設(shè)計的結(jié)構(gòu)不合理,很容易在使用過程中出現(xiàn)問題。但是,這種類型的軟件非常容易簡單開發(fā)和設(shè)計,但是實際使用的壽命非常短,這也傳統(tǒng)軟件設(shè)計經(jīng)常出現(xiàn)的問題。但是,如果重復(fù)進(jìn)行開發(fā)的過程中,就會加強(qiáng)自身的使用功能,不僅會損失大量的人力和物力,還會給系統(tǒng)的正常使用造成影響。此,在軟件開發(fā)和設(shè)計的過程中,就需要全方面地進(jìn)行思考和了解,預(yù)防對系統(tǒng)重復(fù)開發(fā)。
但是,如果給系統(tǒng)設(shè)計過多的功能,還想達(dá)到簡單維護(hù)的軟件,就需要運用比較靈活的設(shè)計方法和思路。另外,在實際使用這個系統(tǒng)的過程中,想要得到用戶的好評,就需要在系統(tǒng)開發(fā)維護(hù)功能的基礎(chǔ)上,將參數(shù)進(jìn)行合理的調(diào)整,從而開發(fā)出類似的系統(tǒng)管理。大部分的企業(yè)當(dāng)中,都廣泛的應(yīng)用功能計算機(jī)的管理技術(shù),其中的程序也非常全面。而計算機(jī)管理應(yīng)用的程序也可以主要分為兩個方面,主要包括工業(yè)控制和信息化的管理。信息化的管理過程中就需要多方的軟件進(jìn)行幫助和支持同時還要將企業(yè)的實際情況進(jìn)行考慮,保證可以更好的試用企業(yè)實際的管理模式,從而確??梢愿佑行У墓芾砥髽I(yè)自己內(nèi)部的信息。但是在實際運用軟件管理的過程中,運用最多的就是報表,其中主要的目的就是整體檢查企業(yè)的發(fā)展情況。
在對軟件實際進(jìn)行設(shè)計的過程中,就需要認(rèn)識到自我維護(hù)的意識,保證軟件的生命力。但是系統(tǒng)自實際運用自我維護(hù)功能的過程中,也給設(shè)計造成了影響,這就需要采用一些額外的資源。目前,隨著我國現(xiàn)代計算機(jī)技術(shù)發(fā)展的同時,采用的資源也逐漸成為一個非常重要的組成部分,所以,就需要重點考慮對系統(tǒng)維護(hù)性造成的影響,最終實現(xiàn)自我維護(hù)的功能。但是,對一些其他軟件的系統(tǒng)開發(fā),如果可以適當(dāng)?shù)膶⑾到y(tǒng)的共性和自我維護(hù)功能進(jìn)行融合,就可以實現(xiàn)更好的發(fā)展和進(jìn)步。
6結(jié)束語
在計算機(jī)網(wǎng)絡(luò)技術(shù)高度普及的今天,計算機(jī)早已成為了人們生產(chǎn)與生活中必不可少的工具,為了能夠更好地滿足時代發(fā)展與人們生產(chǎn)生活的需求,各種各樣的軟件不斷被研發(fā)出來,在為人們提供了巨大便利的同時,也大大增加了軟件開發(fā)與維護(hù)的難度。本文從五個方面對計算機(jī)軟件的可維護(hù)性實踐進(jìn)行了研究,希望通過文本的研究能夠為相關(guān)的計算機(jī)軟件開發(fā)工作者提供一些建議和參考。endprint