Introduction to Function Points

The software industry has many problems; one major problem is our inability to estimate software costs. The great majority of software projects come in over budget or are cancelled.
What kinds of problems?
  1. KDSI (1000s of delivered source instructions)
    We use a metric that is not standardized and that violates a fundamental productivity principle. (higher productivity => improved metric number)

  2. Accounting
    The software industry has no standard way of measuring/accounting for the cost of developing and maintaining software.

  3. Productivity Data
    Our industry has been allowed to publish raw, unverified project data. The result: we tend to overstate productivity and understate costs

  4. Estimating
    Far too many software projects are estimated using the WAG method.
    Managers accept poor estimates because they don't know better.

Function points?
  1. Unit of work
    A function point is a proven, accepted software unit of work metric that is based on the user requirements.

  2. Large body of projects
    There is a large body of statistical data available; you can compare your projects to 1000s of previous projects.

  3. Organization
    There is an international organization, IFPUG, dedicated to function point theory and practice.
    IFPUG certifies function point professionals and provides training materials and tools.

Metrics

Adapted from Dan Stearns
Last updated 4/12/07