論計(jì)算機(jī)軟件維護(hù)論文(2)
論計(jì)算機(jī)軟件維護(hù)論文
論計(jì)算機(jī)軟件維護(hù)論文篇二
《論計(jì)算機(jī)軟件維護(hù)》
[摘 要]近幾年,中國(guó)軟件產(chǎn)業(yè)突飛猛進(jìn),從事軟件行業(yè)的相關(guān)人員大幅增加。但是如何保證開發(fā)出來(lái)的軟件能穩(wěn)定的運(yùn)行,如何維護(hù)用戶使用的軟件是我國(guó)從事軟件行業(yè)人員較為忽略的問題。專門從事維護(hù)的相關(guān)人員較少,本文簡(jiǎn)單闡述軟件維護(hù)和前景,提出關(guān)于軟件維護(hù)的方法和見解。
[關(guān)鍵詞]計(jì)算機(jī);軟件工程;維護(hù)
中圖分類號(hào):TP31 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-914X(2015)27-0157-01
軟件產(chǎn)品的維護(hù)階段是完全開發(fā)出來(lái)的軟件在已經(jīng)交付給用戶之后,保證能在用戶所接受的時(shí)間周期下正常且穩(wěn)定的運(yùn)行。軟件維護(hù)是軟件生命周期的最后階段。開發(fā)軟件的目的就是要提高軟件產(chǎn)品的維護(hù)性能,盡可能降低軟件在維護(hù)階段的工作量,節(jié)約軟件開發(fā)成本。維護(hù)軟件所需工作量較大,據(jù)統(tǒng)計(jì),較大型的軟件維護(hù)成本是開發(fā)成本的四倍以上。國(guó)內(nèi)外較大型軟件開發(fā)公司把60%左右的工作量用于維護(hù)已經(jīng)開發(fā)的軟件。公司為了使軟件的壽命更長(zhǎng),這方面的工作量會(huì)越來(lái)越高,軟件的維護(hù)費(fèi)用也在逐年增加,70年代維護(hù)軟件的費(fèi)用占開發(fā)軟件總預(yù)算的37%左右,80年代提高為50%左右,到了90年代已經(jīng)高達(dá)75%左右。因此降低軟件維護(hù)的成本是軟件開發(fā)過程中最重要的環(huán)節(jié)。
一、軟件維護(hù)的分類
(一)改正性維護(hù):診斷并糾正由于開發(fā)時(shí)測(cè)試環(huán)節(jié)的疏漏和運(yùn)行中潛伏的錯(cuò)誤以及開發(fā)時(shí)未能測(cè)試的錯(cuò)誤。
(二)適應(yīng)性維護(hù):隨著時(shí)間變化,相匹配的軟硬件出現(xiàn)了更新,數(shù)據(jù)庫(kù),數(shù)據(jù)的存儲(chǔ)格式可能會(huì)發(fā)生變化,為了適應(yīng)變化環(huán)境而對(duì)軟件的修正,使之兼容。
(三)完善性維護(hù):為了能提高系統(tǒng)性能和擴(kuò)充優(yōu)化,改進(jìn)運(yùn)行效率,完善可視化界面,實(shí)現(xiàn)用戶提出的建議和改進(jìn)的要求。
(四)預(yù)防性維護(hù):為了軟件將來(lái)的前景,采用軟件工程的方法對(duì)軟件進(jìn)行相適應(yīng)的修改。
(五)其他維護(hù):其中,改正性維護(hù)所占比例約為19%,適應(yīng)性維護(hù)約為22%,完善性維護(hù)約為56%,預(yù)防性維護(hù)約為1%,其他維護(hù)占2%左右。
二、軟件維護(hù)的影響因素
(一)人員變動(dòng):往往軟件交付以后就要解散團(tuán)隊(duì),人員會(huì)被分配到下一個(gè)開發(fā)團(tuán)隊(duì)中。當(dāng)初開發(fā)的人員離開了團(tuán)隊(duì),甚至后來(lái)修改該軟件的人員也離開了團(tuán)隊(duì)或公司,會(huì)導(dǎo)致幾乎已經(jīng)沒人徹底了解這個(gè)遺留的軟件,造成軟件徹底報(bào)廢。這樣也會(huì)給負(fù)責(zé)軟件維護(hù)的新團(tuán)隊(duì)帶來(lái)困擾,要花費(fèi)更多精力,浪費(fèi)了資金。
(二)用戶要求:當(dāng)初沒有簽訂詳細(xì)的合同和擬出詳細(xì)的計(jì)劃書,也沒有和用戶進(jìn)行詳細(xì)的溝通,導(dǎo)致開發(fā)人員認(rèn)為合理的修改和更新不能滿足用戶的要求,成本增加。
(三)潛在錯(cuò)誤:維護(hù)人員的改動(dòng)可能會(huì)在軟件中加入潛在的風(fēng)險(xiǎn)和錯(cuò)誤,導(dǎo)致間接降低了軟件的質(zhì)量。本來(lái)是正確的地方,改過以后變成了錯(cuò)誤,兼容性變得更差了。
(四)維護(hù)成本:維護(hù)成本已經(jīng)大于開發(fā)一個(gè)新軟件的成本或者大于預(yù)計(jì)的成本,維護(hù)價(jià)值下降。
(五)團(tuán)隊(duì)素質(zhì):簽訂系統(tǒng)維護(hù)的合同一般和簽訂系統(tǒng)開發(fā)的合同無(wú)直接關(guān)系。假設(shè)這個(gè)開發(fā)團(tuán)隊(duì)為了節(jié)約開發(fā)成本,不按照系統(tǒng)可維護(hù)性來(lái)設(shè)計(jì),那么勢(shì)必會(huì)增加維護(hù)團(tuán)隊(duì)的維護(hù)成本。軟件開發(fā)時(shí)采用急功近利還是放眼未來(lái)的態(tài)度,對(duì)軟件維護(hù)的影響很大。
(六)人員水平:一般公司認(rèn)為維護(hù)軟件不需要太多技術(shù),不如開發(fā)軟件聲望好,分配能力較低的員工去做,也會(huì)增加維護(hù)的風(fēng)險(xiǎn)。
(七)文檔同步:軟件開發(fā)人員編碼中不斷修改需求和設(shè)計(jì),但是文檔卻沒有進(jìn)行實(shí)時(shí)更新,造成交付的文檔于實(shí)際軟件出現(xiàn)偏差,使今后對(duì)軟件進(jìn)行維護(hù)時(shí)出現(xiàn)誤解。
同時(shí),一些軟件滲入了許多相關(guān)的公司業(yè)務(wù)知識(shí),還需要有一定的相關(guān)工作經(jīng)驗(yàn),這類軟件維護(hù)的成本會(huì)更高。目前軟件維護(hù)系統(tǒng)的方法不完善,維護(hù)工作變得更加困難,意外的發(fā)生也會(huì)導(dǎo)致風(fēng)險(xiǎn)隨之增加。軟件維護(hù)也會(huì)產(chǎn)生一些副作用,軟件修改是一項(xiàng)很危險(xiǎn)的工作,雖然設(shè)計(jì)文檔化和回歸測(cè)試有助于排除錯(cuò)誤,但是仍然會(huì)產(chǎn)生副作用。副作用指,由于維護(hù)和維護(hù)過程中其他的一些不期望的行為引入的錯(cuò)誤,分為:代碼副作用,數(shù)據(jù)副作用,文檔副作用。
(1)代碼副作用:修改或刪除子程序,語(yǔ)句符號(hào),標(biāo)示符。修改文件的open,close才做;修改邏輯操作符;修改對(duì)邊界條件的測(cè)試等。
(2)數(shù)據(jù)副作用:全局常量和局部常量的再定義;修改全局?jǐn)?shù)據(jù);重新初始化控制標(biāo)志和指針,重新排列I/O表或子程序參數(shù)表等。
(3)文檔副作用:維護(hù)應(yīng)該統(tǒng)一考慮整個(gè)軟件的配置,而不僅僅是源代碼。
三、維護(hù)工作量的模型
M=P+K*exp(c-d)
其中:M是維護(hù)需要的總工作量,P是生產(chǎn)性工作量,K是經(jīng)驗(yàn)指數(shù),c是復(fù)雜程度,d是維護(hù)人員對(duì)該軟件的熟悉程度,該模型表明,如果軟件的開發(fā)途徑不好,開發(fā)人員不能參加維護(hù)工作,維護(hù)需要的總工作量和費(fèi)用將以指數(shù)的形勢(shì)增加。
四、軟件維護(hù)的步驟
總體步驟:修改軟件需求說明-修改軟件設(shè)計(jì)-設(shè)計(jì)評(píng)審-重新編碼-單元測(cè)試-集成測(cè)試-回歸測(cè)試-確認(rèn)測(cè)試-復(fù)審。
軟件維護(hù)時(shí)要建立正式的維護(hù)團(tuán)隊(duì),明確責(zé)任和分工,避免出現(xiàn)糾紛。要建立一份用戶要求表格,要讓用戶全面詳細(xì)地闡述發(fā)生的問題和錯(cuò)誤,包括問題的類型,需要達(dá)到的目標(biāo),系統(tǒng)運(yùn)行的環(huán)境,發(fā)生問題的日期等等。維護(hù)過程中要注意順從原有代碼的編碼習(xí)慣,確保和諧。維護(hù)申請(qǐng)比較多,可分配優(yōu)先級(jí)。修改前要做備份,改后要做測(cè)試,完成后要進(jìn)行會(huì)議總結(jié),汲取教訓(xùn),分享經(jīng)驗(yàn)。必要時(shí)還可以專門為該軟件建立維護(hù)指南,使用手冊(cè),簡(jiǎn)要說明如何使用和維護(hù)這個(gè)軟件。還可以建立參考手冊(cè),可以預(yù)示會(huì)發(fā)生出錯(cuò)的可能情況和錯(cuò)誤代碼相對(duì)應(yīng)的含義以及解決的辦法,注意要用形式化語(yǔ)言描述。維護(hù)完成時(shí),可進(jìn)行回歸測(cè)試,測(cè)試順利完成后方可交付。軟件隨著多次的維護(hù)和修改,其可維護(hù)性會(huì)變得越來(lái)越差,當(dāng)可維護(hù)性降低到一定程度時(shí),為了滿足用戶的要求再繼續(xù)修改已經(jīng)不可靠了,軟件就會(huì)被拋棄,生命周期終止,失去了利用價(jià)值。
五、軟件維護(hù)的前景
目前據(jù)筆者了解到,軟件維護(hù)相關(guān)人員較少,但是軟件維護(hù)成本卻占了軟件開發(fā)中成本的大半,許多大型軟件由于缺少維護(hù)導(dǎo)致失控而被拋棄。因此如果精通或掌握軟件維護(hù)領(lǐng)域相關(guān)知識(shí),能夠熟練完成大型軟件的維護(hù)如:ERP的日常維護(hù),SQL數(shù)據(jù)庫(kù)的維護(hù),網(wǎng)頁(yè)服務(wù)器的維護(hù)等等,不斷改進(jìn)完善軟件,發(fā)展?jié)摿艽蟆?/p>
當(dāng)前計(jì)算機(jī)技術(shù)在整個(gè)國(guó)民經(jīng)濟(jì)中具有相當(dāng)廣泛的領(lǐng)域,在人們的日常生活中,計(jì)算機(jī)技術(shù)可以說是無(wú)處不在,是人們生活、工作不可缺少的工具之一,以軟件技術(shù)作為其內(nèi)在靈魂的計(jì)算機(jī)信息系統(tǒng),正在對(duì)系統(tǒng)高度集成化、結(jié)構(gòu)廣泛分布化、信息多元化和功能智能化等一系列新型發(fā)展方向越來(lái)越重視,并逐步在實(shí)踐中得以實(shí)現(xiàn)。軟件維護(hù)是一項(xiàng)綜合性很強(qiáng)的工作,隨著軟件規(guī)模和復(fù)雜度的日益提高,使軟件維護(hù)成為軟件生存周期中費(fèi)用最高、難度最大的一個(gè)階段。因此,良好的軟件維護(hù)是軟件生命周期的最后階段,也是最重要的階段。
參考文獻(xiàn)
[1] 吳杰明,張正.實(shí)用軟件維護(hù)策略[J]..北方工業(yè)大學(xué)學(xué)報(bào),2002,14,3:61-62 .
[2] 張海藩.軟件工程導(dǎo)論[M].第五版.北京:清華大學(xué)出版社,2008,5:191.
[3] 周全學(xué).軟件維護(hù)淺析[J].鐵路計(jì)算機(jī)應(yīng)用,2003,12:42-43.
論計(jì)算機(jī)軟件維護(hù)論文相關(guān)文章:
1.淺談?dòng)?jì)算機(jī)軟件維護(hù)的論文
2.計(jì)算機(jī)軟件維護(hù)的有關(guān)論文