IP Library Granted Patent US 11,645,192
Granted Patent B2
US 11,645,192 · App. 17/191,964 · Granted May 9, 2023

Graph-based method for inductive bug localization

Inventors: Bo Zong (West Windsor, NJ); Haifeng Chen (West Windsor, NJ); Xuchao Zhang (Elkridge, MD)
Assignee: NEC Corporation
G06F11/3624G06F40/30G06N3/10
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,645,192
App. No.
17/191,964
Granted
May 9, 2023
Kind
B2
Abstract

A computer-implemented method executed by at least one processor for software bug localization is presented. The method includes constructing a bug localization graph to capture relationships between bug tickets and relevant source code files from historical change-sets and an underlying source code repository, leveraging natural processing language tools to evaluate semantic similarity between a new bug ticket and a historical ticket, in response to the evaluated semantic similarity, for the new bug ticket, adding links between the new bug ticket a set of similar historical tickets, incorporating the new bug ticket in the bug localization graph, and developing a mathematical graph expression to determine a closeness relationship between the relevant source code files and the new bug ticket.

Claims (31)

1. A computer-implemented method executed by at least one processor for software bug localization, the method comprising:

constructing a bug localization graph to capture relationships between bug tickets and relevant source code files from historical change-sets and an underlying source code repository;

leveraging a natural language processing tool to evaluate semantic similarity between a new bug ticket and a historical ticket;

in response to the evaluated semantic similarity, for the new bug ticket, adding links between the new bug ticket a set of similar historical tickets;

incorporating the new bug ticket in the bug localization graph; and

developing a mathematical graph expression to determine a closeness relationship between the relevant source code files and the new bug ticket,

wherein constructing the bug localization graph includes extracting reference relations and change-set relations;

wherein the bug localization graph includes a plurality of nodes and a plurality of edges connecting the nodes, each node representing either a relevant source code file or a bug ticket, and wherein two nodes are connected if they have reference relations; and

wherein the mathematical graph expression generates a closeness score for each new bug ticket node.

2. The method of claim 1 , wherein updates for the closeness score are performed iteratively.

3. A system for software bug localization, the system comprising:

a memory; and

a processor in communication with the memory, wherein the processor runs program code to:

construct a bug localization graph to capture relationships between bug tickets and relevant source code files from historical change-sets and an underlying source code repository;

leverage a natural language processing tool to evaluate semantic similarity between a new bug ticket and a historical ticket;

in response to the evaluated semantic similarity, for the new bug ticket, add links between the new bug ticket a set of similar historical tickets;

incorporate the new bug ticket in the bug localization graph; and

develop a mathematical graph expression to determine a closeness relationship between the relevant source code files and the new bug ticket,

wherein constructing the bug localization graph includes extracting reference relations and change-set relations;

wherein the bug localization graph includes a plurality of nodes and a plurality of edges connecting the nodes, each node representing either a relevant source code file or a bug ticket, and wherein two nodes are connected if they have reference relations; and

wherein the mathematical graph expression generates a closeness score for each new bug ticket node.

4. The system of claim 3 , wherein updates for the closeness score are performed iteratively.

5. A non-transitory computer-readable storage medium comprising a computer-readable program for software bug localization, wherein the computer-readable program when executed on a computer causes the computer to perform the steps of:

constructing a bug localization graph to capture relationships between bug tickets and relevant source code files from historical change-sets and an underlying source code repository;

leveraging a natural language processing tool to evaluate semantic similarity between a new bug ticket and a historical ticket;

in response to the evaluated semantic similarity, for the new bug ticket, adding links between the new bug ticket a set of similar historical tickets;

incorporating the new bug ticket in the bug localization graph; and

developing a mathematical graph expression to determine a closeness relationship between the relevant source code files and the new bug ticket,

wherein constructing the bug localization graph includes extracting reference relations and change-set relations;

wherein the bug localization graph includes a plurality of nodes and a plurality of edges connecting the nodes, each node representing either a relevant source code file or a bug ticket, and wherein two nodes are connected if they have reference relations; and

wherein the mathematical graph expression generates a closeness score for each new bug ticket node.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 23, 2023
From: NEC LABORATORIES AMERICA, INC.
To: NEC CORPORATION
Reel/Frame 063075/0066 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 4, 2021
From: ZONG, BO; CHEN, HAIFENG; ZHANG, XUCHAO
To: NEC LABORATORIES AMERICA, INC.
Reel/Frame 055493/0188 →
Continuity (2)
Provisional Application 62987928 · Mar 11, 2020
Related Publication 20210286706A1 · Sep 16, 2021