Disciplined Agile

Leverage and Enhance Existing Infrastructure

This ongoing process goal describes how we will ensure that our team will take advantage of, and hopefully improve, our existing organizational assets. These assets may include guidance, functionality, data, and even process-related materials. This process goal is related to the Improve Quality process goal which focuses on strategies to pay down technical debt in such assets, and the Asset Management process blade which focuses on the reuse of existing assets.

To be effective, we need to consider several important questions:

  • What guidelines should we adopt and follow?
  • What technical assets, such as services and legacy systems, can we reuse?
  • What existing data sources can we access?
  • What practices and procedures can we adopt?
  • What can we give back to the rest of our organization?
2021 Project Management Institute Leverage and Enhance Existing Infrastructure v5.2 Reuse Legacy Asset Configure asset Use as is Evolve reusable asset Copy and tailor Adopt Guidance Adopt enterprise guidance Evolve enterprise guidance Adopt industry guidance Develop new guidance Work With Legacy Functionality Adopt external assets Develop reusable assets Refactor existing assets Use existing assets Work With Legacy Data Database consolidation Database refactoring Use existing data sources Work With Process Assets Adopt existing templates Adopt external process assets Evolve process assets Share process learnings Tailor existing process

Figure 1. The Leverage and Enhance Existing Infrastructure process goal diagram (click to enlarge)

You can use the DA Browser to learn more about the options in the goal diagram of Figure 1. 

Why This is Important

There are several reasons why this goal is important:

  1. A lot of good work has occurred before us. There is a wide range of assets within our organization that our team can leverage. Sometimes we will discover that we need to first evolve the existing asset so that it meets our needs, which often proves faster and less expensive than building it from scratch.
  2. We can reduce overall technical debt. The unfortunate reality is that many organizations struggle under significant technical debt loads—poor-quality code, poor-quality data, and a lack of automated regression tests are all too common. By choosing to reuse existing assets, and investing in paying down some of the technical debt that we run into when doing so, we’ll slowly dig our way out of the technical debt trap that we find ourselves in. 
  3. We can provide greater value quicker. Increased reuse enables us to focus on implementing new functionality to delight our customers instead of just reinventing what we’re already offering them. By paying down technical debt we increase the underlying quality of the infrastructure upon which we’re building, enabling us to deliver new functionality faster over time.  

Key Points

  • Greater levels of reuse lead to lower costs, quicker time to market, and higher levels of quality.
  • Reuse is hard—really hard.
  • Paying down technical debt is critical to your organization’s long-term success.