In recent chapters, we examined how the initiating phase of the project management lifecycle involved the creation of business cases, feasibility studies, and project charters. Upon approval of these artifacts, the planning phase can begin.

The main activity in the planning phase is to create an in-depth project plan which will involve generating a time and cost estimate based on requirements.
A very quick summary of the process (which I will explain in-depth below) is:
Break down each requirement into a set of tasks. For each task, identify which member of the project team will do it and how long it will take.
Calculate the cost of completing these tasks.
Count the cost of each individual task to determine the cost of team resources.
Add any other non-resource costs to arrive at the cost of delivering the project.
A very common format for writing requirements is user stories. Let's look at what a user story is so that you can see how to estimate costs for a set of requirements .
What is a user story
User stories are short one sentence descriptions of a product enhancement (i.e. a product feature) expressed in the following format:
As a < type of user >, I want < some goal > so that < some reason >
A very common practice is to write user stories on an index card. This ensures that the requirement is written in a short one-sentence format.

Examples of user stories
The following are a few examples of user stories:
As a finance manager, I want to see all unpaid invoices so that I can chase payment.
As a teacher, I want to see when my students submit projects online so that I can correct them.
As a site visitor, I can download a PDF of useful resources to that I can save them for later.

Calculating project cost
A very quick summary of the process of calculating project cost is:
Deconstruct each requirement into a set of tasks.
Calculate the cost of completing these tasks.
Compute the cost of each individual task to arrive at the cost of team resources.
Add any other non-resource costs to arrive at the cost of delivering the project.
1. Deconstruct tasks
A task is a piece of work that a team member can do.
When building digital products, you typically have to do some graphic design, database creation, system programming, HTML coding, and many other tasks to build each user story or feature.
Breaking a user story into tasks example
Imagine the following user story:
As a dentist, I want to mark a tooth that needs a filling for a given patient in our patient management system so that I can recommend treatment during the next visit
In order to actually build this feature, you might sit with your tech team and make a list of the required tasks (which looks like this)
TASK | PERSON WHO WILL DO THIS TASK | ESTIMATED HOURS |
Add a new field to the database. | Database admin | 3 |
The web interface needs to capture when the dentist marks teeth as requiring a filling and tell our system. | Front-end developer | 8 |
When showing teeth, our web interface needs to ask the server if any require fillings. | Front-end developer | 5 |
Our back-end system (Java) needs to save any teeth marked as needing a filling to the database. | Back-end developer | 5 |
Our back-end system (Java) needs to return the patients dental record upon login indicating which teeth require fillings to the front-end. | Back-end developer | 3 |
New graphic designs are needed. | Graphic Designer | 10 |
Translating new text so that this new feature works in all languages (Spanish, Italian, German). | Product Manager | 2 |
The illustration below shows how many hours each team member needs to contribute in order to complete a given user story.
Once you have a full set of tasks, assign a team member, determine duration, then you will know how many hours each member will spend on completing this user story.
2. Calculate the cost of completing a set of tasks
Once you have a set of tasks, know which person will be doing each task, and how many hours are required, you can then calculate the cost of completing the user story showing an hourly cost for each person on the team.
Let's say that the hourly costs of your team look like this:
RESOURCE | COST PER HOUR |
Database Admin | $50 |
Backend Developer | $70 |
Frontend Developer | $40 |
Graphical Designer | $30 |
Project Manager | $60 |
Then you can multiply the hours by the cost per hour of the relevant person and then add those up to get a total cost of completing the user story.
RESOURCE | COST PER HOUR | NUMBER OF HOURS REQUIRED | TOTAL COST OF THIS RESOURCE FOR THIS USER STORY |
Database Admin | $50 | 3 | $150 |
Backend Developer | $70 | 5 | $350 |
Frontend Developer | $40 | 3 | $120 |
Graphical Designer | $30 | 2 | $60 |
Project Manager | $60 | 1 | $60 |
TOTAL |
|
| $740 |
Thus, in this example, the cost of completing this user story is $740!
3. Calculate the cost of each user story
Once you have a list of user stories and a cost for each user story, simply add them together for your resource cost total to complete the user story.
4. Add any additional costs
The Association for Project Management define direct costs as:
costs that are exclusive to the project, programme or portfolio; they include resources directly involved in delivering and managing the work.
They also define indirect costs as:
overheads and other charges that may be shared out across multiple activities or different departments.
Although we have calculated the manpower costs for the project, we will also have to add other direct costs such as:
Specific materials used exclusively for this project including new laptops, servers, etc.
Travel costs for any team members.
A portion of costs for upper management involvement.
We should also consider any relevant indirect costs such as:
Office rent
Employee benefits
The time required of the finance department, contract department etc.
In this chapter, we looked at how to associate a time and cost estimate to each user story in your set of requirements. This enables you to calculate the resource cost of completing these requirements.
In the next chapter, we will use these estimates in a project plan. A project plan is a document that helps us to manage the progress of the project.
Summary
User stories are short one sentence descriptions of a product enhancement expressed in the format: As a < type of user >, I want < some goal > so that < some reason >.
You can break down user stories into tasks.
Once you know which team members will do a task and how long the task will take, you can estimate the cost of creating a user story.
You can add the cost of all user stories to calculate the time and finances needed to develop the entire set of requirements.
Additional resources
Practical tips for splitting a user story into tasks.