Resource planning is crucial for small consulting firms to effectively allocate developers across multiple projects. The document recommends starting simply by planning only for developers in weekly increments. It involves identifying available developers and their capacities, current projects and their needs, and adjusting to keep the difference between available and needed resources at zero. Regularly updating the shared resource plan helps optimize allocation and improves estimates over time. Keeping the process simple and data-driven helps objectively evaluate scenarios to deliver projects on schedule.
8447779800, Low rate Call girls in Tughlakabad Delhi NCR
Back to Basics: Resource planning
1. Back to Basics Series
Topics
Difference between project planning and
resource planning
Resource planning Getting started with resource planning
Improving resource planning
Thomas Sarlandie Intended audience
Management teams of small to medium
2013 02 28 consulting firm doing on-contract work
4. What for?
Deliver on-time
Make sure project start on-time
Maximize team staffing
Hire before the rush
Stop working nights
Avoid peaks/downs in team occupation
5. Why is it so hard?
Software development planning is not easy to begin with
It is even more challenging when
developers need to regularly switch from one project to the other
project specifications change regularly
priorities change
6. Why is it so hard?
Software development planning is not easy to begin with
It is even more challenging when
developers need to regularly switch from one project to the other
project specifications change regularly
priorities change
Planning in the context of a small consulting company is very hard.
7. Why is it important?
To keep your customers
To keep your employees
So that your company can grow
8. Why is it important?
To keep your customers
To keep your employees
So that your company can grow
Resource planning is crucial to the future of your company.
10. Project planning
Useful to:
time
Organize one project
Forecast “end” time Spec
Follow progress
Dev
Not useful to:
Define what a developer needs to do Test
tasks
this week
Make sure you have enough developers
for all the projects
11. Resource planning
A different perspective - focused on time
the resources across all the projects
Joe Project A Project B Project C
Useful to:
Sue Project A B A
Allocate resources to projects
Tim Holidays Project C
Anticipate resources problems:
resources
Over staffing
Under staffing
12. Different types of planning
time
Spec Joe Project A Project B Project C
Sue Project A B A
Dev
Tim Holidays Project C
Test
resources
tasks
Both planning serve different purposes. They are both very important.
14. 0. Define what is a resource
It is easy to get over excited when modeling your business
Different type of resources: project managers, developers, testers, etc
With different types of seniority: junior, senior, architect, etc
Start simple - In most teams, the bottleneck is the developer
Make a resource planning for the developers only - Do not count project
management, artists, etc. - Only one “type” of developer.
15. 1. Choose some units
Standard scenario
Your number one measurement unit is a
A team of 2 to 50+ people man/day
Projects from 1 week to several months
Time step in the planning is week
Should work for 90% of small teams
Exceptions
Teams who have to work on very small assignments Hours of work may be a better unit
Ex: Design team works a few hours every week on a very
large number of different projects
Very long projects Use months instead of weeks
16. 2. Identify your resources
Wk 9 Wk 10 Wk 11 Wk 12
List all your team members 25-Feb 4-Mar 11-Mar 18-Mar
Write their availability in man/day for Joe 5 5 4 5
each week
Sue 5 5 4 5
5 if available for the entire week
4 if there is a day-off Tim 0 0 4 5
0 when on holidays/training/etc
http://webapps.stackexchange.com/questions/4588/how-to-show-the-week-number-on-google-calendar
17. 3. Identify your projects
List all of your projects Wk 9 Wk 10 Wk 11 Wk 12
25-Feb 4-Mar 11-Mar 18-Mar
Based on the project planning
Write down how many man-days you Web4.0 10 10 10 5
will need for this project per week
iGame 5 5
One full time developer = 5
VivApp 5 5 2 0.5
Two full time developer = 10
Plan time for bug fixing, deployment,...
http://webapps.stackexchange.com/questions/4588/how-to-show-the-week-number-on-google-calendar
18. 4. Start planning
Wk 9 Wk 10 Wk 11 Wk 12
25-Feb 4-Mar 11-Mar 18-Mar
Adjust planning and projects to bring Available 10 10 12 15
the delta to 0
Needed 15 15 17 10.5
You can postpone a project
You can add resources Delta -5 -5 -5 4.5
19. 5. Make it a habit
Fill the planning at least two or three
Each team leader is responsible of the weeks in advance
planning of his/her team
Delta must-be 0 on monday morning
No one else has write access to the
planning If you think your developers can work
faster: reduce the work in the project
Everyone can read it
If you do not have enough resource:
Planning needs to be updated every make a choice
week so that the developers know what
to do the following monday One day of work is always 1 - Does not
matter how many hours
20. Benefits of “simple planning”
Forces you and other stakeholders in the company to look at the situation
objectively with numbers instead of feelings
Gives you a tool to evaluate different scenarios
Provides detailed and valuable information on team staffing
Can easily be shared with all the project managers, the developers, etc
21. Getting started with resource planning
Wk 9 Wk 10 Wk 11 Wk 12 Wk 9 Wk 10 Wk 11 Wk 12 Wk 9 Wk 10 Wk 11 Wk 12
25-Feb 4-Mar 11-Mar 18-Mar 25-Feb 4-Mar 11-Mar 18-Mar 25-Feb 4-Mar 11-Mar 18-Mar
Joe 5 5 4 5 Web4.0 10 10 10 5 Available 10 10 12 15
Sue 5 5 4 5 iGame 5 5 Needed 15 15 17 10.5
Tim 0 0 4 5 VivApp 5 5 2 0.5 Delta -5 -5 -5 4.5
Getting started with resource planning is extremely easy!
No excuse!
24. Assign projects to specific developers
Dev Wk 9 Wk 10 Wk 11 Wk 12
25-Feb 4-Mar 11-Mar 18-Mar
Web4.0 10/10 10/10 8/10 10/5
Joe 5 5 4 5
Sue 5 5 4 5
iGame 4/5 5/5
Tim 4 5
VivApp 0/5 0/5 0/2 0/0.5
25. Assign projects to specific developers
Dev Wk 9 Wk 10 Wk 11 Wk 12
25-Feb 4-Mar 11-Mar 18-Mar
Web4.0 10/10 10/10 8/10 10/5
Joe 5 5 4 5
Sue 5 5 4 5
iGame 4/5 5/5
Tim 4 5
VivApp 0/5 0/5 0/2 0/0.5
Joe 5 5 4 5
Sue 5 5 4 5
Tim 4 5
26. Assign projects to specific developers
A little more complicated to set up
Allows team leader to account for each team member specificities (seniority
level, familiarity with project, technologies, etc)
Actually tells the developer what to do this week
27. Visualize your planning
Available Needed
Use your data to communicate 17
visually on your planning
12.75
Learn to recognize trends 8.5
Manageable peaks 4.25
Non-manageable peaks ...
0
W9 W10 W11 W12
28. “Non-billable” time
Developer
Evaluate and measure “non-billed” time Team Leader
(x 5)
Internal projects
Team meeting 0.5 x 5 = 2.5 0.5
Support of sales team
Management
0.3
Meetings (especially for team leaders) meeting
Sales support 0.5 1
This will help you think about the cost of
non-billable Total 3 1.8
Total non-billable time: 4.8 / 30 = 13% or 1 person
29. Improve your time-estimations
Start with the number of days sold to the customer
Ask the developer to re-evaluate time before the beginning
of development
If needed, adjust the functional specifications to fit in
budget
Or adjust budget in planning
Look at the number of actual days spent
Use timesheets if possible to estimate next project
30. Improving your resource planning
Assign projects to specific developers
Visualize your planning data
Measure non-billable time
Improve your time-estimations
31. Key take-aways
Keep your planning very simple to get started
Only plan for your bottleneck resources
Use simple tools (Excel, Google spreadsheet, etc)
Make planning a habit: Update your planning every week
Share your planning with the company
Use your planning to learn and improve
32. Thank you!
Recommended reading
http://en.wikipedia.org/wiki/
The_Mythical_Man-Month
"adding manpower to a late
software project makes it later"
www.sarfata.org
@sarfata
thomas@sarlandie.net