The Planning Phase of our projects is one of the most important steps in successfully meeting the objectives we have agreed upon with our clients. After the Discovery phase we have a clearer understanding of the product our clients need, their constraints, when they need each component, the budget and the scope of the solution. Once we agree on execution, it all goes into a Statement of Work (or SOW), and we start planning the product.
The first activity for the manager of a newly assigned project is to review all the information provided. Then, I’ll meet with the team that was involved in the Discovery Phase to gain deep knowledge of the agreement and required product. Then, with the COO, we review the skills we’ll need for the project. Next, we’ll pinpoint the professionals who would be best suitalbe for each role. Finally, we agree on an assignment plan.
All the information is added into a document called Project Plan containing the following:
Roles and Responsibilities:
We have a standard list of Roles & Responsibilities required for Agile Software Development and Project Management activities. Based on the project needs and team size, we refine the list and add the names and contact information for each person performing each role.
Typical roles that can be found are: Executive Team, Sponsors, Product Owner, Account Manager, Content Manager, Project Manager and Scrum Master, Art Director or Creative Lead, UX Lead, Technical Lead, QA Lead, Business Analyst, Designer, Developers Testers.
The important outcome of this list is to understand who is who in the project, plus the activities and responsibilities expected from each person.
We agree on a timeline where the Sprints and deliverables are defined.
We agree on the Management and Scrum meetings throughout the project so we can all book our agendas accordingly. The meetings can be all or some of the following:
For Scrum Team: Sprint Planning, Sprint Review or Demo, Daily or Stand ups, Retrospectives.
For Management: Weekly Status, Steering Committee, Change Control Meetings, Backlog Grooming and Prioritization, Sprint Pre-plannings.
Staffing and Hours Report
Here we define the team that will be allocating hours to the project budget, their percentage of assignment, the start and end dates planned and the total hours planned. During the development of the project, the hours are reported and added per week. That way, we can keep track of the planned hours and the hours burned in order to control the overall budget.
This is a list of any other resources needed such as hardware equipment, licences, training material, etc.
Here, we identify all the stakeholders of the project so we can plan communication accordingly.
The first Sprint that we plan is Sprint Zero. This sprint is to perform all the startup tasks. These are:
- review the scope and build the backlog of stories to be developed
- assign team members
- prepare environments to develop and test
- prepare framework or bootstrapping
- perform any high-level designs required: wireframes and mockups
- obtain other resources needed
- define the timeline with more details (for example, the objectives for each sprint)
The Business Analyst (BA) defines in detail the stories to be developed in the first sprint so we are ready for the Sprint Planning. The stories contain a detailed description of what this part of the solution should do, adding any business rules, screens required, validations, text, etc, as well as what is called the Acceptance Criteria which details what needs to be met for the story to be considered finished and acceptable.
In the Sprint Planning meeting, the BA explains the story to the team, then any questions are answered by the BA or the Product Owner and finally they are estimated in Story Points, a measure based on complexity.
The process continues until the team believes the scope is enough for them to build and test during the sprint. The team commits to the objective and the sprint starts.
When the sprint ends, after the Sprint Review meeting, a new planning takes place. This process is repeated at the beginning of each development sprint.
Planning is a very important phase in any project since many matters are defined that impact on the expectations and success of the project. Such matters include:
Confirmation that the product can be developed with certain technology and/or delivered on a certain date
Assurance that the team is available and possesses the right skills to start when needed
Certainty that the scope and backlog is understood, prioritized and estimated at a high level in order to agree on objectives and deliverables.
The next step of the Development process is how we go about developing each sprint, but you’ll have to wait for next time, since that’s a whole new different post!