Just to get you caught up in this series…. My goal is to introduce the features of the Project Server Resource Analysis component of the Portfolio Analysis module with the help of an Excel mockup.  Why Excel?  Because as my Japanese joint venture clients have taught me through the years, that’s probably the only software license required for the profitable operation of a successful multinational corporation.

In the last two posts, I discussed how the baseline scenario is calculated and the pool of projects is assessed against the organizational resource supply.  In this post, I’ll talk about the options for performing what-if analysis, and briefly introduce those calculations.  Specific calculation heuristics will be relegated to later posts on specific views and reports that display the calculated data.

When performing what-if scenario calculations in the Resource Analysis module, it is important to note that the server does not necessarily calculate an optimal solution set, but merely provides the user the opportunity to tweak settings to identify specific scenarios until an acceptable scenario is identified.

Just to get you caught up on previous posts in this series:

1) Introducing the Resource Analysis Worksheet

2) Configuring the Resource Pool

3) Configuring the Resource Analysis Parameters

4) Organizational Capacity Planning

5) The Baseline Calculation (Part 1)

6) The Baseline Calculation (Part 2)

See that first post in the series to download the Excel workbook I will be using to illustrate this discussion.

Intro to Scenario Modeling

The Resource Analysis module allows users to modify three key settings:

1) Project Force In/Out Options

2) Project Start Date

3) Incremental Additional Resources or Incremental Additional Cost

After tweaking each of these settings, a scenario can be run and compared to other scenarios as well as to the baseline calculation.   The Force In/Out options can be found in the Gantt Chart view of the Resource Analysis screen, while the other Incremental Resources options can be found in the Options tab of the Resource Analysis.


Note that the Options tab can only be configured when the Gantt Chart is displayed.  Although the Options tab is displayed when the Resource Details view is displayed, none of the settings are active.


Forcing Projects In/Out

From my perspective, forcing projects in and out in the Resource Analysis view seems pretty simple.  Essentially, forcing a project out means that it’s resources requirements are removed from the calculation.  For more information about how this functionality works on the Cost Analysis side of the house, please refer to my previous post on the subject.

Similarly, forcing projects into the analysis for all intents and purposes seems to throw the projects into the top of the queue for resource requirements.  See the first post on baseline calculations for a discussion of how the queue works.

I found that if I deliberately overloaded the resource analysis engine by forcing in projects in excess of the available resource supply, I got the following helpful notification:

The portfolio selection scenario could not be calculated because of one or more of the following reasons:

  • The portfolio constraint limit is less than the requirements of all forced-in projects for at least one period of time.
  • Project dependencies are enforced and conflicting or overly complex dependency relationships exist.
  • An internal resource allocation engine error.
  • Cannot calculate portfolio selection scenario.


One function I would like to see in future versions of this tool would be the option to force projects into the analysis irrespective of whether or not resources are actually available.  I can see a number of instances where a project may get bounced for exceeding the maximum resource requirements by a negligible amount.  I’d like to have the option to force the project in and simply display the resource deficit.  Some may argue that this functionality is similar to just adding an incremental resource, and the results are the same admittedly, but I think the approach is a bit different.

Similarly, I’d like to be able to set an overage threshold for my resource pool, so that it still includes projects within the threshold – with the assumption that I’ll be able to employ resource leveling to peanut butter out my resource requirements and make them fit within my organizational constraints.  (And yes, “peanut butter” is an official scheduling term.)

I guess I’ll just add those to my Festivus wish list for next year.

Modifying the Start Date

The second option is to modify the Start Date for the project.  Going back into our Big Honkin’ Spreadsheet (BHS), I model that in the CalcScDemand worksheet.  Basically, I take the resource demand profile


…set the revised New Start Date on the first worksheet…


…and offset the resource demand profile to start at the date displayed in the New Start date field.


From there, it’s a relatively simple matter of applying the selection heuristics documented here to the revised resource profile – compare the new resource demand for a prioritized list of projects to the resource supply in the Resource Pool.

Adding Incremental Resources

This next part is a bit more complicated.  In the top of the metrics section, you should see a box that looks like this:


This box allows you to add staff to your resource pool and recalculate specific scenarios. To access the various parameters that affect the calculations this box triggers, you’ll need to navigate to the Gantt Chart and select the Options tab.


Clicking on that, gives you the following interface.


Let’s examine the available options briefly here, and in more depth in subsequent posts.

Units: This allows you to modify the variable you will be changing as part of the various scenarios.  You may either toggle this to “FTE,” whereby you can then enter how many extra resources you plan to hire…..or toggle to “Cost,” whereby you can flag the amount of extra budget you’re willing to spend, and then have the system calculate how much work can be bought for that money.

Cost Rate Table: Specifies which cost rate table to use when specifying cost and hiring resources.  Based on testing, it seems that the cost calculated for a specific role is the average cost for each resource assigned to that role within the resource pool.  So if I have three resources:

Resource Standard Rate
Tweedle Dee 25
Tweedle Dum 75
Alice 100


Then the standard rate for this role would be [($25 + $75+ $100)/3] = $66.  Note that changes to the Resource Pool will not affect the analysis until the resource numbers are reloaded using the Reload button in the Options tab.  That being said, changes to the resource pool do not require projects to be republished prior to recalculations.

Type: This field allows you to choose between “Internal” or “External.”  You’ll need to pay attention at this point because as of this writing, I realized that the tooltip for this specific feature appears to be somewhat incorrect – well actually fairly incorrect.  More specifically, the tooltip seems to state the opposite of what the feature actually does.  Here’s the tooltip:


What this tooltip should say (and may very well say by the time you read this blog) is….

When hiring resources, external resources (being disposable) will be hired only for the duration of resource gaps (and then kicked to the curb).  Internal resources (being a lot more paperwork) will be hired for the first gap and then retained for the entire planning horizon (much like a “temporary” tax cut).

So the idea is that internal resources come on board full time to support your project, and then can never be fired, while external consultants can be hired as needed for even a fraction of the time an FTE would, and then taken round back and quietly disposed of when the need is over.  Not that I am bitter.  Hey, I like being a commodity.  Really.

Allocation Threshold: This sets the minimum percent of an FTE that can be hired.  For instance, we can only hire full time staff, or we can enlist a part time resource to staff the project.  Setting the Allocation Threshold at 50% will allow the system to calculate additional resource requirements in units of .5 FTE.

As far as I can tell, the Allocation Threshold does not apply to internal resources.  They are hired full time regardless of what the threshold is set to.  This setting does apply to external resources though.  If you set the allocation threshold to 25%, then an external resource may be hired at a minimum of 2 hours/day to resolve any resource shortfalls on your projects.

Reload – Reload is a very dangerous button.  In fact, not only is it dangerous, but it may be confused with the Recalculate button on the Analysis toolbar.  Reload will renew all of the key resource calculations for the analysis – i.e. refresh any capacity calculations from projects not included in the analysis, refresh any resource scheduling calculations from included projects, and generally incorporate any of the changes made to a project schedule since the analysis was first created.

So if you don’t like the results of your analysis, don’t retreat, reload!  (Sorry, couldn’t resist.)

Adding Incremental Cost

The other option which I briefly mentioned above was the ability to add additional cost to the calculation.  Toggling Units to “Cost” in the Option tab allows users to enter a dollar (or presumably other currency) figure in the Resource Constraints cell of the Resource Analysis.


As far as I can tell, incremental cost reflects additional cost to the resource pool to staff projects in the rough order of priority.  Incremental cost does not reflect the additional cost of adding a project to the baseline scenario, i.e. the entire cost of the project.  It just reflects the cost of addressing the resource shortfall generated by adding the project to the baseline scenario.

More on this when I talk about the Hired Resources Report…

Whither Next?

Once you get a scenario you like what do you do?  Save the analysis and hit the Commit button.  Depending on where you are when you select that button, you’ll populate up to 6 project level fields:

  1. Committed Planned End Date
  2. Committed Planned Start Date
  3. Committed Portfolio Selection Decision (Cost)
  4. Committed Portfolio Selection Decision (Schedule)
  5. Committed Portfolio Selection Decision Date (Cost)
  6. Committed Portfolio Selection Decision Date (Schedule)


But that’s also a post for another day…

Next Up….the Requirements View