Discovering multi-component software products based on weighted scores
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 each available software component to at least one of the plurality of software products comprises;
calculating a score of each software product according to available software components included in the at least one associated valid group, andselecting an eligible software product having a best score, and wherein calculating the score of each software product comprises;
combining a first number, a second number, a third number and a fourth number of the available software components included in the associated valid groups, wherein the associated valid groups being required and exclusive, required and shared, optional and exclusive, and optional and shared, respectively, according to a corresponding first weight, second weight, third weight and fourth weight, respectively.
1 Assignment
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 (PRODb) 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 (PRODc) is then selected for assigning the ambiguous software component.
-
Citations
20 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 each available software component to at least one of the plurality of software products comprises; calculating a score of each software product according to available software components included in the at least one associated valid group, and selecting an eligible software product having a best score, and wherein calculating the score of each software product comprises; combining a first number, a second number, a third number and a fourth number of the available software components included in the associated valid groups, wherein the associated valid groups being required and exclusive, required and shared, optional and exclusive, and optional and shared, respectively, according to a corresponding first weight, second weight, third weight and fourth weight, respectively. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. 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, which is capable of executing a method on 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 each available software component to at least one of the plurality of software products comprises; calculating a score of each software product according to available software components included in the at least one associated valid group, and selecting an eligible software product having a best score, and wherein calculating the score of each software product comprises; combining a first number, a second number, a third number and a fourth number of the available software components included in the associated valid groups, wherein the associated valid groups being required and exclusive, required and shared, optional and exclusive, and optional and shared, respectively, according to a corresponding first weight, second weight, third weight and fourth weight, respectively. - View Dependent Claims (10, 11, 12, 13, 14)
-
-
15. A discovering 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 discovering system includes:
-
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 by; calculating a score of each software product according to available software components included in the at least one associated valid group, and selecting an eligible software product having a best score, and wherein calculating the score of each software product comprises; combining a first number, a second number, a third number and a fourth number of the available software components included in the associated valid groups, wherein the associated valid groups being required and exclusive, required and shared, optional and exclusive, and optional and shared, respectively, according to a corresponding first weight, second weight, third weight and fourth weight, respectively. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification