When a user or client tells you he wants a certain feature, ask why he wants it–determine his immediate goal [...] Keep asking until you move well beyond the boundaries of the immediate design problem. Why should you ask these questions if you have clear requirements? Because if you love designing things, it's easy to get caught up in an interesting interface-design problem. Maybe you're good at building forms that ask for the just the right information, with the right controls, all laid out nicely. But the real art of interface design lies in solving the right problem.
So don't get too fond of designing that form. If there's any way to finish the transaction without making the user go through that form at all, get rid of it altogether.
– Jenifer Tidwell (from Designing Interfaces)
I think I'm going to pin this on my wall in the office. It's harder to keep it in mind than I imagined. There's almost always a more straightforward solution, that works well too.
See also in this blog: Plain Red and Plain White, the Coca-Cola Redesign