Step 7: Define Scenarios by Altering Program Change Driver Probabilities
Domain experts use the BBN to define scenarios. The realization of a potential state in a particular node was specified in Step 6, and the cascading impacts to other nodes and the resulting change in the outcome variables were recalculated. Any change in one or more nodes (drivers) constitutes a scenario. Once the experts are satisfied that a sufficient number of scenarios are specified, they use their judgment to rank them for likely impacts to cost. An example scenario created during an SEI pilot workshop is provided in Figure 4.
Figure 4: Partial Example of a Scenario With Two Driver Nodes In A Nominal State
Step 8: Select Cost Estimating Relationships or Tools to Generate an Estimate
Parametric cost estimation models for software use a mathematical equation to calculate effort and schedule from estimates of size and a number of parameters. A decision is made as to which cost estimating tool or tools, CERs, or other methods will be used to form the cost estimate. COCOMO II is a well-known estimation tool and is open source. The SEI has so far developed the relationships between BBN-modeled program change drivers and COCOMO, shown in Figure 5. The use of the commercial SEER cost estimating tool is being explored.
Step 9: Obtain Program Estimates Not Computed by the BBN
The Program Office estimates of size and/or other cost model inputs such as productivity are used as the starting point in this step. Often these values are estimated by analogy and aggregation. They are adjusted by applying the distributions calculated by the BBN.
Step 10: For Each Scenario, Run a Monte Carlo Simulation
From each selected scenario in Step 7, use the outcome to parameterize a Monte Carlo simulation. Along with the information from Step 9, this provides probability distributions for adjusting the input factors to the cost estimating models. This also provides explicit confidence levels for the results. Figure 6 shows the simulation results the SEI obtained when modeling a factor (person-months) in three different scenarios.
Step 11: Report Each Scenario Result Independently
Report the final cost estimates for each scenario, including the nominal program plan. The explicit confidence levels and the visibility of all considered program change drivers allows for quick comparisons and future re-calculations. The transparency afforded by the consideration of alternative scenarios enables improved decision making and contingency planning.