A method for estimating the cost of a complete software project by combining estimates for each component.