Vector-based identification of software dependency relationships
AssigneeInternational Business Machines Corporation
InventorsAndrew C. M. Hicks, Michael E. Gildein, Daniel John FitzGerald, Christopher G. Brooker
Life of this patent
Estimating the term…
Abstract
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.
Claims14
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.
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.
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.
Dependencies are inferred from the claim text.