As a project manager, it’s easy to feel as if you have an impossible number of work items to juggle and people to make happy. Customers may be frustrated with the rate at which you’re releasing new features–or the frequency with which you’re fixing bugs–and the variability in your team’s metrics may make it difficult to provide reasonable estimates.
If you simply maintain the status quo, your project could end in failure–or at the very least, burn out some of your team members (or you!). In this case, it’s best to take a step back and consider these 3 tips to stabilize your delivery process and gain back your sanity.
Stabilize Your Backlog
The first step you can take to stabilize your delivery is to take a closer look at the work in your backlog.
- Evaluate & Organize - It’s not uncommon for a backlog to grow unwieldy over time. Take the time to consider the work items you’ve collected. Are all your backlogged items still valid? Will they bring value to your business? Based on your customer feedback, is anything missing? Take stock of the work that needs to be completed.
- Prioritize & Plan - Once you know what work exists, prioritize it in a way that makes the most sense for your business. By using a project management tool like DevStride, you can work with the rest of the team to estimate the time or effort it will take to complete the given work items, and build a roadmap that everyone can agree to.
- Make Your Roadmap Visible - Everyone should be aware of the prioritization of work items and informed of the progress being made on those items. Make sure the team knows what work is coming next. By knowing the placement of items on your roadmap, you can also give customers more reliable estimates on when new features will arrive.
Stabilize Your Process
After you have considered the work that needs to be completed, it’s time to consider the processes by which your team approaches and completes work.
- Review Work Methodology - Whether your team uses an Agile methodology, such as Scrum, Kanban, or Extreme Programming, or something else, review the defined procedures and make sure that the processes your team agreed to are actually being followed. Has your Scrum dissolved into SrumBut? If your team is working outside the guidelines they’ve set, consider how the process might be tweaked to better fit your team’s working style. In some cases, you may want to reconsider whether the methodology you’ve chosen makes sense for your team.
- Consider Development Best Practices - You can implement proven development best practices to help stabilize your product. Automated Testing, Continuous Integration/Continuous Delivery (CI/CD), and Infrastructure as Code (IaC) all require an upfront time commitment to implement, but can quickly lead to a product with fewer bugs and time saved by automating what were once manual processes.
- Establish Metrics & Monitoring - Although you may be able to feel when a project or team is struggling, it’s helpful to have the data to support that feeling. Establish a set of metrics that matter to your team, and track and monitor those metrics regularly. Different teams may have their own set of metrics that makes sense for them, whether that’s the Velocity of story points completed each sprint, the Earned Business Value of a new feature, or the Cycle Time of a bug. Trends in performance metrics over time are a clear indicator of whether you’re achieving your goal of stability.
Stabilize Your Team Health
After reviewing the work and your processes, you should also evaluate the overall health of your team.
- Consider the Work Items - If the team’s attention is split between multiple projects, it’s easy to lose time to context switching. The more a team can concentrate on a single project, the more efficient they’ll be on that project. If the team must split their attention, consider grouping tasks belonging to a project together on your roadmap so that an entire work cycle – or at least a block of days – is focused on a single project.
- Evaluate Your Tools - Ensure that the team has the tools they need to do their job. Enable your team members to raise concerns and give feedback on what could improve their productivity. If the team is currently undertaking manual processes that a tool could automate, the time saved may well be worth the price. Conversely, if the team is avoiding an existing tool, it may be time to replace it.
- Remember Your Team is Human - Sometimes, team instability can be caused by human factors outside of your control: illnesses, changing jobs, or just conflicting personalities. A group of people working together is not automatically a team; rather, it takes time for a cohesive team to form and work consistently together. Before restructuring your team, consider if the members could just use more time working together, or whether work can be better aligned with team members’ strengths.
Finally, while it’s important to know that you won’t be able to stabilize your delivery processes overnight, remember that small changes can make a large impact quickly. Moving towards stability is an ongoing process that your team will have to work together to achieve.