Page 133 -
P. 133
7 - PROJECT COST MANAGEMENT
may be created when the requirements or feature set and high-level design are stable and the project team
and schedule have been set. At this point, the estimate may deviate by ±50%, depending on the complexity of
the design, the stability of the requirements, and the known characteristics of the team that will develop the
software. A definitive estimate for a development cycle of 2 to 4 weeks may be accurate to within ±10% of actual
cost; however, that depends on factors such as the stability of the design and accurate translation of features
into product requirements. Increasing accuracy of a software estimate is sometimes referred to as the “cone of
uncertainty.” Providing a confidence level for an estimate can be used to qualify estimation risk.
Early, inaccurate estimates made to a high level of detail may not be worth the time and effort it takes to develop
them. Early, order-of-magnitude estimates are more likely to be more useful, provided they are refined as the
project evolves and uncertainties are resolved.
7.1.3.3 Units of Measure
The cost management plan for a software project typically includes definitive units of measure for the
project metrics, such as person-hours or person-days for effort measurement, and function points or objects as
surrogates for effort measurement. User stories, use cases, features, and test cases are also used to calculate
effort based on historical data of effort per function point, object, user story, use case, and so forth. Note that
number of lines of software code written does not necessarily correspond to the business value of software or
as a measure of the completion of required software features. Units of measure such as function points, objects,
user stories, use cases, and so forth each require a measurement scale (e.g., counting rules for function points
or objects).
7.1.3.4 Cost Performance Measurement Method
Methods of performance measurement are specified as outputs in a software cost management plan. The
construction phase of a predictive life cycle and the iterations of adaptive life cycles use performance trends based
on estimated amount of work needed versus the actual effort performed to develop an increment of working,
deliverable software. This can be reflected in measures such as productivity in function points per staff-day or
velocity in features delivered per staff-week, and shown in visual presentations such as burndown charts and
continuous flow diagrams.
7.2 Estimate Costs
®
The inputs, tools and techniques, and outputs for estimating project costs in Section 7.2 of the PMBOK Guide
are applicable for estimating costs of software projects, with the following clarifications and extensions.
Software project managers tend to use multiple estimation approaches and then reconcile the differences
among the estimates because estimating costs for software projects is an error-prone process. Estimates of
software project cost may need to include a number of additional factors beyond development and deployment
costs, such as licensing fees for vendor software included in the software product and infrastructure upgrades for
internal systems. Some of these costs may be captured in corporate overhead, such as the infrastructure resources
124 ©2013 Project Management Institute. Software Extension to the PMBOK Guide Fifth Edition
®