李北星+常鑫
摘 要:為了確保電力信息系統(tǒng)能夠得以正常操作,進(jìn)而強(qiáng)化系統(tǒng)功能,提高工作質(zhì)量,減少成本費(fèi)用的支出,應(yīng)及時(shí)改善電力軟件代碼缺陷檢測(cè)效率低下、自動(dòng)化效果差以及定位不精準(zhǔn)等情況。本文主要分析了電力軟件缺陷模式的代碼檢測(cè)技術(shù),并對(duì)此展開了深入的探討,期望可以為今后的研究提供相應(yīng)的參考。
關(guān)鍵詞:缺陷模式;技術(shù)研究;代碼檢測(cè)
DOI:10.16640/j.cnki.37-1222/t.2017.22.118
0 引言
在二十一世紀(jì)之后,美國(guó)首先提出了基于缺陷模式的軟件測(cè)試,通過(guò)將此種方式與傳統(tǒng)方式進(jìn)行對(duì)比后可發(fā)現(xiàn),其主要可以分成三個(gè)流程,即:首先,界定軟件缺陷模式的含義;其次,找尋準(zhǔn)確的IP,并運(yùn)算出與模式兼容的元素;最后,采用自動(dòng)化模式進(jìn)行確定,同時(shí)也可派遣專業(yè)人員進(jìn)行確認(rèn)?;谌毕菽J降能浖y(cè)試相對(duì)來(lái)說(shuō)優(yōu)勢(shì)較多,能夠測(cè)試出很多細(xì)微的問(wèn)題缺陷,并且具有一定的針對(duì)性。所以,本文通過(guò)研究后能夠有效提升系統(tǒng)測(cè)試效率,進(jìn)而提高工作質(zhì)量,為電力信息系統(tǒng)今后的發(fā)展提供有利保障。
1 電力軟件缺陷模式與模式庫(kù)構(gòu)建
(1)電力軟件缺陷模式。通常情況下來(lái)看,普通的電力軟件缺陷表示的是不符合電網(wǎng)的相關(guān)規(guī)定,導(dǎo)致用戶在應(yīng)用的過(guò)程中造成了很多弊端。當(dāng)程序在運(yùn)行時(shí)發(fā)生軟件缺陷的話,則會(huì)致使系統(tǒng)紊亂,無(wú)法正常運(yùn)行。由于電力軟件的研發(fā)時(shí)期不同,所以產(chǎn)生的軟件缺陷也會(huì)存在一定的差異性。當(dāng)處于初始時(shí)期時(shí),系統(tǒng)架構(gòu)人員將會(huì)對(duì)系統(tǒng)軟件進(jìn)行合理的宏觀調(diào)控,如果控制失誤則會(huì)造成缺陷,由于其在開發(fā)時(shí)期的隱蔽性較強(qiáng),僅能夠在后期可以體現(xiàn)出來(lái),所以必須要在修改時(shí)期時(shí)進(jìn)行大范圍的修改,嚴(yán)重浪費(fèi)了資源,增加了成本費(fèi)用的支出,所以此種缺陷是極其不利的[1]。
當(dāng)處于需求定義時(shí)期時(shí),假設(shè)無(wú)法適應(yīng)用戶的各項(xiàng)要求,那么也會(huì)導(dǎo)致缺陷出現(xiàn)。在設(shè)計(jì)系統(tǒng)的過(guò)程中,必須要保障方案規(guī)劃合理、科學(xué),反之則會(huì)影響整個(gè)系統(tǒng)的正常運(yùn)行。在進(jìn)行編碼時(shí),應(yīng)采用正確的運(yùn)算方法,編碼失誤也會(huì)引起缺陷。在系統(tǒng)維護(hù)時(shí)期,必須要正視各個(gè)環(huán)節(jié),采用科學(xué)的手段進(jìn)行維護(hù),不然則會(huì)造成不可預(yù)估的后果。
所以,在操作的過(guò)程中必須要充分應(yīng)用各項(xiàng)資源,有效改善電力軟件缺陷,進(jìn)而提升工作效率與質(zhì)量。除此之外,軟件在運(yùn)行時(shí),不同時(shí)期進(jìn)行修復(fù)所需要的費(fèi)用也存在差異性,時(shí)間越長(zhǎng)則成本也會(huì)隨之升高,因此必須要及時(shí)發(fā)現(xiàn)缺陷。
(2)建立電力軟件缺陷模式庫(kù)。在建立電力軟件缺陷模式庫(kù)時(shí),必須要立足于實(shí)際,以研究成果為基準(zhǔn)而分析場(chǎng)景特點(diǎn),進(jìn)而創(chuàng)建出完善的電力軟件缺陷模式庫(kù)體制,找尋缺陷的問(wèn)題所在,并對(duì)其進(jìn)行敘述保存,創(chuàng)建出相對(duì)完善的缺陷模式庫(kù),進(jìn)而具備一定的定制性與配置性。
2 基于電力軟件缺陷模式的代碼檢測(cè)技術(shù)
(1)區(qū)間運(yùn)算技術(shù)。1)區(qū)間代數(shù)。所謂區(qū)間,表示的是在程序中變量的取值范圍,而區(qū)間代數(shù)表示的則是代表以及運(yùn)算變量位置的方式。在對(duì)軟件進(jìn)行測(cè)試的過(guò)程中,主要操作步驟則是將錄入的變量均看做為區(qū)間,致使中間變量以及輸出變量最后均變?yōu)閰^(qū)間的一種方式[2]。2)變量的相關(guān)性分析。通過(guò)進(jìn)行分析后可發(fā)現(xiàn),在程序中應(yīng)在以下幾種情況下應(yīng)用變量關(guān)聯(lián),即:相同路徑引進(jìn)的隱含約束關(guān)系、賦值語(yǔ)句關(guān)系、條件限定關(guān)系以及別名關(guān)聯(lián)關(guān)系。
(2)基于數(shù)據(jù)流的缺陷檢測(cè)。在操作的過(guò)程中,我們可將缺陷檢測(cè)流程進(jìn)行深入分析,并將其作為一個(gè)前向可能數(shù)據(jù)流的情況,數(shù)據(jù)流的元素主要包括以下幾個(gè)方面:1)在進(jìn)行缺陷檢測(cè)時(shí),呈現(xiàn)為正向數(shù)據(jù)流,D=FORWARD;2)在進(jìn)行缺陷檢測(cè)時(shí),L是可能狀態(tài)集合的冪集,Ventry={ Start}表示的是L的常量值,即為邊界條件;3)在進(jìn)行缺陷檢測(cè)時(shí),∧表示的即為可能狀態(tài)集合的U操作;4)G=( V, E, entry, exit),在此過(guò)程中V所表示的為節(jié)點(diǎn)集合,E所表示的是邊,entry所表示的為入口,exit所表示的為出口;5)在進(jìn)行缺陷檢測(cè)時(shí),F(xiàn)所表示的為由程序語(yǔ)句而導(dǎo)致的缺陷變遷現(xiàn)象。
(3)函數(shù)間分析技術(shù)。1)約束信息。針對(duì)約束模式狀態(tài)機(jī)而言,由于故障類型不同,所以產(chǎn)生的約束模式也存在一定的差異性,在此過(guò)程中N代表的即為狀態(tài)機(jī)均能夠發(fā)生的狀態(tài),T代表的即為狀態(tài)之間通過(guò)轉(zhuǎn)化后所形成的集合,C代表的即為狀態(tài)轉(zhuǎn)化要求,Nfault代表的即為故障的具體狀態(tài),Ncons代表的即為約束形式狀態(tài)。 2)后置信息。在進(jìn)行靜態(tài)分析時(shí),針對(duì)函數(shù)來(lái)說(shuō),變量的取值區(qū)間對(duì)其所產(chǎn)生的作用比較大,所以在操作的過(guò)程中必須要提高對(duì)函數(shù)副作用的關(guān)注。為了改善這種情況,在運(yùn)算區(qū)間以及檢測(cè)缺陷的過(guò)程中必須要合理運(yùn)用計(jì)算方式,選擇應(yīng)用函數(shù)后置信息方式。
3 代碼缺陷自動(dòng)化檢測(cè)方式
在進(jìn)行操作的過(guò)程中,我們可創(chuàng)建相對(duì)完善的代碼缺陷自動(dòng)化檢測(cè)方式,檢測(cè)流程可分為五個(gè)步驟,即:輸入、基本分析、提高精度、自動(dòng)測(cè)試及結(jié)果分析,在此過(guò)程中提高精度與自動(dòng)測(cè)試最為重要。應(yīng)用此種檢測(cè)方式進(jìn)行操作時(shí),必須要結(jié)合多個(gè)方面進(jìn)行考慮,具體可包含以下幾種問(wèn)題,即:誤報(bào)情況、漏報(bào)情況以及模式機(jī)理等。
4 總體研究架構(gòu)
首先,應(yīng)對(duì)電力軟件缺陷模式展開深入的探討,并創(chuàng)建出完善的電力軟件缺陷模式庫(kù),與此同時(shí),也應(yīng)研究提升精準(zhǔn)的技術(shù)手段,并以此作為基礎(chǔ)條件,而創(chuàng)建出代碼缺陷自動(dòng)化檢測(cè)方式,具體如下圖1所示。
5 結(jié)束語(yǔ)
綜上所述,基于缺陷模式的軟件測(cè)試得到了廣泛應(yīng)用,能夠測(cè)試出很多細(xì)微的問(wèn)題缺陷,并且具有一定的針對(duì)性。除此之外,也能夠有效提升系統(tǒng)測(cè)試效率,進(jìn)而提高工作質(zhì)量,為電力信息系統(tǒng)今后的發(fā)展提供有利保障。endprint