End User - Schedule Risk Analysis (SRA)

Modified on Mon, 28 Sep at 1:53 PM

Scheduling: Schedule Risk Analysis (SRA)

A Schedule Risk Analysis (SRA) simulation, also known as Monte Carlo, is a mathematical technique used to estimate the possible outcomes of an uncertain event. Instead of relying on a single "best-guess" number, it uses probability distributions to account for risk and uncertainty.

The process involves running a model thousands of times, each time using a different set of random values within a defined range. This creates a range of possible results and the likelihood of each one occurring.


 content.emoticon.computer How to Use This Function or Component (End User)

Note: Only users that are in a profile (Project Access) that enables them full access to the schedule (ie: Gantt) will be able to utilize the schedule Risk Analysis feature.

Running the Analysis

The Schedule Risk Analysis page is broken up into 4 sections:

Area

Location

Purpose

Configuration panels (1)

Left column

Set up task distributions, risk events, and correlations

Simulation Settings (2)

Right sidebar

Choose iterations, target date, and float threshold

Saved Settings (3)

Right sidebar (below Simulation Settings)

Save, load, share, rename, and delete named configurations

Simulation Results (4)

Below configuration

Charts, tables, and analysis (appears after running a simulation)

image-20260407-180538.png

Step 1 — Configure Task Duration Distributions

The Task Duration Distributions panel shows every task in your schedule. For each task you specify three duration estimates that define a probability distribution. The engine supports two distribution shapes:

  • Triangular — the default; defined by three points (optimistic, most likely, pessimistic).

  • BetaPERT — a smoother bell-shaped curve that places more weight around the most likely value (uses a Beta distribution with shape parameter λ = 4). BetaPERT is the industry-standard distribution recommended by PMI and AACE for schedule risk analysis.

The three-point estimates used for either distribution are:

Column

Description

#

Row number

Task Name

Name of the task (indented to show hierarchy)

% Complete

Current percentage complete

Duration

Planned duration in days

Remaining

Remaining duration (Duration × (1 − % Complete))

Optimistic

Shortest realistic duration (best-case)

Most Likely

Most probable duration (usually equals the planned duration)

Pessimistic

Longest realistic duration (worst-case)

Which tasks are excluded?

The following tasks appear in the table but are not varied during simulation:

  • Summary (mother) tasks — their dates are driven by child tasks

  • Inactive tasks — flagged as inactive in the schedule

  • Completed tasks (100% complete) — their duration is already known

  • Milestones (zero duration) — unless you manually enter a distribution

Excluded tasks are shown greyed out so you can see the full schedule context.

Partially-complete tasks

If a task is partially complete (e.g. 40%), only the remaining portion of its duration is varied. The completed portion is locked. For example, a 10-day task at 40% complete has 6 remaining days — the simulation varies those 6 days, not the full 10.

Default Controls

Below the table you will find controls to quickly set distributions for all tasks at once:

Control

Description

Optimistic (−) dropdown

Percentage to subtract from each task's remaining duration to calculate the optimistic estimate. Default: 15%

Pessimistic (+) dropdown

Percentage to add to each task's remaining duration to calculate the pessimistic estimate. Default: 35%

Apply to All button

Applies the selected percentages to every eligible task in the table

Example: With the defaults of −15% / +35% and a task with 10 remaining days:

  • Optimistic = 10 × 0.85 = 8.5 days

  • Most Likely = 10 days

  • Pessimistic = 10 × 1.35 = 13.5 days

You can also edit any individual task's Optimistic, Most Likely, and Pessimistic values directly in the table.

image-20260407-181352.png


Step 2 — Configure Risk Events (Optional)

Risk events represent discrete risks that may or may not occur, adding extra delay if they do. Click Add Risk to create a risk event.

Each risk event has the following fields:

Field

Description

Risk Event Name

A descriptive name for the risk

Probability

Likelihood the risk will occur (0 to 1). For example, 0.2 = 20% chance

Impact (days)

Number of delay days added to affected tasks if the risk occurs

Affected Tasks

Checklist of tasks impacted by this risk event

image-20260407-181423.png

In each simulation iteration, the engine rolls the dice for every risk event. If a risk fires, its delay is added to the affected tasks for that iteration.

To remove a risk event, click the delete icon next to its name.


Step 3 — Configure Task Correlations (Optional)

In real projects, tasks often share common risk factors — if one task runs late, related tasks tend to run late too. The Task Correlations panel lets you group tasks that should vary together.

Click Add Group to create a correlation group:

Field

Description

Group Name

A descriptive name for the group (e.g. "Foundation Work")

Correlation Coefficient (0–1)

How strongly the tasks in this group move together. 1.0 = perfectly correlated; 0 = independent. Default: 0.8

Tasks in Group

Checklist of tasks to include. Select at least 2 tasks.

When tasks are correlated, the simulation ensures that if one task in the group samples a pessimistic duration, the others in the same group tend to as well (and vice versa).

image-20260407-181523.png


Step 4 — Set Simulation Settings

The Simulation Settings panel on the right sidebar controls how the simulation runs:

Setting

Description

Number of Iterations

How many times to run the schedule. More iterations = more accurate results but longer run time. Options: 500, 1,000 (recommended), 2,500, 5,000, 10,000

Target Completion Date (optional)

Enter a specific date to calculate the probability of finishing on or before that date. Defaults to the current planned finish date.

Float Threshold (days) (optional)

Only vary tasks whose total float is below this number of days. Tasks with high float have little impact on the finish date, so excluding them can focus the analysis. Leave blank to vary all eligible tasks.

image-20260407-181555.png


Step 5 — Save & Load Settings

The Saved Settings panel on the right sidebar lets you preserve your entire simulation configuration — distributions, risk events, correlation groups, and all settings — so you can reuse them later or share them with colleagues.

Saving

  1. Enter a name in the Save Settings text box.

  2. Optionally tick Share within project to make the setting visible to all users with access to this project.

  3. Click Save.

If you save with the same name as an existing setting you own, it overwrites the previous version.

Loading

  1. Select a setting from the Load Settings dropdown.

  2. Click Load.

All task distributions, risk events, correlation groups, and simulation options are restored. Tasks that have been added to the project since the setting was saved receive default distributions based on the saved optimistic/pessimistic percentages. Tasks that have been removed from the project are silently ignored.

Note: Saved settings reference tasks by their internal database ID, not by their display order (# column). This means settings remain valid even if tasks are reordered, added, or removed from the project.

image-20260407-181628.png

Managing

  • Rename: Select a setting you own, change the name in the text box, and click Rename.

  • Delete: Select a setting you own and click Delete. A confirmation prompt appears before deletion.

  • Only the owner of a setting can rename or delete it. Shared settings from other users can be loaded but not modified.


Step 6 — Run the Simulation

Click the Run Simulation button to start. A full-page overlay appears showing:

  • A progress bar with percentage complete

  • A status message that moves through these phases:

    • "Starting simulation…"

    • "Running iteration 500 of 1,000…" (with elapsed time)

    • "Calculating results…" — when all iterations are done and results are being aggregated

    • "Processing results…" — when the server is sending results back to the browser

  • A Cancel Simulation button if you need to stop early

Tip: Do not close the browser tab or navigate away while the simulation is running.

Typical run times:

  • 1,000 iterations: a few seconds

  • 10,000 iterations: up to 30 seconds (depending on schedule size)

If you cancel, no results are displayed.

image-20260407-181652.png


(blue star) Understanding the Results

Once the simulation completes, results appear in two places: the Simulation Summary sidebar and the Simulation Results panel below the configuration.

Simulation Summary (Sidebar)

The summary card shows the key outcomes at a glance:

Item

Description

Project Start

The project start date used in the simulation

Scheduled Finish

The current deterministic (planned) finish date

P50 (Median)

The date by which 50% of simulations finished — there is a 50/50 chance of finishing by this date

P80

The date with 80% confidence — commonly used for commitments and reporting

P90

The date with 90% confidence — a conservative estimate

Mean

Average project duration across all iterations (in days)

Std Dev

Standard deviation of project duration — indicates how spread out the results are

Task counts

Breakdown of total tasks, mother tasks, inactive, completed, zero-duration, and tasks varied

Probability of meeting target

If you entered a target date, this shows the percentage chance of finishing on or before that date, displayed with a color-coded bar (green ≥ 80%, amber ≥ 50%, red < 50%)

image-20260407-145951.png

Duration Distribution (Histogram)

A bar chart showing how project finish dates are distributed across the simulation iterations. The x-axis shows finish dates and the y-axis shows how many iterations produced each date. This gives you a visual sense of the most likely finish date range.

  • A tall narrow histogram means the finish date is fairly predictable.

  • A wide spread histogram means there is significant schedule uncertainty.

image-20260407-150010.png

Cumulative Probability (S-Curve)

A line chart showing the cumulative probability of finishing by each date. Reading from left to right:

  • Find your desired confidence level on the y-axis (e.g. 80%)

  • Read across to the curve, then down to the x-axis to find the corresponding date

This is the most useful chart for answering "What date gives us X% confidence?"

image-20260407-150026.png

Sensitivity Tornado Chart

A horizontal bar chart showing which tasks have the greatest impact on the project finish date. Tasks are ranked by their Spearman rank correlation — a non-parametric measure of the relationship between each task's sampled duration and the overall project finish date. Spearman rank correlation is preferred over Pearson correlation because it captures monotonic (non-linear) relationships and is robust to outliers.

  • Tasks at the top of the tornado chart are the biggest schedule drivers.

  • Focus risk mitigation efforts on these tasks for the greatest benefit.

image-20260407-150043.png

Criticality Index Table

A table showing the percentage of iterations in which each task appeared on the critical path. A task with 100% criticality was on the critical path in every iteration; a task with 30% criticality was on the critical path in 30% of iterations.

Column

Description

Task Name

Name of the task

Criticality

Percentage of iterations the task was on the critical path

Tasks that are always critical (100%) are schedule-fixed. Tasks with high but not 100% criticality are "near-critical" and deserve attention.

image-20260407-150103.png

Sensitivity Analysis Table

A table showing the Spearman rank correlation between each task's sampled duration and the project finish date.

Column

Description

Task Name

Name of the task

Sensitivity

Correlation coefficient (−1 to +1). Higher positive values mean the task strongly influences the finish date.

image-20260407-150128.png

Cruciality Index Table

The Cruciality Index combines the Criticality Index and the Sensitivity Index into a single metric that identifies the tasks that are both frequently on the critical path and strongly influence the finish date:

Cruciality = Criticality (%) × |Spearman Sensitivity| ÷ 100

Column

Description

Task Name

Name of the task

Cruciality

Combined cruciality index (0–100%). Higher values indicate the most important schedule risk drivers

Tasks with a cruciality index below 0.1% are filtered out. The remaining tasks are sorted from highest to lowest and displayed with color-coded bars:

  • High (≥ 50%) — critical risk drivers requiring immediate attention

  • Medium (≥ 25%) — significant contributors worth monitoring

  • Low (< 25%) — minor contributors

The Cruciality Index is especially useful because a task can have high criticality (always on the critical path) but low sensitivity (its duration doesn't vary much), or vice versa. Only tasks that score high on both measures have a high cruciality — these are the true schedule risk drivers.

image-20260407-150152.png

Risk Event Results Table

If you defined risk events, this table shows how they played out across the simulation:

Column

Description

Risk Event

Name of the risk event

Specified

The probability you assigned

Actual Rate

The percentage of iterations where the risk actually occurred (should be close to the specified probability)

Occurrences

Number of iterations in which the risk fired

Avg Impact

Average delay (in days) caused when the risk occurred

Impact Range

Minimum to maximum delay observed

image-20260407-175715.png

? Items to be aware of (Gotchas!)

Item

Admin, End User, or Both

Project Profile - Users must be in a profile (Project Access) that allows full change access to the schedule (ie: Gantt) to be able to use this feature.

Both

A schedule with a minimum of one task is required for this feature

End User

 

Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article