In my current job, I encounter problems in software. Specially I am aware of the user interface. But, at the back end, there are error codes which I do not understand as a layman. Those error codes contains different code numbers. I can not remember all those codes, but abstraction made it so easy that I can see the front end error message and can sort out the problems easily. Abstraction made jobs easy. In other words, it makes easier to understand the problems. Understanding problems helps us to solve it in efficient way.
Similarly there are many problems in life people encountering. The root causes are the codes which normally do not understands in rush. If we think of problems deep inside understanding the codes, can help us to solve it. But, what if does not understand the root causes? the codes? Yes, see the front end effects and try out to find the causes. Use Cause and effect model.
I remember the Fishbone effect.