1. A computer implemented method for evaluating architectural design patterns for data integration in an enterprise system, the computer implemented method comprising: deriving a set of decision factors from a set of requirements for a system to be integrated, wherein the set of requirements specify capabilities an architecture design pattern is required to provide; assigning a default score to each decision factor in the set of decision factors based on historical data integration knowledge; calculating a weighted score for each decision factor using the default scores to indicate a priority of a decision factor in relation to other decision factors; assigning a priority score to each decision factor based on inputs obtained from system metadata related to the decision factors from virtual and physical data sources, experts in the enterprise system, and expert data related to the decision factors from subject matter experts in the enterprise system; calculating an individual consolidated score using the default score, weighted score, and the priority score of each decision factor; calculating a total consolidated score from the individual consolidated scores for the architecture design pattern; and comparing the total consolidated score for the architecture design pattern against total consolidated scores for other architecture design patterns to determine a suitable candidate architecture design pattern for data integration.