A system (10) for evaluating a software product includes an interface (12). The interface (12) receives product data relating to the software product, and a first memory (14) stores the product data. A second memory (23, 32) stores a plurality of weighting values. A processor (26, 36) is coupled to the first memory (14) and the second memory (23, 32). The processor (26, 36) applies the plurality of weighting values to the product data to generate at least one criterion score for the software product. Each criterion score represents an evaluation of the software product.