6

I have this quick question regarding cost estimation using Function Points.

We are doing a small (course project) project for a small company and it's for free, of course. Our instructor wants us to provide a cost estimate of the project using Function Points.

Computing the Function Points is somewhat straight forward (sort of).

Our problem now is on deriving other values (metrics) e.g. length of project duration, rate for the cost of the project per function points.

Obviously, we don't have historical data to based our estimate on. Is there some sort of "typical" cost per function point that we could follow out there? Please help.

ultrajohn
  • 2,527
  • 4
  • 31
  • 56

4 Answers4

2

Software Engineering by Hans van Vleet quotes that one function point is 100 lines of COBOL (!), if that's any good to you. There's data out there for converting lines of code to staff-months, project duration, etc.

Do you have access to a library? Start with a general book on software engineering, or one of Steve McConnell's various books. They will contain data, and references to more data.

Be aware that tracking progress and controlling the project scope are probably at least as important to success as the original estimate.

MarkJ
  • 30,070
  • 5
  • 68
  • 111
1

Here are some formulas that Capers Jones devised from relatively high number of counted projects:

Given you have your FP count you can determine :

  • Schedule in calendar months: FP^0.4
  • Defect potential: FP^1.25
  • Software development staffing levels: FP/150

You might go for industry standards for your technology to obtain FP/Person Months or Hours/FP if you don't have historical data (which is your case).

Vanja
  • 178
  • 6
0

A simple GOOGLE will give you MANY results to start from

Adriaan Stander
  • 162,879
  • 31
  • 289
  • 284
  • well, i think it' safe to assume that most methods actually give you an estimated measure of the 'size' of the product i.e. function points, person-months (COCOMO), etc, which we've done already. What I am asking for is another set of estimates (cost per function points, person-month per functions) that we could multiply with the function value that we already have. tnx btw – ultrajohn Mar 05 '10 at 07:28
  • Unfortunately this will be heavily dependant on the team experience. This will become more of an art than an actual science. http://www.codinghorror.com/blog/2006/07/how-good-an-estimator-are-you-part-iii.html. http://www.amazon.com/exec/obidos/ASIN/0735605351/codinghorror-20 – Adriaan Stander Mar 05 '10 at 07:53
  • and since we don't have any experience to based out estimate upon, what are our available options then? is there any? tnx, perhaps i'll just pop a figure into the formula and give this as a rationale: "'coz we say so", ehehe – ultrajohn Mar 05 '10 at 07:59
  • 1
    You might also want to take into account. Estimate the time and then relize that it will probably take 2 time longer, **MINIMUM** to actually complete. Between things that you missed in the original spec, and the client changing the spec, you will surely miss the correct total. Give yourself enough time to complete the task. Break the bigger task into smaller, so that you can easily map the end result. – Adriaan Stander Mar 05 '10 at 08:02
0

There are Function Points to SLOC conversion tables, for example this one by QSM Software (shows amount of SLOC per function according to complexity rank).

There's also Weighted Micro Function Points method that outputs development duration, which gained popularity over the last 10 years or so (there are tools like ProjectCodeMeter that make it a breeze to use)

Benjamin
  • 1
  • 1