“Optimization” in ResourceFirst refers to the calculation method used to show resource supply-demand analysis colors.
The Assignments Overview article explains how ResourceFirst uses project priorities for assignments and how it displays color indicators that show which assignments cannot be accomplished within the given capacity. Collectively, this is known as prioritized availability analysis.
There are two Optimization Options that can be turned on separately or together that impact the prioritized availability analysis. The next two sections explain the purpose of these two options and show how to use them.
It is important to understand that no data is changed with any of the optimization options; instead the allocation shortfall warning colors (defined as an allocation percent of demand) are displayed differently based on the optimization settings.
Use Availability for Skill Assignments
Note that this option is meant to optimize skill assignments. It does not optimize resource assignments with shortfall.
In the default mode, with this option not selected, all skill assignments are treated as shortfall and show up in red, and contribute to overall project shortfall. That red highlighting is an indication to the responsible project manager and resource manager that the skill assignment, if not filled in a timely manner (usually by using the Candidate feature), will not get done. With this option not selected, the users are seeing the state of allocation in the highlighting, not the state of feasibility. There may be available resources in the right organization with the right skill to fill the needs…they just haven’t been assigned to do so.
It is often useful to examine the feasibility of the current portfolio, selected projects, or selected assignments by asking the question “Can the outstanding skill assignments be filled by available resources in the right organization with the right skill?”
One way to answer this is to corral all the relevant resource managers in a conference room, lock the door, and don’t let them out until they have allocated available resources in ResourceFirst, based on assignment priority, to fill as many of the needs as possible. Note that this approach is usually not appropriate, because some of the contending projects may not yet be committed, and it may be inappropriate in some disciplines (e.g. System Test) to allocate resources to specific assignments far in advance.
Fortunately, ResourceFirst provides a button to do the equivalent of this with one click, and then return to the prior state by unclicking the button (in essence, providing the equivalent of a "what if" simulation to answer the question: "What if we filled all skills needs with available resources with that skill in the appropriate organization?).
When the Use Availability for Skill Assignments button is clicked, the system takes the highest priority skill need, and temporarily assigns (if possible) an available resource in the right organization with the right skill. It continues the process with the next priority assignment until it has processed all of the skill assignments as best as possible. After the process is complete, the highlighting shown is displaying the state of feasibility for the assignments/projects/portfolio, exactly as if the resource managers had done the same process. Note that already assigned/allocated resource assignments (even if they are overallocated) are not changed/fixed, regardless of priority.
Following is a very simple example of the effect of Use Availability for Skill Assignments. The image below shows the full set of assignments without the button selected (this is the state of allocation):
George Smith and Cheng Wu are the only two resources in Group 2, they both have the Architect_SW skill, they both have 1.0 FTE capacity from 2/1/2020 onward, and they both have been allocated varying levels of work for Project 5 MO for some intervals, but have some remaining capacity. In addition to those resource assignments, there are two skill assignments, one for Project 5 MO with a priority of 100, and the other for Project 6 MO with a priority 200 (a lower priority). With the Use Availability for Skill Assignments button not yet pushed, both skill needs show up entirely as red…the needs won’t get done if resource managers don’t fill the needs by allocating resources in a timely fashion.
If you look at Projects->Demand, the state of allocation is shown for each project in the portfolio:
Now back to the detailed Assignments page…doing the math…you can see that the highest priority skill need (Project 5 MO) could be filled fully with available resources in the right organization with the right skill for the February, March, April and June intervals, but not the May interval. After that allocation (by resource manager or system), the lower priority skill need (Project 6 MO) could be filled fully for February and June, but only partially or not at all for March, April and May. (Thankfully you don’t need to do the math!)
The user now selects the Options->Optimization->Use Availability for Skills Assignments button:
The system executes its allocation algorithm as noted above and the highlighting of assignments changes to show the state of feasibility:
In addition, the rolled up project demand image has changed to reflect the state of feasibility of the projects:
To return the assignments and project demand to the original state of allocation, uncheck the Options->Optimization->Use Availability for Skill Assignments button.
Note: Both this button and the Allocated Committed First button are “sticky”, persisting into your next session. Make sure that you put it in the checked/unchecked state desired before you log out.
Allocate Committed First
If the administrator has checked at least one effort state as "Allocate First" in Administration > Lists > Effort State, assignments with these effort states will be allocated first. The Effort State setup defines the sequence of Effort States and which should be allocated first, in sequence. The users can then apply the defined Effort States to assignments. The Effort State is ignored unless "Allocate Committed First" is checked.
"Committed" states may be defined with the name "Committed" or "Hard-Booked" or something else, as desired.
The effect of using this feature is that committed (i.e. "allocate first") demand on a lower priority project will be satisfied before uncommitted demand for the same resource on a higher priority project. Committed assignments that exceed the capacity of the resource are highlighted the same as any other assignment.
Note: The committed state has no effect on allocation calculation until the Allocate Committed First option is set in via the Optimization button.
To use this feature, the administrator will first set up the Effort (Assignment) States in Administration->Lists->Effort State:
In th above example, both the Work in Progress and Committed states are “Committed” states, because their Allocate First checkbox is checked. Of the two, assignments marked as Work in Progress will get allocated first based on order. Assignments intended as Not Committed can either be marked as such or left with their Effort/Forecast/Assignment State as blank.
Once the administrator has set up Effort States for use, the Effort State field in Assignment views can be used to mark individual assignments with specific values.
Even though assignments have values marked, they will have no effect until the user clicks the Allocate Committed First optimization option.
In the example below, the user has not yet clicked the Allocate Committed First option:
Cheng Wu has three assignments, each one of which fully utilizes his available capacity. Without Allocate Committed checked by the user, the highest priority project assignment (Project 5 MO with priority 100) is allocated first, and the other two assignments are highlighted in red:
Now, let’s check the Allocate Committed First button:
Now the assignment that gets allocated first is Project 7 MO. It is a committed assignment, as is Project 6 MO…but the Work in Progress state is first in the list of committed states while the Committed state is second.