Issue tracking system using a similarity score to suggest and create duplicate issue requests across multiple projects
View Patent ↗An issue tracking system for tracking software development tasks is described herein. The issue tracking system may be configured to receive new issue requests from a client device and associate the new issue requests with one or more clusters of previously stored issue records. The issue tracking system may also determine similarity between issues in a first cluster of stored issue records and issues in a second cluster that is associated with a different software development project. Based on a determination that the issue similarity exceeds a threshold, the user may be prompted with one or more recommendations for a subsequent issue request or issue request content.
1. A method of extracting suggested issue content for creation of an issue in an issue tracking system on a device comprising a memory allocation and a processor allocation, the processor allocation configured to operate with the memory allocation to operate the issue tracking system, the method comprising:
causing display of a new-issue creation interface on a client device operating a client instance of a client application, the new-issue creation interface including a set of data entry fields including one or more of an issue title or an issue description;
subsequent to a first user input provided one or more data entry fields of the set of data entry fields, receiving an issue request at a server of the issue tracking system, the issue request including new issue data extracted from the set of data entry fields;
identifying an existing issue record managed by the issue tracking system by performing a similarity analysis between the new issue data and issue data extracted from the existing issue record;
identifying a cluster of issues associated with the existing issue record;
extracting suggested issue content from one or more issues of the cluster of issues;
causing display of the suggested issue content in at least one data entry field of the set of data entry fields in the new-issue creation interface; and
in response to a second user input provided to the new-issue creation interface, causing creation of a new issue in the issue tracking system.
2. The method of claim 1 , further comprising:
causing display of one or more additional suggested issues; and
the one or more additional suggested issues having issue content extracted from one or more issues of the cluster of issues.
3. The method of claim 2 , wherein the one or more additional suggested issues have a proposed series of issues corresponding to a series of issues of the cluster of issues.
4. The method of claim 1 , wherein the similarity analysis is performed by computing a cosine distance between the new issue data and one or more elements of the existing issue record.
5. The method of claim 4 , wherein the one or more elements of the existing issue record include one or more of: a title, a description, an issue summary, an assignee, or an issue tag.
6. The method of claim 1 , wherein the cluster of issues is defined as a set of issues having one or more fields satisfying a semantic similarity criteria.
7. The method of claim 1 , wherein the cluster of issues is defined as a set of issues associated with a project classification in the issue tracking system.
8. The method of claim 1 , wherein the one or more issues of the cluster of issues from which suggested issue content is extracted is the existing issue record.
9. A method of providing suggested content in a graphical user interface for creation of an issue in an issue tracking system, the method comprising:
causing display of the graphical user interface on a client device operating a client instance of a client application, the graphical user interface including a set of data entry fields;
subsequent to a first user input provided one or more data entry fields of the set of data entry fields, receiving a request at a server of the issue tracking system, the request including new issue data extracted from the set of data entry fields;
identifying an existing issue record managed by the issue tracking system by performing a similarity analysis between the new issue data and issue data extracted from the existing issue record;
identifying a cluster of issues associated with the existing issue record;
extracting suggested issue data from one or more issues of the cluster of issues;
causing display of one or more suggested issues based on the suggested issue data in the graphical user interface; and
in response to a second user input provided to the graphical user interface, causing creation of a new issue in the issue tracking system, the new issue corresponding to the one or more suggested issues.
10. The method of claim 9 , wherein:
the one or more suggested issues includes a series of issues; and
the series of issues is determined based on an issue dependency between the one or more issues of the cluster of issues.
11. The method of claim 9 , wherein:
the one or more suggested issues includes a series of issues; and
the series of issues is determined based on a creation sequence of the one or more issues of the cluster of issues.
12. The method of claim 9 , wherein:
the similarity analysis is performed by computing a natural language correlation between the new issue data and one or more elements of the existing issue record; and
the existing issue record is identified in response to the natural language correlation exceeding a similarity score.
13. The method of claim 12 , wherein computing the natural language correlation includes computing a distance between the new issue data and issue data extracted from the existing issue record.
14. A method of providing suggested content in a graphical user interface of an issue of an issue tracking system, the method comprising:
causing display of the graphical user interface on a client device operating a client instance of a client application, the graphical user interface including a set of data entry fields;
subsequent to a first user input provided one or more data entry fields of the set of data entry fields, receiving a request at a server of the issue tracking system, the request including new issue data extracted from the set of data entry fields;
identifying an existing issue record managed by the issue tracking system by performing a similarity analysis between the new issue data and issue data extracted from the existing issue record;
identifying a cluster of issues associated with the existing issue record;
extracting suggested issue data from one or more issues of the cluster of issues;
causing display of the suggested issue data in at least one data entry field of the set of data entry fields in the graphical user interface; and
in response to a second user input provided to the graphical user interface, causing creation of a new issue in the issue tracking system.
15. The method of claim 14 , wherein:
the suggested issue data includes data from a set of issues of the cluster of issues; and
the set of issues are related by a dependency between issues of the set of issues.
16. The method of claim 15 , further comprising:
causing display of one or more additional suggested issues; and
the one or more additional suggested issues having issue content extracted from the cluster of issues.
17. The method of claim 14 , wherein the cluster of issues is defined as a set of issues having one or more fields satisfying a semantic similarity criteria.
18. The method of claim 14 , wherein the cluster of issues is defined as a set of issues associated with a shared issue tag in the issue tracking system.
19. The method of claim 14 , wherein the one or more issues of the cluster of issues from which suggested issue content is extracted is the existing issue record.
20. The method of claim 14 , wherein the similarity analysis between the new issue data and the issue data extracted from the existing issue record is computed by one or more of:
determining a cosine distance between the new issue data and the issue data extracted from the existing issue record;
determining a Jaccard similarity between the new issue data and the issue data extracted from the existing issue record;
determining Euclidean distance between the new issue data and the issue data extracted from the existing issue record;
determining a Manhattan distance between the new issue data and the issue data extracted from the existing issue record; or
determining a semantic similarity between the new issue data and the issue data extracted from the existing issue record.