[發明專利]一種去除完美理解假設的軟件故障定位系統有效
| 申請號: | 201810728884.0 | 申請日: | 2018-07-05 |
| 公開(公告)號: | CN108984402B | 公開(公告)日: | 2021-07-16 |
| 發明(設計)人: | 楊波;于茜 | 申請(專利權)人: | 北方工業大學 |
| 主分類號: | G06F11/36 | 分類號: | G06F11/36;G06F11/34 |
| 代理公司: | 北京市廣友專利事務所有限責任公司 11237 | 代理人: | 張洪飛 |
| 地址: | 100144 *** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 去除 完美 理解 假設 軟件 故障 定位 系統 | ||
本發明公開了一種關于去除完美理解假設的軟件故障定位方法,本方法通過實現Eclipse監控插件,將用戶的調試信息保存在MYSQL數據庫中,這些信息包括用戶的調試行為信息和程序上下文情景信息。通過分析這些信息發現,對于同一故障調試人員的調試軌跡具有一定的關聯性,參照關鍵類本方法給出了調試中的關鍵信息,并采用基于標簽的關鍵信息識別方法,作為通用的推薦規則,將關鍵信息作為推薦的內容,直接反饋到用戶的集成開發環境中,從而輔助調試人員定位故障。
技術領域
本發明涉及軟件故障定位方法,特別是去除完美理解假設的情況下,定義與識別關鍵信息,并計算關鍵程度推薦給用戶,輔助調試人員定位故障。
背景技術
對于軟件調試來說,如何找到可用于推薦的關鍵信息是推薦系統在故障定位中應用的最重要一環。這激勵Lisa Burnell和Eric Horvitz研究如何利用邏輯和概率推理的方法來支持軟件調試,他們描述了一個基于邏輯的合成和概率推理的方法[18],可以被用來識別在復雜的軟件中故障的來源和位置.該方法可以被用來診斷Sabre系統在運行時的錯誤,Sabre系統是世界上最大的分時預定系統.驗證結果顯示,該方法可以把軟件工程師的注意力引向那些有很大可能包含錯誤的程序執行路徑和程序指令上,從而提高調試效率.利用公式計算可疑度,將語句按照可疑度進行排名,推薦給用戶。這種方式很大程度上減少了開發人員理解程序故障的時間,更快速的定位故障。其中較典型的比如Tarantula公式,Tarantula利用了從標準測試工具中很容易獲得的信息:關于每組測試用例的成功/失敗信息,每個測試用例執行的實體(比如,語句,分支,方法),以及待測程序的源代碼。Tarantula的思路是,在一個主要執行失敗的測試用例的程序比那些主要通過成功測試用例的程序更有可能是錯誤的.不同于此前使用的故障定位技術,Tarantula允許一些對錯誤的容忍偶爾可以通過成功的測試用例.這種容忍經常可以提供更有效的故障定位信息。
從2008年至今,國內外出現很多關于關鍵類識別的文獻,比如:《AutomaticIdentification of Key Classes in a Software System Using WebminingTechniques》、《一種基于關鍵類判定的代碼提交理解輔助方法》、《基于關鍵類判定的代碼提交理解輔助方法》,國內外學者不斷通過實驗驗證關鍵類關鍵變量的識別可以提高軟件在開發和調試過程中的速度和準確度。但目前尚缺乏關于調試時的關鍵類、關鍵變量規則的提出,本課題針對這一缺陷,通過監控、搜集調試信息,提出關鍵變量存在的通用規則,給出代碼推薦的統一模式。
本方法關于關鍵信息的定義參照Philippe Galinier等學者對關鍵類的定義:
(1)最重要的類一定需要更深層的測試
(2)頻繁修改的類是最復雜的且發生錯誤傾向最大的
(3)從本質上來說,某個元素引用的其他元素的數量越多,這個元素就越重要.
發明內容
本發明作為輔助軟件故障定位的手段,所要解決的是如何從調試信息中識別出關鍵信息,并將計算后的關鍵信息按照關鍵程度排名推薦給用戶。
本發明的技術解決問題是:關鍵信息的識別,并推薦給用戶,提高故障定位的效率。
本發明的技術解決方案:基于標簽的關鍵信息識別方法。
調試信息的收集是利用eclipse監控插件監控調試人員調試行為,并將其保存在MYSQL數據庫中,包括用戶設置的斷點位置、斷點表達式、查看的變量等信息。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北方工業大學,未經北方工業大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810728884.0/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種解耦測試方法
- 下一篇:FPGA邏輯代碼的驗證方法及裝置





