I believe to have a successful product / service, you need to fill a need that clients and customers have.
My question is how do you find, spot, identify or realize a need is there?
Nothing magical about it. There's really only two main ways:
Of course, once you have established that initial idea (loftily called "the vision"), you then embark on iteratively refining it via business planning.
As you will definitely read if you go around the blogs and books related to this subject, the best itch to scratch is your own. However, plenty of people run and have run successful businesses in areas that they didn't know anything about at first; it just makes it harder to succeed.
Find a niche
A common reasoning for this topic are:
Once you have all that, you can do your math and ask yourself these questions:
After that, if you still think you have a viable product, think again - long and hard. It's hard to learn to say no and recognize ideas for being just that, ideas.
There's also quite a few threads here about recommended books, check them out.