CN109376092B - Automatic analysis method for software defect reasons for defect patch codes - Google Patents

Automatic analysis method for software defect reasons for defect patch codes Download PDF

Info

Publication number
CN109376092B
CN109376092B CN201811412560.2A CN201811412560A CN109376092B CN 109376092 B CN109376092 B CN 109376092B CN 201811412560 A CN201811412560 A CN 201811412560A CN 109376092 B CN109376092 B CN 109376092B
Authority
CN
China
Prior art keywords
repair
defect
code
tree
code element
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201811412560.2A
Other languages
Chinese (zh)
Other versions
CN109376092A (en
Inventor
李斌
倪珍
孙小兵
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yangzhou University
Original Assignee
Yangzhou University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yangzhou University filed Critical Yangzhou University
Priority to CN201811412560.2A priority Critical patent/CN109376092B/en
Publication of CN109376092A publication Critical patent/CN109376092A/en
Application granted granted Critical
Publication of CN109376092B publication Critical patent/CN109376092B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3604Software analysis for verifying properties of programs
    • G06F11/3608Software analysis for verifying properties of programs using formal methods, e.g. model checking, abstract interpretation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Evolutionary Biology (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

The invention discloses a software defect reason automatic analysis method facing to a defect patch code, which comprises the following steps: firstly, extracting a defect report and a repair code file of repaired defects from a defect library to obtain a defect data set; then, classifying and marking the defect data set according to the defect generation reason category; dividing a code block related to repair from the repair code file by using a code distinguishing tool; then extracting code element terms and repair modes from the code block; then constructing a repair tree of the defect repair code; then, converting the repair tree into a vector form; and finally, automatically learning and acquiring a defect reason classification model through a convolutional neural network model. The method of the invention represents the repair codes of the defects from a plurality of angles, makes full use of the concept knowledge contained in the repair codes, and links the representation with the defect reason classification to obtain the automatic classification model of the defect reasons, thereby being capable of more effectively assisting developers to position and repair the defects.

Description

Automatic analysis method for software defect reasons for defect patch codes
Technical Field
The invention belongs to the field of software maintenance, and particularly relates to a method for automatically analyzing software defect reasons for defect patch codes.
Background
With the increase of the scale of software projects and the continuous evolution of software products, the number of software defects is also increased greatly. The traditional manual method for analyzing the defect reasons, positioning and repairing the defects cannot meet the requirement of quickly repairing the defects. A large amount of repair code of repaired defects is stored in a defect library of an open-source software defect tracking system, and the repair code implies various conceptual knowledge related to the defects, such as defect repair modes. Therefore, analyzing and characterizing the defect repair code may effectively assist developers in quickly understanding the cause of the defect, and locating and repairing the defect.
Current techniques for defect code analysis and description fall into two general categories: one class resembles the code to natural language and uses information retrieval based techniques to calculate text similarity of the code vocabulary and the defect report natural language vocabulary to aid in automatic defect localization. However, these methods have two problems, the first is the vocabulary mismatch problem: the terms used to describe defects in defect reports are different from the terms and code words used in the source file; the second is that a large amount of specific conceptual knowledge, such as code element type and code structure information, contained by the source code is not considered. The other type is focusing on the structure of the code, the change of the code on the tree structure is extracted by adopting a difference algorithm based on the tree structure, a repair example is obtained from historical defect repair, and automatic defect repair is assisted. Such approaches tend to favor the study of the code itself, ignoring the link between the defect and the repair code, such as the correlation of the cause of the defect to the mode of code repair. And the method is generally used for extracting a specific type of defect repair mode and has poor universality.
Disclosure of Invention
The invention solves the technical problem of describing software defect repair codes from multiple angles and developing a multivariate representation method of the software defect repair codes and an automatic defect classification method.
The technical solution for realizing the purpose of the invention is as follows: a software defect reason automatic analysis method facing defect patch codes comprises the following steps:
step 1, extracting a defect report and a repair code file of repaired defects from a defect library to obtain a defect data set;
step 2, self-defining the defect generation reason category, and classifying and marking the defect data set according to the defect generation reason category;
step 3, dividing a code block related to repair from the repair code file obtained in the step 1 by using a code distinguishing tool;
step 4, extracting code element terms and a repair mode from the code block obtained in the step 3;
step 5, constructing a repair tree of the defect repair code according to the code element terms and the repair mode obtained in the step 4;
step 6, converting the constructed repair tree of the defect repair codes into a vector form to obtain vector representation of the repair codes;
and 7, taking the vector representation of the repair code obtained in the step 6 and the classification label marked in the step 2 as the input of a convolutional neural network model, and automatically learning to obtain a defect reason classification model so as to finish automatic analysis of software defect reasons.
Compared with the prior art, the invention has the following remarkable advantages: 1) the method uses a code element term, a code element concept type and a code repair operation from multiple angles to comprehensively express the defect repair code, and the expression simultaneously comprises text vocabulary semantic features, concept type semantic features and structure semantic features; 2) the method utilizes the corresponding relation of the code repair mode and the defect reason classification on the AST hierarchical structure to closely connect the defect code repair mode and the defect reason classification; 3) the invention adopts a representation learning method based on a tree structure to represent the repair tree of the defect repair code, the representation method comprises the multi-angle repair code characteristics, the representation is used as the input of a deep learning model, the defect reason classifier is obtained by utilizing the advantage that the deep learning model can automatically learn the data characteristics, and the developer can be effectively assisted to search the defect generation reason.
The present invention is described in further detail below with reference to the attached drawing figures.
Drawings
FIG. 1 is a flowchart of an automatic analysis method for software defect reasons of defect patch codes according to the present invention.
FIG. 2 is a defect cause distribution diagram of the Mozilla project and Radare2 projects extracted according to an embodiment of the present invention.
FIG. 3 is a screenshot of a differentiated code before and after defect repair extracted in an embodiment of the present invention.
Fig. 4 is a schematic diagram of a repair tree of an AST structure according to an embodiment of the present invention.
Detailed Description
With reference to fig. 1, the present invention provides a method for automatically analyzing software defect reasons for defect patch codes, which comprises the following steps:
step 1, extracting a defect report and a repair code file of repaired defects from a defect library to obtain a defect data set.
And 2, self-defining the defect generation reason category, and classifying and marking the defects according to the defect generation reason category to obtain a code data set of the defect generation reason category. The generation reason types of the custom defects are shown in the following table 1:
TABLE 1 Defect cause Classification Table used in the present invention
Figure BDA0001878833250000031
Figure BDA0001878833250000041
And 3, dividing a code block related to repair from the repair code file obtained in the step 1 by using a code distinguishing tool. When the code blocks related to the modification are divided, the division granularity is a complete AST tree structure.
Step 4, extracting code element terms and repair modes from the code block obtained in step 3, specifically:
step 4-1, extracting code element terms from the code block acquired in the step 3 by using a predefined rule;
wherein, the code element terms, namely code text words, comprise identifiers, literal amounts and operators;
the predefined rules are: removing keywords of a programming language and common symbols except operators;
4-2, extracting a repair mode from the code block obtained in the step 3 by using an extraction technology based on an abstract syntax tree and combining a code distinguishing tool;
wherein the repair mode comprises a code element concept type and a repair operation; the conceptual type of the code element is the role of the code element in the code, and the repair operation is a modification operation on the code element.
Step 5, constructing a repair tree of the defect repair code according to the code element terms and the repair mode obtained in the step 4, which specifically comprises the following steps:
and constructing a repair tree based on the abstract syntax tree, wherein each node is a repair to one abstract syntax tree node and comprises the code element term, the code element concept type and the repair operation to the code element term and the code element concept type which are related to the node.
Step 6, converting the constructed repair tree of the defect repair codes into a vector form to obtain vector representation of the repair codes, wherein the method adopted for converting the repair tree into the vector form is a representation learning method based on a tree structure, and specifically comprises the following steps:
step 6-1, the leaf nodes of the repair tree are represented by direct vectors thereof, and the non-leaf nodes are represented by combined vectors;
the combination vector is a linear combination of a direct vector of a non-leaf node and a sub-node representation of the direct vector, wherein the sub-node is a leaf node or a non-leaf node;
let c1,…,cnFor children nodes other than the leaf node p, the combined vector of p is represented as:
p=Wcomb1·vec(p)+Wcomb2·tanh(∑liWcode,i·vec(ci)+bcode)
where vec (-) is a direct vector of nodes,
Figure BDA0001878833250000042
is node ciThe corresponding weight matrix is used to determine the weight,
Figure BDA0001878833250000043
for deviation,. liIs a weight coefficient;
Figure BDA0001878833250000044
are all combination parameters, are in [0,1 ]]Any value within the range;
Figure BDA0001878833250000045
a real number matrix;
the direct vector is a linear combination of related code element items, concept types of the elements and direct vectors of the repair actions, and the direct vector of a certain node f is expressed as:
f=Wfe·Vec(fe)+Wft·Vec(ft)+Wfa·Vec(fa)
in the formula, Vec (f)e)、Vec(ft)、Vec(fa) Direct vectors of code element terms, code element concept types, repair operations, respectively;
Figure BDA0001878833250000051
are all combination parameters, are in [0,1 ]]Any value within the range, and Wfe+Wft+Wfa=1;
As can be seen from the above, each node of the repair tree is represented as a distributed real-valued vector
Figure BDA0001878833250000052
Step 6-2, in the neural network based on the tree structure, applying a characteristic detector to slide on the repair tree to detect and extract the characteristics in the representation method in the step 6-1, and assuming that the repair tree has n nodes, the output of the characteristic detector is as follows:
Figure BDA0001878833250000053
in the formula (I), the compound is shown in the specification,
Figure BDA0001878833250000054
Ncis the number of feature detectors.
And 7, taking the vector representation of the repair code obtained in the step 6 and the classification label marked in the step 2 as the input of a convolutional neural network model, and automatically learning to obtain a defect reason classification model, which specifically comprises the following steps:
7-1, aggregating all the features extracted by the feature detector by using a standard dynamic pool layer of a unidirectional pool;
7-2, dividing the defect data set in the step 1 into a training set and a testing set;
and 7-3, taking the aggregated features as the input of an output layer of the convolutional neural network model, namely taking the vector representation of the repair code obtained in the step 6 and the classification label marked in the step 2 as the input of the convolutional neural network model, verifying the training set by using the convolutional neural network model, then performing cross verification on the test set to obtain an automatic defect classifier, and finishing automatic classification of the historical defects according to the generation reasons.
The present invention will be described in further detail with reference to examples.
Examples
With reference to fig. 1, the method for automatically analyzing software defect reasons for defect patch codes of the present invention includes the following steps:
step 1, in this embodiment, Mozilla and Radare2 defect libraries are used as data, and in consideration of the accuracy of defect data, a keyword matching search and crawler technology is adopted to screen out historical defects in fixed (repaired) and verified states, and front and rear code segments in submission information of the historical defects are extracted to serve as a data set of an experiment. FIG. 3 is a schematic diagram of the extracted distinguishing codes before and after repair of one of the defects.
And 2, defining the generation reason type of the defects as shown in the table 1. And (3) dividing the defect data set obtained in the step (1) into a training set, a verification set and a test set according to the proportion of the number of the defects to be 3:1: 1. And manually analyzing the defect report and the repair code in the data set, and carrying out reason classification and marking on each defect in the data set according to the defined defect generation reason. Wherein, the classification of the defect reason is labeled by using 19 sub-types of the classification of the defect reason. FIG. 2 is a diagram of the defect cause number distribution of the Mozilla item and Radare2 items extracted in this embodiment.
Step 3, extracting the code segments before and after repair in the submission information of the repaired defects from the repair code file obtained in the step 1 by using a code distinguishing tool, and dividing the repair code segments into code blocks with independent AST structures; taking the defect repair code shown in fig. 3 as an example, one of the repair-related if statements: if (0 ═ strlen (phones)) { ckd _ free (phones); return 0; is a code block with independent AST structure.
Step 4, extracting the code element terms of the code block obtained in the step 3 by using a predefined rule, and extracting the concept type containing the code elements and the repair mode of the code block obtained in the step 3 by using an extraction technology based on an Abstract Syntax Tree (AST);
and 4-1, extracting the code element terms of the code block obtained in the step 3 by using a predefined rule. Taking the defect repair code shown in fig. 3 and the if statement as an example, the common symbols and the redundant spaces are removed, and the code element words are extracted to obtain the code element terms of each defect. The code element terms in this embodiment include: '0', 'strlen', 'lights', and 'ckd _ free'.
And 4-2, extracting the concept type of the code elements and the repairing operation at the AST level by means of an AST extraction-based repairing mode extracting technology. The extracted code element concept type and repair operation in this embodiment include: "If Insert", "Condition Insert", "If-body Insert", "live Insert", "FunCall Insert", "Return Insert", "Name Insert", "Args Insert" and "Var Insert".
And 5, combining the code element terms, the code element concept types and the repair operation of each defect obtained in the step 4 to construct a repair tree. The defect repair code as in this embodiment indicates that if statement blocks containing jump statements are added, and the schematic diagram of the repair tree thereof is shown in fig. 4. For visual representation, the code element terms of each node that are actually extracted are omitted in fig. 4. As can be seen from FIG. 4, each node of the repair tree is a meta-repair pattern, e.g., f1=(If Insert,*),f2=(Condtn Insert,f1),f3=(If-body Insert,f1),f4=(Literal Insert,f2),f5=(FunCall Insert,f2),f6=(FunCall Insert,f3),and f7=(Return Insert,f3) And so on. The above formalized representation of each node is fi=(eti,pti) In which etiIs the repair of the current node, ptiIs the repair of its parent node. It can be seen that f1And f2And f3Respectively parent-child relationship, otherwise similar, that is, they are nested on the AST structure.
And 6, converting the repair tree constructed in the step 5 into a vector form by a representation learning method based on a tree structure to obtain vector representation of the repair code.
And 7, using the vector representation set of the repair codes obtained in the step 6 and the artificial classification labels marked in the step 2 as the input of the convolutional neural network model, and automatically learning to obtain a defect reason classification model. For example, the classification result obtained by using the classification model is as follows: 0302 the extreme conditions are ignored (see table 1 above).
The method of the invention represents the repair codes of the defects from a plurality of angles, makes full use of the concept knowledge contained in the repair codes, and links the representation with the defect reason classification to obtain the automatic classification model of the defect reasons, thereby being capable of more effectively assisting developers to position and repair the defects.

Claims (7)

1. A software defect reason automatic analysis method facing defect patch codes is characterized by comprising the following steps:
step 1, extracting a defect report and a repair code file of repaired defects from a defect library to obtain a defect data set;
step 2, self-defining the defect generation reason category, and classifying and marking the defect data set according to the defect generation reason category;
step 3, dividing a code block related to repair from the repair code file obtained in the step 1 by using a code distinguishing tool;
step 4, extracting code element terms and a repair mode from the code block obtained in the step 3;
step 5, constructing a repair tree of the defect repair code according to the code element terms and the repair mode obtained in the step 4;
step 6, converting the constructed repair tree of the defect repair codes into a vector form to obtain vector representation of the repair codes;
and 7, taking the vector representation of the repair code obtained in the step 6 and the classification label marked in the step 2 as the input of a convolutional neural network model, and automatically learning to obtain a defect reason classification model so as to finish automatic analysis of software defect reasons.
2. The method for automatically analyzing software defect reasons for defect patch codes as claimed in claim 1, wherein the categories of the causes of the custom defects in step 2 are shown in the following table 1:
TABLE 1 Defect cause Classification
Figure FDA0002969392910000011
Figure FDA0002969392910000021
3. The method for automatically analyzing software defect reasons facing defect patch codes as claimed in claim 1 or 2, wherein the step 3 divides the code blocks related to repair with a division granularity of a complete AST tree structure.
4. The method for automatically analyzing software defect causes for defect patch codes as claimed in claim 1, wherein the step 4 is to extract code element terms and repair modes from the code block obtained in the step 3, specifically:
step 4-1, extracting code element terms from the code block acquired in the step 3 by using a predefined rule;
wherein, the code element terms, namely code text words, comprise identifiers, literal amounts and operators;
the predefined rules are: removing keywords of a programming language and common symbols except operators;
4-2, extracting a repair mode from the code block obtained in the step 3 by using an extraction technology based on an abstract syntax tree and combining a code distinguishing tool;
wherein the repair mode comprises a code element concept type and a repair operation; the conceptual type of the code element is the role of the code element in the code, and the repair operation is a modification operation on the code element.
5. The method for automatically analyzing software defect causes for defect patch codes as claimed in claim 4, wherein the step 5 of constructing the repair tree of the defect repair code according to the code element terms and the repair mode obtained in the step 4 specifically comprises:
and constructing a repair tree based on the abstract syntax tree, wherein each node is a repair to one abstract syntax tree node and comprises the code element term, the code element concept type and the repair operation to the code element term and the code element concept type which are related to the node.
6. The method for automatically analyzing software defect causes of defect patch codes as claimed in claim 5, wherein the step 6 is to convert the constructed repair tree of the defect repair codes into a vector form to obtain the vector representation of the repair codes, and the method adopted is as follows: the representation learning method based on the tree structure specifically comprises the following steps:
step 6-1, the leaf nodes of the repair tree are represented by direct vectors thereof, and the non-leaf nodes are represented by combined vectors;
the combination vector is a linear combination of a direct vector of a non-leaf node and a sub-node representation of the direct vector, wherein the sub-node is a leaf node or a non-leaf node;
let c1,...,cnFor children nodes other than the leaf node p, the combined vector of p is represented as:
p=Wcomb1·vec(p)+Wcomb2·tanh(∑liWcode,i·vec(ci)+bcode)
where vec (-) is a direct vector of nodes,
Figure FDA0002969392910000031
is node ciThe corresponding weight matrix is used to determine the weight,
Figure FDA0002969392910000032
for deviation,. liIs a weight coefficient;
Figure FDA0002969392910000033
are all combination parameters, are in [0,1 ]]Any value within the range;
Figure FDA0002969392910000034
a real number matrix;
the direct vector is a linear combination of code element terms, code element concept types and direct vectors of repair operations, and the direct vector of a certain node f is represented as:
Figure FDA0002969392910000035
in the formula, Vec (f)e)、Vec(ft)、Vec(fa) Direct vectors of code element terms, code element concept types, repair operations, respectively;
Figure FDA0002969392910000036
are all combination parameters, are in [0,1 ]]Any value within the range, and
Figure FDA0002969392910000037
as can be seen from the above, each node of the repair tree is represented as a distributed real-valued vector
Figure FDA0002969392910000038
Step 6-2, in the neural network based on the tree structure, applying a characteristic detector to slide on the repair tree to detect and extract the characteristics in the representation method in the step 6-1, and assuming that the repair tree has n nodes, the output of the characteristic detector is as follows:
Figure FDA0002969392910000041
in the formula (I), the compound is shown in the specification,
Figure FDA0002969392910000042
Ncis the number of feature detectors.
7. The method for automatically analyzing software defect causes for defect patch codes as claimed in claim 6, wherein the step 7 takes the vector representation of the repair code obtained in the step 6 and the classification label marked in the step 2 as the input of the convolutional neural network model, and automatically learns and obtains the cause classification model of the defect, specifically:
7-1, aggregating all the features extracted by the feature detector by using a standard dynamic pool layer of a unidirectional pool;
7-2, dividing the defect data set obtained in the step 1 into a training set and a testing set;
and 7-3, taking the aggregated features as the input of an output layer of the convolutional neural network model, namely taking the vector representation of the repair code obtained in the step 6 and the classification label marked in the step 2 as the input of the convolutional neural network model, verifying the training set by using the convolutional neural network model, then performing cross verification on the test set to obtain an automatic defect classifier, and finishing automatic classification of the historical defects according to the generation reasons.
CN201811412560.2A 2018-11-26 2018-11-26 Automatic analysis method for software defect reasons for defect patch codes Active CN109376092B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811412560.2A CN109376092B (en) 2018-11-26 2018-11-26 Automatic analysis method for software defect reasons for defect patch codes

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811412560.2A CN109376092B (en) 2018-11-26 2018-11-26 Automatic analysis method for software defect reasons for defect patch codes

Publications (2)

Publication Number Publication Date
CN109376092A CN109376092A (en) 2019-02-22
CN109376092B true CN109376092B (en) 2021-07-13

Family

ID=65383010

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811412560.2A Active CN109376092B (en) 2018-11-26 2018-11-26 Automatic analysis method for software defect reasons for defect patch codes

Country Status (1)

Country Link
CN (1) CN109376092B (en)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110162245B (en) * 2019-04-11 2020-12-08 北京达佳互联信息技术有限公司 Analysis method and device of graphic operation, electronic equipment and storage medium
CN110221933B (en) * 2019-05-05 2023-07-21 北京百度网讯科技有限公司 Code defect auxiliary repairing method and system
CN110188047B (en) * 2019-06-20 2023-04-18 重庆大学 Double-channel convolutional neural network-based repeated defect report detection method
CN110349477B (en) * 2019-07-16 2022-01-07 长沙酷得网络科技有限公司 Programming error repairing method, system and server based on historical learning behaviors
CN111240978A (en) * 2020-01-09 2020-06-05 上海丰蕾信息科技有限公司 Data report generation and analysis method
CN111177016B (en) * 2020-04-14 2020-08-21 四川新网银行股份有限公司 Software test defect management method
CN112069069A (en) * 2020-09-03 2020-12-11 平安信托有限责任公司 Defect automatic positioning analysis method, device and readable storage medium
CN112181428B (en) * 2020-09-28 2021-10-22 北京航空航天大学 Abstract syntax tree-based open-source software defect data classification method and system
CN112860362B (en) * 2021-02-05 2022-10-04 达而观数据(成都)有限公司 Visual debugging method and system for robot automation process
CN113010420B (en) * 2021-03-05 2023-05-30 南方科技大学 Method and terminal equipment for promoting co-evolution of test codes and product codes
CN117616439A (en) * 2021-07-06 2024-02-27 华为技术有限公司 System and method for detecting software bug fixes
CN115934147A (en) * 2021-08-06 2023-04-07 中兴通讯股份有限公司 Automatic software restoration method and system, electronic equipment and storage medium

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105159822B (en) * 2015-08-12 2017-08-29 南京航空航天大学 A kind of software defect positioning method based on text part of speech and routine call relation
CN108829607B (en) * 2018-07-09 2021-08-10 华南理工大学 Software defect prediction method based on convolutional neural network

Also Published As

Publication number Publication date
CN109376092A (en) 2019-02-22

Similar Documents

Publication Publication Date Title
CN109376092B (en) Automatic analysis method for software defect reasons for defect patch codes
CN110597735B (en) Software defect prediction method for open-source software defect feature deep learning
CN112214610B (en) Entity relationship joint extraction method based on span and knowledge enhancement
CN106407113B (en) A kind of bug localization method based on the library Stack Overflow and commit
CN106202543A (en) Ontology Matching method and system based on machine learning
CN109977205B (en) Method for computer to independently learn source code
CN111427775B (en) Method level defect positioning method based on Bert model
CN111309607B (en) Software defect positioning method of code method level
CN113254507B (en) Intelligent construction and inventory method for data asset directory
CN113138920B (en) Software defect report allocation method and device based on knowledge graph and semantic role labeling
Ramesh et al. Metrics for software requirements specification quality quantification
CN109858550B (en) Machine identification method for potential process failure mode
Ke et al. Interpretable test case recommendation based on knowledge graph
Simanjuntak Proposed framework for automatic grading system of ER diagram
CN111723021B (en) Defect report automatic allocation method based on knowledge base and representation learning
CN112328469B (en) Function level defect positioning method based on embedding technology
CN103559510B (en) Method for recognizing social group behaviors through related topic model
CN117009223A (en) Software testing method, system, storage medium and terminal based on abstract grammar
Alhindawi et al. A Topic Modeling Based Solution for Confirming Software Documentation Quality
CN115408506B (en) NL2SQL method combining semantic analysis and semantic component matching
CN114462387B (en) Sentence pattern automatic discrimination method under no-label corpus
Mz et al. Development of Software Cost Estimation and Resource Allocation Using Natural Language Processing, Cosine Similarity and Function Point
CN110807096A (en) Information pair matching method and system on small sample set
CN114372148A (en) Data processing method based on knowledge graph technology and terminal equipment
CN114357175A (en) Data mining system based on semantic network

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant