Change Is The Only Constant By Neal Ford

Evolutionary Architectures

Architectures that embrace change.


(Draft and will probably be cleaned up in the next days unless i do not have time)

A bad answer to what Architecture is.

Dynamic equilibrium

The whole development ecosystem can change overnight and it happends a lot. The whole equilibrium will change.

Incremental change

  • components are deployed
  • features are released
  • applications consists of routing

Guided change

  • metrix

agenda of this talk

fitness functions

  • atomic
    • atomic triggered example
      • ciclic dependency function (jdepend)
    • continues atomic
      • monitoring
      • logging
      • synthetic transaction (time stuff)
      • correlation id
  • holistic
    • triggered holistic
      • must run in a specific (shared) context
    • Consumer Driven Contract
      • consumers provide checks (tests) that the producer always keeps green
    • holistic continues
      • netflix chaos monkey
  • triggered
  • continues

System wide fitness function

Incremental change

Architectural coupling

Decenteralised data Managements

  • transactions are temporal coupling
  • limit transactional contexts
  • evolutionary database design

Evolvability of architecture

  • Hell on earth…

  • Layered Architecture…

  • Microkernel

  • REST
  • Domain Perspective
  • Microservices


#Perspectives on Architecture

  • Architectural Quantum…

Conway’s law

Autonomous teams cross functional. The invers Conway manouvre.
The more coupling between teams the less efficient you will be.

how to sell this

Or planning on closing the business soon…


Book out soon…