Search Engine Optimization is my other passion. Watching the graph on Google Analytics slowly increase week to week is what keeps my interest. There are so many different types (grey hat, white hat, etc.) and aspects of SEO, but there is only one way it can be done right.
Compiling the research
I find out what areas the website is targeting - city, state, nation, worldwide? These all contribute to the keywords you target. For example, for a local ice cream shop (we will use Fort Wayne as the city), I would target something like "fort wayne ice cream" instead of "Indiana ice cream" or "ice cream". For a small local shop, the keyword "ice cream" is well out of reach, but "fort wayne ice cream" is not.
I then find out what the goal of the site is. Are they looking for sales or contacts? In other words, what do they want all of their new traffic to do on their website?
After that, I gather as much information as I can about the site's products and services and then combine that information with my previous research to put together a list of "hot" keywords.