Vector-based identification of software dependency relationships

US11455154B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11455154-B2
Application numberUS-202017117650-A
CountryUS
Kind codeB2
Filing dateDec 10, 2020
Priority dateDec 10, 2020
Publication dateSep 27, 2022
Grant dateSep 27, 2022

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.

Techniques for vector-based identification of software dependency relationships are described herein. An aspect includes determining a first dependency relationship value between a first code segment and a second code segment. Another aspect includes calculating a magnitude vector based on the first dependency relationship value and a second dependency relationship value corresponding to the first code segment and the second code segment. Another aspect includes determining a relationship score for the first code segment and the second code segment based on the magnitude vector and the first dependency relationship value.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer-implemented method comprising: determining, by a processor, a first dependency relationship value between a first code segment and a second code segment; calculating, by the processor, a magnitude vector based on the first dependency relationship value, wherein the magnitude vector comprises a slope value corresponding to a trend in the first dependency relationship value over a discrete time window; and calculating a second dependency relationship value corresponding to the first code segment and the second code segment, wherein the second dependency relationship value comprises a historical dependency relationship value that is within a discrete time window from the first dependency relationship value; determining, by the processor, a relationship score for the first code segment and the second code segment based on the magnitude vector and the first dependency relationship value; and determining that the first code segment and the second code segment are related based on the relationship score being above a threshold value. 2. The method of claim 1 , wherein the first dependency relationship value is determined based on receiving an update to the first code segment. 3. The method of claim 1 , further comprising: notifying a developer corresponding to the first code segment based on determining that the first code segment and the second code segment are related; and updating the second code segment based on determining that the first code segment and the second code segment are related. 4. The method of claim 1 , further comprising: determining a respective dependency relationship value between the first code segment and each of a plurality of code segments in a software product; and determining a respective relationship score corresponding to each of the determined respective dependency relationship values. 5. The method of claim 1 , wherein the first dependency relationship value is determined based on a source code dependency graph. 6. A system comprising: a memory having computer readable instructions; and one or more processors for executing the computer readable instructions, the computer readable instructions controlling the one or more processors to perform operations comprising: determining a first dependency relationship value between a first code segment and a second code segment; calculating a magnitude vector based on the first dependency relationship value, wherein the magnitude vector comprises a slope value corresponding to a trend in the first dependency relationship value over a discrete time window; and calculating a second dependency relationship value corresponding to the first code segment and the second code segment, wherein the second dependency relationship value comprises a historical dependency relationship value that is within a discrete time window from the first dependency relationship value; determining a relationship score for the first code segment and the second code segment based on the magnitude vector and the first dependency relationship value; and determining that the first code segment and the second code segment are related based on the relationship score being above a threshold value. 7. The system of claim 6 , wherein the first dependency relationship value is determined based on receiving an update to the first code segment. 8. The system of claim 6 , wherein the operations further comprise: notifying a developer corresponding to the first code segment based on determining that the first code segment and the second code segment are related; and updating the second code segment based on determining that the first code segment and the second code segment are related. 9. The system of claim 6 , wherein the operations further comprise: determining a respective dependency relationship value between the first code segment and each of a plurality of code segments in a software product; and determining a respective relationship score corresponding to each of the determined respective dependency relationship values. 10. The system of claim 6 , wherein the first dependency relationship value is determined based on a source code dependency graph. 11. A computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by one or more processors to cause the one or more processors to perform operations comprising: determining a first dependency relationship value between a first code segment and a second code segment; calculating a magnitude vector based on the first dependency relationship value, wherein the magnitude vector comprises a slope value corresponding to a trend in the first dependency relationship value over a discrete time window; and calculating a second dependency relationship value corresponding to the first code segment and the second code segment, wherein the second dependency relationship value comprises a historical dependency relationship value that is within a discrete time window from the first dependency relationship value; determining a relationship score for the first code segment and the second code segment based on the magnitude vector and the first dependency relationship value; and determining that the first code segment and the second code segment are related based on the relationship score being above a threshold value. 12. The computer program product of claim 11 , wherein the first dependency relationship value is determined based on receiving an update to the first code segment. 13. The computer program product of claim 11 , wherein the operations further comprise: notifying a developer corresponding to the first code segment based on determining that the first code segment and the second code segment are related; and updating the second code segment based on determining that the first code segment and the second code segment are related. 14. The computer program product of claim 11 , wherein the operations further comprise: determining a respective dependency relationship value between the first code segment and each of a plurality of code segments in a software product; and determining a respective relationship score corresponding to each of the determined respective dependency relationship values.

Assignees

Inventors

Classifications

  • G06F17/18Primary

    for evaluating statistical data {, e.g. average values, frequency distributions, probability functions, regression analysis (forecasting specially adapted for a specific administrative, business or logistic context G06Q10/04)} · CPC title

  • G06F8/433Primary

    Dependency analysis; Data or control flow analysis · CPC title

  • Matrix or vector computation {, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization (matrix transposition G06F7/78)} · CPC title

  • Updates (security arrangements therefor G06F21/57) · CPC title

  • Version control (security arrangements therefor G06F21/57); Configuration management · 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 US11455154B2 cover?
Techniques for vector-based identification of software dependency relationships are described herein. An aspect includes determining a first dependency relationship value between a first code segment and a second code segment. Another aspect includes calculating a magnitude vector based on the first dependency relationship value and a second dependency relationship value corresponding to the fi…
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification G06F17/18. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Sep 27 2022 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 4 related publications on this page (citations in our corpus or others sharing the same primary CPC).