Building a Project Dashboard with Formulas in MS Project Relu Rosenberg PMP, Six Sigma Black Belt
Introduction This presentation will show how to build a Project Dashboard using Excel like formulas and functions in MS Project The study case will walk through the steps for creating a field called “Task Progress” to calculate the Progress status of a task and use graphical indicators for creating a dashboard view for active tasks (task level) or project summary view (Summary tasks level) Steps
Define the logic Build the formula Add graphical indicators for quick identification of tasks status, issues Build filter based on calculated values to select tasks of interest (focus tasks) Make customizations available to all your Project plans Make customizations available to someone else , publish a template plan
Benefits
Automated calculation and identification of active tasks Automated identification of tasks requiring attention One step preparation of high level project status report for management
As always, a good, detailed plan will drive the quality of the resulting report !
10/6/2010
Relu Rosenberg, PMP, Six Sigma Black Belt
2
Introduction - 2 The end result will take you from a project plan with no easy way to identify a status (left) to a toolbox to produce one click status reports, issues , focus tasks list (right side). If this interests you, follow the rest of this presentation !
10/6/2010
Relu Rosenberg, PMP, Six Sigma Black Belt
3
Logic #1 - Calculate Task Progress based on Start/End dates
10/6/2010
Relu Rosenberg, PMP, Six Sigma Black Belt
4
Logic #1 – Notes
•Logic #1 is very simple to implement as it is based only on “% Complete” and Start, End dates of the task. It automates calculation and identification of 8 task status values ! •If %Complete is >0 it will know task work started and it will mark as “In progress” •Doesn’t require accurate estimate of %Complete. •It is suitable for tasks of short duration, w/o interim milestones •This calculation cannot establish if a task in progress is late or ahead of the schedule. This is where logic #2 and #3 will help
10/6/2010
Relu Rosenberg, PMP, Six Sigma Black Belt
5
Logic #2 – Use task “Status” field Task Status Display
Condition %Complete = 100 Timephased Cumulative %Complete >0 on midnight of day before Timephased Cumulative %Complete =0 on midnight before Task Start Date > Today
Complete On Schedule Late Future Task
Field Value 0 1 2 3
Go To View->More Views ->”Task Usage” To add fields Format -> “Detail Styles” and add “Cumulative Percent Complete” to show pane To change displayed fields Format->”Details” and Check/Uncheck fields Note: In order to use Task Status and be able to display “Cumulative %Complete“ you must assign a resource (real or generic) to each task !
10/6/2010
Relu Rosenberg, PMP, Six Sigma Black Belt
6
Logic #2 – Notes
•Logic #2 leverages the “Status” task field from Microsoft Project. This will help to determine not just if a task is in Progress but also if it is on Schedule or Late. •It is the correct way to calculate because the time phased “% Complete” accounts for the actual work performed over elapsed time. •A resource can have days off , days not worked full time, etc and comparing ((Date()-*Start+)/*Duration+) with “% Complete” is misleading. •Requires more accurate estimate of %Complete of a task •It’s suitable for tasks of longer duration where %Complete can be measured
10/6/2010
Relu Rosenberg, PMP, Six Sigma Black Belt
7
Logic 2 - Task Progress using “Status” field (task field)
10/6/2010
Relu Rosenberg, PMP, Six Sigma Black Belt
8
Logic 3 - Using EVM SPI
Resources
Define Earned Value Calculation options (Tools ->Options -> Calculation)
Define all resources Assign rates to each resource (Std. Rate, Ovt. Rate) Assign resource to each task
Default task Earned Value method: % Complete Edits to total task % complete will be spread to the status date (to see SPI>1)
Baseline project
10/6/2010
Re-baseline every time you add tasks and resources or change tasks, resources
Relu Rosenberg, PMP, Six Sigma Black Belt
9
Logic 3 – Notes
• Logic #3 is the most sophisticated and accurate. It will allow to determine if a task in progress is Behind Schedule, On Schedule, Ahead of Schedule. • It uses Earned Value Methodology and specifically it uses Schedule Performance Index. • For older versions of Microsoft Project which don’t have the SPI calculated you can add SPI as a customized field, Number , with following formula: IIf([BCWS]>0,[BCWP]/[BCWS],0) Since BCWS is 0 For future tasks in MS Project 2000, the formula checks and returns SPI=0 to prevent Error due to division by 0. • It requires accurate measurement of %Complete to provide accurate indicator of progress status (Ahead, On Schedule, Behind)
10/6/2010
Relu Rosenberg, PMP, Six Sigma Black Belt
10
Logic 3 - Task Progress using EVM SPI
10/6/2010
Relu Rosenberg, PMP, Six Sigma Black Belt
11
Creating a custom field
The are several types of fields you can customize, depending on desired data type
Text, Date , Number are the most used Start, Finish, Cost, Duration, Flag are additional types
Right click on project headings to “Insert Column” , will choose Text type field, Text2 for “Task Progress” field
10/6/2010
Relu Rosenberg, PMP, Six Sigma Black Belt
12
Customize field applet
Right click on field header and select Customize field Use Rename to rename the field from Text2 to “Task Progress” for use in formulas Check the boxes for Formula and Graphical Indicators buttons for customization
10/6/2010
Relu Rosenberg, PMP, Six Sigma Black Belt
13
Writing Formulas – simple examples
We will use these statements and functions
IIf(expression-to-test, Do-this-if-true,Do-this-if-False) Date() - returns current system date Project fields - designated as [field-name]
Examples
Flag all active tasks (Start < Date < Finish) IIf((Date() > [Start]) And (Date() < [Finish]),"Active Task","")
Flag all overdue tasks – (Finish < Date) and (%Complete <100) IIf(([Finish] < Date()) And ([% Complete] < 100),"Overdue","")
Flag active and overdue tasks – combine the above IIf((Date()>[Start]) And (Date()<[Finish]), "Active Task", IIf(([Finish]
10/6/2010
Relu Rosenberg, PMP, Six Sigma Black Belt
14
Writing the Formulas for “Task Progress” logic
Below formulas implement the logic diagrams (decision trees) depicted in slides It is recommended to check each decision path in the formula using the Logic diagram Easiest way to test the values is by adjusting the % Complete
Logic 1 - % Complete and Start/Finish Dates IIf(*% Complete+=100,"Complete",IIf(*Estimated+=Yes,"TBD",IIf(Date()>*Finish+,”Not Finished", IIf(Date()>*Start+,IIf(*% Complete+=0,“Not Started",IIf((*Finish+-Date())<7,"Ending Next", "In progress")),IIf([Start]-Date()<7,"Starting Next","Future"))))) Logic 2 - % Complete, Task Status and Start/Finish Dates IIf([% Complete]=100,"Complete",IIf([Estimated]=Yes,"TBD",IIf(Date()>[Finish],"Not Finished",IIf(Date()>[Start],IIf([% Complete]=0,"Not Started",IIf(([Finish]-Date())<7,"Ending Next",IIf([Status]=1,"On Schedule","Late"))),IIf([Start]-Date()<7,"Starting Next","Future")))))
Logic 3 - Use SPI and Start/Finish Dates IIf([% Complete]=100,"Complete",IIf([Estimated]=Yes,"TBD",IIf(Date()>[Finish],"Not Finished",IIf(Date()>[Start],IIf([% Complete]=0,"Not Started",IIf(([Finish]-Date())<7,"Ending Next",IIf([SPI]<1,"Late",IIf([SPI]>1,"Ahead","On Schedule")))),IIf([Start]-Date()<7,"Starting Next","Future")))))
10/6/2010
Relu Rosenberg, PMP, Six Sigma Black Belt
15
Formula written in structured format IIf([ % Complete]=100, “Complete" IIf([Estimated]=Yes, "TBD", IIf(Date()>[Finish], "Not Finished", IIf(Date()>[Start], IIf([%Complete]=0, "Not Started", IIf(([Finish]-Date())<7, "Ending Next", IIf([Status]=1, “On Schedule”, “Late” ) ) ), IIf([Start]-Date()<7, "Starting Next", "Future Task" ) ) ) ) )
10/6/2010
Relu Rosenberg, PMP, Six Sigma Black Belt
16
Using Formula Applet
Press Formula button to open the applet Use Field button to inserts field names in formula and Function button to select functions To learn more about functions search for “Project functions” in Help
10/6/2010
Relu Rosenberg, PMP, Six Sigma Black Belt
17
Add Graphical Indicators
Check Graphical Indicators … Radio button to enable Press Graphical Indicator… Button to define the values Select “Nonsummary rows” to display indicator for tasks only Assign icon for each status value – right click and select from pull-down menu
10/6/2010
Relu Rosenberg, PMP, Six Sigma Black Belt
18
Set Calculations Mode
Confirm/Set Calculations mode to Automatic
10/6/2010
Tools->Options->Calculation Tab Check/Set Calculation Mode: Automatic
Relu Rosenberg, PMP, Six Sigma Black Belt
19
Project Plan without Graphical Indicators Very difficult to understand tasks status
10/6/2010
Relu Rosenberg, PMP, Six Sigma Black Belt
20
Project Plan with Calculated Status & Graphical Indicators
10/6/2010
Relu Rosenberg, PMP, Six Sigma Black Belt
21
Project Plan with Graphical Indicators – 2 Optional – Display also Status Values (can also be seen when pointing over the Indicator )
10/6/2010
Relu Rosenberg, PMP, Six Sigma Black Belt
22
Project tasks review using filters
Select tasks of interest
Select issues
In progress, Ending Next, Starting Next Not started, Late, Not Finished, TBD (Dates not Confirmed)
Create Filter
Got to Project->Filtered For->More Filters Select New Check radio button for Task filter In New Filter Applet o Define the Name o Check Show In Menu to see it in Filters list o Define the rules for tasks selection
10/6/2010
Relu Rosenberg, PMP, Six Sigma Black Belt
23
New Filter Applet
10/6/2010
Relu Rosenberg, PMP, Six Sigma Black Belt
24
Project tasks review – Filter: Focus tasks (less clutter) Optional – Data can be seen also when pointer is over the indicator
10/6/2010
Relu Rosenberg, PMP, Six Sigma Black Belt
25
Project tasks review – Filter: Issues Not Started, Not Finished, Late, Duration estimated (TBD)
10/6/2010
Relu Rosenberg, PMP, Six Sigma Black Belt
26
Project Dashboard – phase level report for management Apply Dashboard filter to produce this phase level view ((Outline level <=2) And (Summary=Yes))
10/6/2010
Relu Rosenberg, PMP, Six Sigma Black Belt
27
Project Dashboard – Phase & Major Activities review Add filter with ((Outline level <=3) And (Summary=Yes))
10/6/2010
Relu Rosenberg, PMP, Six Sigma Black Belt
28
Share customizations
Make customizations available to all your projects
Any MS Project object customized in a project plan will be saved within the project file only. In order to make these objects available to the other projects they need to be saved in the global template. Identify all customizations o Tools->Organizer and go through each tab (object category). o Left side “Global.MPT” represents global objects, right side shows the objects exiting only in the specific project file. o Select object from Fields, Filters, Views, etc, on right side, press Copy and it will be copied to Global Template.
10/6/2010
Relu Rosenberg, PMP, Six Sigma Black Belt
29
Share customizations - 2
Share customizations with others
Create a blank project files Copy all customizations from Global to the Project file o Tools->Organizer and go through each tab (object category). o Left side “Global.MPT” represents global objects, right side shows the objects exiting only in the specific project file. o Select a an object field, filter, etc, on Left side, Global Template, and press Copy to copy to project file
10/6/2010
Relu Rosenberg, PMP, Six Sigma Black Belt
30
Questions ? Email:
[email protected]
10/6/2010
Relu Rosenberg, PMP, Six Sigma Black Belt
31