The ins and outs of the agile planning process
By: Emily Finlay:
Last week, we introduced a revolutionary project planning method called agile planning. This technique offers numerous benefits for teams and businesses, so we now want to focus on the specific process you can use to improve your projects. Use the agile planning process and tips below to guide your agile techniques and create incredible results.
What is the agile planning process?
The agile planning process involves breaking a long-term project into short sprints of work. Each sprint, or iteration, focuses on creating a single piece of the overall project and delivering it to the client. The goal is to improve the flexibility, quality, and efficiency of your work and team for this project and any that come after.
Before you can implement this method, however, you first need to determine the steps involved in your planning and iteration processes.
Agile planning steps: project preparation
As with any big project, you have to understand the full scope before you can focus on the details. The following steps are used to plan for the project as a whole before you begin working on your deliverables.
Now, it’s important to note that this isn’t meant to be a step-by-step project plan. Instead, focus on preparation and vague expectations. Estimation is a key characteristic of every agile project and will help keep your project flexible as you work.
1. Create a project overview
Start by determining (on a broad spectrum) what the project will entail. Nail down the top priorities for both your team and the client. Your overview should ultimately communicate the vision, generalized roadmap, and anticipated benefits for your company.
2. Team-led pre-planning
Your team is the backbone of your project. Using your overview, determine which of your employees is the best choice for the project’s demands. Then, once your team is selected, let them brainstorm about the tools, resources, time, and budget they need to complete it. This list should include estimates for everything required to deliver the end product to the client, not just what’s necessary for the upcoming iteration.
3. Determine the iterations
Now that you have an idea of what’s involved, you need to plot out the iterations your team will follow to finish the project. Start by breaking the project into the multiple deliverables that will define the sprints. You can do this by outlining the features needed for the project before determining the details and factors involved with each.
Next, plan the length of the iteration cycle, usually between one and six weeks. Every deliverable must be completed within this timeframe, so adjust the sprints accordingly. You should also use this time to prioritize your iterations. We recommend completing items of high importance and risk first to allow time for unexpected problems and complicated solutions that might have a significant effect on the bulk of the project.
4. Build a roadmap
Since every cycle should be about the same length, the previous step will naturally provide an estimate for the total project duration. The client should have an idea of when each deliverable will be delivered, as well as the number of items in each delivery. Your team can decide to provide one deliverable per release or to have fewer release dates with multiple deliverables per release. And remember, you aren’t creating deadlines but ranges of time. Keep your delivery and end dates vague rather than hard deadlines.
When you have all of this information, you can create a roadmap that outlines an estimation of the project. This roadmap shows what is due when and how the project will develop over time. Even though you might have to re-prioritize or adjust things as you go, your team can use this plan to ensure they stay on track.
Agile planning techniques: completing iterations
Now that your sprints and deliverables are planned out, you can start working on the bulk of the project. In the steps below, we’ve outlined the basic steps you can take to create the process you will follow for each of your sprints. This process will improve and evolve with each iteration, so be sure to collect and track your data as you go.
1. Plan with your team
Every cycle begins with a team meeting. The group will discuss the outcomes of the previous iterations, as well as the client feedback. Use this time to determine if you need to adjust/re-prioritize the roadmap, remaining sprints, and product features. You should also estimate the new scope of the project, evaluating the time and costs required to complete the adjusted requirements.
Next, take a look at the upcoming iteration and deliverable. Break down the deliverable into specific features. Ensure you have the resources the team needs for this part of the project. This meeting (or meetings, but no more than two) should only take a few hours. You want your team to get better at estimating with time, so use a time limit to force efficiency.
If there are any changes required from previous feedback or problems, make sure they are worked into this next iteration. This might mean moving features to another iteration. If so, don’t panic. The agile planning process gives you the flexibility and time to make these changes without wreaking havoc on the rest of the project.
2. Create tasks
Now that you know what’s involved with this sprint, break the features into the tasks necessary to complete them. Ensure these tasks include enough detail to show workers what you expect from them. You’ll want to keep these assignments small, work your employees can accomplish in about a day at most.
Most importantly with this step, don’t create tasks based on your team members’ availability. Value is top priority here, so you need to be objective about the requirements for this part of the project.
3. Assign tasks to team members
Let everyone know what they are responsible for in this sprint, checking for clarity as you go. For some cycles, you might have tasks for everyone. Others will fall more heavily on some shoulders than others, perhaps even leaving some workers without much to do. This is a common scenario in the agile planning process and nothing to worry about. As long as the best people for the job are working on the right tasks, this method will keep the value of your work high.
4. Track your progress
Keep track of the tasks and goals for each iteration on a physical, highly visible chart or grid. You’ll want to include task assignments, the time anticipated for each task, and the actual number of hours spent on each task. Every team member should track and add their own data so your numbers are accurate.
Visualizing the team’s progress keeps everyone on schedule. Since most of your work will depend on or affect another part of the project, this chart can help your team align their efforts.
It’s also vital for future iterations. The more you know about what your team is capable of doing and how long it takes, the more effective your agile planning process will be. Your team will use this information to make estimates for every new iteration, so keep and combine all the data you collect.
5. Gather feedback
While submitting the deliverable is the goal of each iteration, the cycle isn’t finished until you get feedback from the client. Their assessment should be in-depth and detailed. You need to know what they think of the project so far and of this piece in particular. Some questions to ask include:
- Are we meeting expectations for quality and functionality?
- Is there anything you don’t like? How would you resolve this issue?
- Do you have any changes to the original scope? Why?
This feedback will drive the work you do next, so it’s critical to understand what the client is thinking at this stage. Making micro-adjustments as you go is far easier than implementing major changes at the end of the project. The client should understand this purpose at the beginning, encouraging them to give the feedback you need.
While you are waiting to hear back from the client, ask your team to collect their thoughts on the sprint and results. You will go over this feedback during the team meeting for the next iteration. Ask them to include the problems they faced, what the solutions required, and how they could improve the work for the next cycle. It might be a bit of a struggle at first, but employees will soon start making notes as they go along. The longer you follow the agile method, the better your feedback, and work, will be.
6. Never stop improving
This isn’t technically a step, but it is an important part of your agile process. By keeping improvement in mind, you can guarantee the quality of every piece of your project. And, once that project is done, it will help you create better results, sharpen your team’s abilities, and increase your efficiency in everything you do. As a company, your work is never done. Your desire to do better shouldn’t be either.