This column is the fourth in a series about estimating. This month, we discuss gathering, categorizing, and using object size data. The first column in this series was in July, and it gave an overview of estimating. The August column talked about software size, and last month's column introduced the subject of proxies. If you have not read these columns, you should look at them first to understand the context for this discussion and to see how the various estimating topics in these columns relate. To repeat what I said in the previous columns, the estimating method described here is called PROBE. If you want to quickly learn more about PROBE, you should read my book Discipline for Software Engineering, from Addison Wesley. This book introduces the Personal Software Process (PSP)SM, which is an orderly and defined way for software engineers to do their work.
This column continues the discussion of how to make size estimates. To make a project plan, you need a resource estimate and, to estimate resources, you need to estimate the size of the product you plan to build. Finally, to make a good size estimate, you need historical data on the sizes of the programs you have previously written. Last month, we introduced the subject of proxies. A proxy is a substitute, or alternate that you can use to help make size estimates. To use objects as proxies, however, you need historical data on object sizes. This column describes these data, how to gather them, and how to use them.