Practical Software Requirements: A Manual of Content and Style ↑
11.61.1.1 Exhaustive List of problem-solving techniques
The following is an exhaustive list of all problem-solving techniques, arranged in order of decreasing effectiveness:
Already knowing the solution;
Already knowing the solution to a similar problem;
All other techniques.
The third – enormous – category lumps functional decomposition together with whacks on the side of the head, thinking outside the box, and all the others because, compared to the first two techniques, they are nearly worthless.