In the same order they are presented in the SEBoK:

  1. Don’t assume the original statement of the problem is the best, or even right one. (this is similar to The XY Problem)
    1. The hidden assumptions are usually the most damaging (the Unknown Unknowns)
    2. The customer knows what they want, but not what they need.
  2. In the early stages of a project, unknowns are a bigger issue than known problems
  3. Model before build, wherever possible
  4. Most serious mistakes are made early on

Source