Professional Documents
Culture Documents
Project Online Service Description
Project Online Service Description
Project Online
Get started with Project Online
Step 1: Sign up for Project Online
Step 2: Add people to Project Online
Step 3: Set up shop in Project Online
Add Project Online to your Office 365 account
Add Project Online to a site collection
Migrate to Project Online from Project Server
Connect to Project Online with the Project Online Desktop Client
Set up another Project Online site
Delete a Project Web App site
Turn on notifications in Project Web App
Periodic tasks for Project Online administrators
Create unique Project IDs for my projects in Project Online
Supported languages for Project Online
Project Online client requirements
Configure Office 365 Project Portfolio Dashboard
Timesheets
Set up timesheets
Set up categories for timesheet rows
Configure time and task progress
Customize timesheets and task progress for your organization
Set up time and task progress approval
Set up policies for capturing time and task progress
Set up your fiscal year
Set up vacation, sick leave, and other non-project work categories
Set up how time and task progress are captured
Reporting
Grant reporting access in Project Online
What reporting tools can I use with project data?
Configure rollup of timephased reporting data in Project Online
Resources
Configure the Resource Center
Activate resource engagements in Project Online
FAQ: Resource engagements are replacing the old resource plans
Workflows
Using workflow for demand management in Project Online
Troubleshoot Project Online workflows
Best practices for creating phases and stages
Security
Change permission management in Project Online
Plan SharePoint groups in Project Online
Using Project Online with external users
Understanding identity management in Project Online
What should I do if my Project Online administrator gets locked out?
Performance
Tune Project Online performance
Project Online: software boundaries and limits
Best practices to improve Resource Engagements performance
Portfolio analysis
Portfolio analysis in the Microsoft Project Web Application
Defining portfolio analysis business drivers
Prioritizing portfolio analysis business drivers
Creating a new portfolio analysis
Resource analysis in the Microsoft Project Web Application
Establishing the resource pool
Using task level assignments to define resource demand
Using resource engagements to define resource demand
Defining project portfolio dependencies
Prioritizing the portfolio with custom fields
Modeling cost scenarios in portfolio analysis
Modeling resource scenarios in portfolio analysis
Comparing multiple portfolio analysis scenarios
Committing the selected portfolio scenario
Configuring workflow to support portfolio analysis
Project Management Office
Supporting your Project Online adoption with a Project Management Office (PMO)
Project Online implementation cookbook
Enterprise system best practices
The project management system maturity model
EPM: Centralized or decentralized?
Dashboard directions
Creating an EPM Deployment Plan
The challenges of selecting enterprise software
The Seven Deadly Sins of Project Schedules
7 Ways to Sustain Adoption of your PPM Solution, Post-Implementation
Cancelling a project without cancelling your career
We're selling holes, not drills!
The Bat phone
Balancing the matrix
Charging Ahead on Charge Codes
Being a solutions buyer
Track or Treat
Beat the Half-life (t 1/2): Governing Your PPM Solution, Post-Implementation
They say they want a resolution
Breaking Bad...News that is
The executive connection
Is there a pilot on board?
Would you like some EPM with that?
Are we there yet?
GPS assistance in roadmapping an EPM deployment
Top-down or bottom-up
Aligning projects with strategic drivers
A phased approach to deploying enterprise project management
Resource management
Maintain user data
Delete user data from Project Online
Export user data from Project Online
Find customized user items in Project Online and Project Server user export data
Project Online and Project Server export data definitions
License management
Important information for Project Online customers about plan changes
Renew your Project Online plans in a larger organization
Roadmap
Turn Roadmap on or off
Remove Project Roadmap
Delete user data from Project Roadmap
Learn how to plan for, implement, and maintain Project Online in your environment.
Set Up Timesheets
Featured articles
Project Online client requirements
Best practices to improve Resource Engagements performance
Change permission management in Project Online
Understanding identity management in Project Online
Get started with Project Online
7/18/2019 • 2 minutes to read • Edit Online
Overview
To be clear, Project Online is NOT a web-based version of Project Professional. Project Online is an entirely
separate service that offers full portfolio and project management tools on the web. It includes Project Web App,
and can, depending on your subscription, also include Project Online Desktop Client, which is a subscription
version of Project Professional.
Got the wrong thing?
If you need to cancel and subscribe to something else, choose Billing > Subscriptions in the Microsoft 365
admin center, choose the subscription you want to cancel, and then click Cancel subscription in the pane on the
right. Then, you can find the right product to subscribe to and add that to your existing Office 365 account.
Need help?
Take a look through the Project help on Office.com. If you're still stuck, try posting your questions and issues on
the Project Online discussion forum.
Step 1: Sign up for Project Online
7/18/2019 • 2 minutes to read • Edit Online
It may seem a little backwards, but after you sign up, the first
thing you should do is make sure your account is assigned
a Project Online license. Some accounts are and some
aren't.
To check if you're assigned a license:
Choose Users > Active Users from the left menu on the
Microsoft 365 admin center.
Choose your account.
Confirm that the Project Online is listed under Product
licenses.
Even if, as the administrator, you don't actually plan to
use Project Online, the only way you'll be able to see that
Project Online is, in fact, included in your Office 365 account is
by giving yourself a license to use it. You can go back in later
and remove your license to free it up for another user, if
needed.
Be patient...
It takes a while for Project Online to finish getting set up. Go
have a cup of coffee or catch up on email. Setup will
generally be done within 30 minutes to an hour, but it can
sometimes take longer (or shorter!). Don't panic if yours is
taking longer!
When you come back to check on setup, refresh the page. If
you see Project listed in the app launcher , you're ready to
go!
> [!TIP]> Need more than one Project Online site? You can set
up as many as you need.
Top of Page
Step 2: Add people to Project Online
7/18/2019 • 4 minutes to read • Edit Online
Admins People who need full control over your Administrators for Project Web App
Project Online subscription. Admins [Full Control]
manage your user list, who gets what
level of access, and also manage all the
main project settings.
Project managers People who will create and manage Project Managers for Project Web
project files. Project managers will App [Design, Manage Subsites]
create projects and tasks, assign
resources, manage timesheets, and
otherwise be in charge of projects and
project files.
Team members: People who perform project tasks. Team Team Members for Project Web
members receive assignments and fill App [Read]
out progress and timesheets.
For the full list of permissions available with Project Online, see Plan SharePoint groups in Project Online.
Now that you've added people to Project Online, the next step
is to share the site with them so they can actually get in!
When you share the Project Online site with a user, you
also decide what they can do in Project Online:
In Project Online, choose Share, just below your name in the
top-right portion of the page. You can share with individuals
or security groups. Share by security group if you've created
security groups for each permission level you want to use.
Type either the name of the security group or the name of
the individual user in the top box, and then choose Show
Options. Under Select a group or permission level, choose the
permission level that matches what the security group or
person's role is in your organization. For example, for the
Contoso admins security group, choose Administrators for
Project Web App [Full Control]. Choose Share. Repeat this
process for all additional groups or individuals you want to
use Project Online.
NEXT STEP...
Next, learn about Step 3: Set up shop in Project Online.
Top of Page
Step 3: Set up shop in Project Online
8/7/2018 • 2 minutes to read • Edit Online
At this point, if you really want to, you can dive right in and start a new project! Everything is there for
you to just jump in and run. But...there are a few things that you can set up now, to make Project Online more
useful for your organization.
Set up timesheets
Basic Advanced
Set up timesheets Set up how time and task
Set up your fiscal year progress are captured
Set up categories for Customize timesheets and
timesheet rows task progress for your
Set up vacation and sick organization
leave time Set up time and task
progress approval
Set up a streamlined way to manage users and resources
This is complicated stuff. If you're not ready for complicated, ignore this section and move on to Create a
project in Project Web App. You don't need to know this advanced level of setup to be able to use Project Online.
(It's okay if you let out a sigh of relief now!)
If you're ready for complicated, here are some places to start:
Enterprise custom fields and lookup tables in Project Web App
Using workflow for demand management in Project Online
Portfolio analysis overview
If you get overwhelmed or confused, the discussion forums on TechNet are a great place to get your
questions answered.
If you already subscribe to another Microsoft service, such as Exchange Online or SharePoint Online, then you
already have an Office 365 account. If you are using Office 365 Enterprise, Government, or Academic, you may be
able to simply add Project Online to that account.
NOTE
If you are using a trial version and want to pay for a subscription, choose Buy Now.
Add Project Online to a site collection
8/1/2019 • 2 minutes to read • Edit Online
Adding Project Online to an existing site collection helps you use the permissions and users that you have already
set up. It also lets you bring SharePoint tasks into Project Online, and share your enterprise projects on your team
or project site.
TIP
To learn more about using SharePoint and Project Online together, take a look at Overview: View a SharePoint task list in
Project Web App.
IMPORTANT
You can only add Project Online to a site collection that uses the Team Site or Project Site template.
7. Click Project Web App on the ribbon, and then click Add.
8. On the dialog box that appears, click Enable to add Project Online to the site collection.
NOTE
After setting up the site, wait 15 minutes before using it, so that Project Online can finish installing.
Migrate to Project Online from Project Server
5/9/2019 • 2 minutes to read • Edit Online
Learn more about upgrade from your Project Server 2016 or Project Server 2013 on-premises environment to
Project Online.
I have mobile users. Business rules restrict me from operating my business in the
Cost savings on hardware and software installation. cloud.
After migration, low costs to maintain my environment (for I need control of updates to my environment.
example, automatic updates, guaranteed uptime, etc.).
RESOURCE DESCRIPTION
Get started with Project Online How to setup and use Project Online.
Project Online Service Descriptions Information about the different Project Online plans that are
available to you.
The Project Online Desktop client is included with your Project Online Professional or Project Online Premium
license. While you can use it as a standalone client to create and manage your project plans offline, you can also
use it to connect to Project Online in your Office 365 environment to work with your Project Online users. For
example, you can create, save, and publish your projects to Project Online, and team members assigned to your
project tasks can use Project Online to give you updates on their task status.
NOTE
See Install Project if you need to learn how to install the Project Online Desktop Client. Follow the instructions to download
and install the subscription version (Project Online).
7. Your new account will now show On the Project Web App Accounts page. Click OK.
8. Close and then reopen the Project Online Desktop Client. At the login window, select your account and click
OK to connect to Project Online.
NOTE
You can also connect to Project Online with supported versions of Project Professional. See Project Online client requirements
for more information.
Set up another Project Online site
7/26/2019 • 2 minutes to read • Edit Online
You may decide that you want to set up an additional Project Online site, to manage projects in a separate
environment from your first Project Online site. You can do this by creating another site collection with Project
Web App.
To set up another Project Online site:
1. Where to sign in to Office 365 for business with your work or school account.
2. Select the app launcher icon in the upper-left and choose Admin.
TIP
The Admin tile appears only to Office 365 administrators.
3. In the lower-left navigation, select Show all, expand Admin Centers and open the SharePoint admin
center.
4. In the SharePoint admin center, select Active sites.
5. On the Active sites page, select Create, and on the Create a site page, select Other options.
6. On the Other options page, from the Choose a template menu, select Project Web App site.
7. Give the site a name, type the name or email address of the site's Primary administrator, select a time zone,
and select a language.
8. Select Finish.
NOTE
After setting up the site, wait 15 minutes before using it, so that Project Online can finish installing.
Delete a Project Web App site
4/5/2019 • 2 minutes to read • Edit Online
After you subscribed to Project Online, you may have created a couple of different Project Web App sites to try
things out before rolling it out to the rest of your team. When you're ready, you can delete an unused Project Web
App site.
1. Sign in to Office 365 with your work or school account.
2. Go to the SharePoint admin center.
3. Point to the Project Web App site that you are deleting, and then select the check box to the left of the URL.
4. On the ribbon, in the Contribute group, select Delete.
5. Select Delete to move the site collection to the Recycle Bin.
The site collection stays in the Recycle Bin for 30 days, and then is permanently deleted. During the 30 days when it
is in the Recycle Bin, you can Restore a deleted site collection at any time, and the Project Web App database is also
restored.
NOTE
Already deleted the site collection?Restore a deleted site collection, and then follow the steps below to disable Project
Web App.
Disabling Project Web App is not reversible, so be sure that you will never need to restore the Project Web
App site that you are disabling. Once Project Web App is disabled, the database with all of your project information
is permanently deleted.
1. Sign in to Office 365 with your work or school account.
2. Go to the SharePoint admin center.
3. Point to the Project Web App site that you are deleting, and then select the check box to the left of the URL.
4. On the ribbon, in the Manage group, select Project Web App > Remove.
5. Select Disable.
After you disable Project Web App, you don't have to delete the site collection. When you are at your seven-site
limit, disabling Project Web App is enough to make it so that you can create a new Project Web App site.
Turn on notifications in Project Web App
7/26/2018 • 2 minutes to read • Edit Online
Project Web App can be set up to send email notifications, helping people stay on top of what's going on in a
project. When notifications are turned on, users can decide which notifications they'd like Project Web App to send.
NOTE
This article covers how an administrator turns on notifications across all of Project Web App. Get email reminders about your
work in Project Web App
To turn on notifications
1. In Project Web App, choose Settings > PWA Settings.
2. Under Operational Policies, choose Additional Server Settings.
3. Under Notification Email Settings (at the bottom of the page), select the Turn on notifications check
box, and then choose Save.
Periodic tasks for Project Online administrators
7/26/2018 • 2 minutes to read • Edit Online
This article describes periodic checks Project Online admins should perform to maintain their environments.
Project Online administrators should perform the following periodic checks to their environment as an important
part of their job:
DAILY
WEEKLY
Clear any overly long delegation Delete Enterprise Objects User Delegation.
sessions in Server Settings
MONTHLY
Check with Office 365 Global admin on license usage. For example, use data to follow up with users on licenses that are not being
used.
QUARTERLY
Close timesheet periods for the previous quarter plus one or some similar period. For example, if you are in Q4, close the
timesheet reporting periods for Q2. The interval will be based on business or reporting needs.
Check with the project manager first, then close tasks to updates on projects that are complete or mostly compete or that have
older tasks.
Delete timesheets from the past. Again, this will be defined by a policy that is based on business needs for reporting timesheet
data.
YEARLY
Create timesheet periods for the next calendar year. The prefix might equal "Week.", starting at 1, and the suffix might be the
calendar year, such as ".2016". Week 1's period will show as "Week.1.2016".
When creating new projects in Project Online, some companies may want to create a unique Project ID to
associate with each project. This allows users to reference each project by a unique Project ID instead of a project
name, since project names can be changed.
A Project admin can configure Project Online to generate a unique Project ID for each new project through
Enterprise Project Type (EPT) configuration settings. You can configure the EPT's Project ID settings so that when a
new project is created through the EPT, it will generate a unique Project ID for the new project based on the
naming properties you configured.
NOTE
While the Prefix and Postfix fields are optional, the easiest way to ensure uniqueness across all EPTs is to make sure you
provide either a unique Prefix or Postfix.
Best practices
For larger organizations, it is a good idea for the Project admins or PMO to agree upon a Project ID naming
convention and a numeric range to ensure uniqueness. Additionally, it is also a good idea to document the EPT
settings for reference. For example:
USED TO MAKE
MINIMUM DIGIT PROJECTS FOR THIS
PREFIX STARTING NUMBER POSTFIX PADDING TEAM
When you set up a Project Online site, you need to select a language in which the site will display. If you are in an
environment in which you need to set up Project Online sites for multiple languages, you need to know:
Which languages are supported by Project Online?
What happens if I select a language that is not supported by Project Online?
NOTE
SharePoint Online supports all of the languages that are supported by Project Online.
The following table lists SharePoint Online supported languages in which an alternate Project Online language is
provided.
Basque Spanish
Bosnian English
Bulgarian English
Catalan Spanish
Croatian English
Dari English
Estonian English
Galician Spanish
SHAREPOINT ONLINE SUPPORTED LANGUAGE IN WHICH PROJECT
ONLINE DOES NOT SUPPORT THE SAME LANGUAGE PROJECT ONLINE ALTERNATE LANGUAGE
Hindi English
Indonesian English
Kazakh Russian
Latvian English
Lithuanian English
Macedonian English
Malay English
Thai English
Vietnamese English
Welsh English
Project Online client requirements
5/28/2019 • 2 minutes to read • Edit Online
Learn which web browsers and Project Professional client versions are supported to work with Project Online.
Browser Requirements
Project Online is supported to work with the following web browsers:
Internet Explorer: The most current or immediately previous version.
Microsoft Edge: The most current version.
Safari, Chrome, or Firefox: The most current version.
IMPORTANT
The minimum supported build of Project Professional clients that will connect to Project Online changes over time as
updates for new features and fixes are introduced. Always check the Project Professional versions setting on the
Additional Server Settings page to see the most current information.
You will see Microsoft Project Professional 2016 if you are using Project Professional 2016.
5. On the next page that displays, you will see the build number for the Project Professional client you are
using at the top of the page.
For example, if Product Information shows that you are using the Project Online Desktop Client,
16.0.7629.1000 might display as the build number.
As another example, if Product Information shows that you are using Project Professional 2016,
16.0.4266.1001 might display as the build number.
See also
Project 2016 Updates
Project Online: software boundaries and limits
Project Online Service Description
Configure Office 365 Project Portfolio Dashboard
7/26/2018 • 2 minutes to read • Edit Online
NOTE
This article has done its job, and will be retiring soon. To prevent "Page not found" woes, we're removing links we know
about. If you've created links to this page, please remove them, and together we'll keep the web connected.
The Office 365 Project Portfolio Dashboard app provides a variety of project, task, and resource-based reports,
including issues/risks/deliverables reporting for Project Online. You can download it from the SharePoint Store for
free.
To install Portfolio Dashboard
1. Under Site settings, click Add an app.
2. On the Your Apps page, in the left navigation, click SharePoint Store.
3. In the SharePoint Store, search for Office 365 Project Portfolio Dashboard.
4. Click Add It, and then click Continue.
5. Make sure the Add this app to Project Web App check box is selected, and then click Return to site.
6. Click Trust It.
In order for users to be able to access the Portfolio Dashboard, they must be members of one of the following
SharePoint groups in Project Web App:
Administrators for Project Web App
Portfolio Managers for Project Web App
Portfolio Viewers for Project Web App
Note that even if you're using Project Permission Mode, you still need to add users to these SharePoint groups.
Project Permission Mode security groups cannot be used to grant access to Office 365 Project Portfolio
Dashboard.
See also
Customize SharePoint site permissions
Set up timesheets
7/26/2018 • 2 minutes to read • Edit Online
TIP
A best practice here is to set your first week to start on the first day of the week containing the first day of your
fiscal year. For example, if your organization's fiscal year starts on Tuesday, July 1, it might make sense to have your
first batch of timesheets start on the Sunday or Monday before that.
Choose Save.
The rows on a team member's timesheet are used to capture hours spent on specific project tasks, or on other,
non-project activities, like training or vacation. Sometimes, it can be helpful to categorize the task-related hours in
other ways too. Need an example?
To set things up to capture different categories of task-related work, you can create line classifications in Project
Web App.
4. In the new blank row, type a Name for the category of work, and provide a Description that team
members will understand.
5. Choose Save.
Need an example?
Sara is a consultant who travels a lot to work directly with customers. Her company has just landed a contract with
Contoso, to upgrade their payroll system. As part of the "Contoso Payroll System Upgrade" project, Sara is
assigned to the "Install and configure system" task, where she will travel to Contoso's headquarters and help them
roll things out.
Sara spends part of her time traveling to and from Contoso's offices, and part of her time doing the actual
installation.
On her timesheet, Sara can include the "Install and configure system" task on two separate rows: one row to
capture her travel time ("Travel"), and one row to capture the installation work ("Standard"). This helps Sara's
project manager keep an eye on how much time Sara and other team members are spending on travel for this
particular customer contract.
You may also need an administrative time category for travel, to capture time spent traveling between different
branch offices to get things done on multiple projects, or to attend training sessions that aren't directly related to
any one project.
NOTE
But I want to delete it! You can delete line classification categories too, but only if they haven't been used on any
timesheets. Choose the row you want to delete, and then choose Delete Classification. > Inactive categories are not
available for team members to choose, but they can still be used in reports that include previous timesheet data.
2. Choose Save.
Configure time and task progress
7/26/2018 • 2 minutes to read • Edit Online
There are several ways you can set up time and task progress for your organization in Project Web App.
1. First, decide how task progress should be captured in your organization. Do you want it reported in a
timesheet, along with the hours a team member has completed, or do you want it split out?
2. Next, consider different ways you might customize timesheets and task progress. Every
organization does things differently, and there are several settings that let you control what gets reported.
3. Figure out how you want approval to work. Is the project manager the only person who needs to
approve things? Or are more people involved, like a resource manager or a payroll specialist?
4. Refine your settings by enforcing other policies. Generally it's good to keep things simple, but
sometimes you just can't avoid complexity (especially when timesheets are involved!).
Still stuck?
If you're still not finding the answers you need, try searching for content on support.office.com.
You may also find it helpful to post your questions and issues on a discussion forum. The Project discussion forums
tend to be very active, which make them a great resource for finding others who may have worked through similar
issues, or encountered the same situation.
Customize timesheets and task progress for your
organization
7/26/2018 • 2 minutes to read • Edit Online
There are several ways to customize timesheets and task progress in Project Web App.
When choosing the right settings for your organization, there are two different spots where you'll need to make
changes. Start by going to Settings > PWA Settings.
From there, some of the settings will be under Timesheet Settings and Defaults.
What do you want automatically Timesheet Settings and Defaults Under Default Timesheet Creation
included? Mode, you can choose to pre-populate
timesheets with Current task
assignments or Current projects.
Things like vacation and sick leave may
also be automatically included, based
on settings that you choose when you
create administrative time categories.
SETTINGS WHERE TO CHANGE THEM WHAT TO CHANGE
Report time per day or per week? Timesheet Settings and Defaults Under Timesheet Grid Column Units,
choose whether you want the columns
on a timesheet to represent Days or
Weeks. If you choose Weeks, each
column in a timesheet represents 7
days, and the date in the column
reflects the first day of the week.
Report time as hours or as days? Timesheet Settings and Defaults Under Default Reporting Units, you
can choose to have team members
report time as Hours or as Days. You
can also set how many hours are in a
standard timesheet day and in a
standard timesheet work week.
Can team members add personal Timesheet Settings and Defaults Some team members may want to track
tasks? time spent on their own personal tasks,
alongside their hours for tasks and
other work. Personal tasks will not
show up outside of a team member's
timesheet or task status. They are not
mapped to any project or task, or to
any administrative category you may
have set up.
If you want to allow team members to
add personal tasks, select the Allow
new personal tasks check box, under
Timesheet Policies.
Report task progress as hours per Task Settings and Display Under Reporting Display, choose
day or total hours per week? whether you want team members to
report task progress as hours per day,
or as a total for each week. If you
choose weekly reporting, also choose
the start day for the week.
SETTINGS WHERE TO CHANGE THEM WHAT TO CHANGE
How far ahead do you want to look? Task Settings and Display Sometimes team members are assigned
to so many tasks that it can be
overwhelming to see them all in one
big list. By setting the near future
planning window, you determine which
tasks show up as coming soon, when
the team member goes to report task
progress.
Under Define Near Future Planning
Window, set the number of reporting
periods that you're considering to be
the "near future," in terms of projects
and tasks in your organization.
When you decide that you want to use timesheets in your organization, you should also take a few minutes to do
some thinking about how you want timesheet approval to work.
NOTE
You aren't required to set up an approver for everyone! If you don't need someone to approve the hours a person
worked before those hours are applied to the project plan, you don't have to. Simply make the team member his or her own
approver. In fact, that's how Project Web App automatically sets things up when you add someone new, so you really don't
have to do anything. It doesn't get much easier than that!
Only those people listed on the Timesheet Managers page can approve timesheets.
To add someone as an approver
1. Choose Settings > PWA Settings.
2. Under Time and Task Management, choose Timesheet Managers.
4. Choose the person you want to add as an approver, and then choose OK.
How do I set someone's timesheet approver in Project Web App? You can set a person's Timesheet
Manager in the Add a resource to Project Web App.
Who's responsible for approving task progress?
Remember that Step 3: Update progress, even if both are tracked on a team member's timesheet. Sometimes,
different people are responsible for approving task progress than those who are responsible for approving time.
For example, you may need someone from payroll to approve the number of hours worked (time), but you may
not need that person to approve the percent of work that has been completed (task progress). On the flip side, you
may need a team lead to approve updates to how much work is left to do on a task before it's completed (task
progress), but you may not need that lead to approve the actual hours worked (time). In Project Web App, the
project manager always needs to approve task progress, before it is applied to the project plan.
How do I set someone's task progress approver in Project Web App? Much like approving time, there is also
an approver for task progress too - and this is set to be the project manager making the assignments and is
referred to as the Status Manager.
In addition to some of the standard settings available for time and task progress in Project Web App, there are also
some more granular policies that let you fine-tune how your organization will work.
When choosing the right settings for your organization, there are two different spots where you'll need to make
changes. Start by going to Settings > PWA Settings.
From there, some of the settings will be under Timesheet Settings and Defaults.
Can team members submit overtime Timesheet Settings and Defaults Under Project Web App Display,
and non-billable time? select the The timesheet will use
standard Overtime and Non-Billable
time tracking check box.
Got limits on how much time can be Timesheet Settings and Defaults Accounting systems, customers, or
reported? other internal factors may require that
you have policies around how much
time can be reported.
Under Hourly Reporting Limits, you
can set Maximum Hours per
Timesheet, Minimum Hours per
Timesheet, and Maximum Hours per
Day.
POLICIES WHERE TO SET THEM WHAT TO SET
Can team members report work Timesheet Settings and Defaults By default, team members can't submit
ahead of time? actual work for future time periods. If
your organization is okay with reporting
hours before they actually happen,
select the Allow future time reporting
check box, under Timesheet Policies.
Can team members report time Timesheet Settings and Defaults In Project Web App, tasks can be
against top-level summary tasks? indented below other tasks, and the
work done on the indented tasks will
roll up to the top-level task to
summarize all of the work done in that
area. For example, your task list might
look like this:
Produce white paper
Research subject
Write content
Review content
Incorporate feedback
Publish content
Typically, team members report work
on the indented tasks, and those hours
roll up to the top-level summary task
("Produce white paper"). However, in
some organizations, it might make
sense to allow team members to report
time spent on the summary task, too.
If you want team members to be able
to report time spent on summary tasks,
select the Allow top-level time
reporting check box, under Timesheet
Policies.
Don't want project managers Task Settings and Display Under Protect User Updates, choose
changing actual hours? Only allow task updates via Tasks
and Timesheets.
POLICIES WHERE TO SET THEM WHAT TO SET
Want all types of work copied from Task Settings and Display Team members can import their
timesheets to task progress? timesheet hours into their task
progress, to get a jump on filling out
how much work they've finished. By
default, only work that uses the
standard line classification (in the
Billing Category column of a
timesheet) will be imported.
If you want all work across all categories
to be copied to task progress when a
team member imports a timesheet,
select the Import all timesheet line
classifications check box, under
Protect User Updates.
Can team members set the time Task Settings and Display Task progress is different from
frame for a task progress report? timesheets, in that it doesn't necessarily
need to reflect a specific accounting
period. If you want team members to
be able to choose what dates they're
reporting task progress for, select the
Allow users to define custom
periods for task updates check box,
under Protect User Updates.
Set up your fiscal year
7/26/2018 • 2 minutes to read • Edit Online
Under Define Fiscal Period Start Date, type or choose the first date of your fiscal year.
If you choose the 4,5,4 Method, it will configure four quarters, with three fiscal periods in each quarter. The
first period will be 4 weeks long, the second will be 5 weeks, and the third 4 weeks.
A total of 12 fiscal periods will be set up for any of these numbered methods.
Using months? Choose Standard calendar year to create 12 periods that go from the first day of each
month through the last day of each month.
Or, if you're thinking of months as 4-week increments, choose 13 Months. With this option, a total of 13
fiscal periods will be set up.
None of these work for me. Choose whichever one is closest to how your organization works, and you
can go back and refine things after you've saved.
4. Set the format for period names.
Under Define Period Naming Convention, you can leave things alone if you want and everything will
work just fine. However, a lot of organizations prefer to add some structure to how each fiscal period is
named.
Without a Prefix or a Suffix, your fiscal periods will use simple incremental numbers (1, 2, 3, and so on).
Adding some structure to the naming gives each period some context. For example, you can set up fiscal
periods that are named "Sprint1_FY15," "Sprint2_FY15," and so on. This can be helpful for reporting
because it provides a little more information about what's being captured.
As you add a prefix and suffix, an example name is shown.
After saving, you can change the information or delete rows in the table to refine your fiscal year.
Timesheets can be used to capture all of a team member's hours during the week. In some cases, you may only
be interested in capturing the hours spent on specific project tasks. In other cases, you may also want to include
hours spent on other, non-project activities, like training, sick leave, or vacation.
Project Web App already has categories set up for sick leave, vacation, and general administrative time, but you
may also want to create categories for things like training or travel.
To set up Project Web App to capture different categories of non-project hours, you can create administrative
time categories.
TIP
Did you know that you can also set up categories for task-related work?
There are a couple of different ways you can set up Project Web App to capture task progress. Step 3: Update
progress
When choosing the right settings for your organization, there are two different spots where you'll need to make
changes. Start by going to Settings > PWA Settings.
From there, some of the settings will be under Timesheet Settings and Defaults.
Should team members enter time Timesheet Settings and Defaults Select the Single Entry Mode check
and task progress as hours in one box if you want timesheet hours to also
view? be used as task progress.
SETTINGS WHERE TO CHANGE THEM WHAT TO CHANGE
Is task progress a percentage or a Task Settings and Display If you are NOT using single entry
number of hours? mode, under Tracking Method,
choose the default way that you want
task progress reported: as a
percentage, or as hours. If you choose
hours, you have a couple of different
options - one that includes remaining
work, and one that is simply total hours
worked.
Before you can use Project Online reports in Excel Online, the tenant administrator needs to activate this feature
for the Project Online site collection.
1. Where to sign in to Office 365 for business with your admin account.
2. At the top of the page, select Projects. Or, select the app launcher , and then select Projects.
3. Select Settings > Site Settings.
4. Under Site Collection Administration, select Site collection features.
5. Scroll down in the list to Project Web App Permission for Excel Web App Refresh, and then select
Activate.
TIP
If you have more than one Project Online site collection, make a note about which one has Project Web App
Permission for Excel Web App Refresh activated. When you activate it on one site collection, it is activated for all
site collections in your Office 365 tenant. However, if you ever want to deactivate it, you can only turn it off from the
site collection where you activated it initially.
You should now be able to refresh your Project Online reports in Excel Online.
IMPORTANT
Before using the default Project Online reports ( Project Overview, Resource Overview, and Project Overview
Dashboard), you may need to open each report in Excel 2013, refresh the data, and then save the report back to Project
Online. This will update the report so that it is supported by Excel.
IMPORTANT
For Excel Online to be able to refresh the Excel reports, the Excel reports will need to use the legacy data import wizards. For
details on enabling the legacy data import wizards in Excel, see Data import and analysis options.
What reporting tools can I use with project data?
4/19/2019 • 3 minutes to read • Edit Online
If you're using Project Web App, you might be wondering what tools you can use to create reports. Whether you're
using Project Web App for Project Server 2013 or Project Web App for Project Online, you have several options
available for viewing and creating reports. You can:
Sample reports in Project Web App that come automatically with Project Web App to get ideas about basic
reports
Excel business intelligence features that include charts, tables, and views
Reports in Project 2013
SQL Server Reporting Services (provided your organization has Reporting Services set up)
Power BI for data visualizations and insights
Use other tools, such as PerformancePoint Services or Visio Services (if your organization has these service
applications set up and you have access to your project data in these tools)
The sections below provide more information about reporting options for project data. To download a poster that
summarizes all of these tools, see Business intelligence for Project in Office and SharePoint.
See Pick the right report in Project 2013 for an overview of the different reports that are available.
See Create a project report to learn how to create reports in Project 2013.
Power BI
Power BI offers a great experience for data visualization and insights. See What is Power BI
Visio Services
You can use Visio to create a data-connected diagram, and then share it with others by using Visio Services in
SharePoint. See A beginner's guide to Visio and TechNet Article: Overview of Visio Services in SharePoint Server
2013.
Configure rollup of timephased reporting data in
Project Online
7/26/2018 • 3 minutes to read • Edit Online
Project admins can configure Project Online to roll up timephased reporting data to different levels of granularity.
They can choose to roll up their data daily, weekly, monthly, or by fiscal period and retrieve the data through the
timephased OData endpoints:
AssignmentBaselineTimephasedDataSet
AssignmentTimephasedDataSet
TaskBaselineTimephasedDataSet
TaskTimephasedDataSet
Benefits
A key benefit this provides is that it can help to improve report generation performance, especially in organization
that have a lot of Project Online reporting data. While retrieving task and assignment timephased reporting data
by day was the only option available previously, many organizations do not need this level of granularity. Being
able to retrieve their data on a broader scope (such as weekly or month) can greatly improve report generation
performance by reducing the amount of records that need to be downloaded. For example, instead of needing to
retrieve 300,000 records when set to daily , setting to monthly could reduce this to a much lower number, such as
10,000 records.
With broader levels of granularity, publish times will be a lot faster since project data won't need to be broken
down in daily levels for publishing. In some cases, it can also improve the performance of interacting with Project
Detail Pages. Organizations that have complex workflows that depend on publish to complete to move to the next
PDP will see performance improvements.
NOTE
If your organization has deployed workflows that require a publish job to complete within a step, setting the option to report
timephased data to daily can result in a poor experience for users filling out Project Detail Pages as the workflow will need to
wait on the reporting jobs to complete before moving to the next step. It is recommend not to use daily if you have
workflows that wait on publish to complete. > If you require resource demand data for resource capacity planning, then do
not choose never - as that setting will not show resource demand.
Tip: If you don't use any of the timephased Odata feeds, we highly recommend setting the Timephased Data option
to "Never" which provides the added benefit of much faster Reporting Publish queue jobs.
NOTE
If you have many projects to republish, you can use the Office 365 Project Online CSOM Tool(ProjToolV2) to
programmatically publish your Project Online projects. You should plan to do this at a time that will be least likely to
impact your organization.
New instances - In new Project Online instances, note that the Timephased data default setting is Never.
Make sure to select the appropriate Timephased data setting after creating your new instance to prevent the
need to republish all your projects at a later time. Also consider the tradeoffs associated with a more
granular setting (for example, Daily vs Monthly) with regards to the time it takes to publish as well as pull
down the timephased OData feed.
This table summarizing the considerations and recommended options:
Setting Considerations
Never For customers who do not use the Timephased Odata feeds
and Portfolio Analyses feature, and do not need resource
demand data for capacity planning.
This is the default setting for new Project Online instances.
Much faster Reporting Publish queue jobs.
No additional quota consumed (timephased data consumes
the most space).
> [!NOTE]> For more information about the interaction of this
setting with the Portfolio Analyses feature is available in the
blog post Project Online: Reporting and Portfolio Analysis.
Daily Largest performance impact for publishing/reporting.
Generates largest dataset which results in slower downloads of
timephased Odata feeds and largest DB quota usage.
Recommended only if you need your current/historical reports
on a by day basis.
By Fiscal Period Timephased dataset is about one thirtieth smaller than the
Daily option.
Allows administrators control over the time range where
timephased data is published based on the defined fiscal
periods.
Recommended option.
See Also
Brian Smith Blog post: Project Online-Changes to Granularity of Time phased OData
Grant reporting access in Project Online
Use Excel 2013 to create a new Project Online report
ProjectData-Project OData service reference
Configure the Resource Center
7/26/2018 • 2 minutes to read • Edit Online
If your organization uses Active Directory synchronization, the first time you access the Resource Center in Project
Web App, you need to choose which Active Directory group contains the users that you want to make resources in
Project Web App.
To choose which group to use for your Project Web App resources:
1. On the Quick Launch, click Resources.
2. On the Resource Center page, click the click here link to synchronize with an existing Active Directory
group.
3. On the Active Directory Enterprise Resource Pool Synchronization page, in the Active Directory
Group section, enter the name of the Active Directory group that contains your Project Web App resources.
You can enter multiple Active Directory groups, if appropriate.
4. Select the Automatically reactivate currently inactive users if found in Active Directory during sync
check box, unless there is a good reason not to do this in your organization.
5. Click Save and Synchronize Now to add the users that are in the Active Directory group to Project Web
App as resources.
You can also add resources that aren't part of the selected Active Directory group(s). See Add a resource to Project
Web App for more information.
Activate resource engagements in Project Online
7/26/2018 • 2 minutes to read • Edit Online
If you're using Project Online, you need to activate the resource engagements features before you can start using
them. The engagement features need to be turned on for each Project Online site in your organization.
Overview: Resource engagements
NOTE
Resource engagements are only available if you're using Project Professional 2016 or Project Online Desktop Client,
connected to Project Online or Project Server 2016. Project Standard 2016 does not include resource engagements.
TIP
If you're in the Resource Center, you can click Additional Server Settings in the yellow note at the top of the view,
and then skip to Step 3.
3. Under New Resource Management Features Available, select the Activate check box, click OK after
reading the message about data migration, and then click Save.
Resource engagements are new for Project Online, but what happens to the old resource plans? Read on about
this new feature and how old resource plans are converted into resource engagements.
I've heard about this new resource engagements feature. How do I get
it?
Starting on September 22, 2015, we will begin rolling out the new feature, and Project Online administrators will
have the option to turn on the new feature at their convenience once it becomes available. This process is phased,
and it might take some time before everyone is able to see it. This is a site-level activation. Once an administrator
has activated the feature, anyone on that site will be able to see the new Resource Requests page and be able to
start creating and managing requests.
For any new Project Online sites created after the feature is available for the tenant, the administrator will still need
to activate the feature for the new instance.
We recommend that the Project Online administrator turn on the feature in a spare Project Web App (PWA)
instance first to become familiar with it before turning it on in the main PWA instance.
Please note, once the feature has been activated for a site it cannot be de-activated. This is a one-way operation.
I'm excited about the new resource engagements, but what happens to
my old resource plans?
The good news is, once the new feature has been turned on, your old published resource plans will be converted
into resource engagements. When the feature is activated we will start migrating the old published resource plans.
Before you activate this feature, we recommend that you:
Make sure your existing resource plans have timephased data.
Republish any existing resource plans.
Since engagements are time-based, if your resource plan does not contain any timephased information (resources
only), no engagements will be created. We will do our best to convert resource plans into engagements, provided
all of the necessary data is available. Once the activation is complete, you will no longer be able to access the old
resource plans, but can start creating new engagements to replace them.
For every published resource plan, we will use some of the data to create new engagements. The status will match
that from the resource plan and all of the timephased data will be transferred.
After the feature has been activated, you will no longer be able to access the old resource plan UI, and that page
will be deprecated.
After migration is complete, the New Resource Management Features Available section will disappear. You
should now be able to visit the Resource Requests page and view the newly created engagements that were
based on your old resource plans.
This article describes how demand management is implemented in Project Web App.
You can use the demand management tools in Project Web App to capture all project ideas in one place, and then
guide them through a decision-making process catered to your business's needs. Using these tools can help your
users make decisions about which proposals to approve, and track progress on a project until the work is
completed.
Demand management in Project Online uses:
Project detail pages - Project Web App pages where users can view and update project information.
Stages - sets of project detail pages specific to one area of the project lifecycle.
Phases - a way to organize multiple stages.
Workflows - a way to enforce your business processes as projects move through the various phases and
stages.
Enterprise project types - a way to bring phases, stages, and project detail pages together with a workflow
into a standardized way of doing a project.
We'll go over each of these in the sections that follow.
Stages
A stage includes one or more project detail pages, grouped to gather information about a project. This information
can be used or updated by a workflow.
In Project Web App, you can define which project detail pages are displayed in a given stage, which fields are
required and which are read/write or read-only, and which phase (we'll talk about phases in the next section) the
stage is part of.
For each stage of a project, we recommend that you define what actions need to take place and what information
needs to be gathered based on your business requirements for the project. This information will help you define
the list of fields that you need to display in the project detail pages and what actions you need the workflow to
take. The following steps list the general procedure:
1. Define what needs to happen with the project in each stage
2. Define the required information that you want to capture using project detail pages
3. Define the state of the fields in each stage (Required, read/write, or read-only)
Phases
A demand management phase is used to organize multiple stages that make up a common set of activities in the
project life cycle. Examples of phases are project creation, project selection, and project management (represented
in the default Project Web App phases as Create, Select, and Manage). The phases themselves are just a way of
organizing your stages and do not determine the order in which the stages are executed. (The order of the stages is
determined by the associated workflow.)
See Best practices for creating phases and stages for more information.
Workflows
Workflows enforce your business processes and provide a structured way for projects to move through phases
and stages. You can set up a workflow to do a variety of actions based on the user input for each stage, including
sending emails, assigning tasks, and waiting for specific project actions.
For example, you might have an "Initial Proposal" stage where you include a project detail page with a custom field
for project cost. You could configure the workflow to automatically accept or reject the project based on whether
the project cost exceeds a certain limit.
The image below shows the five phases of demand management that are included in Project Web App and how
they fit together. Within each phase are example stages such as "Propose idea" and "Initial review." Each stage can
have one or more associated project detail pages. The entire collection of stages represents a single workflow that
can be associated with an enterprise project type.
There are four general steps to perform to create your workflow in Project Web App:
1. Design the workflow based on your business requirements.
2. Create the needed custom fields, project detail pages, phases, and stages in Project Web App.
3. Create the workflow in SharePoint Designer 2013 and deploy it to Project Web App.
4. Create an enterprise project type that uses the workflow.
It is common as a Project Web App admin to have to troubleshoot Project workflows. Depending on how the
workflow process has been defined for the organization, there may be instances where an admin needs to act for
the workflow instance to progress. There are fields that a user can add to the Project Center, query OData or the
Project Online Rest endpoint to better understand the state of each Project workflow. With the information
provided in these fields, a Project Web App admin can take the appropriate corrective action to unblock the
progression of the Project workflow.
There are three steps on troubleshooting Project Online workflows:
1. Setting up views and reports to see the errors
2. Reviewing the errors
3. Acting on the errors and taking additional steps
NOTE
For more information on how to manage security, please see Video series: How security permissions work in Project Server
NOTE
After clicking Save, you will receive the following message: " You have not assigned a security category to this view.
Failure to do so will prevent anyone from seeing the view in the dropdown or from using the view. Do you want to
save anyway? " Click OK, because only members of the PWA Administrators group will be able to view the Project
Workflows Project Center view.
Workflow ID ProjectWorkflowInstance Id
Code Examples
Read a filtered set of projects and retrieve the project workflow instances. If the request includes more then 20
projects, you will need to add additional filtering otherwise the request will fail:
GET https://CONTOSO.sharepoint.com/teams/project/PWA/_api/projectserver/projects?
$Filter=startswith(Name,'Budget')&$Expand=ProjectWorkflowInstance,ProjectWorkflowInstance/WorkflowInstance
Read all workflows with error response codes greater than or equal to 400, including the owner and minimal
details about the project:
GET https://CONTOSO.sharepoint.com/teams/project/PWA/_api/projectserver/projectworkflowinstances?
$FILTER=WorkflowErrorResponseCode ge
400&$SELECT=Id,WorkflowError,WorkflowErrorResponseCode,WorkflowState,Project/Id,Project/Name&$EXPAND=Wo
rkflowInstanceOwner,Project
NOTE
For more information about developing against Project Online, please visit the Project Dev Center.
NOTE
The Workflow Created and Workflow Last Run display date and time in UTC.
NOTE
After acting on the errors it will take up to 24 hours for the status to be updated in Project Center, Project Service OData and
through the Project REST AP.
ERROR ACTION
We were not able to update the status for project Typically this error will be resolved if no action is taken for a
PROJECT_GUID period of time. If you need the error to be resolved
immediately, try How to Resume a SharePoint Workflow.
We were not able to update the status for stage STAGE_GUID Typically this error will be resolved if no action is taken for a
on project PROJECT_GUID period of time. If you need the error to be resolved
immediately, try How to Resume a SharePoint Workflow.
Stage STAGE_GUID is not the current stage for project This error happens when attempting to set workflow stage
PROJECT_GUID status for a workflow stage that is not in valid. In this
situation, you need to How to Restart a Project Workflow.
Custom field CUSTOM_FIELD_GUID does not have a value set A custom field is not correctly set and the workflow is unable
for project PROJECT_GUID to progress until the custom field value is updated. To
determine the name of the custom field that needs to be
updated, see the section titled How to get a Custom Field
from a Custom Field GUID. After updating the custom field,
try How to Resume a SharePoint Workflow.
> [!NOTE]> As a best practice, it is recommended for
true/false custom fields involved in a workflow to use a lookup
table opposed to a flag custom field to prevent this issue for
custom fields of this type.
The custom field CUSTOM_FIELD_GUID does not exist. This happens when the workflow attempts to read or write the
value for a custom field which has been removed from PWA.
You will need to edit the workflow and ensure proper custom
field is associated with the workflow.
Failure submitting Check-in job for project PROJECT_GUID Typically this error will be resolved if no action is taken for a
period of time. If you need the error to be resolved
immediately, try How to Resume a SharePoint Workflow. If the
issue continues to persist, you will need to How to Restart a
Project Workflow.
ERROR ACTION
Failure submitting Publish job for project PROJECT_GUID Typically this error will be resolved if no action is taken for a
period of time. If you need the error to be resolved
immediately, try How to Resume a SharePoint Workflow. If the
issue continues to persist, you will need to How to Restart a
Project Workflow.
Failure submitting Publish Summary job for project Typically this error will be resolved if no action is taken for a
PROJECT_GUID period of time. If you need the error to be resolved
immediately, try How to Resume a SharePoint Workflow. If the
issue continues to persist, you will need to How to Restart a
Project Workflow.
Failed to create a project from list item This is an error that is impacting the
CreateProjectFromListItem activity. First, try How to Resume a
SharePoint Workflow. If the issue persists, review the PWA
queue to see if there is a failed queue job for the project
creation.
Could not find list item to create a project for web WEB_ID list The list item does not exist anymore. You can check the
LIST_ID item LIST_ITEM_ID Recycle Bin to see if you can restore the list item.
Could not find an idea associated with project PROJECT_GUID This happens when the idea that was initially used for project
while trying to update status creation is deleted. You can check the Recycle Bin to see if you
can restore the list item.
Job id JOB_GUID is invalid Contact Microsoft Support if you get this error message.
Workflow owner does not have permission to check-in project Admin needs to grant check-in permissions to the workflow
PROJECT_GUID owner. After granting permissions, try How to Resume a
SharePoint Workflow. If the issue continues to persist, you will
need to How to Restart a Project Workflow.
Workflow owner does not have Edit Project Summary Fields or Admin needs to grant appropriate permission to the workflow
Save Project to Project Server or Publish Project category owner. After granting permissions, try How to Resume a
permission on project PROJECT_GUID SharePoint Workflow. If the issue continues to persist, you will
need to How to Restart a Project Workflow.
Workflow owner does not have New Project global permission This happens when attempting to create a project from a
SharePoint list item and the user that starts the workflow
instance cannot create new projects in PWA.
Admin needs grant appropriate permission to the user. After
granting permissions, try How to Resume a SharePoint
Workflow. If the issue continues to persist, you will need to
How to Restart a Project Workflow.
Workflow owner does not have Open and Save Project To Admin needs to either grant appropriate permission to the
Project Server category permissions on project PROJECT_GUID user. After granting permissions, try How to Resume a
SharePoint Workflow. If the issue continues to persist, you will
need to How to Restart a Project Workflow.
Workflow owner does not have Open Project category Admin needs to either grant appropriate permission to the
permission on project PROJECT_GUID user. After granting permissions, try How to Resume a
SharePoint Workflow. If the issue continues to persist, you will
need to How to Restart a Project Workflow.
ERROR ACTION
Workflow owner does not have Publish Project category Admin needs to either grant appropriate permission to the
permission on project PROJECT_GUID user. After granting permissions, try How to Resume a
SharePoint Workflow. If the issue continues to persist, you will
need to How to Restart a Project Workflow.
The project workflow cannot have multiple stages in progress This error shows up if the workflow instance attempts to enter
a stage without closing previous stage. Contact Microsoft
Support for more help with this error.
The project workflow must have one stage in progress This error shows up if the workflow instance attempts to leave
a stage without setting the next stage in progress. Contact
Microsoft Support for more help with this error.
Project PROJECT_GUID cannot have a workflow This error occurs when trying to start a workflow instance on
an unsupported project type. Contact Microsoft Support for
more help with this error.
Project PROJECT_GUID has failed to check-in A PWA queue job has failed preventing the workflow from
progressing. Review the failed queue job from the Manage
Queue job page within PWA.
Project {0} has failed to check-in after the custom field {1} A PWA queue job has failed preventing the workflow from
value was updated progressing. Review the failed queue job from the Manage
Queue job page within PWA.
Project PROJECT_GUID has failed to check-in after the A PWA queue job has failed preventing the workflow from
property PROPERTY value was updated progressing. Review the failed queue job from the Manage
Queue job page within PWA.
Project PROJECT_GUID is checked out in another session Admin needs to either force check-in the project or ask the
user to check the project in. After the project is checked-in, try
How to Resume a SharePoint Workflow. If the issue continues
to persist, you will need to How to Restart a Project Workflow.
Project PROJECT_GUID is checked out to another user Admin needs to either force check-in the project or ask the
user to check the project in. After the project is checked-in, try
How to Resume a SharePoint Workflow. If the issue continues
to persist, you will need to How to Restart a Project Workflow.
Project PROJECT_GUID does not have a workflow Contact Microsoft Support if you get this error message.
Project PROJECT_GUID is not checked out The admin will need to review the workflow definition and
verify no project updates are attempted before the project is
checked-out.
Project PROJECT_GUID does not exist Contact Microsoft Support if you get this error message.
Project PROJECT_GUID cannot be published because the Typically this error will be resolved if no action is taken for a
PROJ_PWA_SHORT_NAME is in Read Only mode period of time. If you need the error to be resolved
immediately, verify that the PWA site is not in read only mode
by navigating to the site and seeing if there is a notification
across the top of the page. If there is no notification, then try
How to Resume a SharePoint Workflow.
ERROR ACTION
Failed to update project PROJECT_GUID A PWA queue job has failed preventing the workflow from
progressing. Review the failed queue job from the Manage
Queue job page within PWA.
Property PROPERTY does not have a value set for project The admin will need to review the workflow definition and
PROJECT_GUID verify properties are being set correctly.
Property PROPRERTY does not exist Contact Microsoft Support if you get this error message.
Failed performing a Publish operation on project A PWA queue job has failed preventing the workflow from
PROJECT_GUID progressing. Review the failed queue job from the Manage
Queue job page within PWA.
Failed performing a Publish Summary operation on project A PWA queue job has failed preventing the workflow from
PROJECT_GUID progressing. Review the failed queue job from the Manage
Queue job page within PWA.
401 User not found/user is inactive You will need to How to Restart a Project Workflow.
System.InvalidOperationException: Incomplete closure You will need to How to Restart a Project Workflow.
detected while loading subroutines for workflow
WORKFLOW_GUID in scope.
If your error is not listed or you want further details about the error you are getting, see the section How to get the
detailed error message for a SharePoint Workflow.
If you find any other errors that are not listed above, please let us know. There are two ways to contact us, either
through our User Voice forum or by contacting Microsoft support. Please provide us with the following details.
Project Name
Workflow Error Code
Workflow Error
Workflow Created
Workflow ID
Workflow Last Run
Workflow Owner
Failed queue message and timestamp if applicable
NOTE
The project needs to be checked-in before the workflow can be restarted. For more information about checking in a
project, please see Manually check in projects and resources that are checked out by another user.
4. Click OK
To restart project workflows for a set of projects
1. From Project Web App, click on the gear icon then PWA Settings.
2. Click on Change or Restart Workflows.
3. Choose the Enterprise Project Type from the list for the projects.
4. Select the set of projects that need to have their workflows restarted.
NOTE
Projects need to be checked-in for them to show up in the list. For more information about checking in a project,
please see Manually check in projects and resources that are checked out by another user.
NOTE
Restarting Project workflows in bulk may cause throttling to occur. To learn more, please see SharePoint 2013 workflow
throttling and performance in SharePoint Online and Project Online.
NOTE
You will need to change the Job History if the workflow error is older then a week for it to show up in the list.
Additional Steps
Workflow Last Run Date is far in the past for an active project
The project may be checked out in another session and the workflow is unable to progress until the project is
checked in. The admin may want to consider force checking in the project to allow the workflow to progress. For
more information about checking in a project, please see Manually check in projects and resources that are checked
out by another user.
NOTE
Workflow Last Run Date is referred to Last Submitted Date in the Project Service OData and Project Service REST API.
Best practices for creating phases and stages
7/26/2018 • 2 minutes to read • Edit Online
Phases and stages are an important part of using workflow in Project Web App. This article presents some best
practices for creating phases and stages. If you're just starting out with Project Web App workflow, chick out Using
workflow for demand management in Project Online first.
You can name your demand management phases and stages any way you'd like, but using the following guidelines
can save you time as an administrator and make things easier to find.
For each phase or stage that you create in Project Web App, we recommend using specific naming conventions.
We also recommend that you create unique phases and stages for each enterprise project type. These conventions
can provide easier maintenance as you expand your usage of demand management features.
For phases:
Create unique phases for each workflow and prefix the phase with an acronym that categorizes the
workflow (for example, IT).
Add a number after the acronym so that phases appear in chronological order.
The following table shows an example of how you might name the phases of IT projects.
For stages:
Add the appropriate acronym and a number before the title of the stage to cause the stages to appear
chronologically.
Create unique stages for each workflow. This allows you to make changes to a stage in one workflow
without affecting other workflows.
The following table shows an example of how you might name the stages of IT projects.
Project Online offers two security management options for controlling the kind of access that users have to sites
and projects:
SharePointPermission Mode With this option selected, a special set of SharePoint security groups are
created in sites associated with Project Online. These groups are used to grant users varying levels of access
to projects and Project Online functionality.
TIP
To learn more about the permissions included in the security groups used with SharePoint Permission Mode, see
SharePoint Permissions Mode default permissions for Project Server 2013 SharePoint groups. While this article is
written with Project Server 2013 in mind, the information also applies to Project Online.
Project Permission Mode With this option selected, Project Online provides a set of customizable security
groups and other functionality that is distinct from SharePoint groups.
Project Online uses SharePoint Permission Mode, by default. This mode is more streamlined, enabling you to
implement security quickly and consistently across SharePoint Online and Project Online. However, there may be
situations where it makes more sense to use Project Permission Mode. For example, if you think your organization
needs to manage access based on the RBS structure, you'll need to use Project Permission Mode. This mode offers
greater control, because you can customize and change individual permissions for each security group and
typically intended for larger PMO organizations with a requirement to have more granular access control and has
in-house expertise (or has engaged with a partner) to help with the implementation.
Site collection administrators have administrative permissions to the Project Online site. These
permissions allow the site collection administrator to bypass any Project Online security permissions set in
SharePointPermission Mode or Project Permission Mode. This way, someone always has access to Project Online.
What should I do if my Project Online administrator gets locked out?
Cau t i on
Switching between SharePoint Permission Mode and Project Permission Mode deletes all security-related settings.
If you switch from SharePoint Permission Mode to Project Permission Mode, you have to manually configure your
security permissions structure in Project Online. Switching from Project Permission Mode back to SharePoint
Permission Mode deletes your security permissions information from Project Online.
To change between permission modes:
1. Go to the the Project Web App site collection as the Project Web App Administrator
2. On the Project Web App site, click the Settings icon in the top right corner then click PWA Settings
3. Under the Operational Policies heading, click Additonal Server Settings
4. In the Permission Management section choose the permission mode that you want and then click Save
Plan SharePoint groups in Project Online
4/5/2019 • 2 minutes to read • Edit Online
In Project Online, SharePoint Permission Mode creates SharePoint groups that directly correspond to the default
security groups found in Project Permission Mode.
TIP
Need to switch between security modes? Take a look at Change permission management in Project Online.
In Project Online, a Project Web App site is a site collection within SharePoint Online and sharing a Project Web
App site with external users works the same as sharing any other SharePoint Online site. In this article, we cover
the options for external sharing that are relevant to Project Web App in Project Online, along with licensing
implications for giving your external users access to Project Web App features in Project Online. We also
encourage you to read about how to manage external sharing for your SharePoint Online environment.
Once a Project Web App site has been shared with an external user, the user can collaborate through documents
and lists in that site, including risks and issues. Any interaction on a Project Site requires a Project Online license.
NOTE
For more information about Project Online license considerations for external users, see the Project Online Service
Description.
Managing licenses and permissions for external users is the same as for internal users. (To find the external users in
your user list, look for users with #EXT# in the user name.)
Before you start using Project Online, one of the most important decisions that you have to make is how you want
to manage your Project Online user accounts.
Locked out? Don't panic. The site collection administrator for your Project Online site automatically has
administrative permissions, and can get the Project Online administrator back in.
The online version of Project Web App is used in several large organizations. The rich set of Project Portfolio
Management (PPM ) capabilities have been used at scale in these large organizations successfully when the
following best practices in this document are followed. This document is updated as new best practices are
discovered.
Although one of the obvious benefits of using a cloud-based service is avoiding having to deal with deployment,
setup, and hardware and software tuning, there are still some steps you can take to ensure your organization gets
the best performance out of Project Web App.
Project Web App offers many configuration and customization settings. Project Web App has been optimized to
work within a set of configurations and customizations. Excessive customization will have a negative performance
impact. This article highlights the performance impact and tradeoffs of some of the most common Project Web
App settings, so you can make informed decisions when it comes to customizing and configuring Project Web App.
NOTE
Switching between SharePoint permission mode and Project permission mode deletes all security-related settings. If you
switch from SharePoint permission mode to Project permission mode, you have to manually configure your security
permissions structure.
Recommendation:
Use the default SharePoint permission mode for better overall performance. If you need to use Project permission
mode, limit your customizations as much as possible.
For example, if you have a site collection dedicated to your IT department, you can configure your IT Projects EPT
to create Project sites off of https://contoso.sharepoint.com/sites/IT .
Recommendation:
If your organization uses project sites, select the option to create them on demand rather than automatically. This
speeds up the first publishing experience and avoids creating unnecessary sites and content.
For each EPT, you can configure this option by:
1. In Project Web App Settings, click Enterprise Project Types.
2. Select the EPT to which you need to change the setting.
3. In the EPT settings page, in the Project Site section, select Allow users to choose.
Create project sites in their own site collection by the EPT. Keep the number of project sites in a site collection
below the SharePoint limits.
What do you sync?
Project Web App runs on top of SharePoint. Some features require synchronization between Project Web App and
SharePoint. These synchronizations can be time consuming especially for large and complex organizations and,
depending on your business needs, can sometimes be unnecessary. This article explores all these various
synchronization systems to help you decide which ones you need and which ones you can safely turn off. Some of
these settings are already off by default.
In the following sections, we discuss:
Sync user permissions for your project site
Sync SharePoint Tasks Lists for Enterprise projects
Sync User Permissions
Project Sites provides project teams a space to collaborate, upload documents, and raise issues. When sync user
permissions is turned on, whenever a person is granted or denied a permission to a project, the corresponding
Project site permissions are updated.
This synchronization happens every time the project is published and when there is an impacting change to a
Project User in Active Directory. The tradeoff for the sync convenience is performance. The more users and sites
that need to be synced, the slower the operation, especially if you're:
An organization with many users and complex security permissions
Bulk publishing
Importing or creating multiple projects (with Projects sites)
Updating group memberships that will require a resync of project site permissions
For each EPT, you can define if sync user permissions is turned on.
NOTE
If project sites are created in a different site collection than where the Project Web App site is located (for example,
https://contoso.sharepoint.com/sites/pwa is where Project Web App is located and the EPT is creating project sites in
https://contoso.sharepoint.com/sites/IT), syncing user permissions is not supported.
Recommendation:
We always recommend to disable the Project site permission sync option and strongly recommend that you
disable the Project site permission sync option if the following is true for your deployment:
You have a large number of resources (>1000)
You have a large number of projects which require a Project site (>1000)
You have a large number of resources that need to be granted access to the majority of Project sites
Project sites are created outside of the default site collection (sync is disabled)
Here are some options to consider for managing your Project site permissions:
If your project teams have low turnover, consider turning off Project site permission sync to improve Project
Publish and Project Detail Pages performance. You would then have to manually grant or remove
permission to your Project sites whenever someone joins or leaves a project team.
If access needs to be granted for all users in PWA and it maps to your existing group permissions, consider
configuring your Project sites to inherit from the parent PWA site.
If site access aligns with specific roles, create one or more groups that map to those roles (possibly if you
have Group sync enabled, you can use the same groups) and grant those groups access to the Project site.
For each EPT, you can turn off Sync User Permissions:
1. In Project Web App Settings, click Enterprise Project Types.
2. Select the EPT to which you need to change the setting.
3. In the EPT settings page, in the Synchronize section, ensure that the User Permission Sync option is
unchecked.
Sync SharePoint Tasks Lists for Enterprise projects
Sync SharePoint Tasks Lists is turned off by default to improve the speed of project publishing. This also helps
speed the transition between Project Detail Pages. If your users rely on the task list and its timeline visualization in
the Project site, you can turn this feature on and check if its impact on the performance of project publishing is
reasonable.
NOTE
If project sites are created in a different site collection than where the Project Web App site is located (for example,
https://contoso.sharepoint.com/sites/pwa is where Project Web App is located and the EPT is creating project sites in
https://contoso.sharepoint.com/sites/IT), syncing SharePoint Tasks Lists is not supported.
Recommendation
The Sync SharePoint Task Lists option was intended for use with small project plans. If the project has a large
number of tasks, syncing them on publish will take some time as each task needs to be updated one at a time. For
example, it takes several minutes to sync a 500 task project plan to the SharePoint task list. Even though the queue
job is on a separate correlation and does not block saving and editing of the project plan, we recommend not
enabling the Sync SharePoint Task Lists option. We recommend only syncing projects with less than 250 tasks.
This option is turned off by default. Only turn SharePoint Tasks Lists sync on if your users need the feature for each
EPT. To configure this option:
1. In Project Web App Settings, click Enterprise Project Types.
2. Select the EPT to which you need to change the setting.
3. In the EPT settings page, in the Synchronize section, select Sync SharePoint Tasks Lists.
Recommendation:
When you configure views, offer users simple specialized views for faster navigation rather than a complex all-in-
one view that would load unnecessary data most of the time.
User View Settings
Project Center: Group by with Rollups
Users can configure different ways to have the view rendered to them including having data grouped by different
fields. When using group by, data can be rolled up for supported aggregation fields (for example, summing costs
or a custom field). Computing these aggregate values requests the service to load up all the values in order to
display the total.
Recommendation:
Unless the user needs to see the rolled up values, disable the Rollup option in the ribbon.
Event Handling
Add-ins can respond to events being raised in Project Online. For example, an add-in can perform some additional
activity after a project has been created. Users may have to wait for these add-ins to complete handling the events
before they can continue working with Project Online.
Recommendation:
Project Online should be configured to handle certain events asynchronously to minimize the amount of time
users will need to wait. To do this, ask the developer of any add-ins you use to make sure their code is able to
handle After events asynchronously. They can go to this article to learn more about practices they can follow for
handling these events.
If the developer confirms the add-in is ready for the change, you then need to enable the Turn on asynchronous
After event processing setting on your PWA Settings page.
1. On your PWA Settings page, in the Operational Policies section, select Additional Server Settings.
2. In the Asynchronous event handling for After events section, make sure that Turn on asynchronous
After event processing is selected.
3. Select Save.
You'll then need to test your instances to verify that everything works correctly.
NOTE
This feature is being introduced gradually to Office 365. This means that you may not currently have this setting available.
NOTE
Project Online is optimized to only retrieve the data you are requesting so include the fields you require. Avoid downloading
all the columns if they are not needed.
Delta Sync
Check periodically to keep your copy up to date.
1. Record current date time.
2. Query ProjectId From Projects endpoint.
3. Delete local Projects where the ProjectId no longer exists.
4. Query each endpoint by Project:
5. Query the entity Ids.
6. Delete local entities where the Ids no longer exists.
7. Query for mod_dates that has changed since you last synced.
NOTE
As mentioned earlier Project Online is optimized to only retrieve the data you are requesting so include the fields you require.
Avoid downloading all the columns if they are not needed.
Custom Fields
When retrieving data from the OData endpoint, extra computation is required when using custom fields which are
multi-value lookups. The extra computation does not allow the OData endpoint to take advantage of a number of
optimizations.
Recommendation
Do not use multi-value lookup custom fields.
Querying OData
There are limits to the number of entities that can be returned in one query of the ProjectData service. As a result,
querying a large amount of data requires multiple web requests to be sent to the service, adding network
overhead and latency for each request.
Avoid performing full “refresh everything” data loads. These refreshes can impact performance of the PWA site
especially during peak use times leading to overall performance degradation of user operations in PWA or
throttling.
Recommendation
Perform Odata refresh actions after hours. Decisions to maintain real time or close to real reports should also take
into consideration the performance tradeoffs to the user experience in the PWA site.
For a Project Web App instance that contains a large number of entities, such as projects, assignments, or tasks,
you should limit the data returned in at least one of the following ways. If you don't limit the data returned, the
query can exceed the default limits and affect server performance.
Use a $filter URL option, or use $select to limit the data. For example, the following query filters by
project start date and returns only four fields, in order of the project name:
http://ServerName/ProjectServerName/_api/ProjectData/Projects?$filter=ProjectStartDate gt datetime'2012-
01-
01T00:00:00'&$orderby=ProjectName&$select=ProjectName,ProjectStartDate,ProjectFinishDate,Project
Cost
Get an entity collection by using an association. For example, the following query internally uses the
Project_Assignments_Assignment_Project association to get all of the assignments in a specific project:
http://ServerName/ProjectServerName/_api/ProjectData/Projects(guid'263fc8d7-427c-e111-92fc-
00155d3ba208')/Assignments
Do multiple queries to return data one page at a time, by using the $top operator and the $skip
operator in a loop. For example, the following query gets issues 11 through 20 for all projects, in order of
the resource who is assigned to the issue:
http://ServerName/ProjectServerName/_api/ProjectData/Issues?
$skip=10&$top=10&$orderby=AssignedToResource
Recommendation:
Limit the amount of data you query at runtime by using server-side filtering to retrieve only the columns
that you need. The impact of this is most noticeable with custom fields. Add it only if you really need it.
Ensure that you are filtering on the entity key. The entity key is indexed and will offer a much more
performant data retrieval experience. You can find the key(s) for each entity by reviewing the Service
Metadata Document in your PWA instance: http://ServerName/sites/PWA/_api/ProjectData/$metadata
Conclusion
Project Online, like any cloud service running on the Internet, requires specific tuning to deliver the best
performance compared with an on-premises deployment.
Although we are constantly improving the system to speed up performance, there are some steps you can take in
the meantime to provide a good experience to your end users.
Summary recommendation:
Use SharePoint permission mode when possible.
Only turn on the features you will actually use.
Keep pages and customization as simple and lightweight as possible for faster page load times.
Use server-side filtering or export Odata feeds data to a SQL Server database for more reporting flexibility.
Choose a reporting granularity option that uses the least amount of data that satisfies your reporting needs.
Related Topics
Project Online: software boundaries and limits
Project Online: software boundaries and limits
7/16/2019 • 3 minutes to read • Edit Online
There are some important limitations that you should know if you are using Project Online. These limitations
apply regardless of whether you are using Project Online by itself, or with other Office 365 plans.
TIP
Want more info about Project Online and Office 365 plans? Take a look at the service descriptions for Project Online
and Office 365.
NOTE
The 25GB limit for each Project Online database is separate from the SharePoint Online limits where Project Web App
is enabled.
For reporting, there are also limits to how many single-value custom fields, of each type, get stored in the
reporting schema.
450 of all other custom field types 450 of all other custom field types (cost, 450 of all other custom field types (cost,
(cost, date, duration, number, flag) date, duration, number, flag) date, duration, number, flag)
NOTE
While you can create more custom fields than these limits, only this many custom fields will be included in the OData feed.
You are not able to choose which of the fields are included.
Also for reporting, if an individual report's source Excel file is larger than 10MB, it cannot be refreshed in Excel.
Instead, you can:
Refresh the report using Excel 2013.
Consider getting Power BI to extend that 10MB limit and refresh the report in Excel.
File size limits for workbooks in SharePoint Online.
Determining your PWA site usage
An admin can check how much of your 25GB quota your PWA site is currently using through your PWA Settings.
1. Where to sign in to Office 365 for business with your admin account and go to Project Online.
2. In Project Online, click the Settings icon, and select PWA Settings.
3. On the PWA Settings page, in the Operational Policies section, select Additional Server Settings.
4. In the Project Web App usage section, it will show your current Project Web App size in relation to your
quota.
For example: Project Web App size - Using 11MB of 25600MB available.
NOTE
You need to be a Site Collection Admin for the PWA site in order to view the PWA site usage settings on the Additional
Server Settings page.
Other considerations
Beyond the data and custom field limits, there are a couple of other variables to consider.
Changing domains is not supported
If you want to use your own domain, like contoso.com, instead of the default domain, like
contoso.onmicrosoft.com, you need to set up your domain before adding users to Project Online. Changing
domains after you've added users is not supported.
Master page customizations
Modifying or changing out the default master page template can result in unexpected rendering or display issues
and is not supported.
Using period symbols in your PWA site collection site address
Period symbols in the site name portion of a PWA site collection site address is not supported. This is configured
when your admin creates a PWA site in the SharePoint admin center.
NOTE
Periods are allowed in PWA site names, but not in the site name portion of the site address.
Related Topics
Tune Project Online performance
Best practices to improve Resource Engagements
performance
7/26/2018 • 5 minutes to read • Edit Online
In Project Online, resource managers and project managers can negotiate an agreement, called a Overview:
Resource engagements, to make sure that resources are being used appropriately and effectively throughout your
organization. This article describes ways that resource managers can improve performance, such as reduced page
load times and less timeout errors, when using Resource Engagements.
Clicking the Resource Request button in the Resource ribbon will then find the resource requests for only these
specific resources.
Project Online will by default use your custom view when you navigate away and return to the page - you will not
have to re-select it the next time you return to the Resource Center.
How can I show only proposed resource requests for my resources?
Now that you know that you can improve performance by filtering for only the resources you are concerned with,
you can improve it even more by filtering for resource requests that you need to address.
The Resource Request page will by default display resource requests in all states , including those that have already
been committed and accepted. As a resource manager, you may mostly want to view resource requests that are in a
proposed state. If this is the case, you can create a Resource Requests view that filters for only proposed resource
requests. This can help with performance as it eliminates the need to load the Resource Requests page with
resource requests you've already addressed in the past, which could amount to a lot of data.
To create a view that only displays proposed resource requests:
1. In Project Online, in the Quick Start, click Server Settings.
2. On the Server Settings page, in the Look and Feel section, click Manage Views.
3. On the Manage Views page, click New View.
4. On the New View page, in the Name and Type section:
In the View Type drop-down, select Resource Requests.
In the Name field, enter a name for the view (for example, Proposed ).
In the Description field, enter a short description of this view.
5. In the Table and Fields section, select the fields you want to display in the view and Add them to the
Displayed fields list.
6. In the Format View section, use the Grouping controls to choose how the items will display the view.
7. In the Filter section, click Filter to display the Custom Filter control.
In the Field Name drop-down, select State.
In the Test drop-down, select equals.
In the Value box, enter Proposed.
Click OK.
Summary: Learn what a project portfolio analysis is and how to get started doing portfolio analyses in Project
Web App.
Applies to: Project Online, Project Server 2016, Project Server 2013
One of the most commonly asked questions in project management is, "Are we delivering the right projects?" The
portfolio analysis module in PWA is designed to help organizations answer that question. The portfolio analysis
module answers that question by performing the following functions:
Centralizing a list of requested projects or proposals.
Developing a list of the estimated costs required to deliver those projects.
Developing a list of the estimated resources required to deliver those projects.
Providing several methods to prioritize the list of requested projects or proposals.
Providing the organization with the ability to explore the various dimensions of the project portfolio.
These features may be combined to create specific scenarios. For example, one scenario may assume annual
funding levels of $20,000,000. Other scenarios may assume funding levels of $10,000,000. Some scenarios may
prioritize growth. Other scenarios may prioritize risk mitigation.
The process of assessing these scenarios and defining an optimal selection of projects is known as portfolio
analysis. Portfolio analysis is a core feature in the Project Web Application, and is available in Project Online and
supported versions of Project Server.
Members of the resource pool may be assigned specific values to support the portfolio analysis exercise. For
example, resources may be assigned to specific departments, skill sets, languages, etc. These attributes generally
map to the different portfolios of work defined in the project portfolio.
Project prioritization
PWA provides two methods of prioritizing the project portfolio:
Business drivers
Enterprise custom fields
Business drivers are a definition of the goals of the organization. Each project or idea within the project portfolio
may be assessed against each of the business drivers. This will yield a prioritization of each project. For more
information on defining business drivers, please click here.
Some organizations choose to use custom fields to perform prioritization. Custom fields support the use of existing
prioritization processes. Custom fields may also be used to support the use of third party decision support tools.
The output of those processes and tools may be entered in custom fields within PWA to support a prioritization
logic aligned with the needs of the organization.
Portfolio analyses
You may use PWA to combine portfolio data to create specific scenarios. These scenarios represent an analysis of
the project portfolio, a portfolio analysis. The scenario will describe the optimal list of projects based on external
constraints such as available funds, resources, and organizational priorities.
The scenario calculations do not impact the project record itself. These are hypothetical scenarios that exist outside
of the main project management environment. When the scenario is committed, specific fields are populated and
the project is moved into the execution stage.
In Project Web App, you can create multiple analyses for a given set of projects and compare them to each other to
help determine the best value for the budget that you have available.
Related Articles
Defining portfolio analysis business drivers
10/1/2019 • 2 minutes to read • Edit Online
Summary: Learn how to define and configure the portfolio analysis business drivers that support project
prioritization in the Project Web Application.
Applies to: Project Online, Project Server 2016, Project Server 2013
PWA provides two main features to support the prioritization of the project portfolio:
Business driver-based prioritization
Prioritization based on manually calculated fields
This article will discuss how to define and configure business drivers within PWA. Other articles will discuss how
to prioritize the project portfolio manually using custom fields.
Business drivers are one function in the portfolio analysis feature within the Project Web Application. The portfolio
analysis feature is available in Project Online and supported versions of Project Server.
Business drivers
A business driver is a fundamental goal that your organization is working towards. Some examples of business
drivers may include:
Improve customer satisfaction
Expand market share
Reduce IT costs
Your organization will benefit from business drivers. The process of defining business drivers creates clear
agreement on the organization’s critical business objectives. This enhances the chance that you will have shared
priorities across all of the project portfolio’s stakeholders.
PWA will support the mapping of each project and proposed project to a set of business drivers. This will allow
PWA to calculate the optimal mix of projects based on organizational priorities and constraints.
Driver description
Enter a description that clearly describes the driver. The description should also provide a suggested measure for
how to assess performance against the driver.
For example, a driver called "Enhance Customer Satisfaction" may be tied to a specific survey that is performed
over time to assess customer satisfaction.
Project impact statements should be written in a positive way that describes a desirable outcome. For example, if
the organization wishes to decrease its exposure to risk, a strong impact statement may be written as, "The project
will reduce our corporate exposure to IT risk by closing at least 2 high profile findings from our last audit."
Once you have created the business drivers that you want to use, the next step is to prioritize them.
Related Articles
Prioritizing portfolio analysis business drivers
10/1/2019 • 3 minutes to read • Edit Online
Summary: Learn how to prioritize your portfolio analysis business drivers in the Project Web Application.
Applies to: Project Server 2016, Project Server 2013
This article will discuss how to create a set of prioritized business drivers to support portfolio analysis within PWA.
Portfolio analysis
Portfolio analysis is a structured technique to define the optimal collection of projects to be executed. Portfolio
analysis is a core feature in the Project Web Application, and is available in Project Online and supported versions
of Project Server.
PWA provides two main features to support the prioritization of the project portfolio:
Business driver-based prioritization
Prioritization based on manual prioritization
This article will discuss how to create a set of prioritized business drivers within PWA. Other articles will discuss
how to prioritize the project portfolio manually using custom fields.
Prioritize drivers
Now that you have created a set of drivers, you can assign relative priorities. You will now prioritize each driver
against each of the other drivers. For example, you may have two drivers:
Driver A: Enhance customer satisfaction.
Driver B: Enhance employee satisfaction.
You must choose as an organization which driver is most important. You may select from the following options:
Driver A is extremely more important than Driver B.
Driver A is much more important than Driver B.
Driver A is more important than Driver B.
Driver A is equally as important as Driver B.
Driver A is less important than Driver B.
Driver A is much less important than Driver B.
Driver A is extremely less important than Driver B.
You will need to prioritize each driver and click on the Next Driver button.
Review priorities
Upon completion of the driver prioritization activity, PWA will calculate a driver priority score.
Note that it is common for organizations to introduce logical errors into the driver prioritization exercise. PWA will
calculate a consistency ratio for all driver prioritizations. The consistency ratio measures how many logical conflicts
may exist in the driver prioritization. For example, the system allows you to perform the following calculations:
Driver A is as important as Driver B.
Driver C is significantly more important than Driver B.
Driver A is more important than Driver C.
In this example, we are saying Driver A is both as important as Driver B and more important than Driver B. The
consistency ratio assesses how many of these logical flaws exist in our prioritization.
A consistency ratio of 80% or higher is generally considered acceptable for most organizations.
You are now ready to create a new portfolio analysis with the business driver prioritization set.
Creating a new portfolio analysis
10/1/2019 • 5 minutes to read • Edit Online
Summary: Learn how to combine the project portfolio, resource pool, and prioritization mechanism into a single
analysis of the project portfolio using the Project Web Application.
Applies to: Project Online, Project Server 2016, Project Server 2013
Portfolio analysis is a structured technique to balance identified work requests and available resources. The Project
Web App (PWA) enables portfolio analysis with several features:
Project portfolio definition
Resource pool definition
Project prioritization
These features may be combined to create specific scenarios. For example, one scenario may assume annual
funding levels of $20,000,000. Other scenarios may assume funding levels of $10,000,000. Some scenarios may
prioritize growth. Other scenarios may prioritize risk mitigation.
The process of assessing these scenarios and defining an optimal selection of projects is known as portfolio
analysis. Portfolio analysis is a core feature in the Project Web Application, and is available in Project Online and
supported versions of Project Server.
ITEM NOTES
Prioritize these projects Click Select Projects to choose the projects that you want to
include in this portfolio analysis.
ITEM NOTES
Analysis Primary Cost Constraint Choose the custom field that you want to use for the project's
overall budget.
Resource Planning (optional) Select this check box if you want to include resource planning
in this portfolio analysis. Your projects must include resource
assignments for this to work.
Alias project Force-in and Force-out options Use the options in this section to customize force in/out
options.
If the Resource Planning option is checked, the form will expand with the following fields:
ITEM NOTES
Planning Horizon and Granularity Choose the date range for which resource scheduling
information will be available for the portfolio analysis.
Resource role custom field Choose the custom field that defines the resource's role.
Resource filtering Specify if you want to filter the resources that are available to
this portfolio analysis by department or RBS value.
Resource capacity impact for projects outside the analysis Choose if you want proposed assignments to affect resource
availability in this portfolio.
Project start and finish dates Choose if you want to use the project schedule for project
start and finish dates, or custom fields.
Similarly, the organization may also "force out" projects from the portfolio. For example, an executive has declared
that we will not do this project as part of the current annual planning. We would then force out the project.
Organizations may define friendly names for these force in/force out options. For example, an organization may
rename "force in" as "regulatory compliance, executive selection, etc."
To rename force in/force out options, the user will need to create a look up table with the new values. That lookup
table may be assigned to the Force In and Force Out options upon creation of the portfolio analysis.
Prioritize projects
If business driver prioritization was selected when the portfolio analysis was created, this screen will display all of
the selected projects against each of the selected business drivers. Some projects may have already been mapped
to business drivers. You can use this screen to confirm that each project has been mapped appropriately.
Visually scan each row to confirm that each project is aligned with at least one business driver. Scan each column
to confirm visually that each business driver is represented appropriately:
No driver is not aligned to a project.
All projects are only aligned to a single driver (i.e., the driver is overrepresented).
Each project may be mapped to a driver according to the following options:
No rating (no mapping)
None
Low
Moderate
Strong
Extreme
This step will calculate the relative priority of each of the projects within the analysis.
Review priorities
The projects are now displayed in the order of the calculated priority. The overall value of the portfolio is
calculated as 100%. Each of the projects represent a fraction of the 100% portfolio value.
The portfolio analysis process will help you determine the maximum value that can be delivered for the available
financial and resource investments.
You are now ready to analyze the portfolio cost.
CONTROL DESCRIPTION
Define Properties Clicking Define Properties takes you to the first page of the
new portfolio analysis wizard, where you can change settings
including the driver prioritization, the selected projects, and
the primary cost constraint.
Review Priorities Clicking Review Priorities takes you to the priority list for
the projects in this portfolio, where you can see how the
projects in the portfolio have been prioritized based on the
business driver settings.
CONTROL DESCRIPTION
Analyze Cost Clicking Analyze Cost takes you to the cost analysis page
and enables the Portfolio Selection and Projects sections of
the ribbon, where you can analyze project and cost options to
get the best return on your investment.
Related articles
Resource analysis in the Microsoft Project Web
Application
10/1/2019 • 3 minutes to read • Edit Online
Summary: Learn what a resource analysis is and how to get started doing resource analyses in the Project Web
Application (PWA).
Applies to: Project Online, Project Server 2016, Project Server 2013
PWA helps you analyze your resource capacity to determine which projects can be delivered. PWA will also help
you identify where you have resourcing gaps. The resource analysis may also provide a forecast of the additional
cost required to deliver your target portfolio.
There are several tasks required to perform resource analysis:
Define the project demand profile.
Define the resource capacity profile.
Perform portfolio analysis and save at least one cost analysis.
The resource analysis is performed within a specific cost analysis scenario. Once you have completed the cost
analysis, you can start performing a resource analysis. Resource analysis is a core feature in the Project Web
Application, and is available in Project Online and supported versions of Project Server.
The following settings may be found in the Define Properties screen of the Portfolio Analyses menu.
These settings impact the resource analysis calculations.
FIELD DESCRIPTION
Planning Horizon Defines the start and end dates for the analysis.
Planning Granularity Controls the time periods used in assessing work allocations
for specific roles. Most organizations select monthly.
Resource Role Custom Field Specify the custom field representing the resource role here.
Resource Capacity Impact for Projects Outside of the Analysis Determines whether to include projects with proposed
bookings in the analysis.
Project Start and Finish Dates Some organizations may rely on other tools to assess the
optimal start date, for instance an ERP system. For those
organizations, the proposed start date may be generated
outside of Project Server and then input as a custom project
level field.
Once the resource pool and demand profiles have been defined, you will be ready to perform resource analysis.
Related articles
Establishing the resource pool
10/1/2019 • 3 minutes to read • Edit Online
Summary: Learn how to create a resource pool that supports resource analysis activities within Project Web
Application (PWA).
Applies to: Project Online, Project Server 2016, Project Server 2013
PWA helps you analyze your resource capacity to determine which projects can be delivered. PWA will also help
you identify where you have resourcing gaps. The resource analysis will provide a forecast of the additional cost
required to deliver your target portfolio.
This article will discuss how to configure your resource pool to correctly define the capacity in the resource
analysis. Resource analysis is a core feature in the Project Web Application, and is available in Project Online and
supported versions of Project Server.
Resource Center
The PWA Resource Center is where you populate the resources that will make up your available resource capacity.
Your administrator is usually responsible for keeping this up to date. Organizations generally define the resource
pool using a combination of approaches:
Importing resources from a spreadsheet or database.
Importing resources from your organization's Active Directory list of user accounts
Once the data has been imported, the administrator will need to add additional fields and values to correctly define
resource capacity.
Following are key resource settings for consideration when configuring the enterprise resource pool:
Standard Rates The system utilizes the Standard Rate field to approximate the
incremental costs of adding resources to a given portfolio.
Standard rate
The resource analysis will suggest the additional cost of hiring new resources to support the project portfolio. This
additional cost is calculated from the average standard rate of each resource assigned to the role.
For example, assume we have two resources assigned to the role of Marketing Analyst, John Smith and Jane Doe.
John has a rate of $125 per hour. Jane has a rate of $150 per hour. The resource analysis will assume new
Marketing Analysts can be hired for a cost of $137.50. This cost is calculated as the average of John and Jane's
hourly rates.
The resource pool has now been configured. You are ready to define the resource demand.
Related articles
Using task level assignments to define resource
demand
10/1/2019 • 2 minutes to read • Edit Online
Summary: Learn how to define the resource demand through task assignments within the project schedule.
Applies to: Project Online, Project Server 2016, Project Server 2013
PWA helps you analyze your resource capacity to determine which projects can be delivered. PWA will also help
you identify where you have resourcing gaps.
You must perform two activities prior to starting the resource analysis.
Define the resource capacity profile.
Define the project demand profile.
This article will discuss how to configure your projects correctly to support the resource demand calculations.
Resource assignments are a core feature of the project management capabilities of the Project Web Application,
and are available in all versions of Project Online and Project Server.
METHOD DESCRIPTION
Top down estimating A project or proposal is created within PWA. The project
manager submits a summary request for a specific
resource type to support the project. The request is
routed to the appropriate resource manager for approval.
This resourcing plan allows the project manager to
"reserve" the resource for a specific duration.
(For more information on top down estimating, please review Using resource engagements to define resource
demand.)
This article will focus on bottom up estimating within PWA.
Booking type
Task assignments may be classified as either proposed or committed. Many organizations use these booking types
to drive logic within the resource analysis calculations. The resource administrator may assign a default booking
type to each of the resources listed in the PWA Resource Center.
The booking type also impacts some of the resource capacity calculations in the Resource Center. For example,
some organizations decide not to review the demand assigned to proposed bookings. It is assumed that these
assignments have not been confirmed, and thus should not count towards forecast resource demand.
When creating the resource analysis, you should pick the appropriate option that is aligned with how your
organization is forecasting work. The default setting is that only committed work is calculated.
To toggle the calculation method, open the schedule in Microsoft Project Professional. Navigate to the Project
Information screen and toggle the option marked "Calculate Resource Utilization From..." Save and republish the
project for the changes to take effect in any new resource analysis.
If you have an existing resource analysis, you will need to reload the resource data and trigger a recalculation.
You are now ready to run a resource portfolio analysis.
Related Articles
Using resource engagements to define resource
demand
10/1/2019 • 2 minutes to read • Edit Online
Summary: Learn how to define the resource demand through resource engagements in PWA.
Applies to: Project Online, Project Server 2016
Resource engagements are a feature in the Project Web Application (PWA) to support high level resource demand
estimating. This feature supports the PWA portfolio analysis functionality that compares resource demand with
the available supply of resources.
This article will discuss how to configure your projects correctly to support the resource demand calculations.
Resource engagements are a core feature of the project management capabilities of the Project Web Application,
and are available in all versions of Project Online and Project Server.
METHOD DESCRIPTION
Top down estimating A project or proposal is created within PWA. The project
manager submits a summary request for a specific
resource type to support the project. The request is
routed to the appropriate resource manager for approval.
This resourcing plan allows the project manager to
"reserve" the resource for a specific duration.
This article will focus on top down resource estimating within PWA.
Resource Engagements
Resource engagements support high level resource estimating. Resource engagements can be created in Project
Professional or in the Resource Request screen on the Resource Center Navigation tab.
If you have an existing resource analysis, you will need to reload the resource data and trigger a recalculation.
You are now ready to run a resource portfolio analysis.
Related Articles
Defining project portfolio dependencies
10/1/2019 • 2 minutes to read • Edit Online
Summary: Learn how to define project interdependencies that may impact the portfolio analysis calculations.
Applies to: Project Online, Project Server 2016, Project Server 2013
PWA helps your organization calculate the optimal portfolio of projects to be delivered. This calculation
incorporates many factors, including:
The estimated resources required to deliver the projects
The availability of resources within the enterprise resource pool
Financial constraints
Proposed start date for projects
Project dependencies
This article will explain how to incorporate project dependency logic into your portfolio analyses. Project
dependencies are a core feature of the portfolio management capabilities of the Project Web Application, and are
available in Project Online and in all support versions of Project Server.
Project dependencies
Project dependencies are relationships between specific projects within a portfolio. These dependencies will be
incorporated into the portfolio analysis calculations.
Dependency types
PWA supports the following dependency types.
TYPE DESCRIPTION
Mutual Inclusion All mutually included projects must be selected within the
optimal portfolio. If one of those projects is not selected, none
of the designated projects are selected.
Mutual Exclusion Only one of the mutually excluded projects will be selected
within the optimal portfolio. Once one project has been
selected, all other mutually exclusive projects will be excluded
from the optimal scenario.
TYPE DESCRIPTION
Finish to Start Projects must be executed in order. You may define the
sequence in which projects must be completed.
Finish to Start dependencies are only relevant to the
resource analysis calculations. They are not applied to the
cost analysis.
Summary: Learn how to define and configure custom fields that support the portfolio prioritization calculation in
the Project Web Application.
Applies to: Project Online, Project Server 2016, Project Server 2013
PWA provides two main features to support the prioritization of the project portfolio:
Business driver-based prioritization
Prioritization based on manually calculated fields
This article will discuss how to manually prioritize the project portfolio. Manual prioritization is a core feature of
the portfolio management capabilities of the Project Web Application and is available in Project Online and all
versions of Project Server released after 2010.
Other articles will address how to prioritize the project portfolio using the native PWA business driver
functionality.
Manual prioritization
There are several reasons to manually prioritize the project portfolio:
Your organization already has a tool or process that performs project prioritization.
The native business driver prioritization process is not aligned with your needs.
You will then need to assign field values for each of the projects under consideration.
2. Click on Modify in the Analysis Tab to open the field selection screen.
Assign specific weighting to each of the fields. Click Save and PWA will normalize the weight for each of the fields
to a value between 1% and 100%.
By default, PWA will display the minimum and maximum values assigned to projects for each of the custom fields.
The ranking for each project is calculated within this range. Adjust the range to model your prioritization logic
more accurately. Click on the Next button to review the calculated priorities.
Review priorities
The projects are now displayed in the order of the calculated priority.
The total sum of all projects will be 100%. This is the value of the entire portfolio.
You are now ready to analyze the portfolio cost to determine the maximum value that can be delivered within your
constraints.
Related articles
Modeling cost scenarios in portfolio analysis
10/1/2019 • 4 minutes to read • Edit Online
Summary: Learn how to use the PWA portfolio analysis functionality to model the optimal combination of
projects within your planned budget.
Applies to: Project Online, Project Server 2016, Project Server 2013
Cost analysis is the process of matching work demand with available funding. It is one of the project portfolio
analysis methods enabled by the Project Web Application (PWA). Cost analysis is a core feature in PWA, and is
available in Project Online and supported versions of Project Server.
PWA also supports resource constraint analysis to match work demand with resource supply.
Three inputs are required to perform cost analysis in PWA:
Defined project portfolio, with costs estimated
Project prioritization
Understanding of available funds
These features may be combined to create specific scenarios. For example, one scenario may assume annual
funding levels of $20,000,000. Other scenarios may assume funding levels of $10,000,000. Some scenarios may
prioritize growth. Other scenarios may prioritize risk mitigation.
This article will teach you how to interpret and use the Analyze Cost screen in PWA to create these scenarios.
1. To add constraints, click on the Modify link in the Cost Limits section of the Metrics grid.
2. Add additional fields from the Available Constraints list. These fields will now appear in the Cost Limits
section.
3. Click into the Cost Limits section to assign a constraint to the newly added field.
4. Click Recalculate in the Analysis Tab to recalculate the portfolio based on the new constraints.
Efficient frontier
The efficient frontier is a commonly used tool in scenario modeling.
Each project is classified by estimated benefits and cost. The optimal combination of projects is then displayed for
each cost point.
A portfolio that is on the efficient frontier represents the most value that can be achieved for that cost. A portfolio
below the efficient frontier communicates that more value can be achieved for the same cost.
You can use the efficient frontier to communicate the value trade offs that take place as part of your portfolio
prioritization discussions.
Strategic alignment
You can use the strategic alignment graphic to assess if your projects are aligned with your goals.
For example, you may have said that Expanding the Customer Base is your primary organizational goal. The
strategic alignment graphic shows that most of your spending is on Improving Customer Satisfaction. You may
wish to reconsider how your spending is allocated.
Review the columns on this grid to understand the state of the portfolio. Your PWA administrator is responsible for
modifying which columns appear on the screen.
Within this grid, you can tell PWA to force a particular project in or out of the analysis. You might do this if a
project must be completed to keep your organization in regulatory compliance.
Forcing projects in or out of a scenario often results in a sub-optimal project portfolio. Refer to the efficient frontier
after recalculating your portfolio to assess the impacts of forcing in or out a project.
The scatter chart shows all projects by their total cost and total delivered value.
The scatter chart is color coded to four different possible classifications for each project:
STATUS DEFINITION
Selected The project has been selected in the scenario currently under
analysis.
Unselected The project has not been selected in the scenario currently
under analysis.
Forced In The project was forced into the scenario under review.
Forced Out The project was forced out of the scenario under review.
CONTROL DESCRIPTION
Scatter Chart Click Scatter Chart to display a chart of project cost versus
value.
View Use the View menu to select a view. You can add new views
on the PWA Settings page.
Reload Constraint Values Click Reload Constraint Values to reload the constraint
values from the Project Web App database. Use this option if
the values have been updated since you started the analysis.
Hide Metrics Click Hide Metrics to hide the Metrics table and the Efficient
Frontier chart. Click Hide Metrics again to show these.
The initial calculation is automatically saved as the baseline scenario. The baseline scenario represents the
unconstrained selection of every project within the portfolio. Users may perform what-if analysis on the scenario
by changing the various options and recalculating the optimal solution within the new parameters.
The scenario is now added to the list of scenarios available for review.
After creating a scenario model, save the scenario for further review. If you configured resource analysis during the
analysis creation, saving a scenario will activate the Analyze Resources button.
This will allow you to further examine your scenario for potential resource capacity issues.
You may also consider finalizing the scenario by committing your selected projects to execution.
Related articles
Modeling resource scenarios in portfolio analysis
10/1/2019 • 7 minutes to read • Edit Online
Summary: Learn how to use the PWA portfolio analysis functionality to model resource scenarios.
Applies to: Project Online, Project Server 2016, Project Server 2013
Resource analysis is the process of matching work demand and resource supply. It is one of the project portfolio
analysis methods enabled by the Project Web Application (PWA). Resource constraint analysis is a core feature in
PWA, and is available in Project Online and supported versions of Project Server.
PWA also supports cost constraint analysis to match work demand with available funding.
Three inputs are required to perform resource analysis in PWA:
Defined project portfolio, with resources estimated
Defined resource pool
Prioritized project list
This article will teach you how to interpret and use the Analyze Resources screen in PWA. This screen will
become available after you have saved a scenario in the Analyze Cost screen.
Metrics
The metrics grid in the top left of the screen displays high level scenario calculations.
You may add custom fields to the Totals section. These fields will provide calculated indicators of the variables
impacting your portfolio.
The various calculation options may be controlled through the Options tab. The primary control on this tab is the
Units field. Units may be set as either FTE or Cost.
If you set the Units option in the Options tab to "FTE," the Hire Resources cell in the Resource Constraints
section is editable. You can enter the number of additional resources you expect to hire to support the portfolio.
The system will calculate the cost of these additional resources.
If you set the Units option in the Options tab to "Cost," Additional Resources are displayed in the Resource
Constraints section. You can enter additional funding for resources in this field. The system will calculate the
number of additional resources that may be hired with these funds.
The resource analysis view will update to show you how many projects you can deliver, and the Hired Resources
Report (under Reports on the ribbon) will update to show which resource roles need to be hired.
Scenario chart
When you save a resource scenario, it will appear on the Scenario Chart.
The Scenario Chart is a scatter graph depicting each of the scenarios by cost and strategic value. Note that the
cost depicted on this chart is the additional cost required to hire more resources (i.e., the Additional Resource
cost).
The following variables may be modified to assess the impact on the overall portfolio:
VARIABLE INTERFACE
Force projects in or out of the analysis Gantt Chart: Force In/Out Column
This feature works much like the similar function in the Cost Analysis module. You may force projects out of the
calculation. This will free the resources from those projects to support other projects. You may also force projects
into the calculation. Forcing a project in may divert resources from other projects.
Shifting the project start date
You can move projects forward or backward on the calendar to see how this affects your resource allocation.
Experimenting with various project schedules may help you fit more projects into the portfolio.
To move a project's start date, click Gantt Chart on the ribbon, then choose a New Start month for the project that
you want to move, then click Recalculate.
Changing the start date in the Resource Analysis Gantt chart does not affect the actual start date of your projects.
When you choose to Commit the scenario, the new date will be stored in a field called New Start Date Field.
Requirements Details
PWA provides several ways to analyze the impact of scenarios on your resource pool.
The Requirements Details view lets you examine the calculated scenario in more detail.
The Resource Availability section at the top of the page displays a summary of the resources defined in the
Enterprise Resource Pool.
Toggle the Highlight Deficits option on the top right of the page to highlight those roles that are overcommitted
to the project portfolio.
FIELD DESCRIPTION
Force In/Out Displays the status of the project as you set it.
Original Start The start date of the project as scheduled in the project plan.
New Start The new start date that you have defined in the resource
analysis.
Deficit The Deficit field represents the total number of person months
that exceed the available resource supply.
Positive numbers show where you have more resources than needed. Negative numbers indicate that you do not
have enough resources. These numbers are based on all the projects in your cost analysis scenario.
This report displays key details about the resource the system is proposing to be hired to fill those the deficits.
The Hired Resource Report displays the following fields and calculations:
FIELD DESCRIPTION
End Date The end date of the resource. This will be impacted by the
option you selected in the Options tab for Internal or External
resources.
Work The number of hours that the resource will work between the
New Start and the End Date. This will be impacted by the
option you selected in the Options tab for Internal or External
resources.
Rate The rate is the average standard rate of all resources in the
resource pool mapped to the specific required role.
You are now ready to save the scenario and compare it with other saved scenarios.
Related articles
Comparing multiple portfolio analysis scenarios
10/1/2019 • 3 minutes to read • Edit Online
Summary: Learn how to compare multiple portfolio analysis scenarios in the Project Web Application
Applies to: Project Online, Project Server 2016, Project Server 2013
One of the most commonly asked questions in project management is, "Are we delivering the right projects?" The
portfolio analysis module in PWA is designed to help organizations answer that question. The portfolio analysis
module answers that question by performing the following functions:
Centralizing a list of requested projects or proposals.
Developing a list of the estimated costs required to deliver those projects.
Developing a list of the estimated resources required to deliver those projects.
Providing several methods to prioritize the list of requested projects or proposals.
Providing the organization with the ability to explore the various dimensions of the project portfolio.
These features may be combined to create specific scenarios. For example, one scenario may assume annual
funding levels of $20,000,000. Other scenarios may assume funding levels of $10,000,000. Some scenarios may
prioritize growth. Other scenarios may prioritize risk mitigation.
The process of assessing these scenarios and defining an optimal selection of projects is known as portfolio
analysis. Portfolio analysis is a core feature in the Project Web Application, and is available in Project Online and
supported versions of Project Server.
This article will teach you how to review the results of the portfolio analysis process.
Requirements
It is assumed that you have created and saved several portfolio scenarios as part of your cost and resource
analysis activities.
Comparing Scenarios
Within the Analyze Costs or Analyze Resources interfaces, click on the Compare button in the Analysis tab.
Compare metrics
The Compare Metrics grid summarizes key metrics from all of your saved scenarios.
Strategic value Cost, Resource Total value of the selected projects. This
will display as a percent of the total
value of the portfolio.
Additional Fields (as configured) Resource If you added additional fields to the
Metrics grid in the Analyze Cost or
Analyze Resources interfaces, those
fields will be displayed here.
Each project is classified by estimated benefits and cost. The optimal combination of projects is then displayed for
each cost point.
A portfolio that is on the efficient frontier represents the most value that can be achieved for that cost. A portfolio
below the efficient frontier communicates that more value can be achieved for the same cost.
When you save a resource scenario, it will appear on the Scenario Chart. The Scenario Chart is a scatter graph
depicting each of the scenarios by cost and strategic value.
Compare project selection
This grid will summarize each of the projects you have analyzed. The grid shows which projects were selected for
each scenario.
Organizations often use this information to calculate which projects are most likely to be selected – across all
calculated scenarios. Being selected in multiple scenarios implies the project will more likely provide value to the
organization.
After completing the scenario comparison, select the optimal scenario for your organization.
Related articles
Committing the selected portfolio scenario
10/1/2019 • 2 minutes to read • Edit Online
Summary: Learn how to progress your selected portfolio scenario into execution.
Applies to: Project Online, Project Server 2016, Project Server 2013
Project portfolio analysis is the process by which you select the optimal collection of projects for your organization
to perform. This process is enabled by the PWA portfolio analysis interface. This interface lets you model various
cost and resource constrained scenarios.
The last step in the planning process is to finalize the portfolio of selected projects. Finalizing the portfolio moves
the projects from the Planning stage to the Execution stage. The process of moving projects from one stage to
another is referred to within the PWA interface as “committing the portfolio.” Portfolio progression is a core
feature of the Project Web Application, and is available in Project Online and supported versions of Project Server.
You must have configured your planning workflow before committing the portfolio.
This article assumes you have selected one of your saved scenarios for progression.
To commit the scenario, navigate to the scenario selected by your organization.
Click on the Commit button on the Analysis tab in the Analyze Cost or Analyze Resources interface.
When you click on the Commit button, two actions are triggered:
Several project level fields are populated to capture the output of the portfolio analysis process.
If configured, workflow will progress the selected projects into the next workflow stage.
Advancing to execution
You can configure workflow in PWA to automatically progress committed projects into execution.
Related articles
Configuring workflow to support portfolio analysis
10/1/2019 • 2 minutes to read • Edit Online
Workflow options
This article assumes you have configured a workflow to support moving projects from one stage to another.
Please see this article for more information on configuring basic workflow within PWA.
In SharePoint Designer, configure the workflow stage to Wait for a Project Event. In the action configuration
options, select When a Project is Committed.
After adding that step, you can insert logic based on the data captured in the fields that are populated by the
commit action:
Many organizations will add logic to move the Selected projects to the next stage of execution. If configured,
Unselected projects may be moved to a Parked stage.
For more information on developing custom demand management workflows, refer to the online site for
Microsoft Project Server Demand Management resources: http://technet.microsoft.com/en-
us/projectserver/ff899331.
Related articles
Supporting your Project Online adoption with a
Project Management Office (PMO)
7/26/2018 • 13 minutes to read • Edit Online
What is a PMO?
So you're planning to adopt Project Online into your business. How are you are planning to use it, or a better way
of putting it, what's the business problem you are trying to solve? Some of the examples might be:
My executives want better visibility into project status.
I need a better way of managing my resources and assigning them to projects.
I want to easily track the time people are spending on their tasks.
I want more robust way to track project data than using Excel spreadsheets.
Organizations who have been most successful with using Project Online in addressing business problems such as
these are the ones that create a set of standards, processes, and best practices for the way that projects are
managed in their organization. The person or group that creates and manages these rules of project management
is sometimes referred to as the Project Management Office (PMO ).
The PMO creates processes to get the People in the family will need to know
right data to the project management who's doing what. This can include:
system to provide status at a project -Who will pick up children from school
level to project managers. It also today, walk the dog in the evenings,
provides guidance and best practices for cook dinner, etc.
resource management. -If someone can't do their usual task,
you need to know who is available to
take their place.
It helps to show everyone's work and
school schedule, and availability, on a
central family calendar. This way it is
easy to know who can be scheduled for
what.
The PMO helps to create project Family members will need a forum in
collaboration sites and customize them which they can collaborate, such as:
to best suit the needs of the site users. -Posting important events on a wall
calendar in the kitchen
-Talking to each other daily at the
dinner table.
The PMO is responsible for setting up a Heads of the household might need to
system to handle risk management. plan to reduce risk:
-Determine insurance needs for health.
Purchase a health club membership.
- Increase the amount they are saving
for retirement.
The PMO looks at current processes Heads of household will establish rules
and workflows, and finds a method of and processes for the family, such as:
automating them through the project -Set children's curfew or sleep hours
management tool being implemented. -Look at factors to determine which
One of these might involve determining purchases to make (for example,
drivers for selecting which projects to "Should we buy a car, fix the roof, or go
move forward on given a set budget on vacation this year?").
(portfolio analysis). -Set up lawn sprinklers on an automatic
timer.
-Pick a time of week for the grocery
shopping and errands.
A PMO drives a company to more efficient project management by doing things such as:
Gathering information to help define what the project management requirements are for the organization.
For example, analyzing your organizations business needs, designing processes to address those needs, and
then mapping those processes to settings or workflows in Project Online.
Determining what data is important to review on an ongoing basis, and working with the Project
administrator to share that data with stakeholders. For example, determining the data required and the
process to get the data into the system to create a weekly project status report to provide stakeholders with
a roll-up of the health of in-progress projects.
Creating rules for processes and workflows. For example, establishing a workflow where project ideas go
through an approval process to become projects in Project Online.
Migrating existing data from your current project management system into a new one. For example, finding
the easiest way to migrate resource and project data from Microsoft Excel spreadsheets to Project Online, or
from Project Professional on each person's computer to a centralized Project Online environment.
Providing project portfolio management support to help with project prioritization and forecasting. Like
most companies, there are many projects you'd like to do, but have limited budget and resources to do all of
them. You need a way to determine which projects that you should move on. PMOs can drive the project
and program selection process to ensure that future investments are in alignment with the organization's
strategic goals and growth vision.
Managing the emotional changes users might face in moving from their current project management
system to which they are attached. For example, tactfully influencing project managers to move from their
old process of saving their project files to their hard drives and sharing them out by showing them the
advantages of publishing them to Project Online. The PMO might do this by devoting more time to
convincing the more senior project managers first, and hoping their influence on the other project managers
helps to drive the change.
Managing the technical challenges of change by offering great training options.
Role Description
Drive the Project Online adoption plan If you are in the process of implementing Project Online, the
overall plan needs someone to drive it. Just like any project,
the adoption plan needs an owner to ensure that the required
tasks are staffed and completed.
Research project management needs This person will assess the project management requirements
of your organization. This person will need to talk with users
throughout the company and across departments to find out
how they currently manage projects, what their requirements
will be, and how these might be improved through the
implementation of Project Online. These requirements will
need to be expressed to the Project administrator so that they
can be properly implemented into Project Online. This person
must have good project management skills, but should also be
someone who is a good communicator. It is quite possible that
people in the company may be emotionally attached to the
process you are trying to move them from, so this person will
need to be able to deal with this by showing how the new
system will make life easier for them.
Training, documentation, and support This person will need to assess the skill level of the users, and
will be responsible for providing the training resources needed
to use the product successfully. This might include creating
role-based training for Project administrators, project
managers, team leads, and team members. While most of your
effort might be in putting together training for project
managers or administrators, team leads and team members
might find quick reference cards, cheat sheets, checklists or
short tutorials to be the most effective. You will also need to
find a way to provide in-house support for your users, and a
method to escalate more complicated issues through the
proper routes.
Some PMOs in larger companies also have project managers that can be assigned to help provide direction to
specific projects requiring assistance. This can range from advising the project owner, to actually taking over
ownership, given the scope of the project.
Create a mission statement for your PMO
All PMOs should have a mission statement. If you have already assessed the need for your PMO, this will be much
easier to create. Look at your company's existing mission statement, and try to create one that aligns with it as well.
It does not need to be overly complex, but just enough to provide all a basic understanding of why the PMO exists
and what its role is in your company.
Create a plan to build your PMO
After scoping out the tasks you need to build your PMO, you might want to create a high-level project plan for it.
Consider the building of your PMO as one big project, with associated tasks, durations, and assignments. Your
project plan will become more defined as you step through some of the initial tasks, such as assessing your
environment. The project plan helps to give your PMO a build schedule to keep track of what you have done, what
you are working on, and what you have yet to do in creating your PMO. For example, here are how several PMO
build tasks in a Project Online project plan might look:
Learn more about PMOs
If you do not already have a PMO, you may be intimidated a bit at the thought of starting one. Although your
company's needs and requirements will drive your PMO, you need to learn how to create the framework to
establish and evolve your PMO. Depending on your goals, you might want to research the various PMO process
and industry methodologies, or see which PMO model you might closely align with. There are many books,
training, and online resources available about creating and managing PMOs that can help you in your efforts.
If you are trying to set up a PMO and need assistance, you may want to contact a Microsoft Certified Partner or
Microsoft Consulting Services. We also have in-house consultants at Microsoft with excellent experience at setting
up PMOs for small, medium, and large companies.
What now?
So, are you ready to start your PMO? Hopefully, you've realized after reading this article that starting a PMO is an
investment that will be well worth the time and effort. It will require a lot of collaboration with people in your
company, and having an executive "champion" is essential. It will also require an investment in researching more
about setting up a PMO through the many resources that are available. And if you need help, you can turn to
Microsoft Certified Partners as well as Microsoft Consulting Services.
If you are in a smaller company, the scope of all of this may seem overwhelming. You may not have the resources
to hire people for each PMO role noted in the "Build your team" table, and you don't need to. Just be aware that
these are responsibilities that will likely need to be addressed at some point in time, and to a degree that suits your
requirements. Also note that the effort needed can scale to your company size and goals. A PMO in a smaller
company might only need to meet with a few senior project managers in their company to assess their needs,
versus multiple departments with varied requirements in a larger company.
Establishing a PMO can help drive your Project Online success, and using Project Online can drive your PMO
success. Good luck in your implementation!
Enterprise system best practices
7/26/2018 • 13 minutes to read • Edit Online
This article is part of our "From the Trenches" collection. It describes operational best practices for enterprise
systems in general (including Microsoft Project Server). It notes how, although enterprise systems strive to provide
an easy-to-use interface at the user level, the technology and infrastructure required to provide it is often very
complex. This white paper then describes how this complexity requires you to use some basic best practices that
give you the best chance of maintaining a high degree of reliability in your enterprise system.
To download the Word version of this article, see Enterprise Management Best Practices.
To see more articles, see "From the Trenches" white papers.
This article is part of our "From the Trenches" collection. It describes how as organizations mature, they can be
more effective in the use of their project management systems. It describes how it might be more effective for
companies to elect to use only certain aspects of a new project management system to a level with which they are
comfortable, even though they are tempted to use every feature that is available to them. As the company
continues to mature, it can become more advanced in its use of the features that it needs to use.
To see more articles, see "From the Trenches" white papers.
1 - Planning. We almost always see Planning as the first wave. Some organizations never get beyond this.
They make a basic schedule, bronze the GANTT chart, and then mount it on the wall of the project team's
office. People refer to the plaque from time to time nostalgically as they remember the fine state of their
schedule just before the project started.
While I'm being a bit cruel at those who are only using their expensive project management software to make a
bar chart, there is certainly value from doing so. Creating an organized schedule tends to make the project
participants think about how the work should be put together and is much more effective than doing nothing or
just making a spreadsheet list.
2 - Tracking. Next in line in our experience is typically tracking. An organization which is a little more "mature"
in the use of their project management system will not only plan, they'll track their schedules, advancing them
on a regular basis with the progress to date and even look forward with projected schedules as the plans
advance. For many organizations, stopping here is effective. They're planning in their project management
system, and then they're working the plan by updating it regularly and even giving useful reports to
management.
3 - Resource Management. Once planning and tracking are handled, organizations tend to look to the
resource management problem and how it might get resolved by using the project management system.
Resources can have many aspects, as I've discussed here before, but at the most basic level, resource allocation
(assigning the work to resources) is a big step, followed by resource analysis of some kind.
4 - Cost Management. Cost management is the fourth typical area and many organizations never get here. At
a basic level, having a cost estimate broken down by phase or better yet by task in the project is a good costing
start. Tracking the actual costs either by hours or by dollars is the next level.
5 - Advanced. I'll put a fifth area here for "Advanced" subjects for what might be a wide range of topics that I
haven't put in the other categories so far. It's not that they're not important but that when you get to the fifth
wave of evolution in an organization, it can go a lot of different ways. So, I'll put risk analysis, document
management, and automated workflows in here. There are also advanced areas in each of the other four areas
I've discussed so far.
Each of the elements I've discussed so far could be extended further and often is as the organization's project
maturity and the understanding of the automated aspect of its project management environment increases.
For Planning, the progression can go to multi-project integrated schedules with inter-project links or program
management with sub-projects.
For Tracking, the organization usually advances from simple percent complete progress, which is typically the
lowest quality of tracking data, to remaining duration. Tracking might also extend to timesheets to give an exact
value of hours worked against the original plan by person.
In the Resources area, we see going from just allocating the tasks to resources to tracking resource progress
usually with a timesheet and then moving to the most requested aspect of EPM, Resource Capacity Planning. For
some organizations, Critical Chain fits in here also, merging the resource and schedule information into one
advanced algorithm.
For Costs, we usually go from the basic budgeting to tracking actual costs along with hours and time to get budget
versus actual variance, and from there to Earned Value tracking, as is done in the Defense and Aerospace sectors.
Even the Advanced area has advanced topics. The most popular among these are Monte Carlo Risk Analysis and
integrating project management methodology (particularly in the IT sector).
Most organizations progress with all five of the basic elements from the left side of the graphic above in the order
that I've just described before turning to any of the advanced areas. Some find that their particular project
management challenge means focusing on one element ahead of others. What is extremely difficult and rarely
successful is trying to be more mature than you are.
It's very common, for example, for an organization to desire Resource Capacity Planning, yet when you look at the
skills and experience of the organization, you find that the building blocks of creating a resource capacity planning
system are missing. I often use capacity planning as an example of why knowing where you are on the Project
Management Systems Maturity model is so important. In my experience, this is the single most requested benefit
from EPM systems and yet it is almost the last benefit I can deliver. This is because resource capacity planning
requires so many other elements to work first. In order to deliver projected resource requirements versus
availability we first need:
Project plans we can count on
Projects tracked with accurate progress
All tasks to be allocated to resources
Complete and accurate resource availability
All non-project work to be quantified and tracked
Complete compliance by project managers and department managers on work completed, work projected,
and changes in resources.
Whew! It's no small list, and the corporate culture required to comply with such an environment often requires
change management on a big scale. So, we turn back to the Project Management Systems Maturity model and
clients can make a roadmap of what they need to accomplish.
This is not an exhaustive list of course. We can easily make a third column and then a fourth, but I've not done so
here because from this point the most common progression is less clear. Each organization's project management
requirements will dictate the interest in moving forward in a particular area.
I promised earlier in the article to discuss something that has changed in the last few years. The model I've
described above has stood up for quite some time, but in the last couple of years, movement in the IT industry has
made a significant shift in another direction, and that has everything to do with collaboration.
At one time in the project management software industry we were very algorithm-centric. Everything stemmed
from the critical path schedule, we thought. In the last few years, though, a few things have changed. First of all, the
availability of people through the ubiquitous Internet or telephone technology has made it even easier to assemble
and communicate with your project team. This has helped change who is on a project management team. While
once we would have thought of project team members being people deep within the organization, working in a
small windowless room with desks surrounding a massive plotter, now we think of project team members
throughout the organization.
Team members include those doing the work, of course, but might also include the executive sponsor, the
department resource managers, the users, the marketing department. It's now not at all uncommon to find that the
project team extends not just beyond the building's walls but well outside the organization itself to include sub-
contractors, prime-contractors and even the client. Sub-contractors may not be in the same time zone or even the
same country. All of this has made communication a key success factor for projects in many different types of
industries.
That has caused some organizations in industries like R&D and IT, for example, to look at a Project Management
Systems Maturity Model that progresses quite differently:
The first element in these organizations is to create a communications plan, and that's almost always based on
collaboration technology like SharePoint Server. These organizations find that from a centralized perspective they
can get more benefit from getting their extended project management team to collaborate and communicate than
from any centralized planning. The meteoric rise in popularity of SharePoint Server is a testament to how much
pent up desire there is for getting people to work together.
The progression from a basic communications plan then often goes to document management—one document of
which might well be a project schedule. It's turning the classic enterprise project management progress on its head,
but you can see for some organizations how attractive this might be. Get a handle on the contracts, documents,
emails, meetings and other communication, and efficiency increases very quickly. Don't get a handle on
communications, and the loss of efficiency might well be serious.
From document management, it's a short step to managing issues and doing change management—which for IT
and R&D means managing one of the most potentially damaging aspects of a project.
Surprisingly, timesheets come next. In fact, sometimes timesheets come even earlier. When our organization first
got started in the timesheet business with our TimeControl product, we were quite certain that organizations who
needed a timesheet like ours were those that were already mature enough in their planning and tracking process to
be able to take advantage of it. You can imagine our surprise to find that many organizations want to deploy an
enterprise timesheet before they deploy an enterprise project management system. When you look at the change
management challenge of each it becomes clear why. Most users will adopt a timesheet grudgingly but quickly.
Getting a 1000-person organization to accept a centralized timesheet system takes a matter of weeks. Getting the
same 1000 users to accept a centralized project management system can take from months to a couple of years.
So, even though the centralized planning isn't established, the organization can still get tremendous benefit from
centralized timesheet data.
Finally, these organizations turn their attention to the core project planning exercise. This is not to say they haven't
been doing project scheduling so far but it won't have been highly centralized.
Just like the first Project Management Systems Maturity Model, each of these elements can carry advanced topics,
too.
Communications plans often progress to more integrated communications systems, including instant messaging,
email integration and more.
Document management often progress to workflow management and forms integration.
Issue management usually evolves to management of lists of all kinds and an integrated change management
process.
Timesheets evolve from task timesheets to links with Finance, Payroll, HR and ultimately links back to the
enterprise project management system for auditable tracking data.
Planning and Resource Management tend to evolve just like my classic Project Management Systems Maturity
model.
There's no "right" way to advance in your use of your project management system, nor is there a "wrong" way. As
I've said in these columns before, what is most important is that you look first at what you need to accomplish in
order to be more effective as an organization and from there design the solution to that challenge. What is
important is knowing you have the building blocks from the basic elements before you start building something
more advanced. I'm often heard saying that we need Project Management 101 before we move to Project
Management PhDs.
Remember that the use of a project management system is only one aspect of a possible solution and it's up to you
to decide how "mature" you should be and in what areas in order to make the management of your projects more
effective.
This article is part of our "From the Trenches" collection. It describes how organizations need to understand the
problems they are trying to solve when deciding on implementing a project management system. Sometimes
deploying a centralized project management system may not be the best answer.
To download the Word version of this article, see EPM -Centralized or Decentralized?.
To see more articles, see "From the Trenches" white papers.
This article is part of our "From the Trenches" collection. It describes some of the common challenges you may face
when deciding to use dashboards in your EPM environment. It describes how the prettiness of a professional-
looking dashboard might sometimes hide the need for users to look into the quality of the data — "pedigree" and
updated data, for example. It mentions how data for dashboards should go through an approval process to ensure
high data quality and completeness. It includes a few techniques to prevent people from skewing data under their
control to misrepresent the data that is displayed in the dashboard. And finally, it states some basic rules you
should take into consideration when you create dashboards for EPM.
To download the Word version of this article, see Dashboard directions.
To see more articles, see "From the Trenches" white papers.
Dashboard directions
There's no doubt about it. Dashboards are all the rage. Whether it's a bar chart, a histogram, a pie chart or a traffic
light warning view, executives seem addicted to the instant response of a dashboard.
With more and more pressure in our business culture to deliver faster and faster results, the demand for
dashboards is not likely to abate anytime soon.
The project management software industry is a poster child for this kind of display because project management
data is perfect for dashboarding. When we look at what kind of data would be required for dashboards, we look at
several qualities:
Is it grouped together in ways that it can be displayed and understood?
Is it timely?
Is there some approval or vetting process for the data?
Is there numeric or time/date data that can help make variances?
That's exactly what we find in project management data from an Enterprise Project Management (EPM ) system
like Microsoft Project Server.
No surprise, then, that most EPM systems including Project Server have some dashboarding capabilities. In the
case of Microsoft, the capabilities come courtesy of SharePoint Server in the Business Intelligence Center. This type
of system can look into SQL -based data and generate an incredibly wide range of graphical displays. And, just like
a kitten, there's nothing an executive likes better than a shiny new toy. The desire by senior management for instant
feedback from projects can be so severe that many Project Management Offices are pressured to deliver the
display before the underlying data is even ready.
"Can you make us an EPM Dashboard?" I was once asked by a senior IT executive while I was in their offices
helping to design their EPM environment.
"Sure," I replied.
"Could we have it by Friday?" asked the exec to my surprise.
"Um, sure," I answered. "Well, not this Friday. But a Friday sometime in the future."
He wasn't at all amused by my humor.
It was not an unintelligent manager, but it underlies the pressure such people experience to enable rapid decision
making.
Dashboards are so visually stimulating, we often forget that they are supposed to represent something that
generates the display. So, before running out to find out how to make a dashboard and before you start spending
too much time picking out color palettes of what color your icons should be, let's go through a few common
challenges in the dashboard arena.
Wizard of Oz Syndrome
Remember the Wizard of Oz when they finally pulled back the curtain and found just a regular guy who was
pulling the levers and turning the dials to generate all the impressive "magic"?
Beautiful displays that are driven by human intervention are something we see all the time in dashboards. A great
deal of work goes into the design and presentation, including great graphics, great icons, great colors and even
animation and sound effects. The problem is that no one has traced a path between the data and the dashboard
and the result is that someone has to sit at a desk and decide manually what indicator to make which color.
When looking at an existing dashboard for the first time, it's always worthwhile to ask to see the raw data that
made up the display. "What does this mean and can you show me where this indicator is driven from?" is a key
question. Do a mini-audit of a few indicators, tracking them back to their component data.
The same principle holds if you're designing a dashboard. For every indicator, there has to be a trail back to some
source and it is best if it's documented. If the dashboard is driven by Bob filling in a spreadsheet with how he feels
about the projects, just have him tell you. It'll be faster.
Measure everything
"If we can measure it, we will put it on the dashboard," seems to be the mantra of some dashboard designers.
It's easy to get caught up in the technology of dashboarding and there's a certain visceral thrill when you locate
some data that seems measurable and understandable and you make an indicator out of it. Suddenly instead of a
boring old list of costs, you've got thermometers filling up with red or tachometers revving into the red-zone or
arrows in different colors. Don't think this is fun? Give it a try in Excel for a half-hour by using the new Conditional
Formatting functionality of Excel 2010 (or Excel 2013).
Problems happen when someone who's making an executive dashboard gets so caught up in their ability to make
an indicator that they don't stop to look and see if they should be making it at all. It's not always "how do you do
it?"; sometimes it's "should you do it?"
Once there's so many visually stimulating indicators on the page that it looks like the dashboard of the space
shuttle, you know you're either going to need years of training like an astronaut or you're going to need to make
life simpler.
Here's a basic rule that should make for fewer displays: Every indicator needs a potential action; every one. So, if
you have a traffic light indicator and it's red, then there needs to be an appropriate action that someone is
supposed to take when that happens. It might be a simple "When this light turns red, a project manager must show
a detailed report to the head of the PMO." Regardless of what the action is, there needs to be one.
Half-baked plans
You wouldn't eat a cake that only had half the ingredients, especially if you didn't know which half were missing. On
a dashboard, how do you know you have all the data?
Let's take an example of looking at resource capacity reporting. The resource traffic light has become red for IT
(isn't it always?) Now management wants to look at the problem and when they look at the detail, they see the
obvious answer. The indicator must be red because IT is so over-staffed!
This first histogram shows the problem. The red line shows the capacity of the organization. The stacked
histograms show the combined requirements projected by adding the requirements of all projects together. If this
is the dashboard that we present to management, the decision to either accept a lot more work or to reduce our
staffing levels immediately would be obvious.
Ah, but hold on a moment. Just before the reduction in staffing levels plan goes into effect, it occurs to someone to
check to see if all projects were represented in the dashboard view.
The worst case scenario is one where some of the data has been updated and is current and some of the data has
not been updated at all. So, perhaps the forward plan was updated on half the projects, and the actuals for the last
period were posted to those projects but the other half of the projects did not have actuals posted or have their
plan updated. If decisions are going to be made on the dashboard view or the resulting data that it came from, how
current that data is should be displayed somewhere.
This kind of problem can also be resolved with some basic checks and balances in the data which can then be
displayed on the dashboard. For example, a simple test could ensure that:
1. All timesheets were collected for the displayed period; and
2. the total timesheet hours collected are roughly equivalent to the total hours displayed.
Data pedigree
The prettier the display, the less likely we are to ask, "Where did that data come from and how reliable is it?"
There's something about neatness that counts when we put the data into a professional looking graphical display.
For those who are creating data from a database, they can often be kept at a distance of where that data arrived
from. A graphical designer finds a couple of useful looking fields and ways to calculate indicators from them and
can easily neglect to ask if these fields are populated through a validated process, with any kind of oversight, by
calculation or if the data is not considered "corporate quality" by the people entering it.
Perhaps we're working on a software development project and a list of outstanding and newly added software
issues and there is a great SharePoint list of issues that are created by the QA department as a piece of software
nears a release date. This kind of list can be a key indicator of how ready the software is for release. If, however,
many different groups are using the same list for new functionality ideas and enhancement requests, just counting
the list of issues will give an inappropriate indicator because the list has become polluted with data used for a
different purpose.
Data that is going to show up on an indicator on a dashboard has to have some process and some validation of its
quality.
Are we looking at the whole picture?
Let's go back to that dashboard traffic light report and look at the IT line again.
Let's imagine that IT has red lights for both the schedule and cost indicators on a particular year-long project
because it's June and both indicators are off by more than 20%!
The Chief Financial officer has looked at the detailed results already and he's quite upset. The January - June
actuals show the tale:
Variance 20 20 20 20 20 20
So far the project is already $120,000 over budget and it's only half-over! At this pace, says the CFO, the project
will cost 18% more than its original $1.3 million budget and perhaps they should cut their losses and cancel the
project.
If we look in more detail, however, the picture looks very different. The projected scheduled and costs until the end
of the project look like this:
(,000 TOTA
S) JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC L
Bud 80 100 120 120 120 120 120 120 120 120 100 80 1,32
get 0
(,000 TOTA
S) JAN FEB MAR APR MAY JUN JUL AUG SEP OCT NOV DEC L
Actu 100 120 140 140 140 140 120 100 80 40 0 0 1,12
al 0
Now we can see more of the story. The project is running faster than had been anticipated. In fact, it is going to
finish in mid-October instead of in December and is projected to finish $200,000 under budget.
This is the challenge with simple dashboards and how they're interpreted. The dashboard was completely accurate
but the reason it was red was good, not bad.
Dashboard indicators need to alert executives that action needs to be taken and where to look, but they should also
lead that same executive to the more detailed data that will show the whole picture.
Gamers galore
Ok, so now you have a few things you can do to make sure your dashboards do not mislead management to
inappropriate decisions, and that's a huge step. But, be advised, as soon as dashboard-type indicators are made
available, people will use them to their own advantage. It's completely understandable that people will game the
process if they can by skewing data under their control to have them not look bad.
There's no preventing people from trying to game the process, but there are a few techniques to avoid the events
of these gamers:
Change the process
You can make it tough to game the process by changing it all the time; trying to stay ahead of those who think they
have the process figured out. Everyone in the search engine business of Search Engine Optimization knows this
one but the challenge with this is the enormous amount of work it takes to keep changing the process and training
everyone in the changes.
No carrot, just stick
Another option is to discipline those caught gaming the process. This is a tough one. People who outright lie about
their data should get into trouble, but punishing those who are just finding loopholes in the process is typically bad
for morale.
Checks and balances
This is typically the most powerful tool against gamers. If you have data from different sources that has to balance
against other data, it becomes extremely difficult for someone to manipulate just the data under their control and
defeat the dashboard process in their favor. Of course it's not always possible to find such checks and balances
within the data, so vigilance is always a good thing.
Some basic rules
Ok, let's wrap up some of what we've said. Creating powerful-looking dashboards is technically not difficult but
there are some basic rules you can implement in your dashboard design and project management process that can
ensure the decisions that come out of such dashboards are appropriate and effective.
Here is a summary of some of the basic concepts we've discussed above:
Indicators must trace back to source data
Make sure that indicators aren't just the manually entered opinions or feelings of someone, but that they actually
represent something in the detailed data of your environment.
Every indicator needs an action
Every indicator needs an action; every one. Regardless of what the action is, there needs to be one. This will likely
also help with keeping the number of indicators to a reasonable level.
The data must be complete or show that it's not
Make sure that it's is clear from the display that the data is either complete or incomplete so that inappropriate
decisions aren't made while looking at only a partial picture.
The display must show its timeliness
If it is possible to have some data updated and other data not, then the refresh date of the data must show up on
the dashboard in a way that inappropriate decisions based either on old data or on a mix of old and new data are
avoided.
Check data quality in an ongoing fashion
A dashboard should have regular reviews of the data that drives the indicators and regular updates to avoid people
from gaming the decision-making process. Some organizations will implement a regular auditing process that
looks at key indicators and traces back from their results to the source data, checking the formulas and the quality
of data to make sure it has not changed. You can't do this all the time, of course, but a regular review of what makes
those pretty traffic lights turn green, red, or yellow is a healthy idea.
Happy dashboarding!
References
To learn more about how to do dashboards with Microsoft Project Server, I suggest reading a couple of great
articles on TechNet:
Microsoft Project Server 2010 Reporting with Excel Services written by Jean-Francois LeSaux and Steven
Haden from Microsoft Consulting Services (https://go.microsoft.com/fwlink/p/?LinkId=222672)
Creating Dashboards for Microsoft Project Server 2010 written by Blaise Novakovic, Jean-Francois LeSaux,
Steven Haden, Microsoft Consulting Services (https://go.microsoft.com/fwlink/p/?LinkId=222669)
This article is part of our "From the Trenches" collection. It describes how to create an Enterprise Project
Management (EPM ) deployment plan. It identifies phases and major points in an EPM Deployment plan, and it
estimates times for each, based on a mid-sized organization with several hundred EPM system users. It also
identifies factors that can affect the estimated duration times for each phase.
To download the Word version of this article, see Creating an EPM Deployment Plan.
To see more articles, see "From the Trenches" white papers.
Now, every organization is different. There are many factors that affect the total duration of a project. The most
significant of these is the extent to which existing enterprise project management processes are mature. Next is the
size of the organization and its complexity. It is obviously simpler to deploy an EPM system into an organization
that is all located in one building than it is for an organization that is spread across numerous divisions, offices,
cities and even countries.
In each deployment the schedule will look different and not always shorter. There is virtually always pressure to
make a schedule that can be accomplished in days or even weeks, but it's vital that more than just the installation of
EPM software be considered in order to deliver a successful deployment.
This article is part of our "From the Trenches" collection. It describes how enterprise system implementations need
to able to adapt and evolve to be successful.
To download the Word version of this article, see The Challenges of Selecting Enterprise Software.
To see more articles, see "From the Trenches" white papers.
The RFP is almost ready to go. There will be a few essay questions, usually about the technical architecture of the
selection and, depending on how many people were polled about these requirements, the architecture requests can
be equally conflicted (e.g. The system must have all data stored centrally in the SQL Server database ¬and¬ the
system must allow any data to be stored locally on the user's computer).
Actually, it's sounding pretty good so far, don't you think? After all, we're going to get back a bunch of vendor
responses that show who can deliver all the features that we'll need. Actually, it's sounding pretty good so far, don't
you think? After all, we're going to get back a bunch of vendor responses that show who can deliver all the features
that we'll need.
But there's actually a fundamental problem with what I've described thus far: A problem that doesn't occur when
we're using the RFP process for a commodity rather than an enterprise system. It's this: An enterprise system is a
solution to something. But we've said nothing so far about the problem. This is such a common occurrence that the
technology industry has come to accept it as normal and acceptable.
Why selecting enterprise software that way doesn't work
Purchasers have been using this method for decades and no one questions it, but people in the enterprise software
business know there is a fundamental problem with the classic RFP method of selecting enterprise software.
First of all, just because you have an enormously long list of features, it does not necessarily mean that you are any
closer to solving a business problem. In fact, if you haven't even articulated what specific business problems you
are trying to solve, then you are likely to make things more complex and ultimately worse, not better. The RFP
process was designed to purchase commodities. When we've got homogeneous products like shoes or potatoes or
sugar, then purchasing these items in this way can result in the lowest-cost bidder and the best selection from
among the possible suppliers. The responses to an RFP for a similar commodity makes comparing possible
suppliers very easy. When the variables for each product in the mix are infinite (as they are with enterprise
software) then the responses to the RFP have an infinite number of variables also and the process yields results
that have little value.
When we use the RFP method of selecting enterprise systems, the RFPs mostly all look the same. This is because
they are all created in response to the same stimulus. The project manager requests a list of 'what you will need in
this enterprise system' and the only vocabulary most middle managers have to respond to that request is a list of
features. Consequently, the responses to RFPs all look the same. They're a checklist of all the features available
either as part of the system or as part of the system with some effort.
What is most common for selection teams is that they will receive a number of responses to their RFPs, they'll
wade through the hundreds of pages and, when they're finished, they won't feel any closer to a solution than when
they started. This is terribly frustrating for purchasers who put in enormous effort in creating what should be a fair
request for proposal and in evaluating the answers only to find that the exercise was for naught.
Worse than all of this is that experienced enterprise salespeople know the process will yield frustrating results and
are at work from the moment they hear there will be an RFP created. They're not working on the RFP response.
That's not relevant. Instead, they are working two or three levels higher in the management structure, looking for
the original impetus that got the RFP started. They look for the senior executive who articulated some business
challenge and set the wheels in motion so that purchasers and other middle-management staff would ultimately
create the RFP and send it out to vendors.
When the RFP responses end up without a clear answer to the business problems that are almost never articulated
within the purchasing process, the enterprise salesperson is ready to leap into action, having a senior executive
bypass the process altogether and select a system based on their own personal relationship with the senior
enterprise salesperson.
If you think this sounds jaded, you're wrong. In fact, you can make a better case for having software selected
through personal relationships at the executive level than you can for buying through the RFP process.
But what about a Proof of Concept or Pilot?
So, we know the classic purchasing process is flawed when we apply it to the purchase of enterprise software. If
that's the case, how should we choose enterprise software such as an enterprise project management system? A
popular method is to use the Proof of Concept or Pilot Phase method.
These two terms are often used synonymously, so let's start off by talking about what is a Proof of Concept or a
Pilot deployment.
Proof of Concept. In a Proof of Concept, the prospective organization deploys the enterprise software in a
limited fashion in order to prove that it can accomplish a technical challenge where there is some question as to
the solution's ability to overcome that challenge. An example might be for data volume. "We're concerned that
the product might not be able to handle as many tasks as we have per project. We'd like you to come with the
software, take two or three example projects with 500 tasks each and show us how these can be loaded into to
the software and that the software can still perform its basic functions with this volume in it."
Pilot Phase. A Pilot Phase is an installation of the enterprise software but with a limited scope. A pilot
deployment might be for a subset of users; for example only 10 out of 1000 people will use the software fully
for a four-week period. Or, it might be for a subsection of the functionality or a subset of the volume of data;
for example only 10 out of 500 projects will be loaded.
How is the Proof of Concept or Pilot Phase used? The problem that is often encountered is how the Pilot
Phase or Proof of Concept is applied. It is quite rare when a prospective organization calls and asks us for a
Proof of Concept proposal and can also identify what technical concept needs to be proven. "What are you
hoping to prove and how will we be able to measure that we've proven it?" we ask.
What is most common is that someone in middle management has identified a piece of enterprise software that
they hope will make their lives easier in their organization. Senior management is not at all involved, and the
middle management staff have not even articulated what business challenges they are trying to overcome. It is
their hope that if the solution was just in the building, that the next time someone from management would
wander down the corridor, they would 'accidentally' see the solution in operation and would instantly give their
blessing to an enterprise deployment. To borrow a phrase from the movie Field of Dreams, "If we build it, they will
come."
It is rarely successful. The problem with enterprise software is that we need senior management's involvement to
make the deployment a success. It is senior management who will be the 'clients' of the reports and analysis from
this enterprise system. It is senior management who will need to invest personally to allow a range of staff the time
required to design, configure and be trained in the enterprise software. It is senior management who will have to
accept or even help redesign the business processes that are part of any enterprise system deployment. Without
senior management giving not just their blessing but also their implicit support and direct assistance, no proof of
concept will help.
This is true also for a pilot phase. If the company has not committed from the highest level to solving some
business problem through the use of enterprise software, then the introduction of a pilot phase is not productive.
This is not to say that pilot phases of a deployment have no place. They do carry a critical spot in a successful
deployment. That place is immediately after the purchase decision is complete and the design of the enterprise
system has been concluded. Now a pilot phase makes a great place to test out our enterprise system design and
fine tune it for general deployment.
When a pilot phase is done in the hope that seeing the software in action will result in management selecting it,
then we have an ineffective Pilot and will get no further ahead in the selection process.
How should organizations select enterprise software?
Enterprise systems are purchased by middle- to large-sized organizations every day and, while the RFP method
may not be the most effective, there are several methods of selecting enterprise software that are very effective.
Here are a few tips for creating your own effective enterprise selection process.
Articulate the Problem. First and foremost, articulate the problem. This means that senior management
must be involved and the problem to articulate is a business problem so it should be articulated in business
terms. One good question to ask is, "What business decision can we not make now or can we make only
with great difficulty, the making of which could be eased with the deployment of this enterprise system
solution?"
There may be a series of business challenges that you wish to solve with the use of this enterprise system.
Give vendors some latitude to create the solution. Once the business problem or problems have been
articulated, contact possible vendors and make sure the access to the senior management who assisted in
the process is transparent. "Secret" vendor meetings with senior management become impossible when
management is part of the process from the beginning. Let the vendors understand the problem and give
them some latitude in answering it. You may find out more about your organization in explaining how these
business challenges affect you than you realize and you will certainly see a much wider range of possible
solutions to your problem when you don't try to describe the solution to the potential vendors.
When you talk to possible solution providers, make sure they understand that they must speak to both the
technology and the business process challenge. There has never been an enterprise system solution that
didn't have some impact on the organization's process. If the solution provider can't help with how the
process will be affected, then you're only looking at part of the solution.
Go meet some people. When you get down to a couple of possible solution providers, ask to talk to some
of their existing clients. Even better, see if the vendor will let you go visit some of their existing clients. Good
solution providers often have clients who have had success in their own deployments and who are generous
enough to make time to meet prospective clients.
You'll learn more from a couple of hours with an experienced client of the possible solution than you would
have ever learned from reading RFP responses or looking at vendor sales demonstrations. When you ask
the vendor for possible client references and site visits, you might think the ideal company to meet would be
one exactly like yours. That's not always the case.
It's often extremely valuable to meet companies in other industries that are related or somewhat similar to yours.
You might also learn lots from organizations who are bigger or smaller than you are. Place more emphasis on how
much experience the organization has had with the solution rather than what version they're using or whether
they're of the exact size or in the exact industry you're in.
If you are lucky enough to visit an existing client, remember that it's not the vendor. Be respectful and courteous
and thankful. Bringing a small gift, perhaps of company logo promotional material is often well appreciated. While
you're with the organization or while talking to references on the phone, some possible questions might include:
1. What process did you use to select this solution over others?
2. What impact has this solution had on your business processes?
3. What was the most challenging aspect of the deployment?
4. What was the most valuable return on investment thus far?
5. How do you see the solution evolving from here?
Don't expect only happy answers.
A vendor who is completely unable to provide references has to be somewhat more suspect than one who has a
number of satisfied clients.
Finally, when you've made your selection, deploy in phases. You can find other articles in this column on how to
deploy in a phased vs. big-bang mode. This will mitigate the risks involved in any enterprise system deployment
and help fine-tune the deployment process as the system evolves.
Remember that any enterprise system deployment is a dynamic process. It's not a one-time decision with happy
results arriving month after month forevermore. The most successful enterprise deployments start with a selection
that involves the key personnel who will be a part of the deployment process from the most senior in management
to the most tactical in the field and continue through the evolution of the system in phase after phase.
An effective enterprise system selection is only the first phase of the process.
How do you know if your project is too complex? Ask yourself how easy it is to find the critical path in your
schedule.
Sin #2: Your schedule has too many tasks
This, more than anything, will contribute to why schedules fall by the wayside. Project managers somehow get the
impression that a schedule needs to be a checklist of everything that needs to get done. To-do items and
reminders-to-self don't belong in a work breakdown structure. This approach completely defeats the whole
purpose of a schedule representing a model of your project.
To illustrate the point, let me share an example. Suppose that you're the lumber supply person or the framer who
will be erecting a house being built. You need to know when to deliver your lumber package, or when to show up
with your crew to start work. This typically occurs when the foundation is complete.
You can build a schedule like this:
If you were the builder and scheduler, which approach would you prefer to have to update and maintain your
actuals?
Now imagine that you have 30 houses under construction at the same time. Which would you prefer?
That is not to say that all the other tasks listed aren't important, or that other tasks don't need to be done. The real
question here is how to track and maintain it. You could also just list the detail tasks as a note to the one line task
shown above.
Here's my rule of thumb, which I take from Eric Uyttewaal's book, Forecast Scheduling with Microsoft Project
2010: The minimum duration is one percent of the project duration; the maximum is 10 percent of the duration.
Sin #3: Your network logic is incomplete or isn't dynamic
Incomplete network logic is the number one reason why schedules fail to forecast properly or evolve dynamically.
Too few dependencies account for this. Use of too many constraints will also greatly impair the dynamic nature of a
properly laid out network. If you see mostly constraints in the indicator column, this indicates you may not really
know what you're doing. Project managers often make it a point to hide this column in order to hide that they have
many constraints in their schedule.
Here's an easy test for you. Find the critical path in your schedule (if you can't, you already have a major problem),
then take one of the longest incomplete tasks early in your schedule and double the duration. Does your project
finish date change? If not, then you don't have a working schedule. You won't be able to benefit from the basic
tenants of having a dynamic schedule that you can use to forecast tasks and timeframes and for you as project
manager to control the results better.
Sin #4: Your schedule isn't baselined
Not baselining a schedule will make it difficult, if not impossible, to measure variance. Baselining helps to capture
your schedule before you begin work and allows you to learn from the variances when reality sets in. If you can't
measure it, then you can't control it.
Sin #5: Your schedule doesn't get updated
The vast majority of the schedules I have seen are out of date. Project managers will often abandon the schedule
once the project is underway and find themselves fighting fires while in execution. The likelihood of this happening
increases significantly if the schedule is too detailed and requires too much work to keep it up to date. The bottom
line: If you don't update your schedule, then you have lost your ability to forecast future dates.
Sin #6: Your schedule has no resource assignments, or they're over allocated
Often schedules are created without any resource assignments at all. This might make for a nice picture, but it also
might give the false impression that the timeline is attainable. If resources are added and then leveled, an entirely
different timeline may emerge.
When resources are assigned, more often than not when looking "under the hood" (using resource usage view ),
they're grossly over allocated. If you start with out-of-the-box fixed units, you'll be starting off on the wrong foot.
Take the time to evaluate whether you've made realistic assignments in terms of time and work allocated within a
person's capacity.
Also, show extreme caution when using the auto resource leveling feature. It's best used in manual mode. And
using an enterprise solution that gives you visibility into other project workloads should increase your confidence
that tasks can get done.
Sin #7: You don't know what task types are
If you don't understand how the project scheduling engine works and how task types work in the equation
Duration * Units = Work
you will be forever pulling out your hair and getting frustrated with the tool.
If you find yourself not getting the message, then I recommend you get yourself a good resource and study it.
Forecast Scheduling with Microsoft Project 2010 is a good place to start.
Project and Portfolio Management (PPM ) tools almost always cause a drastic shift in how projects are managed,
tracked and reported across the organization. However, it is lost upon organizations that there needs to be as much
focus on continued adoption as there is on the implementation of the tools. In this white paper, we will look at
some of the key areas you can focus on to sustain adoption—post implementation—until usage of the new PPM
tools becomes part of organizational culture.
To download the Word version of this article, see 7 Ways to Sustain Adoption of your PPM Solution, Post-
Implementation: white paper.
To see more articles, see "From the Trenches" white papers.
This article is part of our "From the Trenches" collection. It describes best practices for recognizing when a project
should be stopped, the benefits of doing so, and considerations you need to take into account when cancelling the
project.
To download the Word version of this article, see Cancelling a project (without cancelling your career): white paper
(Project Server 2010).
To see more articles, see "From the Trenches" white papers.
I came across an interesting expression recently. A software salesperson was talking about delivering the entire
solution to his client. "We don't sell drills. We sell holes," he said. It's a great analogy. Many people (me included)
have gone to the hardware store and window shopped in the power tools department while wondering what
project I could possibly think of which would justify buying this great power tool. But applying this logic makes as
much sense in the do-it-yourself world as it does in enterprise software systems.
If you don't have a problem, you don't need a solution.
Just as no one should go looking for a drill unless the problem they'd like to solve is to make a hole, no one should
go looking for enterprise software unless it solves some problem. Now if you've got a problem that deploying
enterprise software will fix, the next thing to ensure is that what you are buying will deliver the solution you need.
That's often a lot more than just buying the software.
Deploying an enterprise system is a complex challenge so the payoff has to be worth the effort. In today's world of
global project teams, one of the most common things to do is to divide the tremendous effort of an enterprise
system deployment. While this can give us economies of scale in using teams which are highly trained in their
aspect of the project, it also holds the risk of overlooking aspects of the project in highly risky ways. This risk is
compounded the more physically and organizationally disconnected the different teams are.
Let's take a look at the most common elements of an enterprise systems project.
What's an enterprise?
First of all, what do I mean by enterprise? I'll take a definition that should work for almost everyone. "Enterprise," in
this context, means any project which will impact how the entire organization functions. I'll say this is true for any
organization. Implementations that qualify as enterprise implementations aren't just about how many users but
how much impact they have. So, updating our virus scanning software from vendor A to vendor B probably
wouldn't qualify. The implementation of project scheduling software on the desktop for a handful of users likely
wouldn't qualify. Centralizing our project management and using a centralized enterprise project management
system probably would qualify.
Okay, so if that's an enterprise project, what are the most common elements of a deployment of an enterprise
system? In our offices the most common experience is deploying enterprise timesheet systems, such as our own
TimeControl, or enterprise project management systems, like Microsoft Project Server, but these elements will be
common to almost any enterprise system implementation.
Configure me!
Aside from just getting our system working, there is also applying the functionality within that system to our
specific problems. I've seen Project Server deployments where the client gets Project Server up and running and
then realizes they have not allocated any funding for creating workflows, learning how to prioritize their portfolio
of projects, or learning how to make a single report. Just like Systems Analysis 101 back in college, we typically
start this part of the implementation at the far right side of a white board as we ask the business people who have
the actual business problem what "outputs" they'll need. I've spoken of this before in other writings so I won't
belabor it here, but the outputs should ultimately be business decisions. To make those decisions, what reports,
analysis, and, ultimately, data inputs do I need? We work our way from the right side of the screen to the left and
we end up with a list of all the building blocks we'll need in the form of data elements, analytical calculations, and
exports and reports that will need to be configured in the system. This configuration exercise can take weeks or
months depending on its complexity.
Often the types of resources we'll need for this aspect of the project are a combination of business analyst and
system expert, and it's common that while these people may be highly skilled in the functionality of the system
being deployed, they are not as skilled in the technical architecture. That makes having disconnected teams for two
critical elements of the system quite common. The less these two groups communicate, the more likely it is that
we'll face challenges later.
It's a process
It is impossible to deploy a new enterprise system and not affect the organization's processes. Even if you are
abandoning one centralized enterprise system and moving to its competitor, processes will change. In fact, if you
don't want your processes to change, then it is entirely possible that you don't have a problem that needs solving,
and herein lies yet another challenge. When a person's daily routine changes, it causes upset. I don't mean some of
the time. In my experience, upset at this time of change is a given. This is true even when the process change will
result in a better process! So thinking about how the processes will change and working with those who will be
affected is critical to the success of the project. However, the very experts who are critical to designing this change
in process are probably the same people who will be affected by that change, so this can be a challenging aspect of
the implementation. Usually, a skilled and experienced facilitator will work with the internal experts in guiding the
change in process that has become possible with the implementation of the new system. In our line of work, we see
this challenge all the time. "But the project managers have to do the timesheet approvals first," a new TimeControl
client tells us. "That's our process." When we explain that matrix approvals can allow project managers to do their
timesheet approvals as part of a larger, more effective process, we get upset; pushback. At this point, we have one
of our most experienced staff work with the people affected to ensure that their concerns are taken care of, and that
they are an integral part of how the process will change.
So the process people are probably not the configuration people or the technical people, yet if we don't have this
team planned for, all our hard work on the installation and configuration is probably not going to be deployed. This
team too must be part of our planning, included in communications and decisions made by the other two teams.
Training
"So, will we need training?" is unfortunately a question that is often asked last. Some training may come through
the process changes as that part of the project requires a lot of hands-on discussion, but what about the actual user
guide of how the new system will work in more of a step-by-step fashion? At one time, training was considered to
be a critical element of software deployments and clients expected to put aside about 20% of the total budget on it.
But, with the changes in software costs and speed of installation, gradually that 20% became less and less money. If
we're paying $20 per month per user for a system, should I put aside $4 per user for training? I can't promise it
won't go too far. There are many online subscription options for training, but none of that will take into account the
exact solution you've designed.
Trainers may come from the outside or may come from the configuration or process parts of the project, but they
are often people who are specialists rather than the people who actually did the implementation work. So even if
you've put funding aside for this team (and I hope you have), you still need to make sure that these people know
what the system they're training people in is actually designed to do. I've seen trainers arrive for Microsoft Project
Server and had them start explaining to users how to configure enterprise fields and set up business drivers in
portfolio analysis, only to have the users give a blank stare because their enterprise fields were already all set up
and they're not going to be using portfolio analysis in their initial roll out. Do your trainers even know the problem
this particular deployment is supposed to solve? They should. Thinking about training at the start of the project
gives it the greatest chance of success. The technical, configuration, and process teams can be putting critical data
aside all through their sections for the training that will ultimately be delivered. That means involving the training
team early.
Roll-out/acceptance/culture change
If you were forward thinking and put aside the resources to initiate these teams and have had all of them working
and communicating together through the project, then the roll-out of your new system is likely to go much
smoother than it might otherwise, but don't underestimate the resistance to culture change. Having key evangelists
available at the right time can be critical. Also, will all these team members be packing up and moving on to their
next project? There will be a lot of system knowledge wrapped up in these people by the time the project rolls out. I
was particularly impressed with one of our clients early last year. It was the IT department a large financial
organization. One of the concerns we surfaced to the key technical user who was evaluating the software early in
the project was "who will be the administrator once you wrap the project up?" "I will," he said. He was true to his
word. His skills and knowledge evolved through the multi-month deployment, which was a great success, and he
remains the key administrator still.
Wrapping up
There are a hundred other things to think about in how to make sure your teams are communicating and working
as part of a larger goal, and we've talked about only a few. Hopefully it is making you think already about your next
enterprise system deployment. "What about documentation?" you might be thinking. "What about technical
support?"
The key thing to remember is this: When you are planning an enterprise system deployment, you have to expand
your perspective to include not just the installation effort, but also the delivery of the completed solution. Make
sure the hole appears just where it should in just the right size, right depth, and right angle.
The title of this article refers to Commissioner Gordon's liberal use of the Batphone whenever the City of Gotham
was in dire straits (from the 1970s "Batman" TV series).
This article is part of our "From the Trenches" collection. It relates the fictional "Batman" story to how, during an
EPM implementation, we at some time might wish we had access to a Batphone when we are in trouble. It also
discusses many ways to avoid getting into trouble during the implementation.
To download the Word version of this article, see The Batphone.
To see more articles, see "From the Trenches" white papers.
The Batphone
In 1966, the original Batman TV series came on the air. It lasted only 120 episodes but it changed a culture in ways
that last to this day. In the world of Batman and Robin (played by Adam West and Burt Ward), there was a 'bat'
solution to everything. No matter what the problem, Batman would have the solution. The Batmobile, Batboat,
Batplane, and Batcave all had their place. And if you were someone who needed help, no matter how difficult, how
could you reach Batman? Well, with the Batphone of course! Pick up the Batphone and help would be on the way.
Commissioner Gordon would turn to the Batphone when things where hopeless, which occurred of course every
episode. It didn't matter how difficult the challenge, pick up the Batphone and in 22 minutes (plus time for
commercials) the villain would be vanquished and Gotham City returned to peaceful status.
Every solution in the Batman world was made to look like a Bat. Handcuffs? Bat shaped. Utility belt? Bat logos.
Grappling hook? Of course — looks like bat wings. To my surprise, looking back at images of the Batphone it
looked upsettingly normal. A red phone with a dial (remember those?) I'm not sure why it had a dial. It only called
one place: The Batcave, where salvation was at hand.
As nostalgic as it may be to think of phones with dials and the old episodes of Batman, it's really not the point of
today's article. It's been 40 years since the Batphone was retired, but people make calls to EPM consultants every
day hoping the Batphone will work for just one more call.
Their villains are varied. Some are technical; they need to upgrade from version x to version y. Some are
architectural; they need to make their internal EPM system talk to users in the outside world. Some are cultural; the
users refuse to use the system. And some are procedural; the process they're following doesn't seem to deliver the
result they expected.
No matter what the challenge, the request for the consulting firm is the same: Can you fix it in 22 minutes?
It's a situation that a surprising number of EPM users get into — a situation where they urgently need assistance to
get them out of a difficult situation. It's often an emergency and the solution is required by management yesterday.
The people who make these calls (I get a couple each week) are not feeble-minded. They are highly intelligent,
capable, accomplished managers.
There is no Batphone, of course. I wish there were. I'd use it for all kinds of personal challenges. And so the people
making these calls are rarely satisfied with the answers they get. So, let's take a few moments and talk about how
people end up in such a tight spot that they feel that need to pick up the red phone and how you can avoid being
one of them.
Getting into trouble
First let's talk about how people get into trouble while doing an EPM implementation. There are a couple of
common causes:
Underestimating the challenge This is, by far, the most common error in an EPM deployment. It's not to
say that every deployment must be large and difficult. That's certainly not always the case. But, perhaps
because of wishful thinking, it's incredibly common to underestimate what it will take to get the benefits
from an EPM deployment. The first error in underestimating is picking the target. Some people pick the
installation of the tool as a successful project. It's not, of course. Some people pick the first use of the tool or
the first report that comes out of the tool as the target. That's not it, either. A resolution of whatever
problem(s) the EPM tools were chosen for is where you need to target. That means that the culture has
changed, the training is complete, the usage is in production, the tools are working, the data is there. Yes,
that may be a big thing — but if you're one inch short of that goal, you've still got nothing. (Well, almost
nothing, anyway.)
Making it a technical project For those of us in the technology business, we're most guilty of this and
really, most of us know better. Yet, somehow, the temptation to believe that the availability of technology
means the problem is resolved is hard to resist. So many organizations we visit say some variation of "but
we installed Project Server, why are our personnel overloaded? As we've said for some time, making
enterprise project management work is a combination of people, technology and process and a good deal of
change management thrown in for good measure. That doesn't arrive automatically when the software DVD
rolls through the door.
Not involving management This, too, happens very often. After all, the people who best understand the
benefits of an enterprise project management system are most likely those who are struggling to analyze
the vast amounts of data that come from an environment with many projects and many resources.
Enterprise project management is most popular when an organization tries to reconcile a complex set of
conflicting priorities and a myriad combination of skills and experience. You would think that management
would naturally be involved in such a project but it's often not the case. The challenge of changing the
corporate culture from a single project mentality to an enterprise project mentality is almost impossible to
overcome without them and yet all too often management is bypassed due to a worry that they will be
unable to appreciate what it will take to get an EPM deployment completed.
Making unrealistic schedules There is no one who wishes that an EPM deployment will take a long time.
And it's common to hope that the project can be accomplished in days or a couple of weeks rather than the
months that is most common. There is also a common challenge of not getting the resources for an
"internal" project such as EPM as readily as a client-based or commercial project. For these and other
reasons, it's common to make a project schedule with resource requirements that are woefully insufficient.
Not applying project management to the project management system If you've read anything I've
written, the chances are you've seen this before. Project managers are susceptible to the "shoemaker whose
children are barefoot" syndrome. The result is a common lack of a project charter, an approved budget, a
tracked schedule, dedicated resources and all the other accoutrements for their own project that are
common to all the other projects they manage.
What were they expecting?
Ok, that's how people so often get themselves in trouble. The benefits expected by management from the
deployment of an EPM system usually come directly from business challenges. It's the promise of solving those
challenges that bring management to approve the expenditures for software, hardware, infrastructure and possibly
even services. The most common of these challenges may sound familiar:
Resources are overloaded It may not be clear what the resources are being spent on, but it's very common
to find that resources are overloaded. A more complex problem is finding that some resources are
overloaded and others are under-loaded, which often indicates a mismatch between skills and experience
available vs. those required.
Critical projects are not being completed in a timely fashion It should be obvious that critical projects
should finish when they're planned, but life seems to interrupt such plans. This may be due to conflicting
resource requirements, choosing too many projects that require too many of the same skill, or just bad
prioritization. Sometimes organizations will think it's a lack of skill of the project manager but in a multi-
project, multi-department matrix environment, the more likely culprit is organizational in nature.
Projects are not being completed within budget What holds true for the schedule can equally apply to
costs. In high-tech as well as many other industries, the most variable component of a project's cost is the
amount of labor applied to it. Take a lot longer with the same people and you're adding costs to the project.
A stunning number of white-collar projects still remain untracked. They're planned but the actual cost per
project is not recorded.
Your competition is completing projects faster than you are In a competitive economy, being first to
market can make the difference between survival and oblivion. So, for many organizations, making sure that
your project management is at least as effective as your competitors is important.
There is no visibility into what a projects resources are spending their time on or no way to know
how much time is being spent on each project Sometimes no answer is worse than a bad answer. If
you're in senior management this is particularly true. If you know the results are bad, you can apply your
skills and the resources at your disposal to the problem at hand. If you know something is wrong but can't
tell what, you're handcuffed. There's no way to know where to try to fix something.
How do I keep out of trouble?
You don't want to ever get to a point where you feel you need the Batphone. So, what can you do with your EPM
environment to ensure that you don't end up there?
Okay, everything we said in the first section is obvious:
Do a good estimate
Don't think EPM is just a technical project
Involve senior management from the very beginning
Make a realistic schedule and give it a reality check by comparing it to others in your industry
Make a project schedule and project charter, and do all the things you normally do with your other projects
What else can you do?
First of all, start the project with an appreciation that at some point in the future, you're going to want to use the
Batphone. You are. Knowing that, one thing you can do is to budget for assistance that you have no current plan for.
We recommend that our clients budget 10% to 20% of the project for "unallocated requirements". "What's that
for?" we're always asked. "You'll tell us later," we always answer. It's common to not use all that money. But it's also
incredibly common to use some of it. Having a skilled expert already allocated and budget for your project makes a
huge difference later.
Start with the expectation that the plan and the people will change. My favorite project management quote is from
Napoleon Bonaparte, who said, "A battle plan lasts until contact with the enemy." It's true of EPM plans, too. Given
that an implementation is likely to last several months, the chance that some personnel will change in the plan is
enormous. So, plan for redundancy.
EPM systems evolve. It's common these days in an enterprise application to think of the "total cost of ownership". I
think we should include the total application lifecycle in our EPM project plans. Have you thought about what
version of a tool you're about to implement? Did you think about what other tools it depends on? How about the
regular update/upgrade of those tools? Did you do customizations? How about customized training? Did you think
of how those things will migrate to a new version should you deploy one?
Plan for redundancy of your experts, also. If you have a single consultant working for you, what will happen in a
few months as you move to a new phase of your implementation or introduce a new key member of your team?
Will that consultant be available? (Consultants move from one project to the next so the answer is often, "no".) If
you work with a consulting firm, have you talked about how they can preserve the work of their staff to have others
replicate it, if necessary?
Put that in writing
One of the most common and easiest-to-fix challenges comes from poor documentation. It's the easiest element to
short-change but the existence of such documentation can make the difference between going back to a written
reference and looking around for the Batphone. It's also not enough to write a document and stuff it into a drawer
somewhere. Documents should become part of an ongoing record and your EPM process might reference them as
part of a regular review process. Here are some of the documents for an EPM environment that I think are most
critical:
Business Case I don't know what it is about the original business case that makes it so unattractive, but it's
the most common thing to lose track of and in many respects, it's the kernel of why you have an EPM
environment in the first place. The business case notes what the expected organizational benefits are; what
does the organization expect from the EPM system? When we get a Batphone call, one of the very first
things we ask is, "What is the system expected to be delivering for you?" We don't just ask the administrator.
We also ask management, the users, and the business beneficiaries. The most common answer is a different
answer from each party. That's because the original business premise has become lost.
Roles and responsibilities In the last version of roles and responsibilities, we often resolve to an
individual's name, and it doesn't take long before the role that individual plays in the EPM system is
forgotten. Keeping a roles and responsibilities document will allow you to adjust the parameters of who
does what in the EPM process as the organization naturally goes through personnel changes or even
organizational structure changes.
Process Guide and Flowchart This is often forgotten when we get down to procedural guides. People are
left with the "What-to-do" steps in a procedural manual but not the context for why those steps are
important and what we do with the result of each step. A process guide and, best of all, a visual flowchart
will let future managers understand what the system provides and make it much easier to adapt the system
in the future.
System Selection Criteria When you choose your EPM system and any third party tools you may have
selected along the way, let future generations know what your decision was based on. We've gone into
organizations 5, 7, or even 10 years after a system was deployed and seen a system with several tools
associated with it and asked "Why are you doing that? It would be much easier doing this!" The reasons for
those decisions are nowhere to be found. In some cases the client has spent years doing something in an
extremely complicated fashion that could have been so much easier given more current versions of existing
tools. They can't make an easy decision to change a tool or use a more current version because they no
longer have access to why they chose to do something a certain way years ago.
There really is no Batphone.
When I say that, it feels like I'm saying there really is no Easter Bunny or no Santa Claus. It's just bad news. But
there really is no Batphone. I'm sure, though, that just the absence of that magical phone won't stop people from
calling me tomorrow asking me to vanquish Gotham City's latest villain. If you get into trouble and feel the need to
call an expert, here are a few recommendations:
1. Listen to the advice you get. It is silly to pay an expert to give you advice and then decide you know better
than they do. If you're going to ask for advice and you're dealing with an expert, try to listen and at least
consider the advice. Batman wouldn't have kept showing up for Commissioner Gordon time and time again
if each time he did so, Gordon said, "Now that you're here, Batman, please do the same thing all my other
policemen do."
2. Batman could do it in 22 minutes, but you probably won't. If you're calling an expert, let him tell you how
long it should take to fix your challenge. You can elect not to fix it after he's done, but fixing EPM challenges,
even technical ones, rarely takes only a few minutes. After all, Batman had to do it in 22 minutes because 8
minutes were allocated for commercials, and they are essential.
3. Commissioner Gordon never told Batman the solution, only the problem. All too often we get a call from a
panicky EPM administrator who knows that I need to apply a patch, write a report, and train two people. I
always listen to this patiently and then ask the client to describe the problem as they've just described to me
the solution. Before you pick up the phone to call an expert, think first about what problem you'd like to lay
on their table.
Conclusion
You really need to use the Batphone. Ask around. Don't ask just one consulting expert and don't get just one
possible solution. Ask your colleagues or others in industry who they know who might take a Batphone call, and
talk to at least two of them. It's a good reality check to see how one expert vs. another might deal with your
problem. Remember, Batman may have been amazing, but there are many superheroes to choose from!
This article is part of our "From the Trenches" collection. It describes the challenges facing someone who
implements Enterprise Project Management (EPM ) in an organization that uses a matrix project management
environment.
To download the Word version of this article, see Balancing the matrix: white paper.
To see more articles, see "From the Trenches" white papers.
Why talk about this while talking about Enterprise Project Management? Because this model has become the
cornerstone of virtually every Microsoft EPM Solution deployment. If you're now working on deployment of
Project Server then you're sure to run into this model in your travels. There are exceptions to the Matrix
Management model which I'll discuss before I'm done here, but suffice it to say that it is close to universal if we
look at technology organizations.
If you're now working on a Microsoft EPM Solution deployment, you'll find an organization in one of several states:
1. There is no matrix
The organization is completely silo-based. Each department head manages his or her own department as if
it were a subsidiary of the larger organization. Budgets are summarized upwards through the departments
in a hierarchical fashion (think of an Organigram). When a project is initiated it is done within each
department even when resources might be required from other departments to complete the project. If the
project can't be completed with the resources from the department that is managing it, then outside
resources are negotiated as inter-department requests.
That actually doesn't sound too bad until you try to manage such a project. If almost every project requires
inter-department resources, then figuring out the priorities between groups is impossible. There is no
incentive for any one department head to relinquish control over the priority of his or her own resources. It's
counter-intuitive to give up such power, so any project that can't be completed within a single department
suffers.
Moreover, when we talk to executives who are one level higher than the department heads, the universal
lament is that they cannot get any resource capacity planning. This makes perfect sense. There is no cross-
department structure for aggregating the information we'd need for resource capacity planning nor any
incentive for each department head to submit to the centralized prioritization that would be required for
such an analysis.
It's entirely likely in this situation that we'll find not one but multiple project offices—one per department
which cooperate very little with each other.
Deploying the Microsoft EPM Solution into this kind of scenario requires doing some thinking about how to
adjust the organization at the same time. Often we get calls from these kinds of companies asking us to do
the impossible. Train hundreds or even thousands of users, get Project Server installed and be in production
in a couple of weeks. The expectation is that because the company has purchased a centralized enterprise
project management system, then the organization will immediately line up and operate as a centralized
matrixed environment. It's an expensive fantasy. Inevitably, we have to talk with senior management about
how the organization will have to be changed. That's typically not great news for management who were
hoping that just purchasing the software would be enough of a commitment to have everyone change.
We start such projects by working on plans for a centralized project management office and centralized
project management procedures. Project Server gets introduced slowly from the middle out. It's not
uncommon for such projects to take 12 to 24 months until the entire organization is finally involved. We just
re-started such a project after a 2½ year delay while they worked on their own to create a PMO.
2. There is a balanced matrix
It's great when this happens but it's unfortunately quite unusual. Maintaining a balanced matrix requires
constant adjustment and care. But, when we do find a balanced matrix, we're also likely to find a highly
evolved set of procedures, defined roles, and a process that's well understood by everyone involved.
Deploying the Microsoft EPM Solution into this kind of organization is the best-case scenario.
3. There is a matrix but it is unbalanced
This is by far the most common scenario we face and it makes perfect sense. The matrix model carries some
inherent conflicts, so we often find the matrix either weighted towards the department with a weak PMO or
weighted towards the PMO with weak department heads. Or (and this is by far the most challenging) we
find the matrix weighted towards some departments but not others and some project managers but not
others, so that the center of gravity in the organization is hard to come by.
Deploying the Microsoft EPM solution in these environments means doing some inventory and discovery
work. Where have processes been established that are successful? Where have processes failed? What is
working at the centralized project management level which we can leverage to deploy Project Server and
what is not?
In these types of deployments, we need to be very careful to pick and choose the elements of the EPM
Solution we want to deploy first and whom to deploy them to. Deploying in a phased approach in this kind
of scenario is critical, as a big-bang approach is almost never successful here.
The Matrix Challenge
For those who have grown up knowing only matrix structured organizations, you might not even think to wonder
whether it's a good structure or bad or think of what is strong or weak about this kind of management. There is a
fundamental challenge with the matrix organization that many don't even question: it is conflict-by-design. The
structure sets up two opposing forces: the Department heads and the Project Managers. We'd never say this out
loud of course, but just looking at the structure makes it self-evident.
The goal of the department head is to watch out for the staff members in the department. They want to make sure
their people are productive, skilled, satisfied employees. If we were to leave the organization just up to the
department heads, we'd end up with delighted employees who were well-trained, not too overworked, and well
compensated, but who didn't produce much.
The goal of the project manager is to watch out for the delivery of the project. They want to make sure their project
is done as quickly and cheaply as possible while maintaining the scope and quality that were defined at the
project's inception. If we were to leave the organization just up to the project managers, we'd end up with some
projects getting done quickly but a huge turnover in staff as we burned out employees in the name of completing
the project.
The idea of the Matrix Organization is that setting up a conflict between these two forces will happily balance the
organization between productivity and employee satisfaction. The premise, though, is that department heads and
project managers are ultimately all pretty much as powerful as each other. The challenge, of course, is that people
are not created equal. There will always be some project manager who is more experienced than another; some
department head who is more skilled than the next.
This lack of equality throws the Matrix out of balance on the first day. Just realizing that the exception is a balanced
Matrix Organization often is enough to have PMOs and organizers think about how to maintain order, and that can
be a good thing.
Getting a perfect balance isn't as important as making sure that there's some effort towards identifying where the
organization's projects and people get stuck. The tools to make a matrix environment work are always the same:
processes and communication. A skilled implementer can identify processes and procedures that establish what's
important to the organization.
Giving up the matrix?
Not everyone is a fan of the Matrix Organization. In the last few years, a number of business leaders have voiced
the thought that perhaps the Matrix Organization thinking isn't the best plan. "Divide personnel into dedicated
project teams," they say "and you'll be happier for it," or "Organize projects to work within each department and
give them to the department heads." For more on this, take a look at this article by Rob Enderle to see someone
who thinks the Matrix model should be retired.
In a number of organizations I've visited lately, I've seen matrix models that have been skewed in one direction or
another and each situation causes me to make recommendations that are a bit different in how to deploy Project
Server and the Microsoft EPM solution. If there is no centralized PMO at all then that becomes my first
recommendation. I've had some organizations approach me saying that they want to use Project Server just to
reduce license costs but don't have any intention to work together. That doesn't make a lot of sense. The whole idea
of a centralized enterprise project system is to bring data together for analysis and display to allow projects to be
managed together. If you don't have any intention to do that, stick with individual Desktop licenses.
In some organizations the Matrix model has been displaced by a return to silo thinking. This kind of thing can
happen when there is a big organizational change or external stimulus from, say, a big change in the economy.
When pressured, some managers will fight for survival by any means possible. I've seen several large
organizations recently where department heads successfully described the PMO and their personnel as "redundant
project resources" and lobbied to return control to the department heads.
The result of such changes can have the exact opposite effect of what was intended. True, costs drop for a short
period, but the loss of efficiency of people whose job it was to generate efficiency through shorter, cheaper projects
often carries a rebound awhile later. Still, with large organizations, it can take months or even a year or two before
these effects are realized. In the meantime, the Matrix collapses and the power of Project Server can be inhibited.
In the more progressive organization, new emphasis might be placed on the PMO with a newfound respect for its
capabilities and, perhaps, even a new level of authority in the face of a challenging economy.
Restoring (or establishing) balance
For those working on or about to work on EPM deployments, here are a few things to think about with regard to
the Matrix Management environment you encounter:
First of all, look for the processes and the definitions of roles for each axis of the matrix. While doing interviews,
look for where the processes are making the organization more productive as opposed to more bureaucratic.
When looking at roles, watch out for the classic "responsibility without authority" challenge that is so often talked
about in project management circles.
If you're starting from scratch, you can still find processes in the hierarchical structure that can be adopted and
those might well be worth a lot to you. If you can find an existing process or procedure within a department that
could be adopted by the entire enterprise, then acknowledging the source of the process gets you two things
instantly: First, you have one process in one department that doesn't need to be deployed. It has already been
adopted. Second, you can end up with a big ally in your efforts to create the second axis of the matrix where the
department head involved can see evidence that you're not intending to throw out everything that has already
been done by the departments.
If you're creating processes that go across departments and you will have to, then think about involving the very
people who might feel disenfranchised. For example, I was assisting an organization recently who had to create a
cross-department resource capacity planning process. Needless to say, the department heads weren't overjoyed at
this idea as they felt that they would lose some measure of control over the management of their own staff. I
recommended creating a portfolio steering committee (including among its members those department heads)
that would establish project priorities. The department heads wouldn't feel the authority was being taken from
them; instead they'd be included in the new structure of authority for making cross-department decisions. Working
this way deflected an otherwise challenging aspect of an EPM Deployment by including the very people who
would otherwise oppose it.
Finally, think about going "light" on your deployment and establishing the centralized procedures without excessive
intervention by working in layers. For example, we're working on a project where the matrix is very
organizationally strong. The PMO is in its infancy, and pushing hard against the organizational structure isn't ideal.
We've recommended not working down to the individual level for resource management to start. The organization
instead will deploy resource management as a centralized process with a very small number of users attached
either directly or as emissaries from the departments to the PMO. Resources will all be defined as generic and the
goal will not be to drive to the individual task level for each employee to start. Instead, the PMO will start doing
resource capacity planning by identifying aggregate resource challenges in upcoming periods and then turning the
problem over to the department heads to manage. We expect that in time, there will be demand from the
department heads themselves to push the EPM deployment wider to ease the work they have managing resource
conflicts themselves.
Conclusion
Regardless of whether you're deploying enterprise project management as a consultant for others or if you're
deploying your own EPM within your own organization, you're almost certain to have to confront the challenges of
the Matrix Organization. Keeping your matrix balanced is one of the key challenges of EPM and EPM systems like
the Microsoft EPM Solution to making them successful.
This article is part of our "From the Trenches" collection. It describes best practices for defining your organization's
charge code structure for the project management system or timesheet system.
To download the Word version of this article, see Charging Ahead on Charge Codes.
To see more articles, see "From the Trenches" white papers.
This article is part of our "From the Trenches" collection. It describes how prospective software purchasers can
make interactions with software vendors more effective by applying easily understood business analysis methods.
It walks you through an exercise that can help create software evaluation criteria by effectively determining what
problems need to be addressed by the software solution.
To see more articles, see "From the Trenches" white papers.
In the right column you are going to list business decisions you hope to make by using the new system you are
considering. When we do this with a client, the first thing people want to do is to list a lot of features, so you'll have
to insist that the answers which are important are business decisions. For example, a participant may immediately
say, "I need a list of all resources and their workload." That may be true, of course, but what you need to find out is
what business decision they will make with that list.
Some examples of business decisions might be:
Hiring or firing in a particular department
Making a go or no-go decision on a project
Once you've got a decent list of business decisions, pause. Now is a good time to review the business decision list
and identify the top priority decisions. You might want to ask yourselves this question: If you could only get
answers for one of these business decisions, which would deliver the most value to the organization? Picking the
top three decisions is always easiest at this point in the process.
If you have gotten this far, you've already accomplished more than most organizations that seek out enterprise
project management software. Being able to provide a prioritized list of the most significant business decisions to
systems vendors is a huge step forward for the entire process. When you can tell system vendors what business
decisions you need to make, they are empowered to move beyond talking about simple functionality to talking
about how to make the organization more effective.
Next, look at each decision and ask, "In order to make that business decision, what report would you require?"
Virtually every decision is made after looking at one or more reports. Label the 3rd column "Report." For each of
the top three decisions, list in that column the reports required for the corresponding decision.
For example, we might say that to determine whether to hire or fire personnel for a particular department, we
need a report by department showing the resource capacity planning data. This includes a forward forecast of
expected workload, expected resource availability, and schedule. If you are a mid-sized business, the cash flow
might also be a concern. You might, for example, have a need for additional personnel but not be able to find the
cash to hire them. The cash flow report would include estimated incomes and outflows of money with a running
balance.
If we fill in the Report column for each of the decisions we've identified as our priorities, the shape of what we'll
require is already starting to become clear. Once you're done, you've got a list of physical output that you require
from your prospective system.
Pause again here to find out if there are already reports of the type you've identified already in use in the
organization. Chances are that such reports exist, but in numerous formats and possibly with either incomplete
data or with excessive effort required to generate them. If you find formats of reports that have worked in the
organization, you can add these to your list of systems requirements. Now you can provide even more information
to the system vendors.
With the key reports now identified, we can move to the elements of a system required to generate those reports.
Add the heading "Analysis" to the 2nd column of the chart. For each report, identify the analyses or algorithms
that are required to generate the report. For example, for a resource capacity planning report, we might require a
critical path schedule from the project management system and a resource leveling analysis.
These analyses will often be marketed by vendors on the basis of the myriad of features that each includes. (Yes,
feature-by-feature selling is still alive and well!) What you need to be able to determine is the minimal functionality
that will deliver the reports you require with which you can then make or improve the business decision that you
have identified. You may be surprised at how basic is the functionality that you require in order to fulfill your actual
business requirements. For some reports, no analysis or calculations will be required at all; the reports need only
to be simple aggregates that can be generated right out of the new system's data.
Finally, we come to the first column in our chart. Once you've identified the analyses required, you can move to
determining what elements of data are required to feed the analyses.
Add the heading "Input" to the 1st column of your chart.
In the example we've been using, we might require a complete list of tasks for each project implicated in the
department's work. This might very well be every project in the organization. We'll also need a complete profile of
the availability of each resource along with the workload defined on each task such that when the task moves in
the schedule analysis, the workload moves in the resource leveling analysis. Also, remember how we started with
the decision of hiring or firing in a particular department? We'll also need to be able to identify the resources by
department.
We can move like this from the outputs on the right to the inputs on the left until we have identified everything
we'll need in our new enterprise system.
Assessing risks
Once this exercise is complete, it's worthwhile to go back to each of the inputs and determine how available these
elements of data are. You might find—as we often do—that some of these items don't even exist. For example,
some organizations don't maintain a complete list of resource availability. You might also find that not every
project has a resource-loaded schedule showing the resource load generated by that project. In many
organizations, certain types of projects aren't put into a system of any kind. Emergency work, technical support
work, or regular maintenance work are some common examples.
If you don't have access to the fundamental data you'll require to deliver the business value, you've got to look at
that element of the system as high-risk. For example, if we find that we can identify resource-loaded schedules for
80% of the organization's projects, can we reasonably expect to improve our business decision to increase or
decrease staff? The answer is likely, "No." Why? Because perhaps the 20% of projects that are not in the system
might represent 80% of the work load for a particular department. If you don't have all the data, you'll never know
whether the final report is accurate.
There are ways around these kinds of problems, of course. One method is to isolate all the business processes of
those aspects of the organization where you can't get access to the data elements. A division whose projects might
not be in the system wouldn't have their resources listed either. This can't be done so simply in every case; you'll
have to look item-by-item to figure out how much risk those business process and business decisions are to your
implementation. It's not uncommon at this point in the process to re-prioritize the final business decisions you
hope to improve. You might have a decision that is very desirable but turns out to be very high risk and therefore
not worth pursuing in the early phases of your deployment.
Documenting what you've done
When you conduct this kind of meeting, assign a scribe—someone whose job it will be to record notes and
comments throughout the process. The reasons why a particular business decision was ranked as a high or low
priority or why something was considered high risk will be quickly forgotten if you don't have good notes to refer
back to.
It is very important to record:
What you have written on the whiteboard
Who participated in the process
Who owns each final business decision
If you're feeling overwhelmed at this point, don't fear. This entire exercise can be accomplished very quickly, even in
the largest organizations. It is not uncommon to be able to complete the entire process in a day or perhaps two.
The key to being successful is getting the right level of management into the room. Moreover, this type of meeting
is best facilitated by someone from outside the organization who is not predisposed to do things the way they have
always been done.
Knowledge is power
If you're looking at enterprise project management systems—indeed, at enterprise systems of any kind—
completing this exercise gives you a tremendous amount of power when you interact with software systems
vendors. You can immediately distinguish between those elements of a system that are important to you and those
that are not. Software vendors can be provided with the list of reports and decisions that you want to make.
You might be surprised at some of the responses that come back to you from the vendors. Freed up to respond in
a way other than on a feature-by-feature basis—that is, trying to fit a square function into a round requirement—
the better vendors will be able to show you how you can answer your business challenges by using their systems
to their best advantage.
Here is the biggest benefit of conducting this exercise: You have created ready-made evaluation criteria. Now,
during the proof-of-concept phase, you can immediately focus on whether the system delivers the information you
need to improve the business decisions you must make.
This article is part of our "From the Trenches" collection. It describes the advantages to tracking project work,
discusses tracking methods, and explains the difference between tracking time and tracking progress.
To see more articles, see "From the Trenches" white papers.
Track or treat
It's the Halloween season here in North America so I thought we'd talk about something scary: tracking our
projects. What? That's not scary you say? Information from the field would beg to differ.
Planning not Managing is still so common
In many industries and organizations, it is stunningly common that even when formal project management
schedules are created, they are left in a planning mode only and never tracked. The exercise of plan and if you must,
plan again. Nowhere is this more prevalent than in software development. For all the progress we've made in
project management in the software industry, the numbers of projects that are only planned vs. those which are
planned and then tracked is enormous. If you are one of those who only plans, the good news is, you're not alone.
The bad news is, you're not alone!
There are many reasons why tracking projects in some industries is not popular. In some industries, for example, it
is quite common to have personnel who specialize in creating bids or in project pricing or in project contracting or
in estimating to make the original plan for the project. This is true in many different environments but we see it
almost always in construction, heavy engineering, aerospace/defence and large
engineering/procurement/construction (EPC ) projects. Once the bid is won, a completely new team takes on the
tracking and delivery of the project. On large projects, the people who created the original bid have often moved
on long ago to make other bids as the time between creating the estimate and closing the contract may be
extensive. The project that is just now starting up may be old news to them. So those who do the project
management aren't able to track against the original plan because the people who created it and the structure of
the plan itself are not available.
The most common reason given for not doing project tracking however is that the project is so fluid that tracking
the work is too challenging. Some projects are changed so quickly that just keeping up with the plan is an
enormous undertaking. If you are spending all your time updating the plan, there is precious little time left to track
what you have been planning.
This can have an interesting effect which is not necessarily a good one. In environments where the project manager
updates the plan over and over and over again based on changing conditions, the project is never really late; never
really over budget; never really off track. How could it be? After all, we just updated the plan 20 minutes ago and
we're right on track with where we planned.
If you're in the software development industry and you're thinking, that sounds a little like Agile, you'd be exactly
right. The idea of Agile project management was to build as we design and have the delivery of what we're creating
happen iteratively. Our plans would adjust accordingly and we could, at any time, say "The client reports that it's
good enough. We can stop here for now."
That's completely appropriate for certain kinds of development but for others, it's the stuff of dreams. Most
software development environments live with the same project management constraints as every other industry.
We have deadlines to meet, budgets to respect and a fixed list of scope to deliver. Let's call that traditional project
management. Even in primarily Agile environments, my experience has been that Agile management happens
within an umbrella of traditional project management.
Whatever the incentive to just plan, tracking your project carries the potential for enormous benefits. Let's take a
look at the whole tracking concept.
What does tracking mean?
You might think that project tracking has a very distinct definition and you'd be incorrect. How to track a project
depends vastly on what the objectives are. Here are a couple of more common tracking methods:
Guess at a percentage
"We're about half way there," the team leader says and we know that's about 50 percent of what we'd planned.
While this is tracking and this is much better than not tracking at all, the quality of this data is quite weak. If I had a
plan to complete a task in 10 days and I report that we're about 50 percent complete, project management tools
like Microsoft Project and Project Server will make some assumptions for me. They'll figure that based on the
limited data they have, you must have spent 5 days of effort so far and have 5 days of effort remaining. Perhaps
that's true but it would mask a situation where you are about 50 percent complete but it's taken you 20 days of
effort to get there and therefore probably have 20 days of work remaining.
Measure how much is left
Years ago a dark comedy movie called "The Money Pit" featuring Tom Hanks featured a crew of home contractors
who never seemed to be done. The running gag through throughout the movie was the answer to "When will you
be done?" "Three more weeks" all the contractors would say.
But, tracking remaining duration is a much better quality of data than just guessing at a percentage. Remaining
duration gives us a sharp focus on what is left to get this piece done and when can the next piece that is dependant
on this one get started. There are two ways to think of remaining duration based on how you've set up your tasks.
The first is to think of the total task's remaining duration. This would be appropriate if we are not focused on the
effort required to complete it. The second is to think of the remaining duration or effort required for each
assignment. This would be more appropriate if the tasks are resource driven. But either is a big step up from just
guessing at a percentage.
Measure how much we've spent
"I've spent 10 days so far," is one way to look at progress. Sometimes referred to as LOE or "Level or Effort." Level
of Effort is a great way to look at our actual burn rate but it carries a blind side. On the good side of this method,
we have a great understanding of how much we've spent on this task so far. On the bad side, we might not have a
great understanding of what's left to do. Being in the timesheet business, we deal often with organizations trying to
implement this method. At one time our staff thought of this method as only appropriate if coupled with other
more sophisticated project tracking techniques but we've been shown that it is often very strong just on its own. "If
we could just determine where our time is going," I was told by a client, "that would put us so far ahead of what
we've been doing, we could become almost instantly more effective." He was right too. We did implement a
timesheet which allowed time to be tracked against planned tasks and that alone made the organizations
tremendously more effective. They were later able to add additional methods of tracking to improve their
performance yet further.
We're going to use the earned value method
The earned-value method was developed about 30 years ago as a way of controlling extremely complex projects
but the fundamental concept is quite simple. If we make a budget for a task, then no matter how much time we
spend, we can't earn more than 100% of the budget. Earned value focuses on tracking the "physical" percent
complete and that lends itself well to some types of projects and not so much to others. If we're building a road, for
example, and we have 100 miles of road to build, then when we're at mile-marker 50, we're half done. If you've
spent 75% of the money getting that far, you've got big troubles and the earned value method will make that
obvious. That would indicate that you're probably going to go 50% over budget by the time you're done.
If you're doing research for a new drug or writing software, then measuring the physical percent complete may be
much more elusive. The earned value folks have a whole toolbox of possible ways to get at this kind of progress
and of them all, "weighted milestones" would be my favorite. In a weighted milestone project management
environment, we set up key milestones of the work and as we arrive at that milestone, we earn the percentage we'd
agreed upon before starting that milestone would represent. What's great about this method is there's little debate.
Did you complete the milestone? Yes or No? If not, you've earned nothing. If so, you've earned that percentage.
The Ivory Snow Project
Even if you are using one of these methods, one of the things you should watch out for is what I call the "Ivory
Snow" project. These projects advance almost instantly to 99.97% complete and then stay stuck there for the rest of
time.
How will all these things appear?
Regardless of what project management tool you're using, showing progress is often a fairly common element of
the display. Here we've got an image from Microsoft Project showing one bar with 50% progress:
If that's all we're tracking, we've at least got some notion of where we're headed but modern tools like Project and
Project Server can offer so much more. If we set a baseline on the project, we'll be able to compare not only how
the task is progressing but how it compares against our original plan.
Here we can see that the task was expected to be 50% complete and it is, but it started a week late. On the right
side of the bar, we can see that we've spent 50% of the time and (taking weekends into account) we've filled 50% of
the bar. If we had entered resource work, we might have had 80 hours of work to day and used 40 hours. That's
right on track for this task if we think of it in isolation but even though the task may progress at the pace and burn
rate we expected, it is still having a negative impact on any tasks that are downstream.
Okay, I'm tracking, now what?
Okay, so we've covered some of the basics. You're already in the top 20% of skilled project management managers.
Seriously. This is already better than 80% of those out there. Now for something fundamental but potentially very
impactful.
If x, then y
What I mean by that is that effective tracking needs a consequence formula: If x happens, then take y action.
It's a basic formula but one of the toughest to train people in. Many years ago, I had the privilege of working with a
team of nationally certified lifeguards. These were skilled professionals but one thing could be practiced but never
really experienced until it actually happened: How would the lifeguard react in an actual emergency. Those in the
armed forces will explain a similar challenge. You can train and train and train but you don't really know for sure
how someone will react when there is an actual weapon fired in anger towards them.
Project management is fortunately not usually a matter of life or death but we have a similar problem with those
who track projects. Does the project manager know what they should do when the project isn't tracking exactly as
planned? This is something you can think about long in advance. Do you have a contingency budget of time and/or
money? Do you have a chain of command for them to get authority to take action? Do you have a communications
plan for them to reach the right people when the project is running late or not? And, what results constitute taking
action? Is a one day delay worth escalating? How about one week? How about an increase in risk or scope? Setting
some standards for this in advance can avoid upset later.
Trick or Track
Setting your organization or your project to implement tracking isn't difficult. Virtually ever project management
product in the industry has some ability to store project progress but there is one corporate cultural aspect of
tracking that must still be taken into account to have a good chance of success and that is to not shoot the
messenger. Many project managers who I have spoken to over time express concerns that their management find
only good news to be acceptable when receiving project reports.
A number of years ago I was in a large boardroom of a large multi national firm. We were discussing the impact of
the project management tool receiving information from the timesheet we publish.
"I don't understand," a senior vice president said, "why, when we get the timesheet hours, that the tasks aren't
updating the progress."
"If I had a 40 hour task and I put 40 hours of effort from the timesheet into that task, what would you expect the
result to be?" I asked.
The VP looked at confused at the question.
"I'd expect it to be complete," he said.
"But what if it's not?" I answered.
"I don't understand," said the now upset VP. "If it's a 40 hour task and you did 40 hours of work, then it must be
over."
I wasn't sure what to answer to that but fortunately I was saved by the head of the project group who asked to
speak to the VP outside for a moment and presumably explained that life doesn't always follow the plan.
Getting management to understand that they can make the biggest impact when the project doesn't go as planned
is something that can deliver huge benefits just as much as management's insistence that all project must report
progress as planned can be crippling.
Tracking your project can be a treat not only for those who manage it but also for the entire organization.
This article is part of our "From the Trenches" collection. It describes how to set up a framework to setup a
governance model for your Project Portfolio Management (PPM ) solution. It also includes a sample governance
plan that could be used as a starting point to set up your own governance strategy.
To download the Word version of this article, see Beat the Half-life (t ½): Governing Your PPM Solution, Post-
Implementation: white paper.
To see more articles, see "From the Trenches" white papers.
NOTE
Even for items that are not 'changes' per se, and rather standard maintenance (Ex: Adding new users, updating Timesheet
Periods etc.,), it is important to have a set of standard procedures recorded.
In general, there are four key areas where changes could happen for your PPM solution.
Information Governance
When your PPM solution is implemented, it is reasonable to assume that you start with good 'master' data in the
solution. For example, these include Enterprise Resource Details, Enterprise Calendars, related custom fields and so
on - essentially all the 'master' data that will enable you to use your PPM solution effectively. However, as you keep
using the solution, people change departments, some leave the organization, calendars need to be updated with
new holidays, time reporting periods need to be created, fiscal periods may need to be changed, and the list goes
on and on. Obviously, if this data is not kept updated, then all your reporting will be inaccurate, and so does your
security configuration.
Information governance is taking responsibility to keep this data updated and complete so that the rest of your
solution can take advantage if this core data.
Design Governance
The second area that needs to be part of your governance plan is the maintenance of "design" of your PPM
deployment. As you continue to use the solution, there are going to be requests to tweak the solution design. These
could arise out of a particular group wanting to change the way they use the tool, or wanting to take advantage of
new features. A classic example is switching the way time reporting is done. You might have chosen to go with a %
Work Complete method, whereas with a new department added, you might need to switch it to the 'hours worked
per period' method for the sake of integration with other financial solutions. So the question is who will evaluate
the impact of this change across your solution, and how are the changes going to be rolled out.
Design governance is the plan to manage changes that impact your overall design of the PPM solution.
Process Governance
It is easy to think of this area of governance as part of the design governance, because most of the time, process
and design go hand in hand. However, holistically speaking, this area covers more than just the design. It addresses
the governance of processes inside and outside of the PPM solution that drive its effectiveness.
For example, take a scenario where your PMO is supposed to submit a report to senior management every
Wednesday AM. You might have setup a process to make sure that the timesheets are submitted every Friday by a
certain time, and all you project managers update and publish their project plans by Monday AM, before the
reporting happens. Now, let's say the senior management asks for reports to be sent Monday AM instead of every
Wednesday AM. This triggers a change in the process as to how the PPM solution is used, rather than a change to
the design of the PPM solution itself.
These kinds of changes will need to be governed by a standard set of rules, defined as part of process governance.
Infrastructure Governance
This is another one those areas that appears to be easy to silo, however can overlap the other three areas
mentioned above. Simply put, the infrastructure that supports your PPM solution should be maintained with the
installation. Some examples of the key items that should fall under this kind of governance model are:
Installation of service packs or cumulative updates.
Installation of new add-ons, or applications.
Upgrade of the infrastructure (addition of application servers, Web servers etc.,) to address performance
concerns.
Changes to the infrastructure due to changes to other applications in the organizations (for example,
virtualization of all servers).
On one side of the equation, the decision to install something or not is purely merit based (for example, whether it
will impact any current production solution adversely). The other side of the equation of any infrastructure is to
look into the 'process' or 'design' changes that will be caused by the installation. In some cases, the infrastructure
change could be the result of any changes in the other areas. As mentioned before, while our attempt is to classify
each change as part of one of these areas, it is possible for some changes to completely overlap all four areas.
Key Questions
No matter which area of governance you are trying to set up, there are three key questions that need to be
answered that will form the core of your governance plan.
How does the PPM team know that a change needs to happen (for example, what is the trigger for these
changes?). Sometimes, these changes are not 'triggered' per se, but are part of regular care and feeding of
you PPM implementation (for example, the addition of new views for the Project Center)
Who approves these changes, not just from a business return-on-investment (ROI) standpoint, but from a
governance standpoint?
Who actually makes these changes? For many of these changes, multiple teams are involved. In some
organizations some of the change capabilities are transferred to a subset of end users, based on business
needs. In these kinds of scenarios it becomes even more important to define who actually will make what
changes.
Governance Team
A key component of any governance strategy is the team that actually works the governance plan. While there are
several ways to slice and dice as to what this governance team should look like, the one recommendation that all
schools of thought will agree on is to keep it simple.
The following is one way to set up the team structure:
Governance Area Owners These are the owners of each of the governance areas mentioned previously in this
article. In general, any change requests that will impact the designated area for these governance owners will
become the responsibility of these owners. It will be their role to evaluate, provide recommendations, set up
governance around the new features, and so on.
Central Governance Committee (CGC ) This would be the team of decision makers who can approve or reject
the recommendations made by the governance owners. Having a central governance committee not only helps
reduce bureaucracy, but also helps bring all ideas to a common platform, and evaluate them in cognizance of one
another.
As mentioned above, depending on the size of the implementation and the current processes that exist in an
organization for other applications, the definition and structure of these roles could be smaller or bigger. The
important point is that to have at least a minimum structure in place.
Other Key Components
Some of the other key components for a successful governance strategy include, but are not limited to:
A Work Request solution, which allows users to request changes, features and functionality. This can be as
simple as a SharePoint list or a currently used in-house work request solution.
A process for handling changes, which includes reviews from IT, governance, CGC, and other business
functions involved.
A process for actually implementing changes. This could be a simple progression of changes from
Development to Test to Production Solutions or a full-fledged Release Management per your organization
standards.
The Process
Let's take all the components discussed above as part of building a governance strategy, and build a process
around it. Here it how it might look (could vary based on organizational requirements).
Conclusion
While it is difficult to predict and plan for every change that can occur to your PPM solution, it is important to have
a strategy in pace that is flexible and scalable to any scenario.
As parting thoughts, please consider the following basic common-sense approaches to building your governance
strategy.
A governance plan does not need to be a tome with a lot of obscure terminology, and language that no one
can use in daily life. It can be as simple as an Excel sheet, with quick answers to the key questions (addressed
in Key Questions).
Remember that a governance plan is not a documentation of your configuration. It is a "plan" for protecting,
maintaining and changing (if necessary) your configuration.
A governance plan needs to be easy to be implemented, and should integrate well into the existing
processes of the organization. It is not necessary to reinvent the wheel.
Understand that governance of your PPM solution is a constantly evolving process. It is important to not get
hung up with paralysis of analysis. Start small, deliver value and then scale it up.
About the Author
Prasanna Adavi (PMP, MCTS, MCITP, MCT) is a Senior Enterprise Project Management (EPM ) Consultant and
Trainer specializing in the Microsoft Project, Microsoft Project Server, and Microsoft SharePoint platforms. His
main focus is to build and enable business solutions to help organizations achieve the best return on their
investments.
He also has extensive experience in leading projects end-to-end in a wide spectrum of domains and verticals,
including IT, ERP (SAP ), Manufacturing, Application Development, Automotive and Creative Services. He is a
regular presenter at various Project Server, EPM and SharePoint events across the country, and a regular
contributor to the SharePoint and EPM Community.
Prasanna is a regular blogger (http://www.prasannaadavi.com) and also runs a bi-weekly podcast
(http://www.msprojectpodcast.com), mainly focusing on Microsoft Project and Project Server solutions. Prasanna is
a Senior Consultant with EPMA (http://www.epmainc.com).
They say they want a resolution
7/26/2018 • 21 minutes to read • Edit Online
This article is part of our "From the Trenches" collection. It describes some common challenges you may face when
scheduling projects. It describes coming up with the best approach when you try to determine how long tasks
should be and how many tasks there should be to optimize a project schedule. It discusses how different industries
typically require different types of schedules (for example, software development, EPM (engineering, procurement,
and construction), and plant shutdown). It also discusses several factors in choosing project resolution (for example,
length of project, resources involved, management or division of resources, speed and effort required in collecting
data, and data update schedule).
To download the Word version of this article, see They say they want a resolution: white paper (Project Server
2010).
To see more articles, see "From the Trenches" white papers.
3. Plant shutdown. When you do a project schedule for a plant shutdown and turnaround for maintenance
you are working in one of the most challenging scheduling environments possible. A plant shutdown to do
maintenance comes in two flavors: planned and emergency. Let's leave the emergency type aside for a
moment; it's a world unto itself. The duration of a planned plant shutdown is heavily dependent on the type
of plant. A nuclear power plant unit, for example, might do a "fast" plant shutdown and turnaround in 12
months. An oil refinery might last 4-6 weeks. But the type of plant project schedule that I find most
interesting is a manufacturing mill like a steel mill, a paper mill, or something similar. There are thousands or
tens of thousands of such plants around the world, and they must undergo regular maintenance every year
or so.
The cost of the shutdown for these situations is usually measured in opportunity cost; the cost of the
product that will not be produced while the plant is idle and undergoing maintenance. This cost is measured
in hours, and the cost can be upwards of $150,000 to $250,000 per hour! So the pressure is on minute-by-
minute to get the job done. In this kind of situation, the shutdown typically lasts 5-8 days and the delay of a
single day is calculated in the millions. If you are only used to longer, more traditional schedules, you might
think that in a few short days, "how many tasks could there typically be?" but it's not at all unusual for such a
shutdown to have 2,000 to 4,000 tasks, each lasting from 15 minutes to a couple of hours. Resource
assignments here are done by skill but resource leveling is rarely done on personnel. With the cost per hour
being so intense, it does not matter if you put more people on the project, just get it done in a hurry.
Resource leveling in this situation is often done for highly constrained bottlenecks. For example, "we can
only fit two people in the electrical room, so that's got to be managed discretely".
Ok, we now have three kinds of examples, and there are many more, but these three will serve the purposes of the
discussion just fine. In type one (Software development), we get tasks that are typically a day or two days to two
weeks long. In type two (EPC ), we get tasks that are weeks or months long. In type three (Plant shutdown), we get
tasks that are measured in units of 6 minutes (1/10th of an hour), 10 minutes, 15 minutes (1/4 of an hour), up to a
couple of hours long. It's obvious that in some cases, short tasks make sense and in others long tasks are more
appropriate. Following the same logic, sometimes it makes sense to have a huge number of tasks and sometimes it
just doesn't.
Factors in choosing your project resolution
With these three distinctions, it's easy to see that the two-month EPC project task would look ridiculous in a six-day
shutdown schedule and that a 15-minute task would be out of place in the EPC or Software project. But aside from
referring back to this article and saying, "Vandersluis says it's a software project so tasks can only be 1-10 days
long," (and please, don't do that) what characteristics of the project tell us what level of resolution to choose? Let's
take a look at a few obvious ones:
How long is the project?
Let's start with the most obvious. If your project is expected to be a few days long, such as in our Shutdown
example, then having tasks that are several days long makes no sense at all. Starting with a top-down approach is
often productive when we think about sub-dividing the scope. Use work-breakdown structure thinking. Start with
the major components. Think about having no less than 4 and no more than 20 items.
Is it a rule? No, of course not.
It's common sense. Less than 4 makes you wonder why you divided the work up at all and more than 20 is too
hard to hold in one's mind at one time. Personally I go with no more than 8 items per WBS element and that's
because of some article I read years ago that suggested that an octagon was the most complex simple shape the
mind could immediately recognize.
Think about that for a moment. You can identify a circle, a triangle, a square, a pentagon, a hexagon which has 6
sides, a heptagon which has 7 sides (ok, that one is hard to visualize) and an octagon.
Can you identify a 9-sided shape without counting? I can't. It's called a "nonagon" for you trivia buffs.
So, personally, I strive for the 8-item limit but my rule of thumb is 4-20.
For each element that you looked at, think about how you should divide up the work. Again, think of the 4-20 rule.
But knowing when to stop is the secret. Newer project managers will sub-divide and sub-divide and sub-divide
until every step down the corridor is a managed task. Some good watershed questions you can ask yourself about
the length of a task could be:
What action would I take if this task was late? If the answer is 'nothing' then it's a good indication that
the task you're thinking of is too small to be worth managing. If that's the case you are looking in too much
detail. Back up a level, take a step back, and see if you are done.
Will collecting the data on the update of this task take longer than the task itself? We do not always
think of what kind of effort it will take to manage a scheduled task, but it's worthwhile to think about even if
for a moment. If it's going to take more effort to manage the task than it will take to complete, then that is a
good indication that the task is being defined at too fine a level of detail.
How long is this task? When we are sub-dividing work, sometimes we lose sight of how minuscule a task
becomes. The big phases at the top level were perhaps weeks long, but as we get down a couple of levels of
granularity, we can easily fall into the trap of defining a task to be managed that is only a few minutes long.
When we get to tiny tasks, we have to ask what the benefit would be of managing them.
Let's apply a reality check to what I've just talked about. In a two-year EPC project, if a one-week task is a day late,
it's almost certainly not worth taking action over. In a six-month Software project, a one-week task that is a day late
is probably not worth taking action over. In a six-day Shutdown project, a one-week task that is a day late is a
massive emergency. In other words, a one-week task in the EPC project may be too fine a level of detail; in the
software project, it's probably just about right; and in the Shutdown project, it almost certainly needs to be broken
down into more detail.
How many resources are involved?
I know we are just working on the scope, but when we look at what kind of resolution we require, it's worthwhile to
think about how many people will be working on a task. In a large EPC project, for example, we may have dozens
of workers from one skill involved in a phase of work. But when we end up with many different skills in the same
task, managing that task becomes very challenging, if not impossible. So, in that situation, tasks that require many
different skills probably have to be divided up.
In a software project, we tend to think of almost every individual as a highly technical resource with unique
capabilities. Plus, in software projects it is common to have many tasks that are re-assignable within a department
but only one task assigned to one person. So when we have tasks that are allocated to a one-person level of a
particular resource group or department (for example interface programming) we are close enough to say that we
do not need more detail.
How are resources managed or sub-divided?
How resources are managed is a big determinant in how to sub-divide your tasks. In large EPC projects, for
example, projects are often cut up into sub-projects that are parceled out to huge sub-contractors. In this situation
we need to do a couple of things:
Define the work in a way that lets a project manager oversee the sub-contractor with confidence that
progress being made is a big factor.
Define the tasks in a way that the sub-contractor's project management and engineering staff will
understand what they mean with no ambiguity.
Ensure that the level of resolution that you have adopted as your standard is understood and agreed to by
the sub-contractor.
When we look at white-collar projects such as software, biological research, or engineering, we are most likely to
encounter a Matrix Management structure where project managers own none of the resources and we must work
across department managers who allocate those resources across many different projects. In this case, the key
questions would be:
How many projects is a resource likely to work on across a single day?
How long does it take an employee to switch from one project to another?
Is the work defined such that both the employees and the resource department managers understand how
to allocate the right skill to it?
When we look at a Shutdown or Construction project, we tend to work across crews that are purpose-built. In
these situations, a Resource Team Leader might be managing the Electrical Team (even if that team includes
carpenters and pipe-fitters), a Plumbing Team, or a Boiler Unit Refurbishing Team. The work has to be organized in
such a way that the crew can be kept busy throughout the shift and that they won't arrive on top of another crew
already working in something in that area. Given the intense pressure of getting a Shutdown project complete, the
work is often organized by work first, scheduled, and then regrouped and sub-divided by a Resource Team Leader
so each team leader can walk around with only their tasks in one document and with the entire project in context in
another. So tasks have to be defined in a way that is understandable by the employee and by the Resource Team
Leader. Tasks here are probably defined down to the hour or with even more granularity to the tenth or quarter of
an hour.
How quickly can you gather data and how much effort does that take?
It sounds like a silly question when you're used to seeing your project data all nicely lined up at the end of the week
to be reviewed, but when you are trying to determine the level of resolution of your project, this can be a key
question. For example, when you are working through numerous sub-contractors, it is likely that you will get some
kind of weekly or monthly update. In fact, building the project management update clause into your contract is
essential. In this situation you have to integrate the data from these different companies into your own, validate
that the progress data makes sense, and then do your own analysis and reporting. In an EPC mode, this is probably
a monthly occurrence.
In a shutdown project, you will need to be updating your project every shift, update it quickly, and get the updates
to the Resource Team Leaders in the middle of the next shift. In this situation, project personnel swarm all over the
plant all during the shift, gathering data in as close to real time as they can and having Resource Team Leaders and
Foremen use 'take-down' sheets to 'take-down' the progress of their assignments. In a software or research project,
you are probably working on a weekly schedule or something like it with individuals reporting their own progress
and going through approvals over a day or two.
This is an important point to consider when you are looking at how many tasks to have in your project, because
there is a cost to gathering the data.
So thinking about how quickly you can collect, approve, integrate, analyze, and report the data on a regular cyclical
basis is key, as is the consideration of the cost of collecting the data and the return on investment of that data being
collected.
How often will we update?
Here are two keys to determine how much data you can collect and include:
Think about how you will collect your data.
Think about how often you can reasonably update your project and provide management with the decision-
making tools required to guide the project and the resources in the right direction.
I've seen some project managers insist that they want to move to 'real-time' project management and project
collection and while this may be possible in theory, it is terribly difficult to realize in practice.
When we look at project management data we make some assumptions. We assume that:
The data is all there. We do not expect to be looking at some tasks that are updated and other that are not.
The data was all updated at a similar time. We do not expect that half the tasks were updated a few
minutes ago but the other half have not been updated for two weeks.
The data has all had some level of approval. We expect the project manager to stand behind the data
being presented and that he or she is able to say "This is a fair and accurate representation of the project."
The data belongs together. We do not expect risk to be blurred with costs and with resources unless we
have specifically designed our reports and analysis that way.
I often ask executives who are excited about the concept of real-time project management what they will do if we
could overcome the points I just raised above. "Are you prepared to take management decisions all throughout the
week?" I'll ask. The response should depend on the level of resolution. In a shutdown project the answer had better
be 'Yes'. In a software project, the answer is probably 'No, we'll do that weekly'. And in an EPC project the answer
would be, 'Monthly'.
At some point the law of diminishing returns kick in to say, "Delivering project reports any quicker will not give us
any increase in efficiency."
Reviewing your work
You have now had some food for thought, you have used the Work Breakdown Method to sub-divide your data,
and you have watched for some of the warning signs that the data is too finely defined. Now it is time to lean the
schedule up against the wall, step back, and look at the project with some perspective. Amazingly, many project
managers never do this. They get so caught up in getting the last details defined and are so busy sub-dividing tasks
again and again that they push themselves right up to the go-live deadline and never look up to see whether what
they have made will be a nightmare to manage.
In some cases, executives are sure from all that MBA training that "more detail is better" and they are pushing for
those 5-minute or 15-minute tasks on six-month-long projects.
Changing the project before it starts is always easier than at any time later, so build time into your schedule-
building activity to rework the schedule if required.
Is it too much?
Sometimes project managers look at the scope of what they have created and realize that they are at too fine a
level of detail. If that is the case, the fix is obvious. It may be a lot of work, but you will thank yourself later to make
the schedule simpler by moving up a level.
Sometimes the picture is not so easy. In some cases, it is only once the entire schedule is assembled that the project
manager can see how complex it is. Complex projects are, by their very nature, riskier, and risk in today's economy
is a key selection factor for projects. Some questions that are worth considering before such a complex project gets
underway might be:
Can we do it in pieces? Some risky projects can be broken up into smaller bite-sized portions and as
smaller projects, their risk goes down. However, if you are using this strategy, each discrete project should
have its own value when it is complete.
Should we rethink the scope? Sometimes the simplest actions are to go back to the designers of the work
in the first place, explain the complexity that seems apparent in the schedule, and see whether the work can
be restated. This often leads to innovative thinking that would have never had a chance to occur.
Should we do it at all?
Some projects were never meant to be, and the cheapest time to cancel them is the day before they start. If the risk
of the project is only now apparent, better to realize it now than later. When you weave the findings of doing your
schedule back into the Project Portfolio Management (PPM ) process, you might find that the risk of the more
complex project has the work score much worse in a return-on-investment scale.
A nimble… no, an Agile project
I promised to say a few things about Agile project management and if you are an Agile fan and you have read this
far, I appreciate your patience. Managing software projects through the Agile method is something of a philosophy,
but it is a more and more popular philosophy with those who have been burned on massive software development
projects that failed.
In an Agile software development world, we try to break our project into bite-sized, one-to-three week "sprints"
and the goal for each mini-project is to end up with useable code. In this case we are working within some fairly
well-known constraints so that our level of resolution is pretty much picked for us.
We have a one- to three-week window, the resources are available to us, and we are going to assign work to each
resource. The number of possible tasks that we can define in that structure is finite and this lends itself to keeping
an appropriate level of resolution. Yes, you can get into trouble in Agile by defining tasks that are much too short.
"Define Field1: 10 minutes, Define Field2: 10 minutes, Define Field3: 10 minutes" etc. but it's much less common.
Agile was designed for a corporate development environment where we are creating software for in-house use,
and its use is often extended to commercial software development. (We use the method here at HMS for our own
development of TimeControl.) The Agile method results in a more maneuverable and nimble development
department but it is not going to be applicable to every industry or even every software company. If you are doing
project management in a software environment then my recommendation is to read up on Agile, learn from it, and
then adopt those elements (all, some, or none) that will make you most effective.
Wrapping up
As with most aspects of project management, there's no set answer to questions that at first seem to be so obvious.
How many tasks you have in your project and how long each of those tasks should be is something that you need
to look for yourself to decide … but decide you must.
Choosing your project level of resolution is a project management responsibility that can be a key success factor in
the management of the project schedule.
This article is part of our "From the Trenches" collection. It describes how project managers can share bad news
about their projects most effectively and with the least damage to themselves.
To download the Word version of this article, see Breaking Bad...News that is: white paper.
To see more articles, see "From the Trenches" white papers.
The first chart is of a project which has overspent its expected budget to date. The planned budget was agreed
upon by all parties and as of today, the Chief Financial Officer is having a very bad day. The project is clearly way
over its expected budget as of today. He would like to take action immediately and is demanding a project review, a
halt of the project, cutting of staff and other drastic measures to try to bring this runaway train back under controls
If we extend the perspective just a little and include the project manager's projections, the picture changes
dramatically. Yes, the amount spent on the project as of today is higher than was originally project as of today.
That's unexpected and at first glance looks like bad news. However, if we include the forward looking forecast, we
can see that the project is actually expected to finish on time or earlier and that the project will finish under budget.
Taking action to "rescue" this project would be the worst possible course.
Problem solved.
It is critical to look at whatever you think might be bad news from more than one perspective before taking dire
action. We're just looking at one project and just from a cost-per-time view and already it is clear that just a historic
perspective does not give a complete picture. What about other perspectives like schedule, resource usage, quality,
market impact and more? Perhaps finishing over budget but earlier would be so impactful from a market
perspective that it would more than make up for the unplanned extra expense. That's impossible to discover if you
don't pause to consider the news you're about to deliver from more than one perspective.
Wrapping up (Is that the end of the bad news?)
Bad news is part of life and it is certainly part of a project manager's life. If you were hoping as a project manager
for only happy news, you'll need to think again. As a project manager you must be able to confront bad news and
be able to communicate in a way to provide the most value and avoid the worst damage possible.
A project manager is typically the center of a large web of information about the project and the organization. They
are almost always in the best position to share unwelcome news in a way that avoids drama and leaves people in
action. A project manager who can communicate this type of news effectively is an asset to any organization.
This article is part of our "From the Trenches" collection. It describes the importance of having executive
involvement for a successful Enterprise Project Management (EPM ) deployment. It describes reasons why a
company might choose to not involve an executive in the deployment, how executives should be involved in the
deployment, and tips on how to effectively involve an executive in the deployment.
To download the Word version of this article, see The Executive Connection.
To see more articles, see "From the Trenches" white papers.
"If there is a pilot on board, would he or she please ring their call button?" is something no passenger ever wants to
hear. I re-read a remarkable news story from a true incident just like this that happened back in December 2013.
After the pilot of a flight out of Des Moines, Iowa suffered a medical emergency, the co-pilot made a request for
any pilots on board. Capt. Mark Gongol, a B1 bomber pilot in the US Air Force, stepped into the breach. The plane,
passengers, and crew all landed safely.
It's a great story but my going back to re-read it recently was triggered by something very different. A prospective
client of ours called recently and asked if they could "pilot" our enterprise project timesheet software. These kinds
of calls always make me take pause. When someone on an aircraft says "pilot," we're all very clear about what is
meant, but when someone who is evaluating software options says "pilot," I'm not so sure.
The term "pilot," in the software world, is often blended together with other challenging evaluation methods, like
"proof of concept." Let's take a look at what these terms mean and how you can best use them in your own
enterprise evaluation process.
Proof of Concept
This is a term that dates back many years and is popular in electrical engineering. "Bread boarding" a circuit was
done to see if the circuit was possible, not to start creating it for production. In proof of concept, you might spend
more time at a lab bench than you would in creating the production circuit, but the only damage you could do was
to the circuit board you were working on in front of you. It was an inexpensive and low -risk method of proving that
an electrical circuit could deliver a desired result.
In software terms, a proof of concept should be designed to prove something. When prospective clients call to ask
if I can help them deliver a proof of concept for enterprise project management or enterprise timesheet software, I
always have the same response: "What concepts do you want to prove?"
This is typically met with silence and a confused expression.
If you're going to conduct a proof of concept, and you have no notion of what you're trying to prove, how will you
know if it's a success or failure? There's no way at all of course.
Why, you ask, would someone even want to do a proof of concept then? The most common answer is that the
requestor probably doesn't have the necessary buy-in from management to implement the software they're
researching, and hope that if it was just running in front of them they'd fall in love with the idea and agree that it
should be deployed. In this case, the "proof" is to management, and the "concept" is the whole idea of enterprise
software.
If it were that easy to convince management that enterprise project and timesheet software is a great fit for them,
we'd deploy an awful lot more of it.
The problem with this method is that the work you're going to be able to do to deploy this proof of concept
instance is extremely unlikely to have the same support as you would get for the production deployment of an
enterprise system. When an organization deploys an enterprise system, such as a timesheet or project
management system, there are many things that are required to make it a success. First, there will need to be input
from management and line-personnel for any aspect of the organization that is implicated in the deployment. Next,
there will need to be time for configuration, assistance from technical services to link to other enterprise systems,
management sponsorship, time for training, and, yes, money.
If you don't have any of these things, then what will be the system that you can complete in your proof of concept?
It will be a shadow of what you desire at best. In today's in-the-cloud age, you can probably get access to a system
that is fully hosted so that you can at least not worry about buying servers and software, but just having a system
installed is a fraction of the work required to make even a basic deployment of your proof of concept system.
It's easy to understand why an organization will hesitate to devote a lot of money and resources for the
implementation of something that has the potential to impact the whole organization. It's a high-risk exercise. We
tend to talk only about the benefits of enterprise project management software, but it's easy to imagine that the
same project gone-wrong can have an equally negative impact. So, mitigating the risk is an obvious concern. But if
the real challenge is to convince management of the benefits of the system, then surely there are better ways to do
this. At HMS Software, we've focused on a few of the following techniques:
1. Talk to a real, already-existing client.
We're blessed here to have some great clients who are by and large quite satisfied. When a new prospective
client has concerns over what they're getting into, we get that organization together with an existing client.
In many cases, the existing client has been generous enough to offer to host an in-person meeting. In other
cases, they do calls with each other that we deliberately don't become a part of. We encourage the existing
client to share both good news and challenges.
2. Let us prove it.
If you really do have a concept that needs proving, then let us help prove it to you. There are legitimate
reasons why some aspects of some implementations need to be proven first. Perhaps the deployment will
have very large volumes of certain kind of data. We were asked once for example, to show our solution
functioning with a particularly large project load. We've been asked to show software working with certain
browsers or with certain databases, or linking to particular versions of certain external systems. If that's the
kind of concept that is blocking the evaluation, then the best people who can overcome that challenge are
the subject matter experts.
3. You can have some training with that.
In the case where the prospective client absolutely must show the system working with their data used by
their personnel, we help load the data into a hosted system, then do a minimum to configure the system as
desired by the client and to train the people who will be involved. We highly prefer being brought into the
company to help with the demonstration itself, but if that's not possible, we ask to review the script or
demonstration that the people involved will use, and ask to help adjust it or train people to deliver it.
Wrapping up
Pilot and Proof of Concept projects are a fact of life in enterprise software, but if you have one in your future, you
can help make it a success to point out some key success factors to everyone involved:
1. First, make sure you have your goals clearly articulated.
2. Next, make sure that management understands what you need and will support you in terms of money,
resources, and time in order to achieve those goals.
3. Finally, make sure you make a project plan and manage it like any other project in your portfolio.
This article is part of our "From the Trenches" collection. It discusses the evolution of project management systems,
the use of Enterprise Project Management, and the importance of understanding which project management
solution is best for you.
To download the Word version of this article, see Would you like some EPM with that?: white paper.
To see more articles, see "From the Trenches" white papers.
This article is part of our "From the Ttrenches" collection. It describes how enterprise system implementations
need to able to adapt and evolve to be successful.
To download the Word version of this article, see Are we there yet?.
To see more articles, see "From the Trenches" white papers.
This article is part of our "From the Trenches" collection. It describes how to make an Enterprise Project
Management deployment "roadmap" when you plan to implement EPM. It uniquely describes factors to consider
when you plan your deployment path.
To see more articles, see "From the Trenches" white papers.
If we were just to ask, "What do you want?" the answer almost invariably comes in terms of a solution. People are
likely to say "I need a report that looks like this" or "Our firm needs portfolio analysis."
For those of us in the solutions business, we know these kinds of design notes are fraught with risk. We train our
consultants to be listening for clients who describe their problem as a solution. "That's a solution to a problem,"
we'll say, "not the problem. Let's define the problem."
So we tend not to ask "What do you want?" Instead, questions that may be useful during an envisioning might
include:
"What business decision are you now unable to make or are able to make only with great difficulty, the making of
which would be made easier as a result of this EPM deployment?"
Or:
"What aspect of the organization do you believe could be made more efficient either through an increase in
throughput or a decrease in effort through this EPM Deployment?"
Now, who should we be asking these questions of? Why, the people who make these decisions, of course! If you've
ever had a minivan full of kids and turned to ask them where you should go as a destination, you know that you'll
get 50 answers.
By the same token, we need to make sure that the organization's decision makers are a key part of this process or
we run the risk of picking a direction that the "driver" isn't prepared to travel to. There's an additional benefit to
bringing senior management into the EPM roadmapping process at this time. Aside from being a critical
participant in choosing the direction the EPM deployment should go, they are also able to get a sense of the
magnitude of the project. One of the most common and difficult challenges to a successful EPM deployment is
long-term management support. Some senior executives have not considered just how much this might change
existing practices and procedures and how disruptive, even temporarily, this might be. They may also not have an
appreciation of how much effort a culture-change project like EPM may be.
During our work with senior management as well as project management and perhaps line personnel, we try to
connect business decisions or business efficiency with process and technology. Is there a process that must be
created in order to fulfill this requirement? What would it need to accomplish? Is there a system function that either
exists or must be created to serve that business decision? What would it need to deliver?
Basic systems analysis is key in this phase. We start from the business decision "output" and work our way back to
the data elements required to make those decisions. In some cases, we find that the basic data simply isn't there
and this results in that element of the roadmap being flagged as "high risk." After all, we'll now need to include
collecting data in a new format or structure to capture those new data elements before we can even think of
delivering the better business process, and that can be a tall order in some cases.
We have one more thing to do before we close off the destination process and that's prioritizing the different
elements of the final vision. It is very common to think at the beginning of the roadmapping process that the
priorities will go one way but find that as you go to actually record them that they go very differently. Interestingly,
by the time everyone has agreed on what targets are included in our destination, there is remarkable consensus on
what the top priorities should be.
The next thing we need for directions is a point of origin and we manage that through an inventory of where the
organization is now in relation to the goals we've chosen.
We look at existing personnel. Are they trained in project management for their particular roles? Do we have
sufficient personnel with sufficient experience to accomplish the goals that have been set? Remember that we have
to look at multiple measures here because different people will have a different role in the eventual enterprise
project management process. It makes no sense to train every employee to be a project scheduler if, in fact, they'll
never be responsible to create schedules. By default, we think of four roles: Administrator, Project Manager,
Individual Resource, and Executive. If timesheets are involved, we think also of Supervisors as fifth role. Of course,
depending on what destination we've defined in our original envisioning process, the roles may be quite different.
That changes the skills inventory process profoundly, which is why we always start by defining the destination
before thinking about the point of origin.
We also look at existing process. Is there a stated or documented project management process? How is it
maintained? Who is in charge of it? If there is a Project Management Office already established, then a lot of this
effort is focused there. After all, there's no point in creating new procedures if there are existing procedures and
processes that are already effective. We may inventory existing processes that are both inside the current project
management process and outside, depending on what the ultimate goals of the EPM environment will be.
For example, we may have decided that contract management is going to be a significant element of our new EPM
environment, and that this has never before been part of the project management processes within this
organization. Yet, if we look a little farther afield, we may find that the organization has a strong set of controls for
managing documents and existing workflow already moving documents, perhaps in SharePoint. This would be an
ideal process for us to adopt and, if need be, adjust to make sure it will empower this aspect of the new enterprise
project management environment. Doing so carries a triple-edged benefit. First, we don't need to expend the effort
creating a new process. Second, we know that the personnel already have the skills and habits to use the process in
this way, which means no training effort or effort to get the personnel to comply. Finally we don't have the difficult
situation of trying to create a separate process that might be at odds with an existing process for managing
documents, such as contracts.
We know that one of our biggest challenges is going to be compliance. Not building the system, but getting
everyone to use it and to use it consistently. The more we can adopt existing habits, practices, and procedures that
are embedded in the organization, the easier compliance becomes.
Finally, you need an inventory of the technology platform. Since the Microsoft EPM Solution is built on a platform
of technology, it is likely to find some of that technology already in place, but it's also possible the organization will
have to upgrade some of its platform in order for the solution you're designing to function. SharePoint and SQL
Server are obvious elements of deploying Microsoft Office Project Server, but you may also need to check on
browser compatibility (is everyone using the latest version of Internet Explorer?), security status (will the system be
outward facing?), what version of SQL Server is deployed (is OLAP Services or SQL Server Reporting Services
already being used?). You may also need to consider other systems with which you'll need to interface or integrate.
How will you get access to those systems in production?
The size of the planned system may also necessitate looking at hardware, network, and other infrastructure
elements to ensure the system will have the structure it requires when it arrives.
As with any enterprise system, you'll want to plan both a production and staging area so that updates and
enhancements can be created in the lab rather than on the live system over time. You may also have to make plans
for a Pilot or Proof of Concept phase; something I'll talk more about in my next column.
"Recalculating Route"
When the G.P.S. unit in my car discovers that I've missed a turn, a very nice lady's voice says "Recalculating route".
Moments later, the line through my map changes and I've got new directions. In an EPM deployment we need to
be ready for a detour or a turn that's blocked for repairs. Perhaps we missed that freeway exit. How do we deal with
replanning? There are two things to ask when you go off course: First, are you still going to the same place?
Second, how do we get there from here? One of my favorite project management quotes on this subject comes
from Napoleon Bonaparte, who once said, "A battle plan lasts until contact with the enemy."
In an EPM deployment how do we apply this same principle? First of all, you need a measure to determine if you're
no longer on course. If one team member has an emergency dentist's appointment tomorrow and is absent from
the office for four hours, should we then let that discrepancy change all downstream tasks, reschedule everyone
from tomorrow at noon through the end of the project, and then e-mail everyone with their new assignment
times?
Of course not.
A discrepancy of four hours for one resource over the six-month lifetime of a project involving dozens of people
isn't enough of an interruption to warrant changing our path. What we need to do in starting any kind of enterprise
project is to set thresholds of acceptable progress. The aerospace and defense world is finding a new term for this
lately, "Tripwires," which is very descriptive. We can establish what criteria would indicate to us that our route needs
to be recalculated. There are several typical metrics or measures to consider. First, if the projected completion cost
varies by more than X percent from the original budget, then that might constitute a project plan review. You might
do the measure of cost in labor hours or money. Either is effective. Perhaps if the forecasted finish date varies by
more than X days from the originally planned finish date, then that might constitute a project plan review.
You might also decide that missing certain key milestones by more than a certain number of days is a tripwire, or
you might identify certain risks being realized as a tripwire, or you might determine that a change of certain key
project team members such as the executive sponsor is a tripwire. It's more important to set some criteria than to
get the criteria exactly right. Also, remember you're going to need to measure against these criteria throughout the
lifetime of the project, so if you choose 50 or 100 different metrics, you could end up spending more time
measuring the project than doing the project!
Once you've determined you're off course, the best way to get back on track is to conduct a project plan review. We
recommend including representation from both the original group of senior management who helped establish
our destination in the first place and from the group within the project management team who helped do the
original inventory. Project Plan reviews can get mired down in assigning blame for why the project is off track and
why a certain tripwire has been triggered. Such effort can be hugely counterproductive. We recommend focusing
on the following questions:
1. What happened?
2. Where have we ended up? What's our current point of origin?
3. Are we still committed to our original destination or is there a compelling reason to review that process or
even redo the envisioning process?
4. Do we need to reset any of our intermediate milestones or phases?
5. Do we need to change any of our project team?
6. Do we need to reset any of our tripwire metrics?
Questions which we've found to be less productive include:
Whose fault is it that we're here? Who's responsible? Who's to blame?
How do we get "back" on track; back to the old plan?
The most common reason for a project plan review is that the organization's priorities shift. For example, items that
were designed to be in Phase 3 are being demanded in Phase 2. This is usually a sign of a healthy dynamic within
the organization and the result of people starting to think seriously about the implications of the EPM System's
deployment.
Bad Weather
Before you set out on a long drive you probably check the Weather Channel (or weather.msn.com) to make sure no
inclement weather will affect your voyage. Risks are a part of life. Remember, if there were no risks, there'd be no
need for project managers! Planning for the most glaring risks is not a complicated process. Start at the beginning
of the envisioning process, and as you look at each of the elements of the destination you are designing, ask the
group what barriers to reaching this destination they can think of. In some cases the risks will be significant. It's not
uncommon for an organization to desire a particular result, only to find that the raw data required to deliver that
result has never been gathered and that there may be considerable resistance to the collecting of that data.
In one example, we found an organization that wanted resource capacity planning. That was going to require a
complete accounting of all of the resource availability of all project personnel and a complete accounting of all of
the possible workloads that could be applied to those staff. When we asked if both of those were available, we were
told that sure, they were available but only for two-fifths of the organization. When we then discovered that the
three-fifths of the organization that the data was not available for weren't even represented at the envisioning
meeting, we said, "Let us guess. The problems you're experiencing with resource capacity planning are in those
three divisions." Naturally they were, and we had to identify enrolling the division leaders of those divisions as a
separate phase of the project and very high risk.
As you move on to work with the project management and line personnel in the inventory process, ask during the
interviews for any risks these personnel might be able to identify.
Once the risks have been identified, it's important to organize them. If you've not done this before, the most basic
information will be the most valuable. Include:
1. A short description of the risk
2. The area or phase of the project which it may impact
3. The severity of the risk if the criteria is realized
Finally, one of the most important things you can do is to add some details on risk mitigation. Just thinking about a
risk is a huge mitigating factor, but while the EPM deployment is in its infancy, entering some notes on how you
might deal with a particular risk during the project can be invaluable. It's common for decisions to be made in
haste in an emotional context when risks are realized. Having some notes that were thought out while cooler heads
prevailed may be useful.
Let's drive the car we're building
Here's a tip on making your roadmap that may pay huge dividends: Use Project Server and the Microsoft EPM
Solution to help make and manage your roadmap plan. It seems obvious perhaps, but it's rare enough for
organizations to do that we mention it here.
I had a senior manager once tell me that his project staff had asked him if he thought using the Microsoft EPM
solution to deploy the Microsoft EPM Solution wasn't overkill. "If we built jet planes for a living, we wouldn't fly
them to work," they said. "Are you kidding?" he replied. "If I could fly a jet plane to work, I'd do it every day!"
In fact, using the Microsoft EPM Solution for the EPM deployment team is a great idea.
Installing Project Server and the other elements of the Microsoft EPM Solution isn't a huge technical challenge,
and with the absolute minimum of configuration you can be up and running with a small deployment team as the
users within a couple of days. This is a great way for those users who will become your deployment champions to
become familiar with the use and benefits of the system before it arrives at the desks of the bulk of the staff.
This deployment shouldn't be your production environment. You'll almost certainly be configuring that and
customizing it to fulfill the vision of the original destination. You almost certainly won't be working on things like
multi-project scheduling or resource capacity planning or portfolio optimization in your EPM deployment iteration
of Project Server, but you'll be able to deliver a system that can deliver great benefits. We'd recommend:
1. Do a rolling wave schedule as a published project.
A rolling wave schedule highlights the current phase in great detail and future phases as more of a
summary. This lets the team members know what they need to be working on now and still lets them see
the project in a larger context.
2. Manage the vision document in the Project Workspace.
The Project Workspace is a SharePoint site tied to the project which by default includes an area for Issues,
Risks, and Documents. Why not put all your project documents here for the EPM deployment project and
institute SharePoint's version control so that you can always get back to the original version?
3. Put your milestone sign-offs and "gates" in the Project Workspace deliverables.
This is a simple task list that you can link into tasks in Project Server. It will give a very high-end view of the
project and is an easy tool to use for threshold management to determine when you go "off course."
4. Put change management into the Project Workspace as issues.
Change management is one of the great challenges of technology projects. As new suggestions for changes
to the project arise, get them into the Issue area as a potential change to be managed. By adding a few fields
to this area you can get a list of high-priority items and who is responsible for them at any time.
5. Put the project risks into the Project Workspace.
Aside from documents and issues, the risk area of the Workspace is the ideal spot to add your risks and
mitigation plans. In fact, the default screen has all the fields there ready for you to use.
Are we there yet?
"Almost. We'll be there soon."
An EPM deployment can bring an organization to so many different places that there's no way to simply publish
the default schedule for everyone. But a few minutes searching the Internet may provide you with lots of possible
examples for different parts of the project. If I summarize the roadmap exercise above, you are likely to end up with
a project that has a few obvious phases:
1. Roadmap exercise
2. Envisioning (Choose the destination)
3. Inventory of existing processes (Identify the point of origin)
4. Inventory of existing personnel (Identify the point of origin)
5. Inventory of technology (Identify the point of origin)
6. Deployment of EPM solution for EPM team
7. Phase 1
8. Design
9. Configuration, Customization, Documentation
10. Pilot
11. Training
12. Roll-out
13. Review of Phase 1 and adjust Phase 2 as required
14. Phase 2
15. Phase 3
16. Phase 4
17. Project wrap up
Applying a roadmap exercise to your EPM deployment can change the experience from chaotic to manageable
very quickly. Just remember to pick your destination first, figure out your point of origin next, and draw the path
between them.
Happy traveling!
This article is part of our "From the Trenches" collection. It discusses project management, portfolio management,
and task management, and it compares the top-down and bottom-up management practices related to them.
To download the Word version of this article, see Top-down or bottom-up: white paper (Project Server 2010) .
To see more articles, see "From the Trenches" white papers.
Top-down or bottom-up?
"We need project management… Ummm, I meant portfolio management… Ummm, I really mean task
management… Oh heck, we need all of them," is a battle cry I hear often. It's not a lack of definitions of these three
concepts that causes confusion, it's their similarity.
Those of us who have worked in IT for many years tend to see things from a technical perspective and sometimes
it doesn't serve us well. If we look at data from Portfolio Management, Project Management, and Task
Management, it might look very similar. I've got an ID field, a description field, and a start and end date in all three.
Linking all three of these should be natural then.
Perhaps not.
Let's take these three concepts one at a time. It's easy to see their similarities, but there are fundamental differences
in the three perspectives.
Portfolio Management — a top-down approach
People can mean a lot of different things by "portfolio management," but the most meaning common is probably
project selection and prioritization. The principles ultimately affect everyone in the organization, but the process is
of great interest to senior executives. Management starts off with certain constraints, such as a total available
budget and a need to answer the question, "What can we and should we accomplish with this amount of money?"
If the portfolio management process is sufficiently mature, this analysis might include not just new ideas but also
existing projects.
To create a portfolio selection and prioritization process, management must confront what business criteria drive
the company and agree in advance on the metrics that will be considered when looking at new and existing
projects. Should return on investment be a key metric? Perhaps we should consider effects on client satisfaction or
staff retention or alignment with strategic objectives. Whatever the key metrics are, management has to weigh each
project initiative with a view to how that project can advance those objectives and how each project compares with
alternate initiatives on which the money could be spent.
This is a highly analytic process even if it's done in one's head. It's certainly highly analytic when you are using
project portfolio management software. Even once the analysis from software arrives in a report or a view, there is
virtually always some management-level oversight where a final decision on priorities gets made. When that is
complete, the final results must be transmitted to those who will do project management of each of the projects.
The effects of these decisions will be to fund some projects and not to fund others, to make available resources on
a higher priority to some projects and not to others, and to advance the schedule of some projects and to delay
others.
Project Management — top-down and bottom-up
Once a project is approved, it moves into a different realm altogether. Now the more classic view of project
scheduling comes into focus. Now we have to actually build the thing we described in our business justification
before it was approved.
A project manager starts thinking in terms of project scope and deliverables. The project manager knows the final
product that must be created, whether it is a piece of software or a building ready for occupancy. They may think of
the major phases of that project and create a work breakdown structure.
A critical path of logical steps required to complete the project gets designed. The project manager also knows that
he or she will be held to account for the schedule that is produced, so he or she consults a range of subject matter
experts in the project. The project manager creates a bottom-up view of the project by looking task by task and
summarizing those tasks up to project phases and eventually to the project itself. At this time the project manager
might also start allocating resources by skill, by department, or even by name. These resources might have costs
associated with them. The result of calculating the duration of the tasks, the resources required, and their rates
gives us a bottom-up estimate of the project.
So far, so good.
But when we look at the top-down approach of the project portfolio selection process, there was a cost, too. In fact,
the estimated cost of the project was part of the business justification that management considered when it
approved the project. If we're just getting the bottom-up estimate of the project from combined expertise of the
subject matter experts now, what did they use in the project selection up in the executive suite?
It's a good question. In some organizations, the project will be given a rough estimate from the project department
in order to create a business justification for the project. In other organizations, a complete bottom-up estimate is
created prior to considering the project in the portfolio process. The problem with both of these approaches is that
they take effort. A complete estimate may take a lot of effort and yet the project has yet to receive approval for
funding any effort. So, in many organizations, someone in management simply makes a guess as to what the costs
of this project will be.
So the process looks all integrated but there may be a bit of a catch-22 here. Which comes first, the work spent on
doing the estimate or the selection of the project in order to be able to spend time on the project?
Moreover, what happens if the bottom-up estimate doesn't match the estimate of the portfolio selection process? If
the estimate is less, there's probably no issue, but if the work can't possibly be completed in the time or budget
estimated by the portfolio selection people, there is a conflict.
You might think that the natural thing to do would be to reconvene senior management and just discuss the
problem, but there are a lot of situations where that isn't as easy as it seems.
First of all, the portfolio selection committee is rarely the project management staff. Senior project management
staff members are almost always included in the portfolio selection committee, but the group itself is usually very
senior executives who find it challenging to organize time to all be together. Secondly, the selection committee may
meet irregularly, so getting them back together to discuss all the ramifications of a mismatched cost for one project
versus the estimate might be a big challenge. Finally, there are some corporate cultures where it will not be a
career-advancing move to have to deliver the news to the senior executive that their guess is completely wrong on
what the appropriate schedule and budget for this project is.
Task management — a bottom-up approach
When we think of task management, we tend to think very operationally, and that most often brings us to our daily
agenda and a product like Outlook.
Now we're working at an individual or a small team member level. We don't see the tasks in context. We see those
things we've committed to or perhaps those things we've asked a team member to commit to. This is not an
analytic view at all. There are tasks to do and the individual has promised to do them.
At its core, task management is very straightforward. You do the task and when you're done you tell the person
who gave you the task to do that it is complete. All the functionality for this is already in Outlook.
The mischief of similar data
There's a saying, "If it looks like a duck and quacks like a duck, it must be a duck." That's true for ducks, but it isn't
always true for task-based data.
Let's consider these three levels of project-oriented data:
At the portfolio level, we have a project and perhaps phases below that project. The phase information
might have a code number, a description, a duration, a start date, and an end date.
At the project level, we have a project and tasks below the project. The task information might have a code
number, a description, a duration, a start date, and an end date.
At that task management level, we have a task and the task information might have a code number, a
description, a duration, a start date, and an end date.
They sure look the same, but in fact, the perspective of the data makes each of these rather common records serve
a very different purpose.
I'm often asked, "Can I move data from the portfolio view to the project view to Outlook and back."
The short answer to that question is "Yes."
But in our firm we have a mantra we say to ourselves when we're giving technical advice: "Don't tell me how to do
it, tell me why you should do it."
1. To make the point, imagine this example. We make an entirely integrated environment. At the top end of the
scale we have a list of projects organized by portfolio. Not only do we select these projects, but we integrate
even further, following them after they've been activated into live projects from the EPM system. To do this,
we use functionality already available to us to move the project and phase definitions from the Portfolio side
of our integrated system to the project side of the system. The data looks identical.
2. In our enterprise project management system we now make a more detailed definition, using the original
phases from the portfolio definition that was pushed from the top down. Doing this allows that summary to
be updated in the portfolio system when we update our projects. We make many tasks and assign many
resources. We now do a resource-leveling analysis to determine our capacity across many projects.
3. We use our resource assignments to push task and assignment data to each user as an Outlook task or
calendar event. Users no longer need to go to a "project management system". They are now able to see
their data in their daily agenda. The data looks just like it does in the project list and is linked further
upstream to the portfolio view.
4. Progress from these tasks and availability from Outlook is moved back from the individual to the project
management system along with estimates on when this work will be completed. The data looks just like it
does in the other two systems, so moving the data is relatively easy.
Creating such a system is technically very straightforward using the tools available to us today along with a bit of
configuration and development. And it would demonstrate beautifully.
We get asked for exactly this type of structure on a regular basis. But, even though we can do it, should we?
Imagine that at the task level, an individual takes the morning off for an emergency dental visit and updates her
Outlook that she will not be available this morning. That's bad news for him but the ripple effects to the project
could be massive. Now, the project system calculates that the task that was scheduled to be done this morning
won't be completed today; it will be completed only at mid-day tomorrow. It dutifully looks at the critical path and
all tasks downstream from this one and pushes them forward by four hours. Perhaps hundreds of tasks were
affected. The result might be pushing the end date of the project a half day later. Other projects are also affected as
other people working on this project must now have their tasks re-arranged and the portfolio view itself slides
forward a few pixels.
If we imagine this in real time, the problem is magnified. Hundreds or thousands of people are making changes all
through the day, and the EPM view, the resource leveling view, and the portfolio view animate back and forth with
the effects.
In reality this doesn't happen. First of all, the hapless dental patient will be back at her post at noon and may just
work a few hours later tonight to make sure this critical path is caught up and all will be back on track in the
morning.
Plus, even though the data looks the same, it is never integrated this way because of exactly this effect.
Data Context — the perspective matters
When we look at data, the context of the data is critical. Data that may look the same from a record-to-record
schema is used for very different purposes based on the perspective of the application.
In a top-down portfolio view, we are making strategic decisions of where to put our resources to maximize our
return on investment. We might make choices that a project manager wouldn't make. In my own organization, we
have sometimes chosen projects that are completely outside our existing skill set, knowing that we would be
terribly ineffective at accomplishing them but doing so because we wanted to improve those very skills. The return
on investment wasn't an effective installation, it was trained installers. This is an analytic view.
In a tactical project view, we are making operational decisions about where to get the best throughput of our
personnel and to get our projects completed as quickly and efficiently as possible. A project manager's eye is
always to the future. What happened in the past is only of interest to the project manager insofar as it improves his
or her view of the future. This is also a highly analytic view.
In a task management view like an agenda, we are not analytic. An agenda is a commitment system. We promise
ourselves or others that we will do a particular thing at a particular time. This might fit the analytic view. And it
might not.
Mixing these perspectives and contexts without understanding the impact can cause chaos.
Top-down or bottom-up?
There is, as usual, no right answer. Some aspects of your project management system really need to come from the
bottom-up. After all, in the end, it is individuals who will build whatever your project is about. But some decisions
are, and should be, made from the very top and are, as a necessity, top-down.
When you keep the distinctions of what each level of the project management paradigm is for, it does become
clearer to see if some of these systems should really be integrated or not. If the process and thinking of one level
doesn't have direct benefit by being fully integrated from another level, then integration is not the best play. It's
important to walk through how such integration would work in a real-world context and whether the frequency
and detail from one level delivers any value to the other.
If, for example, a steering committee only meets once a quarter to make big-play decisions about which projects to
move forward and which not, then what is the benefit to updating their view every day, every week, or even every
month?
Does the enterprise project management resource-leveling algorithm really need to see the dental appointment of
an individual or is it enough to know the approximate availability of that individual?
And yet, if we could send an assignment to an individual's agenda or timesheet screen directly, would that save
them a few minutes each day having to go into a different system and interface to see the same data?
So, top-down is right in some circumstances and bottom-up is right in others. You have to look at your own
situation to see where integrating these tools and concepts can pay back the right dividends before tying them
together.
This article is part of our "From the Trenches" collection. It discusses using strategic drivers in Portfolio
Management to effectively create a standard approach for making important project decisions.
To download the PDF version of this article, see Aligning projects with strategic drivers.
To see more articles, see "From the Trenches" white papers.
Create proposed projects Risk, strategic alignment, resource needs, benefits, and other
pertinent data
Be recognized as offering the best customer service in the Reduction of call hold times
industry Pre-emptive service programs
Be seen as a leader in adopting new FAA regulations Standardize fleet and components
FORCE-IN EXAMPLES
Regulatory and Compliance Regulatory projects ranging from changes to tax laws to
industry-specific laws
Projects you must do to remain in legal compliance as a
corporate entity
Please do keep in mind that just because these projects are "forced in" does not mean they have to be done right
away. If projects can be deferred to a later date or accommodated by another like-type project, there are always
options for you to consider.
If the FAA tells you to replace those seatbelts by the end of March, it gets forced in and the resources will be
allocated to get it done. On the other hand, if your corporate office needs an expansion to accommodate new hires
but could wait a year while doubling-up office space, perhaps that is what you do.
To wrap up this step, recognize there are always projects that must get done. Categorize them as such and
remember that budgets, resource needs and start dates can always be challenged.
Step 3: Weight the Drivers
In Step 1, we decided on the Strategic Drivers and asked our Executives to agree or disagree. Let's say we all
agreed that these are the drivers:
Be recognized as offering the best customer service in the Reduction of call hold times
industry Pre-emptive service programs
Be seen as a leader in adopting new FAA regulations Standardize fleet and components
Right now, everyone is probably very pleased with themselves and there is likely little disagreement by anyone.
Remember how I said earlier in this document that Drivers need to be Measurable? In Step 3 we measure the
drivers. This is where people start to realize perhaps their projects won't be selected because they are not aligned.
Expect push-back and some politicking. This is a normal process but getting through this can be somewhat difficult
so hang in there.
Microsoft Project Server has the ability to create Strategic Drivers and weight them. You can do everything I am
about to share with you directly in the tool. In fact, many of my clients will actually input information into the tool in
real-time so they can see the impact of their decisions.
Let's get started. There are two ways we can weight our drivers. One way is to simply weight the drivers manually
so they add up to 100% in total like this:
STRATEGIC DRIVERS STRATEGIC DRIVERS WEIGHTING
Another weighting method Project Server supports is called the Analytical Hierarchy Process (or AHP for short).
This is a very powerful tool to get the weightings by asking all our executives to compare each driver against each
additional driver then Project Server will calculate the percentage based on those answers. Here is how this process
works:
You pull up each driver and then ask your executives to say whether it is more or less important. Here is a simple
example:
Introduce new premium products Increase energy efficiency Much more important
Introduce new premium products Reduction of call hold times Much less important
At this point, we could ask our project teams to get all their proposed and in-play projects aligned with these
drivers. The problem we are faced with is measuring just how well these projects are aligned. If all projects are
aligned to "Introduce new premium products", which ones do we choose?
Microsoft Project Server allows you to define measurements for how well a project might align to any given
strategic driver. Our executives are not done yet. We need to ask them to help us get some good measurements in
the tool. We do this by setting up some selections the project teams can pick from:
Introduce new premium products 40% Extreme: Brings >$25M in new revenue
Somewhat: Brings <$10M in new
revenue
Less: Only supports premium product
projects
Not Applicable: No impact at all
As you can see above, we put some measurements in place that clearly articulate what executives expect if projects
are aligned with drivers. There are in fact more than just three measurable inputs that can be associated with each
driver, but I just added these for simplicity's sake.
Step 5: Aligning Projects with Strategic Drivers
This step wraps up the final objectives we set at the beginning of this paper, but it is certainly not the last step. I'll
cover some additional details in the Final Thoughts section.
So far we have sat with our executives to define a manageable set of Strategic Drivers. We weighted those drivers
using the A.P. method and then we set some clear metrics on which the projects must align. We also discussed the
fact that some projects, like regulatory or sustaining projects, may not need that level of alignment but should still
be in the portfolio as 'forced in' projects.
Before we can do a portfolio analysis, there is work the Project Teams need to do. Whether a project is an actual
funded project or just an idea for consideration, they can all be entered into Microsoft Project Server.
The teams will then associate their projects with these drivers, including the measures that have been defined. This
is a simple website page that is easily filled in.
The teams will have to sit together in a meeting and share their results with the sponsors to ensure they have
properly aligned their projects.
Final Thoughts
Microsoft Project Server has some very powerful capabilities to help you more effectively prioritize, select or even
kill projects. This document does not cover the entire Portfolio Management process, but suffice to say, it is very
powerful, allowing for real-time decision- making.
Strategic Alignment is but one component of selecting and analyzing projects. You might also capture other data
such as Lifetime Project Costs, Net Present Value (NPV ), budgets and resource plans so you can look at the
complexity of delivering a project.
Going back to our airline example, a project may return a significant value based on the strategic drivers but take
up too many resources, take too long and the return on investment might be in question. Just because it aligns
doesn't mean we have to do it. Keep this in mind.
Microsoft Project Server doesn't just say, "Here is a set of projects and you get one portfolio." Indeed, you can
create many portfolios and "what if" scenarios that take various things like risk or cost into consideration. You
might have one locked-down portfolio that represents the work to be completed for the current year then a few
working portfolios for the coming years.
The journey to becoming a portfolio-driven company may have just started, but I guarantee you that, if done right,
it will pay off in the end. I sincerely hope you have found this article worth your time and am always happy to
answer your questions anytime.
Phone: +1 415-294-0165
This article describes various challenges you can face when planning to deploy the Enterprise Project Management
solution in your environment. It also describes several different deployment scenarios that can be used, as well as
important prerequisites that need to be considered.
To download the Word version of this article, see A Phased Approach to Deploying Enterprise Project
Management: white paper.
To see more articles, see "From the Trenches" white papers.
Remember, an Enterprise Project Management deployment isn't just technology. If it were, the implementation
would be over in a few days. No, an EPM deployment involves Strategy, People, Process and Technology.
Successful Microsoft EPM Solution deployments virtually always consider the project a 'Change Management'
project rather than a technology project. What we're looking to accomplish is to change the way the business
works. How? Well, depending on which direction an envisioning exercise goes, the direction could be very different.
If we try to implement every aspect and every direction at the same time, we could end up creating a huge project
that is complex and very difficult to understand and that just makes the deployment much riskier.
EPM Deployment Approaches
Let's talk for a moment about how many people approach an EPM deployment. There are a couple of possible
scenarios: the Big Bang, Instant Bang, and Phase Approach.
Big Bang
The Big Bang theory says "Let's do it all!" The idea is that we'll spend an inordinate amount of time designing,
building, rewriting and programming the ultimate enterprise project management environment. It will take a
phalanx of programmers and, one day, sometime in the future, on a given weekend, we'll flip a switch and everyone
will have enterprise project management. If we were to graph this as Return on Investment over time, it would look
like the picture at right.
There are pluses and minuses to using the Big Bang theory. On the plus side, there's a better chance than with
other types of approaches that the end result will be closer to the original intent. After all, the team doesn't rest
until they've checked off all the desires created at the beginning of the project.
On the negative side, however, there are a few big challenges. First of all, the organization doesn't receive any
return on investment until the project is 100% complete. That may be months or a year or more down the road.
Every day that the project is incomplete is a day someone can wander through the building with a "better" idea.
Also, the nature of life is that it changes. Any team change, management change, change in corporate mission or
strategy, change in fundamental technology architecture, change in corporate ownership can result in the project
being restructured or cancelled. If this happens, the organization receives nothing for its efforts.
Instant Bang
When we talk about the legacy of instant gratification legacy that follows Microsoft, we see a different
phenomenon. Some clients will assume that deploying the Microsoft EPM Solution is just like playing a Microsoft
Game. We load in the DVD and a few moments later, we're doing projects in a coordinated, collaborative fashion.
The return on investment looks good for a few days or even weeks as the pilot group with the most excitement
over the new system starts to use it. However, without the investment of the senior executives it is extremely
difficult, if not impossible, to effect culture or behavioral change and the project rarely extends. The system stays in
use for a short period of time and then is either abandoned or left in use by a tiny number of users who are often
frustrated that they've been unable to entice the rest of the organization to work together.
Phased Approach
We've found over the years that a phased approach is the most successful method of deploying an Enterprise
Project Management Environment. There are a lot of reasons for it. Here are a few:
First, the organization starts to receive a Return on Investment early in the process. This serves to safeguard
the implementation and validates to management their decision to do an EPM deployment in the first place.
Second, the deployment tackles technical challenges in waves rather than all at once. As the complexity of
the system grows, so, too, does the maturity of the organization in handling that complexity.
Third, the deployment eases the culture change into the organization over time, which is always easier. It's a
truism that change causes upset. That there will be some upset at such a change in managing projects is a
certainty. Deploying the entire vision over time lets the users adapt to the different way of doing business.
Finally, no matter how much time the organization spends in doing the original design, it is bound to change
its mind as soon as it sees the system in operation. Getting that first phase of the deployment into
production earlier lets the organization learn from it as they move forward.
The most critical element of this plan is the first phase. We instruct our consultants to determine "the most minimal
deployment possible which will return an ongoing positive return on investment." I've worded that very carefully.
We want to find a first phase of the deployment that can be put into production that will provide results and that
each week will give back more benefit than the effort required to produce them. If we do that, the deployment will
last forever. No one would remove the deployment because they'll say, "Oh, we can't remove that, we get 'this' out
of it every week." If we're successful creating that kind of deployment, we'll be able to build on it in the months to
come. If we're not, the project and the deployment is still very much at risk.
Getting started with your EPM Deployment strategy
If I've made you think twice about doing an EPM deployment, that's probably a good thing. Not that you should
not do it but a successful EPM deployment always starts off with a bit of extra thinking. So, how should you go
about doing your deployment? Let's start with a few prerequisites.
1. The Project Management Office
If your intention is to deploy an enterprise project management environment, there's no way around having an
enterprise project management organization. This is commonly referred to as Project Management Office, or
PMO. You can call it whatever you want, but there's got to be a central management of a system like the Microsoft
EPM Solution. Who will declare templates to be the 'official' template? Who will determine who has authority to
change resource priorities? Who will determine what a report will look like and who will have access to it? Who will
decide whether to manage risks and, if so, what process must surround it? And so on, and so on… No, a PMO is
essential. If you don't have such an organization (even if it's one person) then you'll need to start there as one of the
earliest steps towards your EPM environment.
2. Executive Sponsorship
Next, get sponsorship and support from senior management. Whoever is supporting this project from the
executive suite needs to know not only what the goals of the deployment are, but how long they'll be required to
provide support. We typically tell executives to plan for a minimum of a full year of sponsorship duties. One pitfall
that we often see is a small group of middle management or project managers who desire an Enterprise Project
Management environment but lack executive-level support and decide that they'll try to do the deployment
themselves in order to get that support. It's the Field of Dreams "Build it and they will come" approach and it's
almost never successful. The problem is that the very benefits that would be attractive to management (such as PM
methodology compliance, global project reporting, resource capacity planning, and collaborative project
management) are those benefits that can only be achieved with the participation of management.
3. We're project managers - we don't need project management!
If you want to avoid the most common pitfall to an EPM deployment, make a project plan. I know, that sounds
strangely simple but it's amazing how many EPM deployment projects don't, in fact, have a project plan. One of the
easiest pieces of advice we can give to organizations considering deploying the Microsoft EPM Solution is to make
it a project and to apply all the same methodology they already use for any other project. Is there a project
schedule; a budget; an executive sponsor; a project charter; resources; success metrics? These things might be
found in every other project in the organization but, just like the shoemaker's children who go barefoot, project
managers often forget to apply their skills to their own projects.
4. Set goals
Work at the very beginning of the project to determine what the measures for success will be at each phase.
Having a clear set of performance metrics goes a long way to helping not only the project team but also
management focus on completing a phase of the project.
Getting started
If you're wondering how to get started, here are a few suggestions.
Envision
Start with a facilitated vision session with senior management. If you use external assistance in no other aspect of
the project, you'll find it's most useful here. Having someone who has been involved in several other EPM
deployments is the key to success. We're not just talking about someone who has been a user of an EPM system
but someone who has worked through some of the issues we've described above and who has a good
understanding of both the capabilities of the Microsoft EPM Solution and the process of managing projects in an
organization.
Who's who?
One of the things you'll need to decide on early is, who is the 'enterprise'? I've used that term several times in this
article but the enterprise could mean whatever you decide. Is it your department, your division, your entire
company? One common mistake made by people doing a deployment is making a plan for an entire company but
only having authority over their own division. The hope is that others will come on board if the system is available.
It's a variant on the Field of Dreams approach and it makes for a solution that's not attractive to those other
divisions and not useful for the ones who you do have authority over. So decide early who will be involved and
make sure they're included in the planning.
Make a Project Plan
Just like you would do with any other project, take the time to make a proper project plan. There are numerous
plans available online that will give you guidelines on some of the subjects that you need to cover. They're a good
place to start, but you almost certainly have all the skills required to make a proper project plan for an EPM
deployment.
Conclusion
If you are considering or have started a deployment of the Microsoft EPM Solution, focus your deployment by
considering these three points:
1. Treat this project as a project. Use all the skills you already have for managing projects to manage the
Microsoft EPM Deployment project. Remember, it's primarily a change management project, not a
technology project.
2. Break the project into manageable pieces and treat each phase of the project as a sub-project with its own
success metrics, schedule, budget and resources. You'll get some of the benefits of the overall system faster
and that will serve to get even more support from management.
3. Remember that Return on Investment has to work at every level. It's not enough to make a system that
works for senior management but doesn't work for the people who have to manage it. Or, a system that
works for the project managers but doesn't deliver the reporting required by senior management. Or, a
system that works for the project managers and senior management but is too hard or too much effort for
individual users. Each person who must invest time and energy into the use of the system should be
considered in terms of their own return on investment.
If you're designing a deployment that follows a phased approach and uses the basic project management
methodology you already have for other projects, you've got a great chance of success. Good luck and happy
planning!
This article is part of our "From the Trenches" collection. It describes challenges in different aspects of resource
management and provides suggestions on creating a resource management system.
To see more articles, see "From the Trenches" white papers.
Resource Management
Resource management is the most popular reason organizations will switch from individual project management
to enterprise project management with systems like Microsoft Office Project Server.
You'd think that would mean we'd have an extensive playbook on how to get the very best resource management
out of such systems.
If only.
Defining Resource Management
The first problem, like so many aspects of enterprise systems, is defining exactly what people mean by "resource
management". Depending on your perspective, resource management could be a number of different things.
Resource Leveling
Let's start with the purist view. This comes from those of us in the industry for more than 15 years or so. When
project management software was first made available as a commercial product, it was a critical path methodology
(CPM ) scheduling tool. There was no consideration of resources at all in those early systems. It was exciting
enough to get a schedule out of the system and then, when roll-feed plotters came out (mostly to support the
technical drawing industry), to use them to get bar chart or logic (network) diagram displays of our projects.
When resources were factored into these systems, they were to enhance the original calculations with the addition
of resources. The algorithms varied, but the intent was to ensure that any delays from insufficient numbers of
certain trades were identified long enough in advance to hire those people and get them on the job. We'll come
back to resource leveling a little later.
Critical Chain Planning
It's actually been around a long time, although I know for some people the concept of Critical Chain seems new
and is very exciting. For those who are schedule-centric, Critical Chain applies the resource constraints right into
the schedule and looks for the resource(s) that will have the most profound effect on the schedule's delivery. It is,
perhaps, what CPM should have been from the beginning, and when it's applied in the right situation, it can be
very revealing.
Resource Capacity Planning
If we expand our thinking a bit, we can include those first two definitions in a broader concept of managing the
capacity of our resources. This is, by far, the most popular concept that we are asked to deliver on in an enterprise
project management deployment. Resource Capacity Planning seeks to answer several questions for an
organization's decision makers:
Can I meet the commitments I've already made with the personnel I have?
If not, what changes in personnel would be required to meet my commitments?
If so, what excess capacity do I have to take on additional commitments?
If I'm given an additional project, can I accomplish it with my existing personnel?
If I cannot change my personnel, what will be the impact of new work I'm required to accomplish?
Resource Capacity Planning includes several concepts that must be implemented as part of your project
management processes. These include:
Resource Loading
To start the Resource Capacity Planning challenge, we can start with how much work needs to be done. (If
there's no work to be done, there's no need to manage the resources.) Having an accurate picture of how
much work each task will take and who needs to accomplish it is critical to an accurate analysis.
Skill Scheduling
In modern project management tools like Microsoft Project, we can manage the resource requirement now
just as a department or an individual but also as skills. Skill scheduling includes managing the resource
requirement but also managing the skills availability as an inventory, which seems to be more effective
overall than just managing the number of people available in each department. After all, you might have a
database management department but if the skills of your personnel are lacking in SQL Server 2008 and
that is the skill needed for the next project, then you're still lacking when it comes to getting the project done.
Resource Allocation
Who puts what resources onto the assignments? There is a process to be created to determine how resource
requirements are defined and then resolved. Should you start by requesting a category or competency of
resource? Should you make requests of individual resources in 'Proposed' mode and then have someone in
authority make them 'Committed'? Should you have different projects with proposed resources which are
kept separate? Should a project manager be able to commit resources from different departments or should
department heads have that privilege?
Resource Availability
You have the needs of the projects for resources but what resources are available? Who decides how much
time each resource will make available for project vs. non-project work? Who decides when vacations can be
taken? How will you determine how many hours of overtime can be worked a day? How will you deal with
unpaid overtime? Will it become banked time?
Resource Leveling
Once you have both the availability and the needs of the resources for your projects, comparing the two
should let you know where you're over-allocated and present the challenge of dealing with the over-
allocation. Should projects be prioritized so that some get the resources and some don't? Should some tasks
be prioritized so that some get the resources and some don't? Should you use automated resource leveling?
How about manual movement of tasks? Who will deal with reconciling a conflict where some parts of the
company are waiting for work from other parts?
Resource Contracts
This term is typically found in a matrix organization where we have department heads who manage groups of
resources and project managers who manage work that must be accomplished by those resources. The term
"Resource Contracts" refers to the negotiation between the project managers and those department heads to
commit resources to certain work. This might start as a request from the project manager for a certain person to
be available at a certain date for a certain time. The department head might reply with a counter-offer with an
option of a different person with similar skills or the person requested on a different date. The project manager
then replies with an acceptance or a counter-counter-offer and so on until the resource requirement is fulfilled.
Resource Tracking
For some organizations, the most important aspect of resource management is not the planning, it's determining
what has actually happened. "If you could just tell me what my people are actually doing with their time we'd be
much more efficient," a senior executive might say. For these organizations, the timesheet aspect of an enterprise
project management system becomes the most significant. Even without the integration back to the project plan,
the by-activity accounting still gives an enormous richness of data to management of what each task costs in terms
of effort. And it paints an interesting picture of how much time is available for project work and, more interestingly,
what time is being spent on aside from project work. When we can tie the timesheet collection back to the project
plan, then resource management can extend to budget vs. actual analysis. We can see what time was required for
each planned task, the progress on that task so far and the impact of the progress on the projected finish of that
task and any other tasks which may be affected by it.
Resource Communications
In a mega-project construction world, we used to not worry so much about resource communications. Foremen
would pick up the latest news from the project office in the morning and tell their crews what they needed to know
as they got started. In white-collar high-tech types of project environments, that's not the case at all. A project team
may now be made up of all kinds of people. Aside from the project schedulers and the resources who will do work,
you might have executive sponsors, the users, the client, sub-contractors, out-sourced developers and more. It's not
at all uncommon to now have a project team which exceeds not just the walls of your office but also the boundaries
of your organization. Communications in such an environment become much more significant. Resource
Management in this context might be just being able to effectively collaborate with all the resources implicated in
our project management process.
Resource Commitments
When we talk about project management systems, we tend to talk about a very algorithmic environment, but
managing the commitments of resources within a project is also an important aspect of getting things done.
Project team leaders need to manage the commitments they've requested and the commitments they've made. A
resource might say "I'll finish that by Friday." That's a commitment; a promise. It might be a perfect match for the
expected finish date in our schedule, and it might not. It's a commitment and that's distinct from when the
scheduling algorithm says the work should be done. Resource commitments might be managed in Outlook or
Office SharePoint Server or on a white board or in some other commitment tool, but they must be managed
somehow.
Resource Sub-Contracting
For some organizations, just managing the resources that are contracted from other companies is resource
management enough. When sub-contracts are involved, managing the promises that the sub-contractor makes
and ensuring that the contract provides the right incentive and is honored by the sub-contractor can make or break
a project.
It sounds pretty straightforward. After all, there are tools within the Microsoft EPM Solution for all these aspects of
resource management. Resource leveling, resource allocation, resource loading, skill scheduling are all referred to
in the basic functionality of Project Server or even just with Project Standard or Professional. Multi-project
resource allocation can be done with the Resource Substitution Wizard or the Team Builder in Project Server.
Resource tracking can be done with the timesheet in Project Server. Resource Contracts don't have much of an
interface by default but the whole idea of Proposed vs. Committed Resources is in that area so a more robust
interface for dealing with resource requests could be done with a web-based form with Office SharePoint Server
and tie into the functionality directly. Even Resource Sub-Contracting could be addressed with functionality from
Office SharePoint Server.
The Challenge
You may note that I've not talked about Resource Capacity Planning, and it's not because it's not possible. This is
typically the most requested aspect of an EPM deployment, but it's one of the hardest to actually deliver.
There's a fundamental challenge when we try to apply a resource leveling algorithm to a highly skilled group of
resources. In order to understand it, it's worthwhile to go back to what original designers were thinking when
resource leveling algorithms were created. I promised to come back to resource leveling and even critical chain
analysis and this is why.
When we think of the original resource leveling engines, they were designed for an engineering context. The first
project scheduling tools were written for heavy engineering and construction projects where calculations would be
done on one project at a time. Indeed, the entire organization might have been created to deliver a single project.
Original commercial tools targeted the Defense and Oil and Gas industries, which could take advantage of the
heavy volume of data these tools could manage. But, when we look at resources on such projects, we always think
of generic resources.
Resource scheduling on such a project is inevitably done by skill. A project scheduler thinks of how many
Mechanical Engineers, Electricians and Pipefitters they might need. Resource Leveling algorithms are perfect for
this question. We have a number of resources, we level the tasks, and the numbers of full-time staff can vary
upwards or downwards as need be. When we think of this for a significant number of the same type of
interchangeable resource, the algorithm works rather well.
Modern project management has extended the concepts originally created for mega projects with large numbers of
interchangeable resources and applied them all the way down to the individual level. The algorithm still seems to
work, at least in theory, and it sure works just fine in a demonstration because we only ever show one resource at a
time.
Let's take this example:
I've got a simple project here in Project Professional 2007. I've started the project with a milestone and added two
tasks which are to start right after the milestone is complete. As soon as I assign Chris to both tasks, I've got a
resource leveling problem. As you can see by the split screen, Chris is allocated to twice his availability which
makes perfect sense.
Now let's level the project using Project's Resource Leveling algorithm:
Again, things are perfect. Chris's tasks have been spread over a two week period instead of one, showing how one
of the tasks has to be delayed to a second week in order to get it all accomplished. Also, Chris is shown to be
working continuously from week one to week two.
All's well it seems until we add another resource to the calculation. Let's go back to our first situation and add a
couple of additional tasks to the project but assign them to someone else:
Now I've got two people working at once. Chris is back to his over-allocated situation (you can see both of his tasks
in week one and we've added three tasks for John who will start at the same time. John's tasks, though, are already
resource leveled because there is some sequence to them. If we're looking just at John's situation, it looks fine. John
is working continuously from week one into week two, but what happens when we apply the resource leveling
algorithm now?
Project levels Chris's time just the way it did the first time and Chris's work is continuous from week one to week
two. John, however, is going to have a full week's gap in his work as he waits for Chris to complete his second task.
It's unlikely that we'll want to have John reading the newspaper and staying idle in his cubicle for an entire week,
so it will now be up to John and Chris's supervisor(s) to manually manage how they should schedule their time.
We're only looking at the simplest example of two resources. The challenge becomes that much worse when we
have a full team to talk about, more than one project that's affected or more than one person put on each task.
This isn't a fault of Project. This is just how resource leveling works with virtually every scheduling tool on the
market that does resource leveling. First it calculates the critical path, and then it applies the resource constraints to
the schedule based on the options you've chosen. Different systems will have different options but when we apply
a resource leveling algorithm to individuals, this is where we always end up. Modern project schedulers have
learned not to apply classic resource leveling when scheduling must be done to the individual level.
This is also one of the fundamental reasons why we don't have analytical tools like Project push information into a
Resource Commitment system like Outlook. Outlook at its core could be considered a personal commitment
system. You make commitments in Outlook every day. You promise someone you'll be at an appointment next
week at 2pm. (That someone might be yourself.) You promise someone you'll complete a task by this Tuesday. We
look at Outlook today to see what tasks and appointments we need to fulfill and then use the communications
functionality of the system to respond to others about the commitments we're making or requesting.
Imagine that we would now integrate that with Project, which is, at its core, an analytical system. Moving activities
from Project or Project Server into Outlook and retrieving the progress on them is one thing. What if all of
someone's Outlook tasks were integrated back into the schedule? I might make an appointment next week to be at
the dentist for the morning. Should I now let the impact of this four-hour gap in my availability ripple through
every task I have scheduled in the future? Should all tasks be pushed four hours later? What about all the
schedules of all the people I interact with or whose tasks are affected by my four hour delay? Should the entire
company now start receiving emails saying their schedule has been pushed four hours later? But wait, I'm only one
person. What happens when everyone's Outlook commitments are affecting every task from every person in the
company? In short order, we'd have chaos.
If we are to integrate a resource commitment or resource communication tool like Outlook with a resource
capacity planning tool like Project or Project Server, we need to reconcile the philosophical differences between the
two paradigms. When the link from Project Server to Outlook was designed, this made up part of the thinking.
Outlook would be enabled to receive tasks from Project and to integrate those tasks into the Outlook calendar or
task list. "Pushing" tasks from Outlook to Project Server was not permitted.
Creating a Resource Management System
If you've made it this far, then you may be hoping I've got some advice on how to create resource management,
and I do have a few suggestions.
First of all, it's worthwhile to talk about what aspects of resource management apply to your organization and
which you can take advantage of quickly. It's quite common to find that some aspects of resource management will
be a bigger challenge to implement than others. I'm always keen to grab the low -hanging fruit first. You might be
most interested in Resource Capacity Planning, for example, but find that creating such a process and gathering all
the data to create a consistent process is a daunting challenge. Yet, you might find that implementing Resource
Tracking with a timesheet system gives you less cultural hurdles to overcome. So, start with broadening your
perspective of what Resource Management is to consider some other aspects.
If you're looking at Resource Capacity Planning, then you have to appreciate that any resource leveling algorithm is
going to have difficulties with resource definitions at the individual level. If that's so, then you can think about doing
resource leveling to the skill or generic level and leaving individual assignments to team leaders. This is often an
area of an EPM deployment that is upsetting to senior executives. For anyone who hasn't considered all the
implications, it isn't uncommon to imagine a system where analysis is done somewhere centrally and it not only
magically reconciles every individual's day-to-day calendar with their personal and corporate commitments, but
also ensures that they are working a full workday every day.
If Resource Capacity Planning is your concern, I've got an idea for you that's not suggested very often. In any high-
tech organization, skill scheduling to the individual level is very common because many people have a unique
collection of skills and knowledge that makes them particularly appropriate for certain kinds of work. If that is your
situation, then consider creating a 'Key Resource Project'. In my experience, the key resources in an organization
represent less than five percent of the total number of resources. These key resources are the people that are
essential to every project. They have that combination of skills and knowledge that is not found elsewhere, and
successful project managers know to make sure to get one of those key resources onto their projects if they want
to succeed.
A Key Resource Project would be a list of all of the tasks assigned only to those people. You would resource level
their work and let all the other resources around them be scheduled however they are by team leaders. This can be
implemented almost instantly and takes a relatively small amount of effort. Organizations who have tried this find
it often resolves much of the heartache of resource leveling without the cultural challenge and process
improvement challenges of a process that must include everyone.
It's also worthwhile to think of your solution as being more extensive than just Project Server, just like the Project
team does at Microsoft. The "Microsoft EPM Solution" after all is a stack of technology. When you consider all the
different aspects of Resource Management, then Windows SharePoint Services, Windows Workflow, Office
SharePoint Server (for forms), SQL Server all become vectors that are essential to creating an environment that is
tailored to what you need for your organization.
Learn how an Office 365 global administrator can delete a user's information from a Project Online environment.
What user data is deleted?
Delete scenarios
Process Overview
Step 1 - Download the delete script files
Step 2 - Find the Project Web App sites in your Office 365 environment
Step 3 - Find the user's Resource ID on each PWA site (optional)
Step 4 - Close and check in all of the user's projects
Step 5 - Export the users data (optional)
Step 6 - Delete user account information added through SharePoint Online
Step 7 - Delete your user's data from the PWA site
Step 8 - Clear the cache for Project client users connecting to the PWA site
IMPORTANT
We recommend running the SharePoint Online user data delete process before deleting the same user's information from
Project Online. This will prevent issues in which syncing with certain SharePoint Online items (such as Issues or Risks) will
overwrite user data in Project Online that has been deleted.
How does this differ from deleting a user through Enterprise Object Delete?
The user data delete process described in this article is different from deleting a PWA user through the Enterprise
Object Delete page in PWA Server Settings in several ways:
Enterprise Object Delete will delete the user as an enterprise resource. However, deletion is blocked if the
user/resource is any one of the following:
A project owner
A timesheet manager
On timesheet manager list
An assignment owner
In a resource plan
A workflow proxy user
Deleting user data through the steps in this article does not delete the enterprise resource. It changes the
user account to inactivate, removes the user data, and can optionally change the name of the resource to
something you choose (such as "Deleted User") .
Delete scenarios
Depending on your needs, this process allows you to delete your user data listed above, but also allows some
control of in regards to deleting the users display name in shared items, such as timesheets, projects, and
assignments. There are three delete scenarios that you can do:
Scenario 1: Delete user's information from Project Online except for the display name
In this scenario, all of the user's data is deleted, except for the user's display name.
You might choose this scenario if you want to know the work the user has done, such as through their timesheets
and tasks.
Scenario 2: Delete user's information from Project Online, but update the display name everywhere
In this scenario, all of the user's information is deleted. In all locations where the user's display name was shown, it
will be replaced with something of your choosing, such as "Deleted User". The resource ID for the user will remain.
You might choose this scenario if there is no business need to retain the user display name, even in shared records
such as timesheets and projects.
Scenario 3: Delete user's information from Project Online, but update the display name everywhere except for
timesheet records
In this scenario, all of the user's information is deleted, except in timesheet records. You can choose to replace the
user's display name with something your choose, such as "Deleted User". However, this will not affect timesheet
records, where the user name will still remain. The display name in the timesheets records is generated a new
Resource ID so that the updated user name cannot be identified through data in timesheet records.
You might choose this scenario you need to do further review of timesheet records in which the user appears.
Process Overview
The following is an overview of the process that admins need to do to delete a specific user's information in their
Project Online environment:
1. Download your PowerShell scripts: You need to download and unzip the PowerShell script files needed
in this article.
2. Find the PWA sites that contain the user's data: Find a listing of Project Web App sites in your
environment.
3. Find the user's resource ID on each PWA site (optional): On each Project Web App site, find the unique
Resource ID for the user. You can also choose to specify the user by login account (for example,
adambarr@contoso.onmicrosoft..com).
4. Close and check in all of the user's projects: This needs to happen before running the export scripts to
ensure that your changes aren't overwritten.
5. Perform an export of the user's data: This optional step is described in Export user information from
Project Online .
6. Delete user account information added through SharePoint Online (optional): This step is only
required if you need to delete a non-PWA users account information, such as a user who might have been
given access to a project site.
7. Delete your user's data from the PWA site: Run the script to delete the user's information from each
PWA site.
Through the script, you can choose to change the user's display name to something different (for example,
"Deleted User"). This is allows you to make the user anonymous, while keeping the item in which the user
information appears relatively unchanged.
8. Delete the cache for Project Professional users: After the script is completed successfully, PWA admins
need to delete the cache on each device in which Project Professional was used to open the project while
connected to the Project Online site. Clearing the cache prevents the user info from being readded to the
project if it is cached on the device.
Work with your Project Admins
Depending on your company, your Office 365 global admin might be knowledgeable about managing Office 365
administrative tasks, but may know little about Project Online administration. If this is the case, we recommend
that the Office 365 global admin work collaboratively with their PWA site admins to accomplish these tasks. For
example, a global admin would probably be best suited to run the PowerShell script to find all PWA sites, but
would probably need to work collaboratively with the PWA admin to accomplish the remaining steps and for help
regarding business rules and configuration of each PWA site.
IMPORTANT
As a best practice, make sure to backup your Project databases before deleting user data from your site. You can delete your
backup once you are sure you were successful.
Step 2 - Find the Project Web App sites in your Office 365 environment
Global admins will need to use the SharePoint Online Management Shell to connect to their SharePoint Online
Admin Center and run the Get-SPOSite PowerShell cmdlet to get a listing of URLs for each PWA site in their
Office 365 environment.
NOTE
To run the Get-SPOSite PowerShell cmdlet, you need to be either in a Global admin or SharePoint admin role.
1. In the SharePoint Online Management Shell module, connect to your SharePoint Online Admin Center with
the Connect-SPOService cmdlet:
For example:
After connecting to your SharePoint Online Admin Center, use the Get-SPOSites PowerShell cmdlet to find all
PWA sites in your Office 365 environment:
2. After connecting to your SharePoint Online Admin Center, use the Get-SPOSite PowerShell cmdlet to find all
PWA sites in your Office 365 environment:
After successfully running, a list of all PWA sites and site owners in your Office 365 environment will display.
If you want to find the user's resource ID, PWA admins need to do the following on each PWA site that you found
in the previous step:
1. In the Project Online Server Settings, in the Enterprise Data section, click Resource Center.
2. On the Resource Center page, in the ** Resource Name ** column, locate the user's name then look in that
row to see if you can find a value in the Unique ID column. This value is the user's Resource ID. For
example, in the graphic below, you can see Aaron Painter's Resource ID value listed in the Unique ID
column.
In some cases, your table may be customized so that the Unique ID column is not available. If so, select the
checkbox to the left of the user name and then click Edit located in the Resources tab in the ribbon, and
then go to the next step.
3. On the Edit Resource page for the specific user, go to the System Identification Data section and find
the value listed for the GUID. The GUID is the users resource ID for this PWA site.
NOTE
If you have multiple PWA sites, each PWA site will have a different Resource ID for the same user. Make sure to pair the
Resource ID your find for the user with the specific PWA site URL.
NOTE
Forcing a check-in of a project that is being modified by a user may result in the loss of those changes. We highly
recommend that users check in projects in the typical manner and that you use force check-in only when it is absolutely
necessary.
Users in your Office 365 environment who do not have Project Web App (PWA) accounts can also have their
name and account information in Project Online, and may want to delete it. This can happen if the user added
certain SharePoint objects to a project site. A project site is a SharePoint collaboration site that that can be created
when a project is created. SharePoint users who are not PWA users can be granted access to these collaboration
sites. When this happens, their account information is saved can be saved to PWA.. If an admin is deleting user
data in SharePoint Online, they should also look to see if they need to delete the users data in Project Online as
well if they notice any of the following in the SharePoint Online export data:
Issues associated with a project site
Risks associated with a project site
Documents associated with a project site
Deliverables associated with a project site
If the SharePoint Online user data shows any of the above, you can also delete the users account information from
the Project Online site by running the RedactProjectUser PowerShell script specifying the login account
information (since the user won't have a resource ID ):
For example, from the SharePoint Online export data, you discovered that Eva Corets (account name of
evac@contoso.com), added issues and risks to a project site that was part of a specific PWA site
(https://contoso.sharepoint.com/sites/pwa1). Running the following will update all instance of her account name to
"Deleted User" on the specific PWA site.
In the SharePoint Online Management Shell, you will be using the Invoke cmdlet to run the RedactProjectUser
script:
Invoke-RedactProjectUser
-UpdateDisplayName New display name for the user If used, RedactTimesheet is also
required.
You can use the Invoke cmdlet and parameters in the following ways:
Scenario 1: Delete user's information from a Project Online instance except for the display name
Using this command will remove the user's data from the PWA site, except for the display name. Your organization
may want to leave the user's display name for a later review in case it's in a shared item, like a task owner in a
project or an entry in a timesheet.
Note that you can specify the user either by logon name or Resource ID.
Use the logon name
Use the cmdlet the following way if you are specifying the user by logon name:
When running this command, a message will display asking you to confirm if you want to proceed.
After you confirm and the script successfully completes, a message will display stating: All data for resource
<user's display name> has been removed, except the name of the resource.
Use the Resource ID
Use the cmdlet the following way if you are specifying the user by Resource ID:
For example, the following removes all user data for the user with a resource ID of 0c7cd3fb -a0be-e111 -9fte-
00155d022d022681 throughout the https://contoso.sharepoint.com/sites/pwa site , except for the user's display
name
When running this command, a message will display asking you to confirm if you want to proceed.
After you confirm and the script successfully completes, a message will display stating: All data for resource
<user's resource ID> has been removed, except the name of the resource.
Scenario 2: Delete user's information from a Project Online instance, but update the display name everywhere
Using this command will remove the user data of a user from the Project Online instance, and will change the
user's display name to something of their choosing, and this will also occur in timesheet records. Your organization
may want to change the user's display name to something that will make the user's identity anonymous, such as
"Deleted User".
Note that you can specify the user either by logon name or Resource ID.
Use the logon name
Use the cmdlet the following way if you are specifying the user by logon name:
For example, the following will remove all user data for *evac@contoso.onmicrosoft.com* and will change his
display name to " Deleted User " throughout the https://contoso.sharepoint.com/sites/pwa site.
When running this command, a message will display asking you to confirm if you want to proceed.
After you confirm and the script successfully completes, a message will display stating: All data for resource
<user's login name> has been removed and the name of the resource has been changed to <updated display
name> everywhere including timesheet records.
Use the Resource ID
Use the cmdlet the following way if you are specifying the user by Resource ID:
For example, the following will remove all user data for the user with a resource ID of 0c7cd3fb -a0be-e111 -9fte-
00155d022d022681 and will change the display name to " Deleted User " throughout the
https://contoso.sharepoint.com/sites/pwa site.
When running this command, a message will display asking you to confirm if you want to proceed.
After you confirm and the script successfully completes, a message will display stating: All data for resource
<user's Resource ID> has been removed and the name of the resource has been changed to <updated display
name> everywhere including timesheet records.
Scenario 3: Delete user's information from a Project Web App site, but change the display name everywhere
except for timesheet records
Using this command will remove the user's data from the Project Web App site, and will change the user's display
name to something you specify, but this will not occur in timesheet records. Your organization may want to
later analyze if they have a business reason to retain the users display name in their timesheet records.
Note that you can specify the user either by logon name or Resource ID.
Use the logon name
Use the cmdlet the following way if you are specifying the user by logon name:
For example, the following will remove all data for *evac@contoso.onmicrosoft.com* and will change his display
name to " Deleted User " throughout the https://contoso.sharepoint.com/sites/pwa site, except in timesheet records.
When running this command, a message will display asking you to confirm if you want to proceed.
After you confirm and the script successfully completes, a message will display stating: After you confirm and the
script successfully completes, a message will display stating: All data for resource <user's Resource ID> has been
removed and the name of the resource has been changed to <updated display name> everywhere except for
timesheet records.
Use the Resource ID
Use the cmdlet the following way if you are specifying the user by Resource ID:
For example, the following will remove all personal data for the user with a resource ID of 0c7cd3fb-a0be-e111-
9fte-00155d022d022681 and will change the display name to "Deleted User" throughout the
https://contoso.sharepoint.com/sites/pwa site, except in timesheet records.
.\Invoke-RedactProjectUser.ps1 -Url https://contoso.sharepoint.com/sites/pwa -ResourceId 0c7cd3fb-a0be-e111-
9fte-00155d022d022681 -UpdateDisplayName "Deleted User" -RedactTimesheet $false
When running this command, a message will display asking you to confirm if you want to proceed.
After you confirm and the script successfully completes, a message will display stating: All data for resource
<user's login name> has been removed and the name of the resource has been changed to <updated display
name> everywhere except for timesheet records.
Step 8 - Clear the cache for Project client users connecting to the PWA
site
On all devices on which Project Professional or the Project Online Desktop Client connected to the Project Online
instance, an IT admin needs to clear the cache. Clearing the cache will prevent projects in which user information
was deleted from being updated from cached data that remains on the system. You also need to make sure that
none of the user's projects are open on the client before clearing the cache.
To clear the cache in Project Professional 2016 and the Project Online Desktop Client:
1. Select the File menu, and then click Options.
2. On the Project Options page, select Save.
3. In the Cache section, select Clean Up Cache.
See Also
Export user data from Project Online
Project Online export json object definitions
Export user data from Project Online
4/5/2019 • 15 minutes to read • Edit Online
Your organization can export a specific user's content from your Project Online environment. To export this
content, an Office 365 global administrator can follow these steps:
Step 1 - Download the export script files
Step 2 - Find all Project Web App sites in your Office 365 environment
Step 3 - Find the user's Resource ID in each PWA site (optional)
Step 4 - Export your user's data from the PWA site
Step 5 - Review your exported content
Step 6 - Find and save custom views, custom filters, attachments, and macros
Considerations for master and inserted projects
Considerations for Project Home favorite and recently viewed projects
Work with your Project Admins
Depending on your company, your Office 365 global admin might be knowledgeable about managing Office 365
administrative tasks, but may know little about Project Online administration. If this is the case, we recommend
that the Office 365 global admin work collaboratively with their PWA site admins to accomplish these tasks. For
example, a Office 365 global admin would probably be best suited to run the PowerShell script to find all PWA
sites, but would probably need to work collaboratively with the PWA admin to accomplish the remaining steps
and for help regarding business rules and configuration of each PWA site.
NOTE
If you only have access to unzipped files, you can also unblock each file individually.
Step 2 - Find all Project Web App sites in your Office 365 environment
Global admins will need to use the SharePoint Online Management Shell to connect to their SharePoint Online
Admin Center and run the Get-SPOSite PowerShell cmdlet to get a listing of URLs for each PWA site in their
Office 365 environment.
NOTE
To run the Get-SPOSite PowerShell cmdlet, you need to be either in a Global admin or SharePoint admin role.
1. In the SharePoint Online Management Shell module, connect to your SharePoint Online Admin Center with
the Connect-SPOService cmdlet:
For example:
2. After connecting to your SharePoint Online Admin Center, use the Get-SPOSite PowerShell cmdlet to find all
PWA sites in your Office 365 environment:
After successfully running, a list of all PWA sites and site owners in your Office 365 environment will display.
If you want to find the user's resource ID, PWA site admins can to do the following on each PWA site that you
found in the previous step:
1. In the Project Online Server Settings, in the Enterprise Data section, click Resource Center.
2. On the Resource Center page, in the ** Resource Name ** column, locate the user's name then look in
that row to see if you can find a value in the Unique ID column. This value is the user's Resource ID. For
example, in the graphic below, you can see Aaron Painter's Resource ID value listed in the Unique ID
column.
In some cases, your table may be customized so that the Unique ID column is not available. If so, select the
checkbox to the left of the user name and then click Edit located in the Resources tab in the ribbon, and
then go to the next step.
3. On the Edit Resource page for the specific user, go to the System Identification Data section and find
the value listed for the GUID. The GUID is the users resource ID for this PWA site.
NOTE
If you have multiple PWA sites, each PWA site will have a different Resource ID for the same user. Make sure to pair the
Resource ID your find for the user with the specific PWA site URL.
Parameter Description
You can chose to run the script either by specifying the user's Resource ID or login name.
To run the ExportProjectUser script using the users Resource ID
You would use the following command in PowerShell with the parameters listed above:
.\ExportProjectUserContent.ps1 -Url <PwaSiteURL> -ResourceUid <UsersResourceID> -OutputDirectory
<LocationToStoreOutput>
For example, if you want to export user data from the Costoso PWA1 site (site URL of
https://contoso/sites/pwa1) for a user with a Resource ID of cb5c91cf-fd6b-e711-80d0-00155da4a406, and have
the export files save to c:\pwa1siteOutput, you would enter:
For example, if you want to export user data from the Costoso PWA1 site (site URL of
https://contoso/sites/pwa1) for a user with a Login Name of AdamB@contoso.onmicrosoft.com, and have the
export files save to c:\pwa1siteOutput, you would enter:
After the script runs successfully, all exported data will be stored in the -OutputDirectory you specified.
Select specific feature -related user data files to export
Some of the exported user content you receive will include a number of json formatted files that includes feature-
specific user information. For example, the Security.json file contains data about the user's security groups,
categories, and permissions settings. These feature-related json files are described in more detail in the next
section. By default, you will receive all 27 feature-related json files when you run the ExportProjectUserContent
script. However, you can use the -Options parameter to select specific json files to download. These include the
following:
All All feature-related json files, all project-specific json files, and
all project-list files.
Security Security.json
StatusReports StatusReports.json
-OPTIONS VALUES JSON FILES YOU RECEIVE
Engagements Engagements_page#.json
UserViewSettings UserViewSettings.json
Using the -Options parameter can be helpful if you want to export user data from the PWA site for specific
features. For example, if you are only concerned with your user's data in the Portfolio Analysis feature, you can
run the -Options parameter with the value of Portfolio:
This will allow you to export the three json files that contain your user's data that pertains to the Portfolio
Analysis feature (BusinessDrivers.json, DriverPrioritizations.json, PortfolioAnalyses.json).
Name Description
DraftProjectList.xml List of projects from the Draft schema that corresponds to
the conditions above.
The list of projects may differ slightly for each of the three .xml files. For example, a user can save the project but
not publish, meaning that it will appear in the DraftProjectList.xml file, but not the PublishedProjectList.xml or
ReportingProjectList.xml files.
A project admin can use the Project list .xml files to give them information about which project-specific export
files they be interested in analyzing to decide how much of the exported content should be shared with the user.
All three of the ProjectList.xml files will have the following properties for each project listed:
Property Description
SiteId The unique identifier for the PWA site in which the project
exists.
Feature-related files - For each PWA site that the user is part of, the following feature-specific .json files
will be exported to the specified output directory. The feature-specific files will contain user data as it
pertains to the feature use throughout the PWA site. For example, the Drivers.json file will include data
about Portfolio Analysis business drivers the user created or owned. If the user has no data relating to the
feature on the specific PWA site, the file will contain no data.
The feature-specific .json files include:
NAME DESCRIPTION
QueueJobs Data about user jobs process through the Queue Service.
Certain feature-specific json files have the possibility of being large, so to improve performance, the following
json files will spawn across multiple files:
Engagements.json
ResourcePlans.json
Timesheets.json
TaskStatus_AssignmentHistory.json
NOTE
To learn more about the objects contained in each of the feature-specific .json files, see the Feature-specific data
section of Project Online export json object definitions.
Project-specific files - If the user is part of any project, then for each of those projects, several individual
files will be exported to the output directory. This will happen if the user is part of the specific project as
one of the following:
The project owner
Has a task assigned to him or her in the project
Is an assignment owner of a task in the project
Is the status manager of a task in the project
Project-specific data differs from the Feature-related data in that the data is specific to a single
project. Feature-related data can include user data across many projects in the PWA site that the
user was a part of, but pertaining to a single feature.
NOTE
For all project-specific files you receive, they will be prefixed with the specific project's Project Name. For
example, if a project has a Project Name of Project1, all project-specific files we describe in this section will
be prefixed with Project1.
For each project the user is a part of, you will received the following three sets of files:
- An .xml file for the project from the draft and published databases:
Name Description
<projectName>_draft.xml The project file from the draft schema saved as .xml format.
<projectName>_published.xml The project file from the published schema saved as .xml
format.
NOTE
See the Project XML Data Interchange Scheme Reference to understand the Project XML data contained in these files.
- An .mpp file for the project from the draft and published databases:
Name Description
<projectName>_draft.mpp The project file from the draft schema saved as a Project .mpp
file.
<projectName>_published.mpp The project file from the published schema saved as a Project
.mpp file.
NOTE
You can open the .mpp file with Project Professional 2019, Project Professional 2016, or the Project Online Desktop client.
- Eight .json files for the project from the reporting schema:
NAME DESCRIPTION
Reporting_AssignmentBaselineTimephased Assignment Baseline Timephase data for the project from the
reporting schema.
Reporting_ProjectBaseline Project Baseline data for the project from the reporting
schema.
Reporting_Tasks Project tasks data for the project from the reporting schema.
Reporting_Assignments Assignment resources data for the project from the reporting
schema.
Reporting_Resources Resources data for the project from the reporting schema.
Reporting_TaskBaselineTimephased Task baseline timephased data for the project from the
reporting schema.
Reporting_TaskTimephased Task timephased data for the project from the reporting
schema.
NOTE
To learn more about the objects contained in each of the .json files, see the Project-specific user data from the reporting
data section of Project Online export json object definitions.
- Three .json files with the project's metadata from the draft, published, and reporting schemas:
Name Description
NOTE
To learn more about the objects contained in each of the .json files, see the Project-specific Metadata files section of Project
Online export json object definitions.
Step 6 - Find and save custom views, custom filters, attachments, and
macros
After receiving the exported user content, you can use your data to find the user's custom views, custom filters,
custom tables, attachments, and macros. To find these, you will need to have the MPP and XML file for each
project in which you want to search. For more information on how to do this, see Find customized user items in
Project Online and Project Server user export data.
See Also
Project Online export json object definitions
Delete user data from Project Online
Find customized user items in Project Online and
Project Server user export data
7/26/2018 • 4 minutes to read • Edit Online
This article describes how to search for a specific users customized items (views, filters, attachments, tables, and
macros) in a project when you do an export of the users data in Project Online or Project Server. This includes:
To find and save customized views
To find and save customized filters
To find and save attachments
To find and save customized tables
To find and save user macros
The procedures in this article require you to have the following:
The MPP file for the project
The XML file for the project
For Project Online, both files were provided to you when you exported the user data through the procedures in
Export user data from Project Online.
For Project Server, you will need to save the specific project file to XML format to create the XML file.
NOTE
When saving a project file to XML format with Project Professional, make sure that you have applied the latest updates.
<View>
<Name>Task Sheet</Name>
<IsCustomized>true</IsCustomized>
</View>
4. Now open the project's MPP file in the Project Online Desktop Client or Project Professional 2016.
5. Click the View menu to open the ribbon, and in the ribbon select the ** Other View ** dropdown menu, and
then click More Views.
6. In the ** More Views ** window, in the Views list, select the view you are looking for, and then click Apply.
7. The selected view will display. Take a screenshot of the view and save it.
8. Use the same procedure for all remaining custom views you found in the XML file.
You can repeat this procedure on each project in which you want to search for your user's customized views.
<Filters>
<Name>Active Tasks</Name>
<IsCustomized>true</IsCustomized>
</Filter>
4. To save the view, open the project's MPP file in the Project Online Desktop Client or Project Professional
2016.
5. Click the View menu, and in the ** Filters ** dropdown menu, select More Filters.
6. In the ** More Filters ** menu, select the filter you are looking for, and then click ** Edit **.
7. The filter definition for the selected filter will display. You can take a screenshot of the filter definition and
save it.
8. Use the same procedure for all remaining custom filters you found in the XML file.
You can repeat this procedure on each project in which you want to search for your user's customize filters.
<Task>
<UID>18</UID>
<NoteContainsObjects>true</NoteContainsObjects>
</Task>
4. To save the attachment, open the project's MPP file in the Project Online Desktop Client or Project
Professional 2016.
5. Click the Tasks menu, and open the task associated with the attachment (for example, task #18).
6. In the Task Information screen, select the Notes tab. You should see the attachment item listed.
7. Open the attachment item and save it.
8. Use the same procedure for all remaining attachments you found in the XML file.
You can repeat this procedure on each project in which you want to search for your user's attachments.
<Tables>
<Table>Entry</Name>
<IsCustomized>true</IsCustomized>
</Table>
4. Now open the project's MPP file in the Project Online Desktop Client or Project Professional 2016.
5. Click the View menu to open the ribbon, and in the ribbon select the Tables dropdown menu, and then
click More Tables.
6. In the ** More Tables ** window, in the Tables list, select the table you are looking for, and then click Edit.
7. The Table definition will display for the selected table. Take a screenshot of all the information in the
definition window and save it.
8. Use the same procedure for all remaining customized tables you found in the XML file.
You can repeat this procedure on each project in which you want to search for your user's customized tables.
To find and save user macros
NOTE
A project's XML files will not flag if it contains VBA macros. You will need to manually open the user's projects to verify if it
contains a VBA macro.
1. Open the project's MPP file in the Project Online Desktop Client or Project Professional 2016.
2. Click the View menu to open the ribbon, and in the ribbon select the Macros dropdown menu, and then
click View Macros.
3. On the Macros page, select Visual Basic to open the Visual Basic Editor.
4. In the Visual Basic editor, you can save each of the users custom VBA files.
You can repeat this procedure on each project in which you want to search for your user's customize macros.
See also
Export user data from Project Online
Export user data from Project Server
Project Online and Project Server export data
definitions
12/17/2018 • 125 minutes to read • Edit Online
This technical reference article describes the data objects and properties contained in the output files you receive
when using the user data export method described in Export user data from Project Online and in Export user
data from Project Server . This article will include short descriptions of the objects and properties you will find in
the output data.
We can group the user data output your receive from both Project Online and Project Server into the following:
Project lists: A list of projects that the user was a part of in the Project Web App (PWA) site.
Feature-specific data: Feature in the PWA site in which the user might have data.
Project-specific user data from the reporting data: Detailed data about a user's project in the PWA site.
Project-specific Metadata files: Project metadata about a user's project in the PWA site.
Project lists
You will receive three lists of projects contained in the Project Draft, Published, and Reporting schemas. All the
projects in the lists were projects the user was a part of. This means the user was involved in the project as at least
one of the following:
Was the project owner.
Has a task assigned to him or her in the project.
Is an assignment owner of a task in the project.
Is the status manager of a task in the project.
This data includes:
List of projects from the Draft schema that corresponds to the conditions above.
List of projects from the Published schema that corresponds to the conditions above.
List of projects from the Reporting schema that corresponds to the conditions above.
The list of projects may differ slightly for each of the three files. For example, a user can save the project and not
publish, meaning that it will appear in the Draft projects list, but not the Published or Reporting projects lists.
A project admin can use the Project list files to give them information about which project-specific export files
they may be interested in analyzing to decide how much of the exported content should be shared with the user.
All three of the ProjectList files will have the following properties for each project listed:
Property Description
SiteId The unique identifier for the PWA site in which the project
exists.
Proj_UID The unique identifier for the project.
Feature-specific data
The export method defined in Export user data from Project Online creates the following feature-related .json files
that checks for a specific user's data in features used in Project Online. If no data is found for the user in that
feature, the corresponding .json file will be empty.
The export method defined in Export user data from Project Server queries for feature-related data through SQL
scripts run against the Project Server databases.
The feature areas for both Project Online and Project Server include the following. Click on the feature name in
the table to see brief definitions of the objects and properties you may see in the data you export data you receive
about the user.
NAME DESCRIPTION
QueueJobs Data about user jobs process through the Queue Service.
AdminAudit
AdminAudit contains data about Project Web App server settings that the user changed. Each AdminAuditData
object will have the following properties:
Property Description
ResourceUid Unique identifier for the resource that made the setting
change.
ResourceName Name for the resource that made the setting change.
BusinessDrivers
BusinessDrivers contains data about Portfolio Analysis business drivers that the user created or modified. Each
Drivers object will have the following properties:
PROPERTY DESCRIPTION
ModifiedDate Date and timestamp of when the driver was last modified.
Each Drivers object can have Department objects, which have the following properties.
Property Description
Calendars
Calendars contains data about enterprise calendars that are currently checked out by the user. Each
CalendarData object will have the following properties:
Property Description
CustomFields
CustomFields contains data about custom fields that are currently checked out by the user. Each
CustomFieldData object will have the following properties:
Property Description
CheckOutDate Time and date the custom field was last checked out.
Delegations
Delegations contains data about delegations that the user is involved in. The user can either be the delegate or the
person who requests for the delegation. Each DelegationData object will have the following properties:
Property Description
DriverPrioritizations
DriverPrioritizations contains data about business driver prioritizations that the user created or modified. Each
Prioritizations object may have the following properties:
PROPERTY DESCRIPTION
ModifiedDate Date and time when the prioritization was last updated.
Property Description
Property Description
Engagements
Engagements contains data about resource engagements that the user created or modified, or was requested as a
resource. Each Engagement object will have the following properties:
Property Description
ProjectID Unique identifier for the project for which the engagement
was requested.
Each Engagements object can contain multiple EngagementSegments, which may have the following
properties:
Property Description
SegmentType 0- Committed
1- Proposed
2- Draft
3- Rejected
Each Engagements object can contain EngagementComments, which may have the following properties:
Property Description
Property Description
CheckOutDate Time and date the lookup table was last checked out.
PortfolioAnalysis
PortfolioAnalysis contains data about Portfolio Analyses that the user created or modified. Each Analyses object
will have the following properties:
Property Description
HardConstraintCustomFieldID Unique identifier for the custom field selected as the primary
cost constraint.
ModifiedByResourceID Unique identifier for the resource that last modified the
analysis.
ModifiedByResourceName Name of the resource that last modified the analysis.
CreatedByResourceId Unique identifier for the resource that created the analysis.
FilterResourcesByRBSValueId The identifier of the RBS value being used for filtering.
FilterResourcesByRBSValueText The actual text of the RBS value being used for filtering.
UseAlternateProjectDatesForResourcePlans True if alternate project dates are used for resource plans.
AlternateProjectStartDateCustomFieldId The GUID for a custom field that contains an alternate start
date for a portfolio analysis.
AlternateProjectEndDateCustomFieldId The GUID for a custom field that contains an alternate end
date and time for a portfolio analysis.
ForcedInAliasLookupTableName Name of the internal lookup table used for forcing in projects
ForcedOutAliasLookupTableId Identifier of the internal lookup table used for forcing out
projects.
ForcedOutAliasLookupTableName Name of the internal lookup table used for forcing out
projects
ProjectData Dataset link for more information about the project on which
the analysis was done.
For Optimizer Solutions, CostConstraintProject objects can have the following properties:
Property Description
HardConstraintValue Value of the project for the custom field select as a hard
constraint.
For Optimizer Solutions, CostConstraintScenario objects can have the following properties:
Property Description
CreatedByResourceId Identifier for the resource that created the cost constraint
scenario.
CreatedByResourceName Name for the resource that created the cost constraint
scenario.
ModifiedByResourceId Identifier for the resource that modified the cost constraint
scenario.
For Planner Solutions, ResourceConstraintProject objects can have the following properties:
Property Description
ForceAliasLookupTableName Name of the internal lookup table used for forcing in projects.
HardConstraintValue Value of the project for the custom field select as a hard
constraint.
For Planner Solutions, ResourceConstraintScenario objects can have the following properties:
Property Description
AllocationThreshold The percentage number between 0 and 100 that specifies the
minimum threshold that is required for a resource to be
allocated to a project.
CreatedByResourceId Identifier for the resource that created the cost constraint
scenario.
CreatedByResourceName Name for the resource that created the cost constraint
scenario.
ModifiedByResourceId Identifier for the resource that modified the cost constraint
scenario.
QueueJobs
QueueJobs contains data about jobs that were created by the user through the Queuing service. Each
QueueData object may have the following properties:
Property Description
CorrelationId Unique identifier for jobs that are part of a correlation with
other jobs.
ProcessingDate Date and time the queue job began processing through the
Queue service.
CompletedDate Date and time the queue job was processed through the
Queue service.
ReadyForProcessingDate Date and time the queue job was ready to be picked up for
processed through the Queue service.
ReminderEmails
ReminderEmails contains data about email reminder notifications for the user. Each ReminderEmailData object
will have the following properties:
Property Description
ReportingResource
ReportingResource contains data about reporting resources. Each ReportingResourceData object may have the
following properties:
Property Description
ResourceCreatedDate The date and time that a resource was created in the project.
ResourceModifiedDate The date that information about a resource was last modified.
PROPERTY DESCRIPTION
PROPERTY DESCRIPTION
TimeByDay A primary key that identifies the day along a timeline. The
granularity is in days only.
Property Description
AssignmentOvertimeCost The sum of the actual and remaining overtime cost of the
assignment.
AssignmentActualCost The costs incurred for work that has already been performed
on an assignment, along with any other associated costs.
AssignmentActualOvertimeCost The costs incurred for overtime work that has already been
performed on an assignment.
AssignmentActualOvertimeWork The actual amount of overtime work that has already been
performed on an assignment.
AssignmentMaterialActualWork The actual amount of work that has already been performed
with the use of a material resource, usually expressed as a
percentage of the scheduled amount of material resource
work.
IsPublic True if the item was published, so a team member can see it.
AssignmentCostVariance The difference between the cost and baseline cost for a
resource.
TaskIsActive True if the task for the assignment timephased data is active.
Resource
Resource contains data about the resource. Each ResourceData object may have the following properties:
Property Description
UserClaimsAccount User's claims account (same as the Office 365 account when
using Project Online).
ResourcePhonetics The phonetic spelling of the resource name. For use with
Japanese only.
ResourceAvailableFrom The starting date that a resource is available for work at the
units specified for the current time period.
ResourceAvailableTo The end date that a resource is available for work at the units
specified for the current time period.
ResourceCostPerUse The cost that accrues each time a work resource is used.
ResourceModifiedDate The date that information about a resource was last modified.
CheckedOutDate Time and date the resource was last checked out.
Property Description
ResourceUID Unique identifier for the resource for which the user is the
default assignment owner.
Each ResourceData object may also have a collection of CustomFields. Each CustomFields object may contain
the following properties:
Property Description
ResourcePlans
ResourcePlans contains data about resource plans the user created, modified, or was a part. For each
ResourcePlans object, you will see the following properties:
Property Description
ResourcePlanUtilizationDate The start date and time for use of the resource plan.
ResourcePlanCheckedOutById Resource ID of the user that checked out the resource plan.
ResourcePlanCheckedOutByName Name of the user that checked out the resource plan.
ResourcePlanModDate Date and time the resource plan was last updated.
Property Description
AssignmentStartVariance The variance of the assignment start date from the baseline
start date.
AssignmentFinishVariance The variance of the assignment finish date from the baseline
finish date.
AssignmentDelay The amount of time a resource is to wait after the task start
date before starting work on an assignment.
AssignmentDelayFMT The format for expressing the duration of the delay. Values
are: 3=m, 4=em, 5=h, 6=eh, 7=d, 8=ed, 9=w, 10=ew,
11=mo, 12=emo, 19=%, 20=e%, 21=null, 35=m, 36=em,
37=h, 38=eh, 39=d, 40=ed, 41=w, 42=ew, 43=mo, 44=emo,
51=%, 52=e% and 53=null.
AssignmentMaterialRateFMT Indicates the units in which the bid is expressed in the project.
AssignmentRTFNotes Notes that are associated with the specified assignment, and
that are stored in Rich Text Format.
A ResourcePlanAssignments object can have a collection of Assignments. Each Assignments object may
contain the following properties:
Property Description
Rules
Rules contains data about approval rules defined by status manager to approve certain task updates. Each
RulesData object can have the following properties:
Property Description
RuleManagerUid Unique identifier for the Status Manager Owner of the rule.
RuleConditionType If extra filtering is done in this rule this filed will have one of
the values: None, Compare with fix string, or Compare with
Database Column.
Operator Operator (can be Equal, Not Equal, Less Than, Greater Than,
Less Than or Equal, Greater Than, or Equal).
ValueType Type of right side of the filter (can be string, int, double, date,
bool).
IncludesAllProjects True if this rule applies to updates made in all projects, false
otherwise.
IncludesAllResources True if this rule applies to updates made by all resources, false
otherwise.
Property Description
Security
Security provides security data about your user. It will only include data about your user if the PWA site is using
Project Server permissions mode.
It includes:
SecurityData: Account information about the user.
GroupData: Project security groups in that the user was associated with.
CategoryData: Security categories that the user was associated with.
PermissionData: Global permission settings for your user.
A ResourceData object may have the following properties:
Properties Description
Property Description
Property Description
Property Description
Property Description
AllowOption If True, Allow was selected for permission for the user.
DenyOption If True, Deny was selected for permission for the user.
StatusReports
StatusReports contains data about status reports that the user created or received as a status report manager. For
each StatusReports object, you will see the following properties:
PROPERTIES DESCRIPTION
ModifiedDate Date and time when the request was last updated.
PROPERTIES DESCRIPTION
ModifiedDate Date and time when the response was last updated.
PROPERTIES DESCRIPTION
FrequencyPart2 Due days or day of the month, or day of the week, or week of
the month for the status report.
FrequencyPart3 Due month or day of the week for the status report.
PROPERTIES DESCRIPTION
ModifiedDate Date and time when the request was last updated.
SubscribedReminders
SubscribedReminders contains data about reminders subscribed to by the user. For each
SubscribedReminderData object, you will see the following properties:
Property Description
PROPERTIES DESCRIPTION
ApprovalType The action taken by the status manager regarding the status
update: Approve or Reject.
ErrorStatus In case the status update couldn't be applied to the plan this
will tell you the error encountered.
PROPERTIES DESCRIPTION
PROPERTIES DESCRIPTION
TaskStatus_AssignmentsSaved
TaskStatus_AssignmentsSaved contains data about status reports that the user created or received as a status
report manager. This file will contain a collection of Tasks objects, which may have the following properties:
PROPERTIES DESCRIPTION
TaskFinishVariance The variance of the task finish date from the baseline finish
date as minutes x 1000.
TaskStartVariance The difference between the baseline start and the actual start.
TaskIsSubprojectScheduledFromFinish Gets a value that indicates whether a subproject for this task
is set to schedule from finish.
TaskBarIsHidden True if the GANTT bar of the task is hidden when displayed in
Microsoft Office Project.
TaskIsSubprojectReadOnly Gets a value that indicates whether a subproject for this task
is read-only.
TaskScheduledDurationFormat Gets the total span of active working time for the task as
entered or as calculated based on the start date, the finish
date, calendars, and other scheduling factors.
PROPERTIES DESCRIPTION
TaskConstraintType The constraint on the start or finish date of the task. Values
are: 0=As Soon As Possible, 1=As Late As Possible, 2=Must
Start On, 3=Must Finish On, 4=Start No Earlier Than, 5=Start
No Later Than, 6=Finish No Earlier Than and 7=Finish No
Later Than.
TaskLevelingDelayFormat The format for expressing the duration of the delay. Values
are: 3=m, 4=em, 5=h, 6=eh, 7=d, 8=ed, 9=w, 10=ew,
11=mo, 12=emo, 19=%, 20=e%, 21=null, 35=m, 36=em,
37=h, 38=eh, 39=d, 40=ed, 41=w, 42=ew, 43=mo, 44=emo,
51=%, 52=e% and 53=null.
TaskType The type of task. Values are: 0=Fixed Units, 1=Fixed Duration,
2=Fixed Work.
TaskFixedCostAccrual How the fixed cost is accrued against the task. Values are:
1=Start, 2=Prorated and 3=End.
TaskDeadline The final desired point in a task's time length that the task
must be completed by.
TaskOvertimeCost The sum of the actual and remaining overtime cost of the
task.
TaskRTFNotes Notes that are associated with the specified task, and that are
stored in Rich Text Format.
TaskUpdatesConflict True if the Project Manager updated this task and the
updates might conflict with updates made by a team member.
TASK_IS_ROLLUP_ASSN Indicates whether the task has rollup data for the assignment.
TASK_LOCKDOWN_BY_MANAGER True if this task will not accept updates from team members.
TaskCPI The CPI (cost performance index) fields show the ratio of
budgeted (or baseline) costs of work performed to actual
costs of work performed.
TaskSV The cost difference between the current progress and the
baseline plan of a task.
TaskTCPI The TCPI (to complete performance index) field shows the
ratio of the work remaining to be done to funds remaining to
be spent, as of the status date.
TaskWorkVariance The variance of task work from the baseline task work as
minutes x 1000.
PROPERTIES DESCRIPTION
TaskWinprojUniqueId Indicates the unique identifier for the task used in Project
client.
TaskDispSumary The value of the property should be false. Reserved for future
use.
TaskDurationFormat The format for expressing the duration of the task. Values are:
3=m, 4=em, 5=h, 6=eh, 7=d, 8=ed, 9=w, 10=ew, 11=mo,
12=emo, 19=%, 20=e%, 21=null, 35=m, 36=em, 37=h,
38=eh, 39=d, 40=ed, 41=w, 42=ew, 43=mo, 44=emo,
51=%, 52=e% and 53=null.
Each Tasks object may have a collection of Assignments objects, which may have the following properties:
Object Description
Each Assignments object may have a collection of Timephased objects, which may have the following
properties:
PROPERTIES DESCRIPTION
Each Assignments object may have a collection of CustomFields objects, which may have the following
properties:
Property Description
Type Type of the custom field (can be number, text, cost, duration,
date, fals, finish date, start date, etc.).
IndicatorValue Specifies the value of the custom field if the type of custom
field is "indicator".
TaskStatus_AssignmentsSubmitted
TaskStatus_AssignmentsSubmitted contains data about status reports that the user. This file will contain a
collection of Tasks objects, which may have the following properties:
PROPERTIES DESCRIPTION
TaskFinishVariance The variance of the task finish date from the baseline finish
date as minutes x 1000.
TaskIsSubprojectScheduledFromFinish Gets a value that indicates whether a subproject for this task
is set to schedule from finish.
TaskBarIsHidden True if the GANTT bar of the task is hidden when displayed in
Microsoft Office Project.
TaskIsSubprojectReadOnly Gets a value that indicates whether a subproject for this task
is read-only.
TaskScheduledDurationFormat Gets the total span of active working time for the task as
entered or as calculated based on the start date, the finish
date, calendars, and other scheduling factors.
TaskConstraintType The constraint on the start or finish date of the task. Values
are: 0=As Soon As Possible, 1=As Late As Possible, 2=Must
Start On, 3=Must Finish On, 4=Start No Earlier Than, 5=Start
No Later Than, 6=Finish No Earlier Than and 7=Finish No
Later Than.
TaskLevelingDelayFormat The format for expressing the duration of the delay. Values
are: 3=m, 4=em, 5=h, 6=eh, 7=d, 8=ed, 9=w, 10=ew,
11=mo, 12=emo, 19=%, 20=e%, 21=null, 35=m, 36=em,
37=h, 38=eh, 39=d, 40=ed, 41=w, 42=ew, 43=mo, 44=emo,
51=%, 52=e% and 53=null.
TaskType The type of task. Values are: 0=Fixed Units, 1=Fixed Duration,
2=Fixed Work.
TaskFixedCostAccrual How the fixed cost is accrued against the task. Values are:
1=Start, 2=Prorated and 3=End.
TaskDeadline The final desired point in a task's time length that the task
must be completed by.
TaskOvertimeCost The sum of the actual and remaining overtime cost of the
task.
TaskRTFNotes Notes that are associated with the specified task, and that are
stored in Rich Text Format.
TaskUpdatesConflict True if the ProjectManager updated this task and the updates
might conflict with updates made by a team member.
TASK_IS_ROLLUP_ASSN Indicates whether the task has rollup data for the assignment.
TASK_LOCKDOWN_BY_MANAGER True if this task will not accept updates from team members.
TaskCPI The CPI (cost performance index) fields show the ratio of
budgeted (or baseline) costs of work performed to actual
costs of work performed.
PROPERTIES DESCRIPTION
TaskSV The cost difference between the current progress and the
baseline plan of a task.
TaskTCPI The TCPI (to complete performance index) field shows the
ratio of the work remaining to be done to funds remaining to
be spent, as of the status date.
TaskWorkVariance The variance of task work from the baseline task work as
minutes x 1000.
TaskWinprojUniqueId Indicates the unique identifier for the task used in Project
client.
TaskDispSumary The value of the property should be false. Reserved for future
use.
TaskDurationFormat The format for expressing the duration of the task. Values are:
3=m, 4=em, 5=h, 6=eh, 7=d, 8=ed, 9=w, 10=ew, 11=mo,
12=emo, 19=%, 20=e%, 21=null, 35=m, 36=em, 37=h,
38=eh, 39=d, 40=ed, 41=w, 42=ew, 43=mo, 44=emo,
51=%, 52=e% and 53=null.
Each Tasks object may have a collection of Assignments objects, which may have the following properties:
Object Description
AssignmentActualCostOfWorkPerformed Gets the actual cost of work performed (ACWP) for the
assignment to date.
AssignmentStartVariance The variance of the assignment start date from the baseline
start date.
AssignmentFinishVariance The variance of the assignment finish date from the baseline
finish date.
AssignmentDelayFormat The format for expressing the duration of the delay. Values
are: 3=m, 4=em, 5=h, 6=eh, 7=d, 8=ed, 9=w, 10=ew,
11=mo, 12=emo, 19=%, 20=e%, 21=null, 35=m, 36=em,
37=h, 38=eh, 39=d, 40=ed, 41=w, 42=ew, 43=mo, 44=emo,
51=%, 52=e% and 53=null.
AssignmentMaterialRateFormat Indicates the units in which the bid was expressed in the
project.
AssignmentOvertimeCost The sum of the actual and remaining overtime cost of the
assignment.
AssignmentLastWork The scheduled work from the last update from Project.
HistoryNotes
AssignmentNeedUpdatesSubmitted True if there are saved update from team members for this
assignment.
AssignmentSendUpdatesDate The date and time that an assignment update was sent by
the resource to a manager.
AssignmentNotes The notes that are entered in the assignment details dialog
box.
AssignmentCostVariance The difference between the cost and baseline cost for a
resource.
Each Assignments object may have a collection of CustomFields objects, which may have the following
properties:
Property Description
Type Type of the custom field (can be number, text, cost, duration,
date, fals, finish date, start date, etc.).
DurationFormat Specifies the display format for the value if type is "duration".
IndicatorValue Specifies the value of the custom field if the type of custom
field is "indicator".
Timesheets
Timesheets contains data about timesheets the user owns or is a part of. For each timesheet, you will see the
following objects:
Object Description
StatusID The value associated with the timesheet status (see Status).
ModifiedDate The date and time that the timesheet was last modified.
CreatedDate The date and time that the timesheet was created.
A Timesheets object can have a collection of Lines objects, which may have the following properties:
Property Description
CreatedDate Time and date of when the line item was created.
ModifiedDate Time and date of when the line item was last modified.
TimesheetLineStatusId Unique identifier for the timesheet line status (see the
corresponding TimesheetLineStatus value).
Each Lines object can have a collection of Actuals objects. Each Actuals object may have the following
properties:
Property Description
ActualOvertimeWorkBillable The actual billable overtime work that has already been
performed by resources assigned to tasks.
ActualOvertimeWorkNonBillable The actual non-billable overtime work that has already been
performed by resources assigned to tasks.
CreatedDate The date and time that the timesheet actual was created.
A Lines object can have a collection of CustomFields objects, which may have the following properties:
Property Description
Timesheets_Reporting
Timesheets_Reporting contains timesheet data for the user from the reporting schema. For each Timesheets
object, you will see the following properties:
Property Description
Each Timesheets object can have a collection of Line objects. Each Line object may have the following
properties:
Property Description
ActualOvertimeWorkNonBillable The actual non-billable overtime work that has already been
performed by resources assigned to tasks.
CreatedDate Time and date of when the line item was created.
ModifiedDate Time and date of when the line item was last modified.
TimesheetClassType The type of the timesheet class (for example, sick time or
vacation time).
Each Timesheets object can have a collection of Actuals objects. Each Actuals object may have the following
properties:
Property Description
ActualOvertimeWorkBillable The actual billable overtime work that has already been
performed by resources assigned to tasks.
ActualOvertimeWorkNonBillable The actual non-billable overtime work that has already been
performed by resources assigned to tasks.
CreatedDate The date and time that the timesheet line was created.
TimeByDay Date and time for the data, for example, 2013-03-29
00:00:00.000.
Each Actuals object can have a collection of CustomFields objects. Each CustomFields object may have the
following properties:
Property Description
UnsubscribedAlerts
UnsubscribedAlerts contains data about alert notifications unsubscribed by the user. For each
UnsubscribedAlertData object, you will see the following properties:
Property Description
UserViewSettings
NOTE
The information in this section applies to Project Server 2016, Project Server 2013, and Project Online. For Project Server
2010, see the UserViewSettings for Project Server 2010.
UserViewSettings contains data about custom view settings that the user created. You can see properties for the
following objects:
WebControlSettings: User settings for web controls in different pages.
WebControlResourcePlanEngagementSettings:: User settings for web controls in the resource plan
engagement pages.
ViewSettings: User settings in different views across the product.
LastPDPViewed: Information about the last Project Detail Page that was viewed for a particular project.
UserSettings: Settings customized by the user.
OptimizerPlannerPlannerReqPages: Settings customized on the Optimizer, Planner and Planner
Request pages.
PlannerDefPlannerResPlannerAvailPages: Settings customized on the Planner Deficit, Planner
Resource, Planner Availability pages.
PortfolioAnalysisGridSettings: Settings customized on the Portfolio Analysis Grid.
OtherWebSettings: Other settings customized on web pages.
WebControlSettings objects can have the following following properties:
Property Description
WebControl Web control type (for example, resourcecenter).
Property Description
Property Description
Property Description
Property Description
For each PlannerDefPlannerResPlannerAvailPages object, you will see the following properties:
Property Description
Property Description
SettingKey Unique key that describes the user setting data being stored.
Property Description
Duration Selected value of duration for display on the grid. Values are:
-1 -Invalid, -2 -The duration is an estimate, 1 -Seconds, 2 -
Elapsed seconds, 3 -Minutes, 4 -Elapsed minutes, 5 -Hours, 6
-Elapsed Hours, 7 -Days, 8 -Elapsed days, 9 -Weeks, 10 -
Elapsed Weeks, 11 -Months, 12 -Elapsed Months, 13 -
Quarters, 14 -Elapsed Quarters, 15 -Years, 16 -Elapsed Years,
17 -Decades, 18 -Elapsed Decades, 19 -Percent, 20 -Elapsed
Percent, 21 -No Units, 22 -Material Usage
Date The date format used. Values are:
1 - ShortDate, 2 - ShortTime, 3 - ShortDateTime, 4 -
LongDate, 5 - LongDateTime, 6 - WeekDayMonth, 7 -
MonthDay, 8 - YearMonth, 9 - Sortable, 10 -
SmartShortDateTime, 10 - GeneralLongDateTime
GanttZoomLevel Level to which Gantt is zoomed in for display. Goes from most
zoomed in to most zoomed out: 0 - Minute, 1 - Hour
longdate, 2 - Hour shortdate, 3 - Day with the shortest day
name, 4 - Day with the day Year Month listed, 5 - Day with
the day year month listed, 6 - Month, 7 - Month, 8 - Quarter,
9 - Half year
ViewOutlineLevel If value is -1, expand all, except for subprojects. If value is any
other number, set that outline level expanded.
ShowTimeWithDates If true, time is displayed with dates. If false, they are not.
WorkUnits Determine work units for the grid. Values are: 0- Hours, 1 -
Days, 2- Full Time Equivalent
TimeScale Determines time scale for the grid. Values are: 3 - Days, 4-
Weeks, 5- Months, 6- Quarters, 7 - Years
SelectedFiscalPeriod Index of the fiscal period selected from the Fiscal Period
dropdown menu.
UseWeek If true, the Only show delegates covering this week option is
checked.
DateRangeUnits Units used for date range display on grid. Values are: 0-
seconds, 1- minutes, 2- hours, 3- days, 4- weeks, 5 - months,
6- quarters, 7 - years
NOTE
This section include information about UserViewSettings data in Project Server 2010. For information about Project Server
2016, Project Server 2013, or Project Online, see the previous section (UserViewSettings).
UserViewSettings contains data about custom view settings that the user created. Objects can have the following
properties:
Property Description
approvalcenterjsgridcontrol Approvals
mytasksjsgridcontrol My Tasks
timesheetpartjsgridcontrol Timesheets
In the export data for Project Server 2010, WebControlSettings data will display the name of the web control
after the actual property for the control. For example, the following is a Date property for the
MyTasksJSGridControl, which has a value of 1.
{
"PropertyName": "DateMyTasksJSGridControl",
"PropertyValue": "1"
},
{
"PropertyName": "DividerPosition000010fc-7b06-45a9-9bd2-1cbfc2f64ce4",
"PropertyValue": "0"
},
LastPDPViewed: This provides information about the last Project Detail Page that was viewed for a
particular project. The unique identifier of the corresponding project (PROJ_UID ) is displayed after the
string PDPPages_LastViewed_PDP_For . Also, the project name (PROJ_NAME ) can be obtained from the
MSP_PROJECTS table in the Project Server 2010 Published database. In the following example, the project
has a unique identifier of 051f3a1e-02f5 -4e45 -bea7 -30bfbf8df67f , and the last viewed Project Detail Page
has unique identifier 1e26f08d -2757 -46d9 -b726 -16cae3614c56 . You could find the project name by
checking the MSP_PROJECTS table for the PROJ_NAME associated with 051f3a1e-02f5 -4e45 -bea7 -
30bfbf8df67f.
{
"PropertyName": "PDPPages_LastViewed_PDP_For_051f3a1e-02f5-4e45-bea7-30bfbf8df67f",
"PropertyValue": "1e26f08d-2757-46d9-b726-16cae3614c56"
},
Property Description
Duration Selected value of duration for display on the grid. Values are:
-1 -Invalid, -2 -The duration is an estimate, 1 -Seconds, 2 -
Elapsed seconds, 3 -Minutes, 4 -Elapsed minutes, 5 -Hours, 6
-Elapsed Hours, 7 -Days, 8 -Elapsed days, 9 -Weeks, 10 -
Elapsed Weeks, 11 -Months, 12 -Elapsed Months, 13 -
Quarters, 14 -Elapsed Quarters, 15 -Years, 16 -Elapsed Years,
17 -Decades, 18 -Elapsed Decades, 19 -Percent, 20 -Elapsed
Percent, 21 -No Units, 22 -Material Usage
GanttZoomLevel Level to which Gantt is zoomed in for display. Goes from most
zoomed in to most zoomed out: 0 - Minute, 1 - Hour
longdate, 2 - Hour shortdate, 3 - Day with the shortest day
name, 4 - Day with the day Year Month listed, 5 - Day with
the day year month listed, 6 - Month, 7 - Month, 8 - Quarter,
9 - Half year
ViewOutlineLevel If value is -1, expand all, except for subprojects. If value is any
other number, set that outline level expanded.
FilterBy Column to filter by.
ShowTimeWithDates If true, time is displayed with dates. If false, they are not.
WorkUnits Determine work units for the grid. Values are: 0- Hours, 1 -
Days, 2- Full Time Equivalent
TimeScale Determines time scale for the grid. Values are: 3 - Days, 4-
Weeks, 5- Months, 6- Quarters, 7 - Years
SelectedFiscalPeriod Index of the fiscal period selected from the Fiscal Period
dropdown menu.
DateRangeUnits Units used for date range display on grid. Values are: 0-
seconds, 1- minutes, 2- hours, 3- days, 4- weeks, 5 - months,
6- quarters, 7 - years
Workflow
This file contains data about Project workflows in which the user was an owner. For each WorkflowInstances
object, you may see the following objects:
Object Description
SiteID Unique identifier for the PWA site in which the workflow is
used.
WorkflowCreatedDate Date the workflow instance for the project was created.
EnterpriseProjectTypeUid Unique identifier for the enterprise project type using the
workflow.
For each WorkflowStatus object, you may see the following properties:
Property Description
WorkspaceItems
WorkspaceItems described data about SharePoint items that are used in Project Server and Project Online, such
as Issues, Risks, and deliverables. This can include collections of:
Issues
Risks
Deliverable
ListItemAssociations
There can be a collection of Issues objects that have the following properties:
Property Description
ModifiedByUserClaimsAccount Claims account of the user that last modified the issue.
ModifiedDate The date and time that the issue was last updated.
There can be a collection of Risk objects that have the following properties:
Property Description
MitigationPlan A plan for handling problems that are related to risk factors.
TriggerTask The condition that triggers the contingency plan (for example,
date, exposure over threshold, tasks not completed, or other
user-assigned values).
ModifiedByUserClaimsAccount Claims account of the user that last modified the risk.
There can be a collection of Deliverables objects that have the following properties:
Property Description
CreatedByUserClaimsAccount The Claims account of the user who created the deliverable
CreatedDate The date and time that the deliverable was created.
ModifiedByUserClaimsAccount The Claims account of the user who last modified the
deliverable.
ModifiedDate The date and time that the deliverable was modified.
There can be a collection of ListItemAssociations objects that have the following properties:
Property Description
NAME DESCRIPTION
Reporting_ProjectBaseline Project Baseline data for the project from the reporting
schema.
Reporting_Tasks Project tasks data for the project from the reporting schema.
Reporting_Assignments Assignment resources data for the project from the reporting
schema.
Reporting_Resources Resources data for the project from the reporting schema.
Reporting_TaskBaselineTimephased Task baseline timephased data for the project from the
reporting schema.
Reporting_TaskTimephased Task timephased data for the project from the reporting
schema.
When you are exporting from Project Online, your will receive the information in json file format. The name for
each file will be prefixed with the project name and project ID for the specific project. For example, if a project has
the project name of Project1 and a project ID of fffa21a1 -baac-e711 -9ee6 -00166dac9e0b , the first file in the
table above will be named Project1_fffa21a1 -baac-e711 -9ee6 -00166dac9e0b_draft.xml .
Reporting_AssignmentBaselineTimephased
Reporting_AssignmentBaselineTimephased contains the properties that define the reporting data for assignment
baseline timephased data in the ProjectData service. It has the following properties:
Object Description
TaskUID The GUID of the task that is associated with the assignment
baseline timephased data.
AssignmentBaselineCost The planned cost of the assignment.
AssignmentBaselineModifiedDate Date and time the assignment baseline was last modified.
Reporting_AssignmentTimephased
Reporting_AssignmentTimephased contains the properties that define the reporting data for assignment
timephased data in the ProjectData service. It has the following properties:
Object Description
TaskUID Unique identifier for the task for the assignment timephased
data.
AssignmentRegularCost The total cost for regular, nonovertime assignment work that
has already been performed, in addition to remaining
nonovertime work.
AssignmentCombinedWork The work for the assignment, from both the project plan and
the resource plan.
AssignmentActualRegularCost The cost of the nonovertime work that has already been
performed on an assignment.
AssignmentOvertimeCost The total overtime cost for an assignment, including costs for
overtime work that has already been performed, in addition
to remaining overtime costs.
AssignmentActualCost The costs incurred for work that has already been performed
on an assignment, along with any other associated costs.
AssignmentActualOvertimeCost The costs incurred for overtime work that has already been
performed on an assignment.
AssignmentActualOvertimeWork The actual amount of overtime work that has already been
performed on an assignment.
AssignmentMaterialActualWork The actual amount of work that has already been performed
with the use of a material resource, usually expressed as a
percentage of the scheduled amount of material resource
work.
TaskIsActive True if the task for the assignment timephased data is active.
Reporting_ProjectBaseline
Reporting_ProjectBaseline contains the properties that define the reporting data for project baseline data in the
ProjectData service. It has the following properties:
Object Description
TaskBaselineFixedCost A set task cost that is projected in the baseline and that
remains constant regardless of the task duration or the work
performed by a resource.
TaskBaselineWork The total hours that are scheduled in the baseline projection
for a task.
TaskBaselineDeliverableStartDate The published deliverable start date and time for a task.
TaskBaselineDeliverableFinishDate The published deliverable finish date and time for a task as
projected in the baseline.
TaskBaselineStartDateString A string that contains the projected task start date and time.
TaskBaselineFinishDateString A string that contains the projected task finish date and time.
TaskBaselineModifiedDate The date and time the task was last updated.
Reporting_Tasks
Reporting_ProjectTasks contains the properties that define the reporting data for project tasks data in the
ProjectData service. It has the following properties:
Property Description
ProjectUID The unique identifier of the project to which the task belongs.
TaskIsCritical Gets a value that indicates whether the timing for the task is
critical or whether there can be any slack in the timing.
TaskOvertimeCost The sum of the actual and remaining overtime cost of the
task.
TaskDurationVariance The difference between the baseline duration of the task and
the total duration, or current estimated duration, of the task.
TaskStartVariance The variance of the task start date from the baseline start
date as minutes x 1000.
TaskFinishVariance The variance of the task finish date from the baseline finish
date as minutes x 1000.
TaskDeliverableStartDate The published deliverable start date and time for a task.
TaskDeliverableFinishDate The published deliverable finish date and time for a task.
TaskDeadline The target date and time for when a task should be
completed.
TaskSV The cost difference between the current progress and the
baseline plan of a task.
TaskWorkVariance The variance of task work from the baseline task work as
minutes x 1000.
TaskResourcePlanWork Time scheduled on a task for all resouces in the resource plan.
This field is used to avoid double-counting if the scheduled
work is from a resource plan.
TaskStartDateString The string value for a task start date and time.
TaskFinishDateString The string value of the task finish date and time.
TaskIsManuallyScheduled The unique identifier of the project to which the task belongs.
If the task contains a CustomField object, it will have the following properties:
Property Description
TaskId Unique identifier for the task in which the customer field is
used.
Reporting_Assignments
Reporting_Assignments contains the properties that define the reporting data for assignments in the ProjectData
service. It has the following properties:
Object Description
AssignmentActualCost The costs incurred for work that has already been performed
on an assignment, along with any other associated costs.
AssignmentActualOvertimeCost The costs incurred for overtime work that has already been
performed on an assignment.
AssignmentActualOvertimeWork The actual amount of overtime work that has already been
performed on an assignment.
AssignmentMaterialActualWork The actual amount of work that has already been performed
with the use of a material resource, usually expressed as a
percentage of the scheduled amount of material resource
work.
R.TypeName
IsPublic True if the item was published, so a team member can see it.
TaskIsActive True if the task for the assignment timephased data is active.
If the task contains a CustomField object, it will have the following properties:
Property Description
AssignmentRolldown Does the value of this assignment rolls down from the
primary custom field. If it does,the value is the same os the
value of the corresponding primary custom field unless
ovverriden in the assignment custom field
Reporting_Resources
Reporting_Resources contains the properties that define the reporting data for resources in the ProjectData
service. It has the following properties:
Property Description
ResourceCostPerUse The cost that accrues each time a work resource is used.
ResourceMaterialLabel The Material Label field contains the unit of measurement you
enter for a material resource, for example, tons, boxes, or
cubic yards. This label is then used in conjunction with the
material resource's assignment units, for example, eight tons
or 22 boxes.
ResourceGroup The Group field contains the name of the group that a
resource belongs to.
ResourceHyperlink The URL that is specified for a resource in the Edit User page
of Project Web Access.
ResourceIsActive Specifies the project version that was active when the
resource was created. This field is for internal use by the
Project cache.
ResourceIsGeneric True if the resource is generic.
ResourceCreatedRevisionCounter Specifies the project version that was active when the
resource was created. This field is for internal use by the
Project cache.
ResourceCreatedDate The date and time that a resource was created in the project.
ResourceModifiedDate The date that information about a resource was last modified.
Reporting_TaskBaselineTimephased
Reporting_TaskBaselineTimephased contains the properties that define the reporting data for task baseline
timephased data in the ProjectData service. It has the following properties:
Object Description
TimeByDay A primary key that identifies the day along a timeline. The
granularity is in days only.
TaskBaselineCost The total planned cost for a task. The baseline cost is also
known as budget at completion (BAC) for earned value.
TaskBaselineFixedCost A set task cost that is projected in the baseline and that
remains constant regardless of the task duration or the work
performed by a resource.
TaskBaselineWork The total planned hours that are scheduled for a task in the
baseline projection.
TaskBaselineModifiedDate The date and time the task was last updated.
Reporting_TaskTimephased
Reporting_TaskTimephased contains the properties that define the reporting data for task timephased data in the
ProjectData service. It has the following properties:
Property Description
TaskActualCost The costs incurred for work that is already performed by all
resources on a task, along with any other recorded costs.
TaskWork The total time that is scheduled for a task for all assigned
resources.
TaskResourcePlanWork The total time that is scheduled for the task in the resource
plan.
Property Description
ProjectGhostTaskAreStale True if ghost tasks are out of date. Ghost tasks are
placeholders for cross-project links.
ResourcePlanUtilizationDate The start date and time for use of the resource plan.
ProjectModifiedDate The date and time that a project was last modified.
ProjectCalendarDuration The total span of active working time for all tasks in a project,
based on the project calendar that is specified in the Project
Information dialog box.
The project can have a collection of CustomFields objects, with the following properties:
Property Description
Property Description
ProjectActualCost The costs incurred for work that has already been performed
on a project.
ProjectCritcalSlackLimit The number of days past its end date that a task can go
before Project marks that task as a critical task.
ProjectDefaultFixedCostAccrual A value that indicates which default fixed cost accrual method
to use on new tasks.
ProjectPoolAttachedTo The name of the project that shares resources with this
project.
ProjectSpreadActualCostsToStatusDate Indicates whether actual costs are spread to the status date.
ProjectWorkEntryFormat The default format for all work durations in the project.
ProjectReadCount Indicates the number of users who have one or more tables
open as read-only.
ProjectTrackingMode The default tracking method for all assignments in the project.
ProjectModifiedDate The date and time that a project was last modified.
ProjectVisibilityMode Specifies whether the project site was created from SharePoint
task list.
ProjectUtilizationDate The start date and time for use of the project.
Property Description
ProjectActualCost The costs incurred for work that has already been performed
on a project.
ProjectCritcalSlackLimit The number of days past its end date that a task can go
before Project marks that task as a critical task.
ProjectDefaultFixedCostAccrual A value that indicates which default fixed cost accrual method
to use on new tasks.
ProjectPoolAttachedTo The name of the project that shares resources with this
project.
ProjectSpreadActualCostsToStatusDate Indicates whether actual costs are spread to the status date.
ProjectWorkEntryFormat The default format for all work durations in the project.
ProjectReadCount Indicates the number of users who have one or more tables
open as read-only.
ProjectTrackingMode The default tracking method for all assignments in the project.
ProjectModifiedDate The date and time that a project was last modified.
ProjectVisibilityMode Specifies whether the project site was created from SharePoint
task list.
ProjectUtilizationDate The start date and time for use of the project.
The Project Online subscription plans have changed. As of August 15, 2016, the following subscription plans will
no longer be available and will be replaced by three new plans:
Project for Office 365 (Project Pro for Office 365) Retired
NEW PLANS
NOTE
For an overview of features and pricing for the new Project Online subscription plans, see Project cloud-based solutions plans
and pricing site. For more detailed information, see the Project Online Service Description.
If your users are on a retired plan and you are planning to move them to a new plan, this makes it easier to
determine which new plan you might want to move them to, since the retired plans were also made with distinct
roles in mind.
IF YOU PREVIOUSLY USED THIS YOU MOST LIKELY WILL WANT THIS
Project for Office 365 (Project Pro for Office 365) Project Online Professional
Project Online with Project Pro for Office 365 Project Online Premium/Project Online Professional
The big difference between Project Online Professional and Project Online Premium is that the latter has
additional capabilities for portfolio planning, demand management, enterprise resource management, and out-of-
the-box portfolio reporting. You can learn more about the differences between plans in the Project Online Service
Description.
Project Lite No action needed. Renew to Project Online Renew to Project Online
*Your current Project Lite Essentials Essentials
licenses will automatically be
renamed to Project Online
Essentials. *
Project for Office 365 No action needed. Renew to one of the Renew to Project Online
(previously known as Project following options: Professional
Pro for Office 365) Project for Office 365 (renew
to your old plan)
Project Online Professional
(renew to a new plan)
Project Online No action needed. Renew to one of the Renew to Project Online
*Your current Project Online following options: Premium
licenses will automatically be Project Online without
renamed to Project Online Project Client (renew to your
Premium without Project old plan)
Client. * Project Online Premium
(renew to a new plan)
Project Online with Project No action needed. Renew to one of the Renew to Project Online
for Office 365 following: Professional or Project
Project Online with Project Online Premium based on
for Office 365 (renew to what your user needs to do.
your old plan)
Project Online Professional
(renew to a new plan)
Project Online Premium
(renew to a new plan)
See also
Renew your Project Online plans in a larger organization
Renew your Project Online plans in a larger
organization
7/18/2019 • 8 minutes to read • Edit Online
In August of 2016, we announced some changes in the Project Online plans that will be available to you, as some
plans expired at the end of 2016 and new ones became available. Many of you may now need to renew your
retired Project Online plans and move your users to the new available plans.
For most organizations, the Project Online license renewal process can help you through purchasing and
reassigning licenses to your users. However, if you need to renew 3000 or more Project Online licenses, you need
to reassign user licenses with the steps documented in this article. These steps are:
1. Step 1: Determine my current licenses and users
2. Step 2: Determine which new Project Online SKUs you need for your users
3. Step 3: Buy the Project Online Skus that you need
4. Step 4: Assign the new licenses to your users
5. Step 5: Verify you have moved your users to the new SKUs
Connect-MsolService
This lets you to enter your credentials needed to connect to Office 365.
This will agree to the disclaimer, create a log file called MyReport.log and save it to the current location, and will
create a License Report CSV file and save it to the default location.
If you open the log file, it will contain the output displayed in the module when you run the script.
If you open the License Report CSV file in Excel, you will see a listing of your users and the SKUs that are assigned
to them:
For example, in the graphic above, you can tell that each user listed has both a Project Online Premium and an
Office 365 Enterprise E5 sku assigned to them. MOD385910 is the org id.
You can use your column filters in Excel to easily group users that are assigned specific licenses. For example, you
could find out which users are all using the Project Lite, Project Online, and Project Online with Project Pro for
Office 365 Skus.
Project Online SKU strings
The following tables lists the possible Project Online Sku strings that you will see in the script results. You can use
the following table to help you determine which Project Online skus are based on the Sku strings.
You will also need to know what the new Project Online sku strings mean when you need to assign them to your
users later in this article.
Step 2: Determine which new Project Online SKUs you need for your
users
Now that you know which Skus are assigned to specific users, you need to determine which new Project Online
plans to renew them to. You first need to know your new Project Online plans and what they do. Look to the
following resources to provide you more information about how to best select the Project Online Skus for your
users:
RESOURCE DESCRIPTION
Important information for Project Online customers about Use this article to get an overview of retired and new Project
plan changes Online plans, and which plan you are likely to move to if you
want the same functionality from your previous plan.
Project Online Service Descriptions Use this article to get a detailed look into what each of the
new Project Online plans provides you in terms of features
and functionality.
Project Online plans and pricing Use this site to see pricing and a high-level comparison of
Project cloud-based solutions.
If you are looking to provide your users with similar functionality as they did in their retired Project Online SKU,
this table gives you some general guidance, but look to the above resources for more detail:
Project Online with Project Pro for Office 365 Project Online Premium or Project Online Professional
$users=Get-MSOLUser
Your Office 365 domain name. The Sku you are assigning to the user. The Sku you are replacing.
Example 1
In a very simple example, your company (Contoso) wants to assign new Project Online Essential Skus to all of its
users who currently have Project Lite Skus. I would run the script as the following:
$users=Get-MSOLUser
After populating the $users variable with your Office 365 users in your tenant, the script first agrees to the
disclaimer, sets the log file location, and then sets the new Sku as Project Online Essentials (PROJECTESSENTIALS )
for all users who have the old Project Lite Sku (PROJECT_ESSENTIALS ) .
Example 2
In another example, let's say that at Contoso, you want to update all of your users in your HR department from
their old Project Online Plan 2 licenses and assign them new Project Online Premium licenses. However, there are
a few users in HR that have already been assigned Project Online Premium licenses, and we don't want to make
any changes to these users. You would run the following script:
This command reads all of your users who are in the HR department and who do not already have a Project
Online Premium Sku (PROJECTPREMIUM ) . The script then agrees to the disclaimer, sets the log file location, and
then sets the new Sku as Project Online Premium for all users who have the old Project Online Plan 2 sku.
NOTE
As mentioned previously, run the Get-Help command to take a look at detailed usage information and additional examples.
It will also provide you information about additional uses of the script that are not needed for this article.
Step 5: Verify you have moved your users to the new SKUs
When you have completed assigning your Project Online Skus to your users, you need to verify that your users no
longer have any of the old Project Online Skus assigned to them. You can do this by simply running the script
again to generate a new license report:
After running it, open the newly generated License Report in Excel and search for any occurrences of the old
Project Online skus.
Also verify that if you have any unassigned old Project Online skus, that you cancel them in the Microsoft 365
Admin Center on the Billing page. You can search for retired skus by simply searching the file for occurrences of
the retired Project Online sku strings.
If you have any issues in trying to move to your new Project Online skus, you can Contact support for business
products - Admin Help for assistance.
Related Topics
Brian Smith's Project Support Blog: How to handle Project Online sku changes
Turn Roadmap on or off for your organization
7/16/2019 • 3 minutes to read • Edit Online
Office 365 admins can turn the Project Online Roadmap feature on or off for their organization through their
Microsoft 365 Admin settings.
NOTE
Roadmap is currently turned off by default. After March 15, Roadmap will be turned on for all licensed users. If you want to
ensure that Roadmap is off for your organization after that date, follow these steps after February 14, 2019 and turn it off.
You need to do this even if you previously turned Roadmap off, and even if you’ve never used Roadmap.
1. In the Microsoft 365 admin center, under Settings, click Services & add-ins.
2. Click Project Online.
3. Set Turn Roadmap on or off for your entire organization to On or Off.
4. Click Save.
5. After saving the settings, go to project.microsoft.com and verify that you can create a roadmap.
If you aren't able to turn on Roadmap
In the following conditions, you will not be able to turn on Roadmap:
Roadmap is not yet available to your organization
The Roadmap feature is being gradually rolled out to organizations over a period of time, similar to how other
Office 365 features are made available.
If you see this message, it simply means that Roadmap hasn't been made available yet to your tenant, but should be
shortly.
NOTE
For more information about the Online Services Terms, see the Licensing Terms page.
NOTE
Roadmap is currently not available in the Project Online Professional and Project Online Premium EDU licenses. This includes:
Project Online Professional for Faculty
Project Online Premium for Faculty
Project Online Professional for Students
Project Online Premium for Students
The Project Online Professional or Project Online Premium license assigned to a user will provide three
service plans that will allow the user to use the Roadmap feature. The Project P3, Data integration for Project
with Flow, and Common Data Service for Project service plans directly support the infrastructure of running
Roadmap. All three must be turned on for Roadmap to work for the user.
Related Topics
Roadmap training
Remove Roadmap from Office 365
1/18/2019 • 2 minutes to read • Edit Online
You can turn Roadmap off in the Microsoft 365 admin center. This will prevent your users from using Roadmap,
but will not remove any user data that currently exists. (Note that it may take a few minutes for roadmap
functionality to be disabled while the setting synchronizes across your tenant.)
1. In the Microsoft 365 admin center, under Settings, click Services & add-ins.
2. Click Project Online.
3. Set Turn Roadmap on or off for your entire organization to Off.
If your Project Online subscription ends, most of the associated data is deleted in conformance with the Data
Retention, Deletion, and Destruction in Office 365. Unlike other Project Online data, Roadmap data isn’t
automatically deleted when your Project Online subscription ends.
You can remove all roadmap data by removing the entire Roadmap solution from Microsoft 365. This will delete all
of the existing roadmaps and associated user data.
1. In the Microsoft 365 admin center, under Admin centers, click Dynamics 365.
2. In the Dynamics 365 Administraton Center, select the default instance, and then click Open.
3. On the Settings menu, under Customization, click Solutions.
4. Select the PortfolioService solution, and then click Delete.
5. Select the PortfolioService_Anchor solution, and then click Delete.
NOTE
Removing the Roadmap solution does not affect any of the projects or tasks that the roadmaps are connected to.
See Also
Delete user data from Roadmap
Delete user data from Roadmap
1/18/2019 • 2 minutes to read • Edit Online
To delete user data from Roadmap, you need the user's Azure AD Object ID. You can get this by checking the user's
profile properties in Azure AD or by using Get-AzureADUser.
To find a user's roadmaps
1. In the Microsoft 365 admin center, under Admin centers, click Dynamics 365.
2. In the Dynamics 365 Administraton Center, select the default instance, and then click Open.
3. Click Advanced Find.
4. From the Look for menu, choose Roadmaps.
5. Click Edit Columns
6. Click Add Columns.
7. Choose the columns below that you want to search on. Be sure to include Office 365 Group AAD ID.
Office 365 Group AAD ID ID of the roadmap's Office 365 group in AAD.
For example,
Add-AzureADGroupOwner -ObjectId "62438306-7c37-4638-a72d-0ee8d9217680" -RefObjectId "0a1068c0-dbb6-4537-9db3-
b48f3e31dd76"
Once you are an owner for the groups, you can open the roadmaps from Project Home and make edits or
deletions directly. (Roadmap must be enabled to do this.)
See Also
Create, edit, or save an Advanced Find search
Delete user data from Project Online