Project Health Assessment Dashboard
Description: The Project Health Assessment dashboard provides an overall assessment of your projects, portfolios, and activities using project metrics to measure the project schedule
Default Canvas: Assessment
Canvas/Dashboard Name: Project Health – Assessment
Data Source(s): P6 - EPPM
Subject Area: P6 – Activity
Datasets: NA
Dashboards:
Figure 29: Project Health Dashboard - Assessment
Figure 30: Project Health Assessment Dashboard -Project Worksheet
Figure 31: Project Health Assessment Dashboard -Activity Worksheet
Table 41: Project Health Assessment - Dimensions
Canvas | Dimension / Attribute | Is Calculated Field | Subject Area / Dataset |
---|---|---|---|
Assessment | Portfolio Name | No | P6 – Activity |
Project Worksheet | Project Name | No | P6 – Activity |
Activity Worksheet | Activity Name | No | P6 – Activity |
All Canvas | Missing Logic (%) | Yes | P6 – Activity |
All Canvas | Negative Lags (%) < | Yes | P6 – Activity |
All Canvas | Lags (%) < | Yes | P6 – Activity |
All Canvas | Long Lags (hours) > | Yes | P6 – Activity |
All Canvas | Long Lags (%) < | Yes | P6 – Activity |
All Canvas | FS Relationships (%) > | Yes | P6 – Activity |
All Canvas | Hard Constraints (%) < | Yes | P6 – Activity |
All Canvas | Soft Constraints (%) < | Yes | P6 – Activity |
All Canvas | Large Float (hours) > | Yes | P6 – Activity |
All Canvas | Large Float (%) < | Yes | P6 – Activity |
All Canvas | Negative Float (%) < | Yes | P6 – Activity |
All Canvas | Large Durations (hours) > | Yes | P6 – Activity |
All Canvas | Large Durations (%) < | Yes | P6 – Activity |
All Canvas | Invalid Progress (%) < | Yes | P6 – Activity |
All Canvas | Resource / Cost (%) < | Yes | P6 – Activity |
All Canvas | Late Activiites (%) < | Yes | P6 – Activity |
All Canvas | BEI (%) > | Yes | P6 – Activity |
Table 42: Project Health Assessment – Measures
Canvas | Fact / Measure | Measure Type | Subject Area / Dataset |
---|---|---|---|
All Canvas | Missing Logic | Calculated from Fact | P6 – Activity |
All Canvas | Negative Lags | Calculated from Fact | P6 – Activity |
All Canvas | Lags | Calculated from Fact | P6 – Activity |
All Canvas | Long Lags | Calculated from Fact | P6 – Activity |
All Canvas | FS Rel. | Calculated from Fact | P6 – Activity |
All Canvas | Hard Constraints | Calculated from Fact | P6 – Activity |
All Canvas | Soft Constraints | Calculated from Fact | P6 – Activity |
All Canvas | Large Float | Calculated from Fact | P6 – Activity |
All Canvas | Negative Float | Calculated from Fact | P6 – Activity |
All Canvas | Large Durations | Calculated from Fact | P6 – Activity |
All Canvas | Invalid Progress | Calculated from Fact | P6 – Activity |
All Canvas | Resource / Cost | Calculated from Fact | P6 – Activity |
All Canvas | Lat Activities | Calculated from Fact | P6 – Activity |
All Canvas | BEI | Calculated from Fact | P6 – Activity |
Table 43: Project Health Assessment – Filters
Canvas | Filter Type | Is Expression Filter | Dimension / Attribute / Measure | Subject Area / Dataset |
---|---|---|---|---|
All Canvas | Dashboard | No | Portfolio Name | P6 – Activity |
Assessment | Dashboard | No | Project Owner | P6 – Activity |
Project Nano | Dashboard | No | Project Name | P6 – Activity |
Table 44: Shutdown / Turnaround / Outage – Calculated Members
Calculated Member | Expression | Source | Subject Area / Dataset |
---|---|---|---|
Missing Logic | FILTER("Primavera - Activity"."Metrics"."# of Activities" USING "Primavera - Activity"."Relationships - (Activity)"."Type" = 'orphan')/"Primavera - Activity"."Metrics"."# of Activities"
| Derived from Fact | P6 - Activity |
Negative Lags | IFNULL( FILTER( "Primavera - Activity"."Metrics"."# of Activities" USING ( ("Primavera - Activity"."Relationships - (Activity)"."Lag" < 0.0) AND ("Primavera - Activity"."Relationships - (Activity)"."Predecessor Activity Id" IS NOT NULL) AND ("Primavera - Activity"."General - (Activity)"."Activity Status" IN ('In Progress','Not Started')) ) ) / FILTER( "Primavera - Activity"."Metrics"."# of Activities" USING ( "Primavera - Activity"."General - (Activity)"."Activity Status" IN ('In Progress','Not Started') ) ), 0.0)
| Derived from Fact | P6 - Activity |
Lags | IFNULL( FILTER( "Primavera - Activity"."Metrics"."# of Activities" USING ( ("Primavera - Activity"."Relationships - (Activity)"."Lag" > 0.0) AND ("Primavera - Activity"."Relationships - (Activity)"."Predecessor Activity Id" IS NOT NULL) AND ("Primavera - Activity"."General - (Activity)"."Activity Status" <>'Completed') ) ) / FILTER( "Primavera - Activity"."Metrics"."# of Activities" USING ( "Primavera - Activity"."General - (Activity)"."Activity Status" IN ('In Progress','Not Started') ) ), 0.0)
| Derived from Fact |
|
Long Lags | IFNULL( FILTER( "Primavera - Activity"."Metrics"."# of Activities" USING ( ("Primavera - Activity"."Relationships - (Activity)"."Lag" > CAST('@{Long_Lags_hr}{352}' AS double)) AND ("Primavera - Activity"."Relationships - (Activity)"."Predecessor Activity Id" IS NOT NULL) AND ("Primavera - Activity"."General - (Activity)"."Activity Status" <>'Completed') ) ) / FILTER( "Primavera - Activity"."Metrics"."# of Activities" USING ( "Primavera - Activity"."General - (Activity)"."Activity Status" IN ('In Progress','Not Started') ) ), 0.0)
| Derived from Fact | P6 - Activity |
FS Rel. | (FILTER("Primavera - Activity"."Metrics"."# of Activities" USING (("Primavera - Activity"."Relationships - (Activity)"."Predecessor Activity Id" IS NOT NULL) AND ("Primavera - Activity"."Relationships - (Activity)"."Relationship Type" = 'Finish to Start')))/"Primavera - Activity"."Metrics"."# of Activities")
| Derived from Fact | P6 - Activity |
Hard Contraints | (FILTER("Primavera - Activity"."Metrics"."# of Activities" USING "Primavera - Activity"."General - (Activity)"."Primary Constraint Type" IN ('Mandatory Start', 'Mandatory Finish', 'Must Start On', 'Must Finish On', 'Start No Later Than', 'Finish No Later Than') OR "Primavera - Activity"."General - (Activity)"."Secondary Constraint Type" IN ('Mandatory Start', 'Mandatory Finish', 'Must Start On', 'Must Finish On', 'Start No Later Than', 'Finish No Later Than')))/ "Primavera - Activity"."Metrics"."# of Activities"
| Derived from Fact | P6 - Activity |
Soft Constraints | (FILTER("Primavera - Activity"."Metrics"."# of Activities" USING IFNULL("Primavera - Activity"."General - (Activity)"."Primary Constraint Type", '') NOT IN ('Mandatory Start', 'Mandatory Finish', 'Must Start On', 'Must Finish On', 'Start No Later Than', 'Finish No Later Than') OR IFNULL("Primavera - Activity"."General - (Activity)"."Secondary Constraint Type", '') NOT IN ('Mandatory Start', 'Mandatory Finish', 'Must Start On', 'Must Finish On', 'Start No Later Than', 'Finish No Later Than')))/ "Primavera - Activity"."Metrics"."# of Activities"
| Derived from Fact | P6 - Activity |
Large Float | (IFNULL(FILTER("Primavera - Activity"."Metrics"."# of Activities" USING "Primavera - Activity"."Durations - (Activity)"."Total Float" > CAST('@{Large_Float_Hr}{352}' AS double)), 0.0) / FILTER("Primavera - Activity"."Metrics"."# of Activities" USING "Primavera - Activity"."General - (Activity)"."Activity Status" <> 'Completed'))
| Derived from Fact | P6 - Activity |
Negative Float | FILTER("Primavera - Activity"."Metrics"."# of Activities" USING "Primavera - Activity"."Durations - (Activity)"."Total Float" < 0.0) / FILTER("Primavera - Activity"."Metrics"."# of Activities" USING "Primavera - Activity"."General - (Activity)"."Activity Status" <> 'Completed')
| Derived from Fact | P6 - Activity |
Large Durations | FILTER("Primavera - Activity"."Metrics"."# of Activities" USING "Primavera - Activity"."Durations - (Activity)"."Remaining Duration"> CAST('@{Large_Durations_Hr}{352}' AS double)) / "Primavera - Activity"."Metrics"."# of Activities"
| Derived from Fact | P6 - Activity |
Invalid Progress | ((CASE WHEN TIMESTAMPDIFF(SQL_TSI_DAY, "Primavera - Activity"."Dates - (Project)"."Data Date", "Primavera - Activity"."Dates - (Activity)"."Actual Start") > 0 OR TIMESTAMPDIFF(SQL_TSI_DAY, "Primavera - Activity"."Dates - (Project)"."Data Date", "Primavera - Activity"."Dates - (Activity)"."Actual Finish") > 0 THEN "Primavera - Activity"."Metrics"."# of Activities" ELSE 0.0 END)/ "Primavera - Activity"."Metrics"."# of Activities")
| Derived from Fact | P6 - Activity |
Resource / Cost | (FILTER("Primavera - Activity"."Metrics"."# of Activities" USING (("Primavera - Activity"."Expense"."Expense Object Id" IS NULL) AND ("Primavera - Activity"."General - (Resource)"."Resource Id" IS NULL) AND ("Primavera - Activity"."General - (Activity)"."Activity Type" in ('Task Dependend', 'Resource Dependent'))))/"Primavera - Activity"."Metrics"."# of Activities")
| Derived from Fact | P6 - Activity |
Late Activities | ((CASE WHEN TIMESTAMPDIFF(SQL_TSI_HOUR, "Primavera - Activity"."Dates - (Activity)"."Baseline Project Finish", "Primavera - Activity"."Dates - (Activity)"."Finish") > 0.0 THEN "Primavera - Activity"."Metrics"."# of Activities" ELSE 0.0 END)/ "Primavera - Activity"."Metrics"."# of Activities")
| Derived from Fact | P6 - Activity |
BEI | (FILTER("Primavera - Activity"."Metrics"."# of Activities" USING TIMESTAMPDIFF(SQL_TSI_HOUR, "Primavera - Activity"."Dates - (Activity)"."Baseline Project Finish", "Primavera - Activity"."Dates - (Project)"."Data Date") >= 0 AND TIMESTAMPDIFF(SQL_TSI_HOUR, "Primavera - Activity"."Dates - (Activity)"."Baseline Project Finish", "Primavera - Activity"."Dates - (Activity)"."Actual Finish") <= 0 AND ("Primavera - Activity"."General - (Activity)"."Activity Status" = 'Completed')) / FILTER("Primavera - Activity"."Metrics"."# of Activities" USING "Primavera - Activity"."General - (Activity)"."Activity Status" = 'Completed'))
| Derived from Fact | P6 - Activity |
Related Topics
Data Visualizations Using P6 EPPM Data
Earned Value and Risk Analysis Dashboard
Overview - Portfolio, Risk, EV
Key Milestones Tracking Dashboard
Integrated Schedule Delivery KPI Dashboard
Shutdown / Turnaround / Outage Dashboard
CPI, SPI, and Labor Units Dashboard
Project Risk - Cost Overview Dashboard
Last Published Friday, December 8, 2023