Discovering multi-component software products
First Claim
1. A method for discovering software components belonging to software products in a data processing system, at least one of the software components being suitable to belong to a plurality of software products, wherein the method comprises:
- associating each software product with the definition of at least one group of software components based on a relationship among the software components of the group,detecting the software components available in the data processing system being included in each group,identifying the groups being valid according to the inclusion of the software components of the corresponding definition, andassigning each available software component to at least one of the plurality of software products having at least one associated valid group including the available software component, wherein assigning comprises;
assigning each available software component included in a valid group associated with a single software product to the single software product, andassigning each available software component included in a plurality of eligible ones of the valid groups associated with a plurality of eligible ones of the software products to a selected one of the eligible software products by;
calculating a score of each eligible software product according to the available software components included in the associated valid groups, andselecting the eligible software product having the best score.
0 Assignments
0 Petitions
Accused Products
Abstract
A solution for discovering shared software components (C1-C9) of software products (PRODa-PRODe) installed on a data processing system is proposed. In order to achieve this result, for each software product the corresponding software components are aggregated into groups (Ga1-Ge1); each group includes software components that must be linked by a corresponding relationship (such as a co-location on the same operating system image). In this way, it is possible to assign a software component available on the system to its software product even when it may be used by more of them. Particularly, the operation is performed deterministically when the available software component is included in a single valid group (i.e., a group including all the required software components); in this case, the available software component (C2) is assigned to the software product (PROD) associated with the single valid group (Gb1). Alternatively, when an (ambiguous) available software component (C4, C8, C9) is included in more valid groups, a score is calculated for each associated (eligible) software product according to the corresponding available software components; the eligible software product with the highest score (PROD) is then selected for assigning the ambiguous software component.
48 Citations
21 Claims
-
1. A method for discovering software components belonging to software products in a data processing system, at least one of the software components being suitable to belong to a plurality of software products, wherein the method comprises:
-
associating each software product with the definition of at least one group of software components based on a relationship among the software components of the group, detecting the software components available in the data processing system being included in each group, identifying the groups being valid according to the inclusion of the software components of the corresponding definition, and assigning each available software component to at least one of the plurality of software products having at least one associated valid group including the available software component, wherein assigning comprises; assigning each available software component included in a valid group associated with a single software product to the single software product, and assigning each available software component included in a plurality of eligible ones of the valid groups associated with a plurality of eligible ones of the software products to a selected one of the eligible software products by; calculating a score of each eligible software product according to the available software components included in the associated valid groups, and selecting the eligible software product having the best score. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer program product stored in a non-transitory computer readable medium for discovering software components belonging to software products in a data processing system, at least one of the software components being suitable to belong to a plurality of software products, the computer program product executing a method on a data processing system that comprises:
-
associating each software product with the definition of at least one group of software components based on a relationship among the software components of the group, detecting the software components available in the data processing system being included in each group, identifying the groups being valid according to the inclusion of the software components of the corresponding definition, and assigning each available software component to at least one of the plurality of software products having at least one associated valid group including the available software component, wherein assigning comprises; assigning each available software component included in a valid group associated with a single software product to the single software product, and assigning each available software component included in a plurality of eligible ones of the valid groups associated with a plurality of eligible ones of the software products to a selected one of the eligible software products by; calculating a score of each eligible software product according to the available software components included in the associated valid groups, and selecting the eligible software product having the best score. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A system for discovering software components belonging to software products in a data processing system, at least one of the software components being suitable to belong to a plurality of software products, wherein the system comprises:
-
a microprocessor, a memory, a software catalogue for associating each software product with the definition of at least one group of software components based on a relationship among the software components of the group, an engine for detecting the software components available in the data processing system being included in each group, an analyzer for identifying the groups being valid according to the inclusion of the software components of the corresponding definition, and an agent for assigning each available software component to at least one of the plurality of software products having at least one associated valid group including the available software component, wherein the agent assigns each available software component to at least one of the plurality of software products having at least one associated valid group including the available software component by; assigning each available software component included in a valid group associated with a single software product to the single software product, and assigning each available software component included in a plurality of eligible ones of the valid groups associated with a plurality of eligible ones of the software products to a selected one of the eligible software products by; calculating a score of each eligible software product according to the available software components included in the associated valid groups, and selecting the eligible software product having the best score. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
Specification