1. A method for updating at least one component in a multi-component software application arranged to operate on a computing system, the method comprising: electronically by a computer receiving (i) application data describing characteristics of the software application, (ii) update data describing at least one update applicable to the software application, and (iii) workload profile data which has been collected over a period of time by a workload profile data logging application residing on the computing system, wherein workload profile data includes at least two of specific types of Data Definition Language used, specific types of Data Manipulation Language used, specific types of execution strategies, hot data which is representative of resource utilization of the computing system, and recorded data which is representative of system conditions of the computing system as recorded over a predefined time period; electronically by a computer selecting a number of updates to provide a list of recommended updates which can be applied to the software application based on the application data, the update data, and the workload profile data, wherein electronically by a computer selecting a number of updates includes utilizing a rule engine to compare metadata from the application data, the update data, and the workload profile data to provide the list of recommended updates which can be applied to the software application; and electronically by a computer applying at least one update from the selected list of recommended updates to the software application.