Dave Winer has some ideas:
1. Make a list of adjectives that apply to the product, things you want to convey in the name. If you don’t have such a list you’ll never know how to judge the potential names you come up with.
2. Using a thesaurus look up some of the adjectives. Let your mind wander. It’s important to play at this stage. Think of people who exemplify the traits listed in step 1. Think of places. Historical periods. Don’t be linear. Call a friend and read off the list in step 1 and ask them to blurt out any words they think of. Make up words that convey the adjectives.
3. Now go into evaluative mode on the list from step 2. Cross off words that are descriptive. Those won’t pass muster as trademarks. Keep proper names. Made-up words are especially good. At any point you can jump back to step 1 or 2, and add to your lists. (In fact if you don’t I suspect your process isn’t working very well.)
4. Look up the words from step 3 on a search engine. Cross off names that are products, formats, standards, or in any way are associated with your industry, no matter how remote. Save yourself grief later.
5. Pass the list from step 4 over to a trademark attorney to check them in the USPTO database.
I would add that one also needs to check if the .com is available for the name one has thought of.