La nota chiave di Neal Ford sull'architettura evolutiva può essere trovata qui.
Parafrasando:
Architecture is the decisions
that you wish you could get right early
in a project, things that people perceive
as hard to change. But what if we built
architectures that expect
change?
An evolutionary architecture supports
incremental, guided change as a first
principle across multiple dimensions.
Prosegue descrivendo diversi scenari architettonici, a partire da Big Ball of Mud, architetture a strati, microkernel e REST, e culminando in microservizi, che afferma di avere n dimensioni della capacità evolutiva (dove < em> n è il numero di microservizi distinti).
Secondo Ford, architetture evolutive:
- Sono liberamente accoppiati e altamente coesa ,
- Sono componibili; i componenti possono essere assemblati per creare nuove architetture,
- Può essere modificato in modo incrementale, senza richiedere una revisione architettonica.
Puoi pensare all'architettura evolutiva come una meta-architettura, se vuoi; un'architettura di architetture. Linee guida che dettano i principi di progettazione che promuovono la fusione di oggetti in argilla anziché in pietra.