Dependency Management
Let’s dive into best practices for effective dependency management during the planning phase.
We'll cover the following...
What is dependency management?
Dependency management involves identifying and managing the dependencies that exist between different components or systems within a project or program. It also helps minimize the risk of delays or disruptions caused by dependencies and improves the overall reliability and maintainability of the project. Dependencies can be internal, such as dependencies between different modules or components within a system, or external, such as dependencies on third-party libraries or services.
The initial discovery of these dependent complexities should be done in the planning phase of a program. However, if you jump into a struggling program midflight, then be aware that poor dependency management practices are often a culprit for low-performing programs.
Note: Managing complexity is really at the heart of what you do as a technical program manager.
Complexity invites risk, and one of your major jobs is to reduce or eliminate risk. One major contributor to increased complexity is dependencies across many teams, systems, and services.
The value of being a technical program manager
You are not just any program manager. You are a technical program manager.
Every TPgM should have some level of domain expertise within the realm of software engineering. This is critical so that you know how to effectively partner with your engineering counterparts by getting into detailed architectural reviews, getting involved with code reviews, and knowing what type of analytics to look for or ask about.
You should feel comfortable diving into an architectural diagram and examining the potential impacts on other systems and services. If you're not there quite yet, that's okay. Take time to build that skill.
Without some level of domain expertise, you will lack the ability to map ...