The steps you take to do the paint job depend on what color you paint it, and how picky you are about the look when you're done. If you are painting a dark color, you need to be very particular about the prep work. If you're painting white, you can get away with a few imperfections.
The prep work that you do for the topsides (above the waterline, but not the deck) is different from the prep work that you'll do for the bottom. If you're sure that that topsides have been painted before, you need to either remove it all, or properly identify the paint. Some of the less expensive paints will go over just about anything, but epoxy paint (and epoxy primer) will eat cheaper paint. I recommend epoxy paint such as Interlux perfection. I used it on my boat, and after 2 years of hitting the dock (I rarely use fenders) and getting hit once while racing, I don't have a single scratch.
Once you have either identified the old paint or decided to remove it, you need to pick out your paint. Once you know what kind of paint you're using and what color, you know how much prep work is ahead.
You need to fill any deep scratches or gouges, and may have to grind out any cracks. For filler, I used epoxy with phonelic microballoons for filler. I found that this mix will sand about like gelcoat and doesn't shrink later.
Then comes the primer. Always use the primer that matches the paint. If you use enamel primer, then put epoxy paint over it, plan on stripping the boat and starting over. The primer will act as a filler for minor imperfections. When I say minor, I mean really minor. Don't expect primer to fill deep scratches. After you prime, you have to sand. When I got done sanding each coat, the boat had a bit of a shine to it. Kind of like a lightly oxidized gelcoat. I primed and sanded 4 times until I couldn't find the imperfections that I knew were there.
Now paint. Since I painted a dark color, it took 5 coats of paint before I was happy. I followed the instructions on the paint can, except the last 2 coats I thinned
slightly more than recommended to get it to flow out a little better. It also made it really easy to run, so be careful if you do this. Between coats I wet sanded with 600 grit paper.
In all it was a huge amount of work, but I think it turned out well. BTW as soon as I saw this pic, I jumped in and scrubbed the bottom.