At the end of this exercise all the stories would have been classified into the different size buckets. Now what? Sample and figure out the time required to develop a small, medium, large and x-large. Start with one from each size-bucket and break them down into developer tasks, at the minute level possible. It is not too much to break down to a task level of even an hour’s work. Then estimate each of these minute tasks will calculate how long it will take, in real hours, to develop a small, a medium and so on.
Sampling is quite important in this process. It is good to start with random samples and then move on to boundary samples. From each bucket, pick ones that seem to be the largest and the smallest. Estimate these. How much do they vary? Is the smallest medium larger than the largest small? By how much? What is the variance within each bucket? Can the smallest and the largest in mediums still be called mediums?
Depending on the results of the above analysis, the buckets and the stories in them may have to be rearranged.
Once this exercise is over, we can now apply the real estimates from the samples to all the stories in a bucket to get an overall estimate of the size of the project. It is now time to step back and take stock of the budget, cost-benefit, approvals, schedule, road map and so on before progressing any further.