ResourceFirst allows for the creation and management of teams, not just individual resources. This is crucial to Agile project management, but is also valuable for any organization that organizes their work by teams.
This article outlines the steps to managing by team, including:
- Creating Teams
- Assigning Resources to Teams
- Assigning Teams to Projects
- Viewing a Combined Effort Forecast (which shows forecasted effort based on individual assignments, team-based assignments, and skill assignments).
Tips & Tricks for Teams
- When first starting to use Teams, go to Resource>Assignment>Options>check the Team Assignment Mode. Going forward when on the Assignments page, you will see "Team" in the Type column for easy identification.
- You assign the Team to a project and apply forecasts values to the Team and not all of the individual resources.
- Team-based assignments are only created on the Team>Assignment page; they can not be created on the Resource>Assignments page.
- Adding a resource to a team includes them on the projects the Team is already assigned to.
- When a Team is allocated to a project, the effort forecast applied to the Team gets applied to each Team member. For example, if Team Chill is assigned to Project A for 1 FTE in April, each team member will assume a 1 FTE forecast in April. And, if one of those team members is already assigned to a different project individually for .5 FTE, that team member's Total Demand will show 1.5 FTE for April.
- On a resource's assignment page, it is easy to identify which assignments are for the Team they are members of and which are individual assignments. Also, notice there is a tab called, Team Allocation. This page specifically shows which projects that resource's Team is assigned to.
- This is an important concept in ResourceFirst: The organization's overall priority for work (of all types) takes precedence over the delivery methodology. Said differently, Teams will not get more or less priority over individual assignments, rather it is the project priority that drives when the work is allocated.
To create a team, go to the Teams tab in the Resource Center (accessible by clicking on the people icon in the main ResourceFirst icon tray in the upper left).
You'll be presented the following screen. Note that the existing teams are shown, along with the Resource OBS node the team is created in, plus the velocity of the team. There are icons to the far right of each row to view/add resources to the team (the people icon) or to view/add team project assignments (the briefcase icon).
To add a new team, click the "+" icon on the upper left. To delete a team, select the row(s) you want deleted and click the trash can icon. The circular icon in the middle is to reload the screen.
When you click the "+" icon to add a new team, you'll be presented with the following popup dialog.
- Select the Resource OBS node you'd like the team to pull its resources from (be sure to select a node high enough to accommodate all resources needed for the team.
- Name the team.
- Set the team's velocity. Note: if you are unsure of the velocity at the time of creating the team, simply use a placeholder number and come back later to update it.
A Word About Velocity
Velocity is relative and varies from company to company. Velocity speaks to the number of "user story points" the team can complete in a given sprint. Agile projects are planned and tracked in terms of story points. Velocity charts can show how many points the team is completing per sprint vs. the points that were planned for that sprint. Observing actual team velocity over time (i.e., how many points the team is actually completing per sprint) will allow you to revise the team's standard velocity accordingly.
Since velocity is based in story points, and since there's no real industry standard on the estimation of story points (some companies use T-shirt sizes, some use a relative number from 1-3, 1-5 or 1-10, some use blocks of 10, 50, 100, etc.), how you set velocity will depend upon your desired story point model.
The most common method is to use 1, 2, 4, 8, 16 to represent T-shirt sizes (x-small, small, med, large, x-large) to represent points. In this case, you might set the velocity to 30, which means the team can complete 30 points in a typical 2-week sprint. In any case, story points should be assessed depending on:
- the amount of effort required
- the complexity of the work
- the uncertainty involved
- the expected duration (given waiting for customer feedback, etc.)
- and anything else you wish to consider
If you're not using Agile project management or story points and simply want to track in teams, then just use 30 (or any number) for velocity. The field is mandatory.
Assigning Resources to Teams
Clicking on the people icon to the far right of any team row will take you to the following screen. On the left pane are your teams, along with icons to toggle between showing team resources or team project assignments.
To get back to the main team screen, simply close the right panel by closing on the "x" to the far upper right of the right panel.
The Team Resource view below allows you to add resources to the team and modify individual effort forecasts for the team members.
- To add resources to the team, highlight a team on the left and then click the "+" icon in the upper left of the right panel.
- When clicking on the "+" icon to add resources to a team, you'll be presented with this popup dialog. The resources within the team node will be shown for selection.
- The DAvail field on the right represents the percentage in which the resource should be allocated to the team. The default is 100%. If a resource should only be on the team half time, then set this to 50%, or the desired percentage. You can modify this percentage at a later time as needed.
- Upon pressing the "Add" button, the resource will be added to the team, and the effort (FTEs or hours, depending on your configuration) will be distributed based on their capacity and the team allocation percentage you specified. You can then revise individual effort or hours assigned by time period if desired.
Important: Adding a resource to a team includes them on the projects the Team is (or will be) assigned to. Also, keep in mind that you will assign the Team to a project and apply forecasts values to the Team and not all of the individual resources. As a result, this forecast is applied to each team member based on their percent allocated to the Team.
See "Understanding Resource/Team Allocation Percentages" below the image for more details on how resource and team assignments work together.
Understanding Resource/Team Allocation Percentages
The DAvail field represents the availability of the resource to the team. So, if you put .8, you are planning for the resource to work 80% on team activities and 20% on either another team or direct project work. The system will track that resource's overall workload, across team work and non-team work.
As an example:
- Lets say you set Paul to be available 80% to a Team A.
- Then you assign Team A 50% to Project X for February.
- ResourceFirst will automatically create an assignment for Paul on Project X for .4 for February (.8 * .5).
- (Note, if you also had Bob allocated to Team A for 80%, then Bob would also have an assignment to Project X for .4 in February. If you added a 3rd resource, Pedro to the team, allocated 100% to the team, then Pedro would have an assignment for .5 (100% of the team's .5 FTE assignment that month to that project. Paul and Bob would each still have their .4 allocations. In other words, the system does NOT divide the effort among the team, it assigns each team member based on what percentage they're allocated to the team).
- Let's say you also assign Paul directly to Project Y (a non-Agile project) for .7, it will show Paul slightly overbooked. (.4 + .7)
NOTE: If you're using hours, the calculations are based on hours, but the concept is fundamentally the same:
- Lets say you set Paul to be available 50% to a Team A. His capacity for February is 160 hours.
- Then you assign Team A 160 hours on Project X for February.
- ResourceFirst will automatically create an assignment for Paul on Project X for 80 hours in February (.5 * 160).
- (Note, if you also had Bob allocated to Team A for 50%, then Bob would also have an assignment to Project X for 80 hours in February.)
- Then, if you assign Paul directly to Project Y for 100 hours in February, it will show Paul as slightly overbooked for February at 180 hours (80 + 100).
- Let's say you go back to Project X, where Paul and Bob are each assigned for 80 hours, and you change Team A's assignment to Project X to 320 hours. The system will change Paul and Bob's assignments for February to Project X to 160 hours each.
- If you changed the Team A assignment to Project X to 400 hours, it would split it across Paul and Bob for 200 hours each, using their 50% allocation (50% of the team's assignment of 400 hours.
- Let's add a 3rd person to the team, Pedro, who's available full time to the team for 160 hours in February. Now, Paul and Bob would still have 200 hours each assigned (each half of 400 hours), and Pedro would have 400 hours assigned (100% of 400). In other words, the system will take the Team Allocation and assign each resource based on the total team hours times their team allocation percent. It assumes each team member is working on the team according to their team allocation. It does NOT divide the effort across the team.
Assigning Teams to Projects
Once resources are assigned to teams, in order for them actually to be allocated to any work, the next step is to assign teams to projects. Click on the briefcase icon on the left pane to switch to the Team Projects view (or click the briefcase icon to the far right of any row on the main Teams screen).
Below is the Team Projects view. The left pane shows the teams and the right pane shows the projects the team is assigned to (by priority), along with the effort forecast for the team. You can revise the effort forecast by clicking on any period cell.
Reminder: The effort forecast for the team is applied to each of the team members based on their individual allocation percentage to the team. It is NOT divided among them.
- To add a team assignment, click the "+" icon in the upper left of the right pane. You'll be presented with the following popup dialog (image below).
- Projects will be shown that fall within the current active Project OBS node filters. Simply select a project and click "Add" to add the project to the team.
- Then you'll need to enter your effort forecast for the team in the Team Projects view (above).
Viewing a Combined Effort Forecast
ResourceFirst is unique in that it allows you to see a combined effort forecast to the following types of work:
- Skill Assignments (skill assignments waiting to be filled by named resources)
- Resource Assignments (people assigned to projects directly)
- Team Assignment (people assigned to projects by virtue of their role on a team)
Forecast is shown in project priority order, and shortage indicators are calculated accordingly.
For example, in the image below, on the first row, Phil is assigned to a project called "Admin" for July at .80 of an FTE (80%). This is an individual assignment (Type column shows "Resource").
Further down the screen in July, you'll see in yellow that Phil is also assigned to a project called "Forecasts" via a team assignment (Type column shows "Team"). The amount assigned is .23 (which combined with his .80 individual assignment, makes him slightly overbooked, hence the yellow color).
Why did the individual project take precedent, while the team assignment is shown as overbooked? This is because allocations are calculated in priority sequence. The first project is a higher priority, while the team-based project is lower and thus considered overbooked. To remedy this, Phil's time on the team-based project may need to be reduced slightly (via the Teams tab). Team-based assignments are only created on the Team>Assignment page; they can not be created on the Resource>Assignments page. This approach is taken to maintain the integrity of the team assignments.
This is an important concept in ResourceFirst. All work (of all types) should have resources allocated based on their overall priority to the organization, not in silos of various methodologies.
For more on managing Agile projects, including assigning story point to sprints from the backlog, see "Managing the Agile Backlog" and "Managing the Sprint Roadmap" in the ResourceFirst Project Management section.