Defect ownership assignment system and predictive analysis for codebases

US10175979B1 · US · B1

Patent metadata
FieldValue
Publication numberUS-10175979-B1
Application numberUS-201715417916-A
CountryUS
Kind codeB1
Filing dateJan 27, 2017
Priority dateJan 27, 2017
Publication dateJan 8, 2019
Grant dateJan 8, 2019

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

The present disclosure relates to a system and method for predicting errors in a software code base. The system generates an element set from a plurality of defect records that identify the developer who originated the defect, the code revisions related to the defect, and a classification of the defect. The system predicts the probability and type of defects in software using a machine learning algorithm configured using elements from the defect records and the code related to the defect records.

First claim

Opening claim text (preview).

What is claimed is: 1. A method for evaluating source code in a code base comprising: receiving, in a source control system, a first code revision to one or more code lines of a software application; associating, in the source control system, at least a first developer with each code line of the one or more code lines in the first code revision; identifying a first defect record related to a defect in the software application; receiving, in the source control system, a second code revision repairing the defect related to the first defect record by modifying at least one code line of the one or more code lines; associating, in the source control system, at least a second developer with the at least one code line in the second code revision; assigning, in the first defect record, the first developer as an originating developer of the defect and the second developer as a fixing developer of the defect; analyzing, the one or more code lines, a plurality of defect records including the first defect record, and metadata associated with the plurality of defect records, to determine an element set comprising input elements and output elements; and training a machine learning model, using the element set, to predict types and numbers of defects in software features based on elements of the new software features. 2. The method of claim 1 , further comprising: generating a programming code structure from the first code revision and the second code revisions; and recording the programming code structure in the first defect record. 3. The method of claim 1 , wherein the machine learning model is further trained, using the element set, to predict effective developers for resolving predicted defects. 4. The method of claim 1 , wherein the output elements comprise types and numbers of defects. 5. The method of claim 1 , wherein the input elements comprise originating developers and code elements. 6. The method of claim 1 , wherein the machine learning model is a neural network. 7. The method of claim 1 , wherein the metadata comprises times spent fixing defects, developer narratives, and categorizations of defects. 8. A system, comprising: a processor; and memory storing instructions which, when executed on the processor, cause the processor to perform an operation to assess errors in a code base, the operation comprising: receiving, in a source control system, a first code revision to one or more code lines of a software application; associating, in the source control system, at least a first developer with each code line of the one or more code lines in the first code revision; identifying a first defect record related to a defect in the software application; receiving, in the source control system, a second code revision repairing the defect related to the first defect record by modifying at least one code line of the one or more code lines; associating, in the source control system, at least a second developer with the at least one code line in the second code revision; assigning, in the first defect record, the first developer as an originating developer of the defect and the second developer as a fixing developer of the defect; analyzing, the one or more code lines, a plurality of defect records including the first defect record, and metadata associated with the plurality of defect records, to determine an element set comprising input elements and output elements; and training a machine learning model, using the element set, to predict types and numbers of defects in new software features based on elements of the new software features. 9. The system of claim 8 , the operation further comprising: generating a programming code structure from the first code revision and the second code revisions; and recording the programming code structure in the first defect record. 10. The system of claim 8 , wherein the machine learning model is further trained, using the element set, to predict effective developers for resolving predicted defects. 11. The system of claim 8 , wherein the output elements comprise types and numbers of defects. 12. The system of claim 8 , wherein the input elements comprise originating developers and code elements. 13. The system of claim 8 , wherein the machine learning model is a neural network. 14. The system of claim 8 , wherein the metadata comprises times spent fixing defects, developer narratives, and categorizations of defects. 15. A computer-readable medium comprising instructions which, when executed by one or more processors, performs an operation to assess errors in a code base, the operation comprising: receiving, in a source control system, a first code revision to one or more code lines of a software application; associating, in the source control system, at least a first developer with each code line of the one or more code lines in the first code revision; identifying a first defect record related to a defect in the software application; receiving, in the source control system, a second code revision repairing the defect related to the first defect record by modifying at least one code line of the one or more code lines; associating, in the source control system, at least a second developer with the at least one code line in the second code revision; assigning, in the first defect record, the first developer as an originating developer of the defect and the second developer as a fixing developer of the defect; analyzing the one or more code lines, a plurality of defect records including the first defect record, and metadata associated with the plurality of defect records, to determine an element set comprising input elements and output elements; training a machine learning model, using the element set, to predict types and numbers of defects in new software features based on elements of the new software features. 16. The computer-readable medium of claim 15 , the operation further comprising: generating a programming code structure from the first code revision and the second code revision; and recording the programming code structure in the first defect record. 17. The computer-readable medium of claim 15 , wherein the machine learning model is further trained, using the element set, to predict effective developers for resolving predicted defects. 18. The computer-readable medium of claim 15 , wherein the output elements comprise types and numbers of defects. 19. The computer-readable medium of claim 15 , wherein the input elements comprise originating developers and code elements. 20. The computer-readable medium of claim 15 , wherein the machine learning model is a neural network.

Assignees

Inventors

Classifications

  • Physics · mapped topic

  • G06F8/71Primary

    Version control (security arrangements therefor G06F21/57); Configuration management · CPC title

  • Supervised learning · CPC title

  • Learning methods · CPC title

  • Machine learning · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10175979B1 cover?
The present disclosure relates to a system and method for predicting errors in a software code base. The system generates an element set from a plurality of defect records that identify the developer who originated the defect, the code revisions related to the defect, and a classification of the defect. The system predicts the probability and type of defects in software using a machine learning…
Who is the assignee on this patent?
Intuit Inc
What technology area does this patent fall under?
Primary CPC classification G06F8/71. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jan 08 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 11 related publications on this page (citations in our corpus or others sharing the same primary CPC).