System and method for detecting software patch dependencies
First Claim
1. A method of detecting software patch dependencies comprising:
- receiving one or more first lists of software code segments that include changes to the software code segments associated with one or more first software patches;
receiving a second list of software code segments that includes software code paths executed at run-time by a second software patch, wherein receiving the second list includes;
monitoring, by a code coverage tool, execution of the software code paths of the second software patch at run-time;
measuring, by the code coverage tool, the degree to which the software code paths of the second software patch have been tested or executed at run-time;
reporting the software code paths executed by the second software patch at run- time;
wherein said reporting includes which functions calls, statements or instructions have been executed during run-time; and
identifying the software code segments of the second software patch that are executed at run time;
identifying one or more matching software code segments that are included in at least one of the first lists and the second list, where the matching software code segments include changes associated with the one or more first software patches and software code paths executed at run-time by the second software patch;
identifying one or more dependencies of the second software patch based on the one or more matching software code segments, where the one or more dependencies represent one or more of the first software patches required by the second software patch; and
generating a list of the one or more first software patches required by the second software patch; and
compiling a software patch installation package that includes the second software patch and the one or more first software patches required by the second software patch.
2 Assignments
0 Petitions
Accused Products
Abstract
This disclosure relates to software patches and, more particularly, to detecting software patch dependencies in an environment where multiple software patches may be installed. A method, computer program product, and system for detecting software patch dependencies receives one or more first lists of software code segments, including changes to the software code segments associated with one or more first software patches. A second list of software code segments that includes software code paths executed at run-time by a second software patch is received. One or more matching code segments are identified. Dependencies of the second software patch based on the one or more matching software code segments are identified. The dependencies represent software patches required by the second software patch. A list of the dependencies is generated.
-
Citations
18 Claims
-
1. A method of detecting software patch dependencies comprising:
-
receiving one or more first lists of software code segments that include changes to the software code segments associated with one or more first software patches; receiving a second list of software code segments that includes software code paths executed at run-time by a second software patch, wherein receiving the second list includes; monitoring, by a code coverage tool, execution of the software code paths of the second software patch at run-time; measuring, by the code coverage tool, the degree to which the software code paths of the second software patch have been tested or executed at run-time; reporting the software code paths executed by the second software patch at run- time;
wherein said reporting includes which functions calls, statements or instructions have been executed during run-time; andidentifying the software code segments of the second software patch that are executed at run time; identifying one or more matching software code segments that are included in at least one of the first lists and the second list, where the matching software code segments include changes associated with the one or more first software patches and software code paths executed at run-time by the second software patch; identifying one or more dependencies of the second software patch based on the one or more matching software code segments, where the one or more dependencies represent one or more of the first software patches required by the second software patch; and
generating a list of the one or more first software patches required by the second software patch; andcompiling a software patch installation package that includes the second software patch and the one or more first software patches required by the second software patch. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A computer program product for detecting software patch dependencies, residing on a non-transitory computer readable medium, having a plurality of instructions stored thereon, which, when executed by a processor, cause the processor to perform operations comprising:
-
receiving one or more first lists of software code segments that include changes to the software code segments associated with one or more first software patches; receiving a second list of software code segments that includes software code paths executed at run-time by a second software patch, wherein receiving the second list includes; monitoring, by a code coverage tool, execution of the software code paths of the second software patch at run-time; measuring, by the code coverage tool, the degree to which the software code paths of the second software patch have been tested or executed at run-time; reporting the software code paths executed by the second software patch at run-time;
wherein said reporting includes which functions calls, statements or instructions have been executed during run-time; andidentifying the software code segments of the second software patch that are executed at run time; identifying one or more matching software code segments that are included in at least one of the first lists and the second list, where the matching software code segments include changes associated with the one or more first software patches and software code paths executed at run- time by the second software patch; identifying one or more dependencies of the second software patch based on the one or more matching software code segments, where the one or more dependencies represent one or more of the first software patches required by the second software patch; and generating a list of the one or more first software patches required by the second software patch; and compiling a software patch installation package that includes the second software patch and the one or more first software patches required by the second software patch. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A computing system comprising:
-
at least one processor;
at least one memory architecture coupled with the at least one processor;a first software instruction set executed on the at least one processor and the at least one memory architecture configured to receive one or more first lists of software code segments that include changes to the software code segments associated with one or more first software patches; a second software instruction set executed on the at least one processor and the at least one memory architecture configured to receive a second list of software code segments that includes software code paths executed at run-time by a second software patch, wherein the second software instruction set is configured to monitor, by a code coverage tool, execution of the software code paths of the second software patch at run-time and measure, by the code coverage tool, the degree to which the software code paths of the second software patch have been tested or executed at run-time, and configured to report the software code paths executed by the second software patch at run-time;
wherein said report includes which functions calls, statements or instructions have been executed during run-time and identify the software code segments of the second software patch that are executed at run time;a third software instruction set executed on the at least one processor and the at least one memory architecture configured to identify one or more matching software code segments that are included in at least one of the first lists and the second list, where the matching software code segments include changes associated with the one or more first software patches and software code paths executed at run-time by the second software patch; a fourth software instruction set executed on the at least one processor and the at least one memory architecture configured to identify one or more dependencies of the second software patch based on the one or more matching software code segments, where the one or more dependencies represent one or more of the first software patches required by the second software patch; and a fifth software instruction set executed on the at least one processor and the at least one memory architecture configured to generate a list of the one or more first software patches required by the second software patch; and a sixth software instruction set executed on the at least one processor and the at least one memory architecture configured to compile a software patch installation package that includes the second software patch and the one or more first software patches required by the second software patch. - View Dependent Claims (14, 15, 16, 17, 18)
-
Specification