Thomas,
once again, a brief response, hopefully I will expand on this later.
You have touched on an interesting subject, talking about different phases of the project. This is where all the estimation gets tricky. What stages are there? This is driven by the methodology you use, and of course by the scope of your project.
Some of our work has been purely business analysis and requirements modeling, the development itself has been outsourced to an outside company. In theory we might have not even known what technology were they using, what methodology, what was the quality of their resources, as the development stage would be managed by them. They would do their own estimates, since they were the ones who had to manage their portion of the project.
In that case, the only stages we would estimate for would include the analysis and testing (both of them expanded on and possibly broken down into several stages, too).
Also the methodology makes a big difference - more iterations of work within shorter period of time, with closer involvement of the stakeholders tend to produce results quicker, however are more taxing for the project team, require stronger skills set and possibly more resources.
What I am getting at is that the factors you apply to the Use Case metrics (what you are refering to as Use Case weight) depend on many things (not very helpful so far, is it? :-) )
Chances are that you are following much the same methodology on most of your projects though, so this might not be a problem for you. You could then apply the same factors to all of your projects of course.
About the second part of the question, yes I do collect the actual information and compare them to the original estimates - after a while, the numbers are surprisingly very close!
Overall, what I like to do in the beginning of a project is to go through the exercise of translating the scope document into the set of the Use Cases - i.e. building the Use Case diagrams without any details on the Use Cases. No scenarios, constraints, nothing. Only the Use Cases and for each of them their complexity (easy, medium, difficult; occasionally I have used 5-degree range instead).
This is relatively short exercise, dependent on the scop of the project of course.
After that I run the Use Case metrics and apply the "Use Case weight" (which I keep adjusting after every project).
This way I can get very good estimates and build very good project plans with very little effort. Best of all, I can justify and defend them to my clients!
I am enjoying this discussion, it is making me think :-)
Bruno