Method and system for optimizing configuration classification of software
First Claim
1. A method, comprising steps of:
- constructing a knowledge base having optimal configurations for a plurality of categorized software systems, comprising;
using a computer or processor to perform the steps of;
creating a plurality of vectors of a number of dimensions based on a sum of system parameters, profiling data and tuning variables;
generating a first set of clusters of the vectors based on an overall score of each of the vectors;
generating a second set of clusters of the vectors based on ordered system configuration parameters and tuning parameters;
deriving relative importance of system configuration parameters and the tuning parameters for different system types; and
prioritizing the system configuration parameters and the tuning parameters for each of said different system types and generating a decision tree for each of said different system types;
categorizing a software system;
searching the knowledge base having optimal configurations for said plurality of categorized software systems to determine a configuration parameter set for the software system based on the categorizing of said software system, said knowledge base having optimal configurations being stored in a storage device;
determining whether the configuration parameter set is an optimal configuration for said software system; and
if the configuration parameter set is not an optimal configuration for said software system, conducting further testing of said software system utilizing the knowledge base to determine an optimal configuration parameter set.
2 Assignments
0 Petitions
Accused Products
Abstract
A method and system to minimize redundancy in testing a new software system by utilizing a knowledge base is provided. The knowledge base may be represented in a form of a decision tree including leaf nodes which store previously tested optimal configurations. When the knowledge base does not contain an optimal configuration for the new software, an optimal solution for the new software system may be determined by adding a further decision tree branch to the initial decision tree. A desirable tree branch may be selected from a table including a predetermined set of desirable tree branches for each category of software. As a result, the number of solutions to be tested on the input software may be limited and cost and effort to run redundant tests on a software system may be reduced.
21 Citations
18 Claims
-
1. A method, comprising steps of:
-
constructing a knowledge base having optimal configurations for a plurality of categorized software systems, comprising; using a computer or processor to perform the steps of; creating a plurality of vectors of a number of dimensions based on a sum of system parameters, profiling data and tuning variables; generating a first set of clusters of the vectors based on an overall score of each of the vectors; generating a second set of clusters of the vectors based on ordered system configuration parameters and tuning parameters; deriving relative importance of system configuration parameters and the tuning parameters for different system types; and prioritizing the system configuration parameters and the tuning parameters for each of said different system types and generating a decision tree for each of said different system types; categorizing a software system; searching the knowledge base having optimal configurations for said plurality of categorized software systems to determine a configuration parameter set for the software system based on the categorizing of said software system, said knowledge base having optimal configurations being stored in a storage device; determining whether the configuration parameter set is an optimal configuration for said software system; and if the configuration parameter set is not an optimal configuration for said software system, conducting further testing of said software system utilizing the knowledge base to determine an optimal configuration parameter set. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A non-transitory computer-readable medium embodying computer readable instructions for a processor of a computer to implement a method comprising:
-
constructing a knowledge base having optimal configurations for a plurality of categorized software systems, comprising; creating a plurality of vectors of a number of dimensions based on a sum of system parameters, profiling data and tuning variables; generating a first set of clusters of the vectors based on an overall score of each of the vectors; generating a second set of clusters of the vectors based on ordered system configuration parameters and tuning parameters; deriving relative importance of system configuration parameters and the tuning parameters for different system types; and prioritizing the system configuration parameters and the tuning parameters for each of said different system types and generating a decision tree for each of said different system types; categorizing a software system; searching the knowledge base having optimal configurations for said plurality of categorized software systems to determine a configuration parameter set for the software system based on the categorizing of said software system; determining whether the configuration parameter set is an optimal configuration for said software system; and if the configuration parameter set is not an optimal configuration for said software system, conducting further testing of said software system utilizing the knowledge base to determine an optimal configuration parameter set. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 18)
-
Specification