24 November 2015
Nobody likes dependencies in agile projects. As I talked about in a previous blog, we interviewed more than 10 program managers leading a sizable number of teams, and 80% of them cited “dependency management” as important job at a high level to make the program successful. Dependencies limit team level agility, wrench away your control over the program, and delay delivery.
How to resolve them? There is some good advice on how to manage them in practice. At the same time, you also need pick the right software to support these best practices. Here are four tips for you to consider when picking your project management tool for dependency management.
Traditionally, people tried to predict all dependencies in advance. This is not only a significant and time-consuming effort, but unfortunately, it won’t help. In agile software development, the majority of dependencies arise after the program starts and while your team is adapting to the business changes. The real challenge here becomes how to react on the dependencies identified during implementation. You need to get real end-to-end visibility into the progress of the multiple teams in your program, so that you can help remove roadblocks for your teams as early as possible.
Here is a short checklist you can use to check whether your tool can support real-time visibility into processes:
In big software programs, teams should not depend on program managers or PMO people to resolve inter-dependencies. This centralized decision-making, coordination process will create hierarchy and reduce your organization’s agility. PMs should help individual teams to build relationships across the organization and resolve dependencies, and encourage them to directly collaborate with peers from other teams.
On tool side, PMs need tools that increase communication, collaboration, and unity between teams. Peer-to-peer interactions happening in their day-to-day work context would help iron out most of the dependencies and ensure that projects can move forward without manager intervention.
Here is the short checklist you can use to check whether the tool can support Peer to peer collaboration:
Even with peer-to-peer collaboration, there are still some dependencies or program-wide impediments which need program managers to facilitate, or even allocate extra resources, for resolution. You need a tool to make it very easy to identify dependencies and sort dependencies by specific criteria. This allows you to surface the dependencies that—based on your experience—have the highest potential to cause problems. Having surfaced these dependencies, project and program managers can allocate enough time to resolve them.
Here is the short checklist you can use to determine whether the tool can support prioritization at the program level:
As your company and operations grow, your software tool needs to support the growth. Your tools and technologies must scale with your teams. Real scalability should respect the heterogeneity of teams as well as facilitate the right level of standardization. As the three criteria discussed above are all relevant to the scalability of the tool, you need also access the following points:
We at Mingle also asked ourselves these questions. In order to be able to answer them all with a “yes”, we decided to build a new dependency management solution into Mingle. In it, we gave teams the ability to resolve dependencies autonomously, and made a real-time, program-level “dependency board” where management can see all the dependencies in one place.
This new feature will be released on December 8th and we’d like to invite you to be one of the first to try it. Sign up for a Mingle free site now and you will be notified as soon as it is in production. We hope this post has been helpful and that our dependency management will help your projects be more productive, now and in the future.