999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

軟件測試對于提高軟件質量的作用

2017-03-06 20:16:02高欣
電子技術與軟件工程 2016年23期

高欣

摘 要

互聯(lián)網(wǎng)信息高速發(fā)展的大背景下,無論硬件軟件的復雜程度,還是技術含量都在日益提高,人們對軟件的需求也越來越高。與此同時,軟件中存在的漏洞和缺陷也迅速成為黑客攻擊的對象,因此,建立一套高保障性的技術體系以保護軟件的研制和可靠性成為當下社會研究的當務之急。

【關鍵詞】軟件應用 軟件開發(fā) 軟件測試

1 工程實例

1.1 測試過程

軟件開發(fā)是一個常規(guī)的過程,在當今時代環(huán)境下,一般分為4個階段,每個階段中都需要對軟件進行內(nèi)部測試,一般分為:靜態(tài)分析、代碼審查、單元測試、部件測試、配置項測試。

1.1.1 靜態(tài)分析

使用專業(yè)靜態(tài)分析工具,對軟件應用的程序,數(shù)據(jù)等參數(shù)進行剖析,并進行深入的數(shù)據(jù)分析,將軟件應用內(nèi)部的靜態(tài)信息和代碼信息提取出來,為未來的動態(tài)測試提供參考數(shù)據(jù),并根據(jù)現(xiàn)在的軟件模型,對軟件的質量做出正確評價。

1.1.2 代碼審查

主要是對代碼進行一系列專業(yè)的檢查過程,對代碼的容錯綠,代碼運轉結果的一致性,代碼的可讀性等進行檢查分析。重點對代碼的邏輯性,完整性進行檢查,保證正確率。

1.1.3 單元測試

按照軟件設計的說明圖,模擬軟件運行環(huán)境和運行部件,針對軟件的環(huán)境進行接口模擬,并創(chuàng)造出軟件的真實運行環(huán)境,進行測試,監(jiān)測軟件的運行結果。

1.1.4 部件測試

按照被測軟件的說明圖,在單元測試的基礎上,將各個測試成功的單元模塊按需求和設計組裝成一個符合設計需求的整體功能模塊,并進行測試,其目的是監(jiān)測軟件各個單元和接口之間的兼容性和容錯率,保證軟件的設計成功。

1.1.5 配置項測試

所謂配置項是軟件中為滿足不同用戶的不通需求而設計的,能體現(xiàn)用戶個性化功能的配置功能項,測試的目的是監(jiān)測配置項在軟件中的一致性。

1.2 問題現(xiàn)象

某產(chǎn)品軟件到了后期階段仍在進行頻繁更改,通過對其分析,得出軟件復雜度高是其存在的主要問題:

(1)模塊在結構上應使用單出入口的結構,降低復雜性。

(2)在模塊的邏輯設計上進行改進,采用分層次的結構,并在不同層次上設計不同的扇入扇出數(shù),保證模塊的扇出數(shù)較低,一般不超過7,并且盡可能的增加模塊的扇入數(shù),以保證代碼的簡潔性。另外,高層模塊的設計應該采取不同策略,比如高層模塊扇出較高,低層模塊扇入較高等。

(3)軟件單元的圈復雜度(即McCabe 指數(shù))應小于10。

(4)簡化軟件單元的源代碼數(shù)量,高級語言實現(xiàn)的單元,不應超過60行。

1.3 問題分析

測試的目的是為了更正軟件的錯誤,降低風險率,一般來說經(jīng)過幾個階段的測試后,軟件中的缺陷基本都能被修復,但是沒有重視靜態(tài)分析中的軟件圈復雜度,基本復雜度超標的現(xiàn)象,軟件在后期的高復雜性往往會帶來潛在的風險。

2 測試指導設計

2.1 軟件質量的pareto原理

pareto原理[2] 指出,20%的軟件模塊包含了軟件中80%的缺陷,20%的軟件改進,需花費80%的適應性維護費用。從這里可以得出結論,高復雜的模塊會導致軟件中可能出現(xiàn)的絕大部分錯誤,而且不容易修復。因此,在軟件設計早起杜絕復雜度過高的風險十分必要。

2.2 降低軟件圈復雜度

2.2.1 圈復雜度定義

圈復雜度作為一個衡量軟件結構復雜性的標準,數(shù)量上表現(xiàn)為獨立線性路徑條數(shù),即合理的預防錯誤所需測試的最少路徑條數(shù)。1976年ThomasMcCabe提出了圈復雜度(Cyclomatic Complexity)的概念,依據(jù)圈復雜度定義了軟件的復雜性。1977年Halstead提出了軟件科學復雜度度量。文獻[3],在這個理念中重點分析了嵌入式軟件的位置的重要性,并通過模型的方式展示了軟件復雜度的度量對識別代碼錯位的重要性。可以看出,軟件的錯誤和缺陷并非隨機分布的,而是有跡可循,和軟件的個性化,復雜度息息相關。

2.2.2 復雜度計算方法

C語言常用的軟件模塊邏輯結構(結構流圖)有如下幾種,如圖3所示。

2.2.3 降低圈復雜度

如果圈復雜度高于標準值的時候,可以提前做出判斷,降低代碼的復雜度和重復性。在判斷語句中采取單一的判斷條件,或者將重復代碼用一個函數(shù)來替代。都是降低代碼復雜度和重復性的有力措施。

2.3 降低軟件基本復雜度

運轉正常的語句或代碼應帶保證單入口和單出口結構,保證程序的簡潔性,不應過多使用異常跳轉語句增加程序的運轉復雜度,如果非結構化語句過多,出入口增大,只會導致結構的復雜度增高,增加軟件后期運行的風險。

因此,只要控制程序語句的結構單一化,簡單化,避免各種非正常跳轉語句的使用,復雜度就會在可控制的范圍內(nèi),有利于程序的運行穩(wěn)定。

2.4 降低軟件扇出數(shù)

扇出的意思是函數(shù)調(diào)用其他函數(shù)的個數(shù),如果扇出過小,則會導致程序代碼過長,如果扇出過大,則會增加程序內(nèi)函數(shù)的調(diào)用次數(shù),影響速度,一般來說扇出最好為3或4個,最高不超過7個。

扇入的意思是一個函數(shù)被其他程序調(diào)用的次數(shù),扇入較多會增加模塊的使用頻率,但是過高的扇入會影響程序的聚合性,如果扇出扇入次數(shù)過高,可以考慮重新調(diào)整該函數(shù)或過程。

3 結語

本文通過以測試結果來倒向改進軟件設計的思路,提高了軟件的設計質量和可靠性,可以看出,在軟件代碼內(nèi)部進行早期分析,在軟件設計早期對軟件代碼,復雜度等指標進行優(yōu)化限制,對軟件后期的穩(wěn)定運行,錯誤率降低有非常大的影響和幫助,成為軟件改進的新思路。

參考文獻

[1]尹平,許聚常,張慧穎.軟件測試與軟件質量評價[M].北京:國防工業(yè)出版社,2008.

[2]SCHULMEYER G G.軟件質量保證[M].北京:機械工業(yè)出版社,2003.

[3]JOHN C,MUNSON.Software faults,software failures and software reliability modeling[J].Information and Software Technology,1996(02).

作者單位

天津濱海職業(yè)學院 天津市 300451

主站蜘蛛池模板: 国产精品视频第一专区| 88av在线| 一本大道香蕉久中文在线播放| 欧美第九页| 99国产在线视频| 久久91精品牛牛| 午夜精品久久久久久久99热下载| 午夜不卡福利| 国产乱论视频| 亚洲成人动漫在线| 午夜综合网| 中国一级特黄大片在线观看| 亚洲欧美日韩综合二区三区| 色偷偷综合网| 精品亚洲麻豆1区2区3区| 国产亚洲欧美在线中文bt天堂| 亚洲综合色婷婷中文字幕| 亚洲伦理一区二区| 午夜精品福利影院| 久草视频一区| 91探花在线观看国产最新| 亚洲免费成人网| 亚洲高清日韩heyzo| 国产成人精品一区二区| 国产一级在线播放| 一本大道东京热无码av| 国产成人精品视频一区二区电影| 亚洲无码37.| 成人一区在线| 99视频精品全国免费品| 日韩视频福利| 亚洲中文在线看视频一区| 精品一区二区久久久久网站| 成人中文在线| 亚洲成人黄色在线| 成人国产免费| 美女内射视频WWW网站午夜 | 国产91小视频| 亚洲一区二区成人| 91精品网站| 国产亚洲精| 自拍亚洲欧美精品| 国产成人精品一区二区三在线观看| 欧日韩在线不卡视频| 亚洲综合激情另类专区| 亚洲天堂网在线观看视频| 青青草原国产av福利网站 | 国产欧美性爱网| 亚洲精品国产首次亮相| 女同国产精品一区二区| 亚洲六月丁香六月婷婷蜜芽| 亚洲欧美另类中文字幕| 麻豆精选在线| 99re66精品视频在线观看 | 婷婷丁香在线观看| 久久精品91麻豆| 久久中文字幕2021精品| 午夜在线不卡| 中文字幕66页| 亚洲天天更新| 嫩草国产在线| 久久久91人妻无码精品蜜桃HD| 香港一级毛片免费看| 欧美中文字幕在线二区| 2021亚洲精品不卡a| 中文字幕永久在线观看| 国产成人禁片在线观看| 久久综合丝袜长腿丝袜| 2022国产无码在线| 美女高潮全身流白浆福利区| 亚洲精品手机在线| 亚洲精品第五页| 欧美日本在线观看| 国产凹凸视频在线观看| 99热这里只有精品5| 亚洲欧美色中文字幕| 亚洲国产精品人久久电影| 国产成人无码播放| 欧美精品1区| 欧美一区二区三区国产精品| 亚洲三级影院| 找国产毛片看|