Establish and maintain estimates of the attributes of the work products and tasks.
Size is the primary input to many models used to estimate effort, cost, and schedule. The models can also be based on inputs such as connectivity, complexity, and structure.
Examples of types of work products for which size estimates are made include the following:
· Deliverable and nondeliverable work products
· Documents and files
· Operational and support hardware, firmware, and software
Examples of size measures include the following:
· Number of functions
· Function points
· Source lines of code
· Number of classes and objects
· Number of requirements
· Number and complexity of interfaces
· Number of pages
· Number of inputs and outputs
· Number of technical risk items
· Volume of data
· Number of logic gates for integrated circuits
· Number of parts (e.g., printed circuit boards, components, and mechanical parts)
· Physical constraints (e.g., weight and volume)
The estimates should be consistent with project requirements to determine the project’s effort, cost, and schedule. A relative level of difficulty or complexity should be assigned for each size attribute.
Typical Work Products
1. Technical approach
2. Size and complexity of tasks and work products
3. Estimating models
4. Attribute estimates
Subpractices
1. Determine the technical approach for the project.
The technical approach defines a top-level strategy for development of the product. It includes decisions on architectural features, such as distributed or client/server; state-of-the-art or established technologies to be applied,
such as robotics, composite materials, or artificial intelligence; and breadth of the functionality expected in the final products, such as safety, security, and ergonomics.
2. Use appropriate methods to determine the attributes of the work products and tasks that will be used to estimate the resource requirements.
Methods for determining size and complexity should be based on validated models or historical data.
The methods for determining attributes evolve as our understanding of the relationship of product characteristics to attributes increases.
Examples of current methods include the following:
· Number of logic gates for integrated circuit design
· Lines of code or function points for software
· Number/complexity of requirements for systems engineering
· Number of square feet for standard-specified residential homes
3. Estimate the attributes of the work products and tasks.