Skip to content

Instantly share code, notes, and snippets.

@jmewes jmewes/ Secret
Created Oct 15, 2017

What would you like to do?
Evolutionary Architecture -- Patrick Kua via YouTube


  • change is inevitable
  • adapt to changes in environment
  • what are possible changes we care about?
  • "What if we architected a system specifically for change?"
  • incremental change



  • swap out persistence layer
  • support fast feedback
  • appropriate coupling
  • iterative


  • add in some business features
  • matches business capabilities
  • support experimentation, try things out

Fitness functions

  • things you need to architect for upfront
  • important/unimportant characteristics of the system, e.g.
    • Number of users
    • Availability
    • Legal compliance
  • use metrics and to tests

Cylcle test

  • test more changes in production faster
  • as many generations as possilbe
  • find out whether the changes are the right ones
  • CD: repeatably, reliably
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.