Software Sizing Standards
Software sizing is used to estimate the size of a software application or component to support cost estimating, progress tracking, and other software project management activities. CISQ has published two standards for automating the measurement of software size:
- Automated Function Points measure the functional size of software.
- Automated Enhancement Points measure the size of both functional and non-functional code in one measure
The Automated Function Points measure was specified to mirror the counting guidelines of the International Function Points User Group (IFPUG) as closely as possible, while removing ambiguity to support automation. Traditionally, Function Points have been measured manually and counts can vary by +/-10% among certified counters. Automation is critical for the practice of software sizing to become affordable, consistent, and frequent.
Function Points have been difficult to use during maintenance and enhancement activities because they do not measure non-functional code, which can account for over half the size of modern applications. Automated Enhancement Points were defined to solve this challenge by measuring the size of both the functional and non-functional code, and summing them into a Function Point-like measure.