What I do is give an initial SWAG on gut feel, and I give it a +- 30%.

I then do a preliminary design and estimate the project, and I give it a +-15%

After Detailed Design I do another 'estimate', this is the one I stake my job on.

I also make sure that every change request is documented, every hallway conversation that ends with 'yeah, we should do it that way' gets documented. If I make a promise on delivery, and other people are responsible for breaking that promise, I will document it! As I said above, I just staked my job on MY estimate.

SWAGs (Stupid Wild Ass Guesses), are based on nothing but experience. Someone above you is making plans and needs to know ROUGH timelines. When giving a SWAG do as Rand says, get some brain power in, spend a few hours, get a number. And then deliver it to you boss with the caveat that it is wrong, its just simply wrong. How wrong is up to you :-)

Gregor