1. A process for developing a final upgrade matrix for testing at least one upgrade to the implementation of software use and configuration in an existing customer environment comprising: performing a review of the existing customer's perceived use of the software in the existing customer environment to populate an initial upgrade matrix with multiple initial transactions, the initial upgrade matrix being populated by: a semi-automated process, wherein a user is queried regarding in-use and non-use to determine the initial transactions by a web-based survey; determining, based on the web-based survey, one or more global decisions which are applicable to the in-use initial transactions, wherein global decisions indicate a group identification for a respective transaction; and determining dependent enhancements which are applicable to the in-use initial transactions; performing by at least one extraction component a data extract process by a processor on a database containing historical data resulting from the existing customer's actual use of the software to determine actual historical transactions; comparing, automatically, the multiple in-use initial transactions with the actual historical transactions; removing, automatically, each of the multiple in-use initial transactions that does not align with an actual historical transaction from the initial upgrade matrix, wherein the final upgrade matrix includes any remaining and aligned multiple transactions; determining, automatically and based on the final upgrade matrix, at least one upgrade to the software; and testing, automatically, the at least one upgrade to the software in the existing customer environment.