A huge chunk of my last fortnight had been spent in all things Dynamics 365 Project Service Automation (PSA) for a project engagement. Going in, I was understandably a bit anxious because I do not have a vast experience with it from which I could draw confidence upon, save for the need to work on it to complete an onboarding exercise a few years back. But situations such as this are meant to be embraced rather than shunned — if the latter is seriously even an available option — right? So I just dove right in. 🙂
My objectives in writing this post, as always, are two things: (1) to contribute to the body of knowledge available online so that whoever is digging something for an answer need not dig any deeper and (2) by writing it down, I am personally just trying to store the things that stuck out to me in my memory for easier access.
1. What does the end-to-end process look like?
I created the diagram below to hopefully distill into a single picture the functionalities of PSA and how they relate to each other. The left-hand column shows the overarching process, comprising of four major stages. Next to each box are a set of chevrons containing the entities that are involved in that stage. This is not an exhaustive listing of all the entities but I thought this diagram already reflects well the PSA essence and how it supports the business process of managing projects.
2. How does PSA determine the estimated sales and costs of the project?
Financial considerations in any undertaking is arguably the single most important factor for an enterprise in deciding whether to pursue a project or not. After all, money is its lifeblood. PSA provides a view of the estimated revenue and cost. This section of the PSA documentation explains very well how the numbers are derived.
As written in the documentation, the sales figures are determined by multiplying the effort duration to the defined bill rate of the role assigned to complete the task. The bill rate is taken from either the price list associated to the project’s contract or quote or the price list associated to the project’s customer. This applies to a project where the type of billing is time and material.
The following example illustrates the above point. The effort duration for the entire week is 36 hours. A Business Systems Analyst is the assigned resource. The rate for such a role on the price list associated to the project’s contract is $300 per hour. This is equivalent to a potential revenue of $10,800.00 (effort duration x rate), which is what PSA was able to derive.
How much does it cost the company to complete the project, as far as resourcing is concern? The answer is easily provided by PSA via a calculated field called Estimated Labor Cost, which is the aggregate of the cost of all of the project tasks. PSA also also provides a cost breakdown against a calendar time scale of your choosing.
As in the calculation of estimated sales, the cost is determined by the cost of the role of the resource assigned to the task and its duration. The cost is taken, not from the price list attached to the customer, the projects quote or contract, but from the contracting unit’s.
3. If I am the project manager (PM), can I book resources myself?
PSA has the flexibility in that regard. If in terms of managing resources, your organization has a process in which there is someone who assigns resources to projects, then being the PM, you submit a resource request. That request should land on the resource manager’s view so he/she can take action.
This picture shows the high-level flow in forming the project team. Steps 1 to 4 are typically accomplished by the PM while step 5 is taken care of by the resource manager. But again, step 4 is not mandatory and so can be skipped; the PM can himself identify and book the resources that are demanded. It is also worth mentioning that step 2 is automatically created when you’ve filled out the resource column of the project task.
4. Is there a way that I can deviate from the standard price list, say when offering lower bill rate to a client just for a specific project?
In the quote or project contract, PSA provides the ability to create a price list that is copied from an existing one. This comes in handy in cases where the organization has to make adjustments to the rates that are unique to that specific deal.
In this example, the project has the standard pricing attached to it initially. It is to be modified, specifically the sales rate, as it has become necessary to win the deal.
5. On the Schedule Board, what do the numbers underneath the name of the bookable resource indicate?
These simply are the hard-booked hours and its equivalent percentage over the total capacity of the resource within the displayed time period. In the following example, Alan Steiner was hard-booked for a total of 27 hours over a three-day period.
The resource has a capacity of 24 hours for the period displayed in the board (i.e. 8 hours each from January 29 to January 31 while he is off Saturdays and Sundays). Thus, the fraction of the capacity of the resource where he is booked is 112.5%, which is something that should be avoided obviously.
6. Why don’t I see any movement in the utilization numbers of resources despite the approval of a billable time entry?
Utilization is a number that interests the company and resource alike (as they should!). For the company, not the least of reasons why is to drive decisions around resource planning to ensure that the talent pool is maximized. From the resource’s perspective, it matters especially if utilization is one of the metrics used to decide who merits some form of recognition.
In PSA, the cells on the Schedule Board represent billable utilization. There are two other types of utilization — non-billable and internal. The computation follows the simple formulas below.
- Billable Utilization = Billable Hours where Billing Type is Chargeable over Resource Capacity
- Non-billable Utilization = “Billable Hours” where Billing Type is Non-chargeable, Complementary, or Not Available/Resource Capacity over Resource Capacity
- Internal = “Billable Hours” over Resource Capacity
To answer the question of why the utilization does not seem to register, the above formulas should provide the hint. It could be that the time entry was approved as not chargeable. If that can be ruled out, then potentially the project has not been linked to a project contract, letting PSA recognized approved time entries (regardless of billing type) as an internal kind of work.
Lastly, there are three labels to the Resource Utilization. They represent how close the utilization of the resource is to his/her target. Is the +-20% margin configurable, you ask? Unfortunately, it does not look like it is at this point. I hope it’s something that can be introduced in the near future, for flexibility.
7. Suppose a new project activity comes up which is to be assigned to a resource that has already been added as a member of the team previously. How should this be accomplished?
I was a bit puzzled by this. I thought this could simply be done by adding the new project activity, selecting the specific resource as the assignee, generating a resourcing requirement, and then book. As the recording below shows, it just does not work that way. The button that automatically creates a resource requirement only works for a generic resource assignee (which I don’t get why). This leaves something to be desired.
What do we do then? The obvious alternative is, instead of assigning it to a known resource, assign it still to a generic resource. Not intuitive I know, but this is the best that we could do at this point (unless I’m missing something). I have just posted the idea of extending the generation of resource requirement to even named resources.
That’s about it! I know PSA is massive with other features yet to be explored so I’m gonna save those for future posts…maybe? 🙂