The Pitfalls of Heuristics*
Heuristic methods are often employed because they may be seen to "work" without having been mathematically proven to meet a given set of requirements.
Great care must be given when employing a heuristic method. One common pitfall in implementing a heuristic method to meet a requirement comes when the engineer or designer fails to realize that the current data set doesn't necessarily represent future system states.
While the existing data can be pored over and an algorithm can be devised to successfully handle the current data, it is imperative to ensure that the heuristic method employed is capable of handling future data sets. This means that the engineer or designer must fully understand the rules that generate the data and develop the method to meet those requirements and not just address the current data sets.
A simple example of how heuristics can fail is to answer the question "What is the next number in this sequence: 1, 2, 4?". One heuristic algorithm might say that the next number is 8 because the numbers are doubling - leading to a sequence like 1, 2, 4, 8, 16, 32... Another, equally valid, heuristic would say that the next number is 7 because each number is being raised by one higher interval than the one before - leading to a series that looks like 1, 2, 4, 7, 11, 16...
Statistical analysis must be conducted when employing heuristics to ensure that enough data points are utilized to make the likelihood of incorrect results statistically insignificant.
*Also posted at Wikipedia by myself