Matt Scheinker, VP of consumer experience at AOL gave a Keynote speech at the Kellogg Tech Conference 2011. His topic was innovation, and his message, in the most simple terms was "Don't Innovate; just solve problems. He gave several fine examples of how some of the best innovations come from people recognizing and solving problems. The twitter feed from the speech can be viewed at http://twitter.com/#!/search?q=%23kelloggtechaol
However sometimes the needs and problems are not obvious. An example I was jut reading in the book 'The Riddle' by Kellogg professor Andrew Razeghi suggests looking at needs/problems/opportunities in terms of what cannot be done in a particular context. This is because needs are not always obvious to people.
An example he gives is as follows: If you ask soldiers hiding in foxholes what they need, they would likely come up with sources of food, water, blankets etc. However if think of what they cannot do, then things change. They cannot execute orders at night, because they cannot read the orders, because they cannot light a light, because if they do, they will get shot by the enemy. So they need a way to read in the dark;
This is how "Ecriture Nocturne" (night writing) code was invented, which ultimately evolved into the Braille code.