System, method and computer program product for estimating the cost of a
product and/or service. The product and/or service comprises a
multiplicity of components. One or more first components with no cost
dependencies are determined and assigned to a first tier. One or more
second components whose costs depend on the costs of the one or more
first components are determined and assigned to a second tier. One or
more third components whose costs depend on the one or more second
components are determined and assigned to a third tier. A determination
is made if any of the one or more third components were assigned to said
second tier, and if so, such one or more third components are removed
from the second tier. One or more fourth components whose costs depend on
the one or more third components are determined and assigned to a fourth
tier. A determination is made if any of the one or more fourth components
were assigned to the third tier, and if so, such one or more fourth
components are removed from the third tier. A determination is made if
one or more of the fourth components were assigned to said second tier,
and if so, such one or more fourth components are removed from the second
tier. An order to calculate costs of the components is based on the tier
to which they are assigned, the lower the tier the earlier in the order.