Looking for breakthrough ideas for innovation challenges? Try Patsnap Eureka!

A method and apparatus for software fault location based on program invariants

A software fault and variable technology, applied in software testing/debugging, instrumentation, electrical digital data processing, etc., can solve problems such as false detection, missed position detection, and inability to accurately locate, so as to overcome missed detection of defect location and improve accuracy Effect

Active Publication Date: 2019-01-04
HARBIN INST OF TECH
View PDF4 Cites 18 Cited by
  • Summary
  • Abstract
  • Description
  • Claims
  • Application Information

AI Technical Summary

Problems solved by technology

If the learned invariants are too broad, the real cause of failure may not be included in the invariant violation candidate set, resulting in missed detection of defect locations; if the learned invariants are too narrow (missing some invariants), then May lead to a large number of false detections, unable to accurately locate the root cause of software failure

Method used

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
View more

Image

Smart Image Click on the blue labels to locate them in the text.
Viewing Examples
Smart Image
  • A method and apparatus for software fault location based on program invariants
  • A method and apparatus for software fault location based on program invariants
  • A method and apparatus for software fault location based on program invariants

Examples

Experimental program
Comparison scheme
Effect test

Embodiment Construction

[0048] In order to make the object, technical solution and advantages of the present invention clearer, the implementation manner of the present invention will be further described in detail below in conjunction with the accompanying drawings.

[0049] The types of program invariants, the quality of test cases, and error propagation all affect the effectiveness of fault location, and these influencing factors need to be considered comprehensively during the location process. In particular, there are still the following problems that need further analysis and resolution.

[0050] (1) How to automatically identify the program attributes needed in fault location, so that it has low computational complexity and ensures the effectiveness of fault location?

[0051] (2) How to select the test case set so that it can reduce the complexity of invariant analysis on the one hand and improve the effectiveness of positioning on the other hand?

[0052] (3) How to consider error state pro...

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to View More

PUM

No PUM Login to View More

Abstract

The invention discloses a software fault locating method and a device of program invariant. The method comprises the following steps that: the source code of the target software is inserted at the level of sentence, value and logical expression, and the source code after insertion is executed by a preset test case set to obtain the execution information; the source code of the target software is inserted at the level of sentence, value and logical expression; the preset failure test case set is clustered and the successful test case set is selected which is helpful to distinguish the defectivestatements for each clustering; the execution information of the preferred successful test case set is learnt, the program invariant set is obtained, including the set type, truth table type and floating point type range invariant; according to the execution information of the failed test case set and the program invariant set, the invariant violation is detected, and the suspicious statement setis obtained; dependency analysis is used to filter out invariant violation error caused by fault propagation, and invariant violation at each sentence is statistically analyzed to calculate sentencesuspicion. The invention improves the accuracy of software fault location, and overcomes the problem of missing detection of logical expression defect location.

Description

technical field [0001] The invention relates to the technical field of computer software, in particular to a software fault location method and device based on program invariants. Background technique [0002] Software systems often contain software defects, which reduce the reliability, usability and security of the software system. One of the most important tasks to fix a defect is to identify the location of the program element related to the defect, and then the programmer can modify the program according to the location of the suspicious program element and its program context to correct the defect. However, this process is very time-consuming and labor-intensive. Software debugging even accounts for 80% of the entire software overhead. Therefore, there is an urgent need for automated software fault location methods. [0003] In addition to directly supporting software developers, automated software error localization techniques are also used in automated program cor...

Claims

the structure of the environmentally friendly knitted fabric provided by the present invention; figure 2 Flow chart of the yarn wrapping machine for environmentally friendly knitted fabrics and storage devices; image 3 Is the parameter map of the yarn covering machine
Login to View More

Application Information

Patent Timeline
no application Login to View More
IPC IPC(8): G06F11/36
CPCG06F11/3684
Inventor 王甜甜许家欢王克朝苏小红
Owner HARBIN INST OF TECH
Who we serve
  • R&D Engineer
  • R&D Manager
  • IP Professional
Why Patsnap Eureka
  • Industry Leading Data Capabilities
  • Powerful AI technology
  • Patent DNA Extraction
Social media
Patsnap Eureka Blog
Learn More
PatSnap group products