liveBook · Manning

Architectural fitness function

As explained in Effective Platform Engineering

Architecture fitness testing is automated or repeatable testing that verifies whether an architecture continues to satisfy defined structural and quality constraints.

An architectural fitness function is an automated or repeatable test that checks whether an architecture still satisfies defined structural and quality constraints. It supports evolutionary architecture by making migration risks visible and increasing confidence that changes preserve intended boundaries. section 2.3.3 section 2.4

A platform can use fitness functions to protect abstractions that let services move between cloud providers. For example, a repository layer can isolate service code from relational or unstructured datastore implementations. section 2.3.3

Figure 2.12 When a particular service within the API needs to interact with the API database, it calls a repository function that provides all the normal database methods. The repository function would call the datastore functions for the type of database the API needs to use (relational or unstructured, in our case).
A close-up of a text

AI-generated content may be incorrect.

The diagram traces a service request through repository and datastore layers, showing where an architectural boundary can be tested. section 2.3.3

How Effective Platform Engineering covers it

How deep it goes
Defines migration-risk assessment and demonstrates executable layer-access assertions, but does not detail test implementation or reporting.
Examples
Uses a Teams API, relational and unstructured datastores, repository layers, and pseudocode asserting permitted layer access.
What you can do after
Evaluate architecture changes by checking whether service, repository, handler, and datastore dependencies obey defined boundaries.
How it connects
Connects evolutionary architecture, repository pattern, datastore abstraction, layered architecture, and software-defined platforms.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Effective Platform Engineering. The section links point to the parts of the book it draws on.