[發明專利]基于模塊分解技術的軟件缺陷檢測系統的復雜性分析方法有效
| 申請號: | 201110398217.9 | 申請日: | 2011-12-05 |
| 公開(公告)號: | CN102521126A | 公開(公告)日: | 2012-06-27 |
| 發明(設計)人: | 宮云戰;趙云山;金大海;肖慶 | 申請(專利權)人: | 北京郵電大學 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36 |
| 代理公司: | 北京匯澤知識產權代理有限公司 11228 | 代理人: | 劉淑敏 |
| 地址: | 100876 *** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 模塊 分解 技術 軟件 缺陷 檢測 系統 復雜性 分析 方法 | ||
1.一種基于模塊分解技術的軟件缺陷檢測系統的復雜性分析方法,其特征在于,該分析方法包括:
A、根據所述缺陷檢測系統DTS缺陷檢測原理,將該分析方法的流程包括由前端輸入預處理模塊完成的前端輸入預處理步驟、由預分析模塊完成預分析的步驟、由正式分析模塊完成正式分析的步驟;
B、對所述的前端輸入預處理模塊、預分析模塊和正式分析模塊的內部所有分析單元,按其調用順序及依賴關系依次分析其復雜度,得到每個分析單元復雜性分布的性質和規律;
C、根據步驟B的分析結果,統計得出整個DTS系統的復雜性分布情況。
2.根據權利要求1所述的基于模塊分解技術的缺陷檢測系統的復雜性分析方法,其特征在于,將步驟B所述前端輸入預處理模塊、預分析模塊和正式分析模塊分別進一步分為:
將所述前端輸入預處理模塊分為:載入缺陷狀態機單元、源文件收集單元和程序轉換單元;
將所述預分析模塊分為:全局函數調用關系生成單元和文件分析次序解析單元;以及
將正式分析模塊分為:線程分析單元和缺陷檢測結果輸出單元。
3.根據權利要求1所述基于模塊分解技術的軟件缺陷檢測系統的復雜性分析方法,其特征在于,步驟C所述得出整個DTS系統的復雜性分布情況的過程,包括對前端預輸入處理模塊的分析單元進行復雜度分析,具體如下:
C1、將待測試的程序源文件載入缺陷狀態機單元,根據預先配置的待掃描缺陷狀態機類型,讀入對應的狀態機描述XML文件;復雜度取決于待掃描缺陷狀態機種類數Num(fsm);
C2、收集待進行缺陷檢測的源文件,如果以工程為單位進行檢測,則根據工程配置文件搜索待分析源文件;否則,直接搜索待掃描目錄,收集所有待檢測源文件;復雜度取決于待分析源文件數量Num(srcFiles);
C3、根據待測源文件的類型執行程序轉換,具體為:通過程序轉換單元,根據待檢測源文件類型,調用相應的編譯器進行預處理,得到預處理后的中間文件,作為后續分析的輸入;
如果是JAVA語言,需要調用JVM將源文件(.java)編譯為字節碼文件(.class);其復雜度取決于JVM的編譯器效率;
如果是C或CPP語言,需要調用相應的編譯器(gcc,?cl)將源文件(.c,?.cpp)預處理為中間文件(.i);其復雜度取決于編譯器的效率;
最后,將該類不可控分析單元的復雜度標記為O(∞)。
4.根據權利要求1所述的基于模塊分解技術的軟件缺陷檢測系統的復雜性分析方法,其特征在于,步驟C所述得出整個DTS系統的復雜性分布情況的過程,對預分析模塊的分析單元進行復雜度分析,具體如下:
C4、通過全局函數調用關系生成單元,首先進行預分析,生成全局函數調用關系,然后按字母順序遍歷所有源文件,查找所有需要分析的函數并建立全局函數表,保存函數間調用關系;同時,還能夠根據需要生成庫函數摘要;
C5、利用文件分析次序解析單元,根據所述全局函數表及調用關系,對文件調用關系進行拓撲排序,最終的文件分析次序為拓撲排序的逆序;該分析單元的復雜度取決于全局函數表中的函數個數Num(Proc)及每個函數調用其他函數的平均次數Num(ProcCall),得出該分析單元的復雜度:?Num(Proc)*Num(ProcCall)。
5.根據權利要求1所述的基于模塊分解技術的軟件缺陷檢測系統的復雜性分析方法,其特征在于,步驟C所述得出整個DTS系統的復雜性分布情況的過程,對正式分析模塊的分析單元進行復雜度分析,具體如下:
C6、利用線程分析單元,根據上述步驟C5中得到的文件分析次序,為每個文件依次生成分析線程,同時檢測線程執行過程中是否出現異常以便及時結束線程;
C7、通過缺陷檢測結果輸出單元,將所述步驟C6的輸出檢測結果寫入數據庫中;其復雜度取決于待分析文件數Num(srcFiles)及每個文件的平均缺陷數Num(IP),復雜度依賴于Num(srcFiles)*Num(IP)。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京郵電大學,未經北京郵電大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110398217.9/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:插孔連接器
- 下一篇:一種用于檢測差速器殼體內球面的檢具組件





