I'm a teacher who trains hundreds of high school students in Math, Physics & Chemistry to crack probably toughest competitive exam in India.
I deal with the students who are hardworking and scored at least 70%+ in their 10th Grade. They are definitely in a position to figure out the variables and required formula and solve it, if the problem is direct. For rest of the post when I say problem solving, I'm referring to the problems of Math & Physics which are not as tough as 12th grade Olympiad problems but definitely a lot tougher than typical textbook level problems. You can see some of such problems here. Each paper shown in the link, needs to be solved in 3 hours and more than 70% must be secured.
Typical way of training: [Method1] Try it all by yourself Students are taught (it is ensured students understood the) concept. Solve 3-4 variety mid-level example problems, to illustrate application of concept to the problem and reinforce their understanding. Move on to the next concept. Do the same with all the concepts and finish the chapter. Then, students are given about 50-60 unsolved problems, no two of same model. Students spend lot of time solving these problems, they discuss with teachers and they discuss among themselves.
Problem with above method: The success percentage is very less. Its as low as 2-3%. I mean, only 2-3% of the students get through all the difficulties and finish those problems. Most of the other students find those problems too difficult to solve and are either losing motivation to solve such problems or think that they are not intelligent enough to solve the problems.
Fixing the problem: [Method2] Master bit by bit I've read few books like, Why Don't Students Like School, How to Solve It: A New Aspect of Mathematical Method and analyzed myself (how do I solve the problems?) and understood that we try to recollect the patterns of problems. By practicing problems we are learning the patterns of problems and when solving an unsolved problem trying to figure out our put the patterns that we already learned. So, I've broken down larger problems into smaller problems. I've arranged these problems in the increasing level of difficulty. For the patterns to be remembered properly, I've increased no. of simple problems. I'm ensuring that students are mastering problems concept by concept, level by level.
Result is, now my students are not demotivated, they feel problem solving is simple and they are doing problems well.
Problem with my method: I realized that my students are entering a dangerous zone. They are not willing to solve difficult problems and they are unable to solve unknown model problems. Did I overtrain them? I consulted my college professors regarding this and they were furious with my method. They said, that I am spoon feeding the students. They said that I must follow the method 1. That is what is going to help them in future in their higher studies and research.
What exactly is happening? Why is method 2 failing? Why will method 1 work? Is it just about the psychological difference in feelings that method 1 guys feel more prepared for solving any kind of problem? Whats optimal way? Where can I learn more?