Several years ago, I was a member of a project team assigned to develop a tool for a custom computer system. At one point, the problem we were researching seemed unsolvable. Any progress we made in one direction created an obstacle in another. Nearly desperate, we decided to see if we could simplify our assumptions.
The assumption we made reframed the problem so well the solution became nearly trivial. Once we verified that the process could be reversed, weeks or months of effort simply disappeared from the project plan.
Assumptions are both useful and dangerous because they change your point of view. The biggest problem most people have in this area is that they make assumptions without realizing it. If you recognize that you are making an assumption, many options become available. Here's one technique for dealing with assumptions once you know you are making them.
Identify the assumptions you are making. Formal problem solving would have you put them in writing. For example, the entire discipline of plane geometry is built on an explicitly defined set of axioms. Entirely new branches of mathematics have been created by changing one of these axioms.
Consider how the situation would be different if the assumption were changed or eliminated. Can you make an assumption that is less limiting, or more limiting? Is it necessary to know if the assumption is valid before you take action?
Seeif there is some way to test the assumption. Engineers sometimes devise smoke tests (simple experiments) to verify assumptions. One famous case where this was not done was the mirror to the Hubble pPace Telescope. NASA concluded that a full test conducted in Earth's gravity would be extremely expensive since the mirror would be used in the zero gravity of Earth orbit. It turned out that the mirror was far enough off that a student with hand tools would have seen the problem.
Consider the cost / benefit if you change your assumption. Our software project became feasible when we changed ur assumption to simplify the problem we were dealing with. THe original assumptions may have allowed more options. More likely, the project would have failed to produce any result.
Assumptions allow us to make decisions quickly because they allow a point of view which focuses on relevant issues. If an assumption gets you focusing on the problem rather than the solution, it may be time to apply the above technique or something like it. Make assumptions your tools, not your prison.