I found this really useful. Quite often when I'm working on problems I tend to get an idea from reading the brief and begin experimenting straight away. By doing this I learn a lot about various tools and techniques however this process usually ends with me banging my head against the wall for many hours only to have to completely refactor my solution, if not abandon it entirely.
The simple way in which you have explained the problem-solving approach is very helpful.
Thanks!