Dependency drift fitness function

This blip is not on the current edition of the Radar. If it was on one of the last few editions it is likely that it is still relevant. If the blip is older it might no longer be relevant and our assessment might be different today. Unfortunately, we simply don't have the bandwidth to continuously review blips from previous editions of the RadarUnderstand more
Published: Nov 20, 2019
Last Updated: Oct 28, 2020
Oct 2020

Fitness functions introduced by evolutionary architecture, borrowed from evolutionary computing, are executable functions that inform us if our applications and architecture are objectively moving away from their desired characteristics. They're essentially tests that can be incorporated into our release pipelines. One of the major characteristics of an application is the freshness of its dependencies to other libraries, APIs or environmental components that a dependency drift fitness function tracks to flag the out-of-date dependencies that require updating. With the growing and maturing number of tools that detect dependency drifts, such as Dependabot or Snyk, we can easily incorporate dependency drift fitness functions into our software release process to take timely action in keeping our application dependencies up to date.

Nov 2019

Many teams and organizations have no formal or consistent way of tracking technical dependencies in their software. This issue often shows itself when that software needs to be changed, at which point the use of an outdated version of a library, API or component will cause problems or delay. Dependency drift fitness function is a technique to introduce a specific evolutionary architecture fitness function to track these dependencies over time, thus giving an indication of the possible work needed and whether a potential issue is getting better or worse.