Testbed學(xué)習(xí)總結(jié)_第1頁(yè)
Testbed學(xué)習(xí)總結(jié)_第2頁(yè)
Testbed學(xué)習(xí)總結(jié)_第3頁(yè)
Testbed學(xué)習(xí)總結(jié)_第4頁(yè)
Testbed學(xué)習(xí)總結(jié)_第5頁(yè)
已閱讀5頁(yè),還剩4頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、1 .Testbed功能介紹錯(cuò)誤!未定義書(shū)簽 編程標(biāo)準(zhǔn)驗(yàn)證錯(cuò)誤!未定義書(shū)簽 數(shù)據(jù)流分析錯(cuò)誤!未定義書(shū)簽 軟件度量分析錯(cuò)誤!未定義書(shū)簽 質(zhì)量報(bào)告生成錯(cuò)誤!未定義書(shū)簽 2 .使用Testbed進(jìn)行編碼規(guī)則的定制和檢查錯(cuò)誤!未定義書(shū)簽 3 .靜態(tài)分析報(bào)告錯(cuò)誤!未定義書(shū)簽 靜態(tài)分析質(zhì)量報(bào)告單錯(cuò)誤!未定義書(shū)簽 程序質(zhì)量度量報(bào)告單錯(cuò)誤!未定義書(shū)簽 度量指標(biāo)解釋錯(cuò)誤!未定義書(shū)簽 度量指標(biāo)的獲取錯(cuò)誤!未定義書(shū)簽1. Testbed功能介紹 1.1 編程標(biāo)準(zhǔn)驗(yàn)證 編程標(biāo)準(zhǔn)驗(yàn)證是高可靠性軟件開(kāi)發(fā)不可缺少的軟件質(zhì)量保證方法,使用LDRA Testbed自動(dòng)地驗(yàn)證應(yīng)用軟件是否遵循了所選擇的編程規(guī)則。編程規(guī)則由軟件項(xiàng)

2、目管理者根據(jù)自身項(xiàng)目的特點(diǎn)并參考現(xiàn)有的成熟的軟件編程標(biāo)準(zhǔn)制定,如DERA (歐洲防務(wù)標(biāo)準(zhǔn)),MISRA(汽車(chē)軟件標(biāo)準(zhǔn)),LDRATestbed依據(jù)此規(guī)則搜索應(yīng)用程序,并判斷代碼是否違反所制定的編程規(guī)則。LDRATestbed報(bào)告所有違反編 程規(guī)則的代碼并以文本方式或圖形反標(biāo)注的方式顯示。測(cè)試人員或編程人員可根 據(jù)顯示的信息對(duì)違反編程規(guī)則的代碼進(jìn)行修改。 1.2 數(shù)據(jù)流分析 LDRATestbed分析軟件中全局變量、局域變量及過(guò)程參數(shù)的使用狀況,并以圖形顯示、HTMLSASCII文本報(bào)告方式表示,清晰地識(shí)別出變量使用引起的軟件錯(cuò)誤,此種方法既可使用于單元級(jí),亦可使用于集成級(jí)、系統(tǒng)級(jí)。 通過(guò)Tes

3、tbed數(shù)據(jù)流分析功能,可方便地分析出軟件中一些可能的程序欠缺,如: 1、用錯(cuò)的局部或全局變量; 2、不匹配的參數(shù); 3、遺漏的標(biāo)號(hào)或代碼; 4、未定義的變量; 等等,其中經(jīng)常會(huì)發(fā)現(xiàn)程序中有未定義的變量情況發(fā)生。 1.3 軟件度量分析 對(duì)于軟件開(kāi)發(fā)工程師、項(xiàng)目負(fù)責(zé)人及高級(jí)管理者來(lái)說(shuō),軟件質(zhì)量的管理與監(jiān)控是非常困難的且費(fèi)時(shí)。LDRATestbed很好地解決了這一問(wèn)題,使得管理者很容易地收集正在開(kāi)發(fā)的軟件系統(tǒng)的相關(guān)信息并判斷軟件是否滿(mǎn)足軟件質(zhì)量標(biāo)準(zhǔn)要求,從而達(dá)到對(duì)軟件項(xiàng)目的質(zhì)量跟蹤與控制。Testbed提供數(shù)據(jù)文件接口,用戶(hù)可基于現(xiàn)行軟件標(biāo)準(zhǔn)自行定義適合本系統(tǒng)或項(xiàng)目的軟件質(zhì)量模型。 LDRATes

4、tbed支持下列主要軟件度量元分析: 控制流結(jié)點(diǎn)度量(ControlFlowKnots); LCSAJ密度度量(LCSAJDensity); 扇入/扇出度量; 循環(huán)深度度量; McCabe圈復(fù)雜度; Halstead軟件科學(xué)度量; McCabe基本圈復(fù)雜度; 注釋行度量; 代碼可達(dá)性度量;等等。 LDRATestbed自動(dòng)生成各種質(zhì)量報(bào)告供測(cè)試人員分析,包括代碼規(guī)則檢查報(bào)告、軟件度量報(bào)告、數(shù)據(jù)流報(bào)告、交叉索引報(bào)告,報(bào)告形式可以為ASCII文本或HTML1文本,報(bào)告支持文件級(jí)與系統(tǒng)級(jí)。 1.5代碼可視化顯示 Testbed提供調(diào)用圖與控制流程圖,顯示被測(cè)系統(tǒng)的調(diào)用關(guān)系及每個(gè)子程序的控制流程。使用

5、此功能用戶(hù)可快速理解被測(cè)軟件系統(tǒng),并方便軟件維護(hù)。 .使用Testbed進(jìn)行編碼規(guī)則的定制和檢查 LDRATestbed可通過(guò)編輯編碼規(guī)則文件實(shí)現(xiàn)編碼規(guī)則的定制,下面將具體介紹: .啟動(dòng)Testbed,在File菜單下選擇SelectFile選項(xiàng),選擇要分析的文件; 選擇好要分析白文件,點(diǎn)擊Select按鈕完成。 .點(diǎn)擊菜單欄中的Configure,在下拉菜單中點(diǎn)擊StaticOptions選項(xiàng),將會(huì)出現(xiàn)如下窗口,點(diǎn)擊后的Edit按鈕,按照提示編輯。若存在已編輯好的編碼規(guī)則文件,可按旁邊的瀏覽鍵直接指定該dat文件,則下面第3步可以省 略。 .編輯第2歹也根據(jù)實(shí)際需求, 將對(duì)應(yīng)編碼規(guī)則置“0”

6、或“1”,置“0”代表該條編碼規(guī)則無(wú)效,置“1”代表該條編碼規(guī)則有效。 .點(diǎn)擊菜單欄中的Configure,在下拉菜單中點(diǎn)擊QualityReportOptions選項(xiàng),將會(huì)出現(xiàn)如下窗口,在ProgrammingStandardModel下拉框中選擇“Standard”。 .點(diǎn)擊菜單欄中的Analysis,在下拉菜單中點(diǎn)擊SelectAnalysis,將會(huì)出現(xiàn)如下窗口,選擇前3項(xiàng),點(diǎn)擊StartAnalysis按鈕,開(kāi)始進(jìn)行靜態(tài)分析。 .靜態(tài)分析結(jié)束后,點(diǎn)擊菜單欄中的IndividualResults,選擇下拉菜單 TextResults中的QualityReport(HTML),查看質(zhì)量報(bào)告

7、。 .靜態(tài)分析報(bào)告 靜態(tài)分析質(zhì)量報(bào)告單 表 1 1 靜態(tài)分析質(zhì)量報(bào)告單 審查項(xiàng)目 測(cè)試內(nèi)容 技術(shù)要求 審查結(jié)果 控制流分析 是否存在不可達(dá)代碼 否 是否存在不合理的循環(huán)結(jié)構(gòu) 否 是否存在浮點(diǎn)相等比較 否 是否使用 gotogoto 語(yǔ)句 否 函數(shù)是否存在多個(gè)出口 否 函數(shù)是否存在多個(gè)入口 否 數(shù)據(jù)流分析 是否存在沒(méi)使用的函數(shù)參數(shù) 否 函數(shù)是否存在路徑無(wú)返回值 否 是否存在函數(shù)的實(shí)參是全局變量 否 代碼中是否存在多余變量 否 是否存在艾重使用前未初始化 否 是否存在參數(shù)與期望的作用小匹配 否 表達(dá)式分析 是否出現(xiàn)表達(dá)式中的括號(hào)使用不當(dāng) 否 是否存在數(shù)組下標(biāo)越界 否 是否存在被零除 否 SWITC

8、HSWITCH句是否缺少 DEFAULTDEFAULT 否 CASECASE句是否缺少 BREAKBREAK 否 在非賦值表達(dá)式中是否使用賦值操作符 否 接口分析 是否存在形參與實(shí)參在類(lèi)型、數(shù)量、順序及維數(shù)等使用上的不一致性 否 是否存在模塊與外部數(shù)據(jù)庫(kù)的接亦一致性 否 是否存在各模塊之間接口的不一致性 否 表 2 2 程序質(zhì)量度量報(bào)告單 描述 指標(biāo) 違反個(gè)數(shù) 所在軟件 具體描述 計(jì) 軟件單元的語(yǔ)句數(shù) =200=20%=20% 扇入數(shù) 調(diào)用該函數(shù)的 上層函數(shù)的個(gè)數(shù) 77 扇出數(shù) 函數(shù)調(diào)用卜層函數(shù)的個(gè)數(shù) 77 函數(shù)參數(shù) 函數(shù)參數(shù) =7=7 圈復(fù)雜度 =10=10 基本復(fù)雜度 =4=4 控制流結(jié)點(diǎn)

9、數(shù) =2=2 控制流 基本結(jié)點(diǎn)數(shù) =5=5 循環(huán)深度 =5=5 LCSAJLCSAJ 密度 文件 LCSAJLCSAJ 密度 =50=50 LCSAJsLCSAJs 總數(shù) / / /、可達(dá) LCSAJsLCSAJs =10=10 不可達(dá)代碼行數(shù) =10=10 不口達(dá)分支數(shù) =20=20 圈復(fù)雜度(V(G) 圈復(fù)雜度的計(jì)算方法很簡(jiǎn)單,計(jì)算公式為:V(G尸E-N+2。其中,E表示控制 流圖中邊的數(shù)量,N表示控制流圖中節(jié)點(diǎn)的數(shù)量。 McCabe&Associates建議圈復(fù)雜度到10,因?yàn)楦叩娜?fù)雜度使測(cè)試變得更加復(fù)雜而且增大了軟件錯(cuò)誤產(chǎn)生的概率。 基本復(fù)雜度(EV(G) 基本復(fù)雜度是用來(lái)衡

10、量程序非結(jié)構(gòu)化程度的,非結(jié)構(gòu)成分降低了程序的質(zhì)量,增加了代碼的維護(hù)難度,使程序難于理解。因此,基本復(fù)雜度高意味著非結(jié)構(gòu)化程度高,難以模塊化和維護(hù)。實(shí)際上,消除了一個(gè)錯(cuò)誤有時(shí)會(huì)引起其它的錯(cuò)誤。 將流程圖中的結(jié)構(gòu)化部分簡(jiǎn)化成一個(gè)點(diǎn),計(jì)算簡(jiǎn)化以后流程圖的圈復(fù)雜度就 是基本復(fù)雜度。計(jì)算公式為: EV(G)=V(G)-M 其中,M是流程圖G中的結(jié)構(gòu)化子圖(出口和入口唯一)的數(shù)量。 控制流結(jié)點(diǎn)數(shù)(Knots) 當(dāng)兩條控制流相交時(shí),就產(chǎn)生一個(gè)控制流結(jié)點(diǎn)??刂屏鹘Y(jié)點(diǎn)數(shù)表示流程圖中控制流相交的個(gè)數(shù)。 基本節(jié)點(diǎn)數(shù)(EssentialKnots) 將流程圖中的結(jié)構(gòu)化部分簡(jiǎn)化成一個(gè)點(diǎn),簡(jiǎn)化以后流程圖的結(jié)點(diǎn)數(shù)是基本節(jié) 點(diǎn)數(shù)。 LCSAJ密度(LCSAJDensitys) LCSAJ密度是一個(gè)描述軟件可維護(hù)性的概念,它是指當(dāng)改變一行代碼時(shí),對(duì)其它線(xiàn)性代碼順序和跳轉(zhuǎn)的影響程度,值越大說(shuō)明影響的測(cè)試路徑相對(duì)越多,因 此系統(tǒng)可維護(hù)性越低。 圈復(fù)雜度及控制流結(jié)點(diǎn)數(shù)示意圖 3.4度量指標(biāo)的獲取 點(diǎn)擊菜單欄中的IndividualResults/SystemResults,選擇下拉菜單TextResults中的MetricReport(HTML),查看度量報(bào)告。 復(fù)雜度度量 LCSAJ和代碼可達(dá)性度量 注釋行度量 扇入/

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論