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