SlideShare a Scribd company logo
Principles and Techniques of
Evolutionary Architecture
Rebecca Parsons
Chief Technology Officer
ThoughtWorks
Principles of evolutionary architecture
Why should I care?
Emergent design vs evolutionary
architecture
How to achieve an evolutionary
architecture in practice
Techniques of evolutionary architecture
Agenda
It’s harder to predict the future
Expectations for pace of change are
increasing rapidly
Business model lifetimes are shortening
If you miss your minute of fame...
Why Should I Care?
Evolutionary Architecture and Emergent
Design
Evolutionary versus Emergent
Design and Architecture
Design and
Architecture
Postel’s Law
Last responsible moment
Architect and develop for evolvability
Conway’s Law
Architect for testability
Principles of Evolutionary
Architecture
Minimizes technical debt from complexity
Delay decisions as long as you can, but no
longer
Maximizes the information you have
Evolutionary, neither emergent nor based
on guesswork
Decide early what your drivers are, and
prioritize decisions accordingly
Last Responsible
Moment
Consider data lifecycle and ownership
Sensible breakdown of functionality
Lightweight tooling and documentation
Appropriate coupling
Architect for
Evolvability
Software internal quality metrics focusing
on ease of change
Find hotspots and focus efforts there
Measure continually, focusing on trends
Develop for
Evolvability
Reversability
Only validate what you need
Be conservative in what you send
Be liberal in what you receive
Use version changes when a contract
must be broken
Holds for any information exchange
Postel’s Law
Business sensible components
Aiming towards testability produces a
well-architected system
Messaging infrastructure used for
messaging, not business logic
Build pipelines support the volume
Testing at many levels, including contract
Architect for
Testability
Broken communications imply complex
integration
Organization’s design systems reflecting
their communication structures
If you don’t want your product to look like
your organization, change your
organization (or your product)
Silos often result in broken communication
Conway’s Law
Database Refactoring
Continuous Delivery
Contract testing
Techniques
Changes compose in the same way
functions compose
De-compose big change into series of
small changes
Each change is a refactoring/migration
pair (or triple if you include access code)
And apply in the various environments
during promotion
And of course, version control the
changes
Database
Refactoring
Automate testing at all levels
Automate environments and configurations
Automate builds and deployments and use
continuous integration
Just because you CAN release at any
time doesn’t mean you HAVE to
Deployment should be boring!!
Continuous
Delivery
Maximizes parallel independent work
Acceptance tests at the systems’ interface
Documents assumptions made
One traditional role of Enterprise
Architect
Used in conjunction with Postel’s Law
Contract Testing
Understand various forms of technical
debt
Define your architectural fitness function
Delay your decisions as long as you can
Create and maintain the testing safety
net
Implement evidence based re-use
Evolutionary
Architecture
Thank you!
http://rebeccaparsons.com
http://www.thoughtworks.com

More Related Content

PPT
Evolutionary Architecture And Design
PPTX
Refactoring, Emergent Design & Evolutionary Architecture
PPTX
Emergent Architecture - March 2011
PPTX
Why We Need Architects (and Architecture) on Agile Projects
PDF
Agile Architecture Agile Dev Practices 2013 Keynote
PDF
Modern Agile Software Architecture
PDF
Adam boczek 2015 agile architecture in 10 steps v1.0
PDF
Resource Adaptive Systems
Evolutionary Architecture And Design
Refactoring, Emergent Design & Evolutionary Architecture
Emergent Architecture - March 2011
Why We Need Architects (and Architecture) on Agile Projects
Agile Architecture Agile Dev Practices 2013 Keynote
Modern Agile Software Architecture
Adam boczek 2015 agile architecture in 10 steps v1.0
Resource Adaptive Systems

What's hot (20)

ODP
Agile Architecture
PPTX
About DevOps in simple steps
PPTX
Introduction to Modern Software Architecture
PDF
Scaling Enterprise DevOps with CloudBees
PPTX
Reducing Technical Debt
PPTX
Implementing DevOps In Practice
PPT
Innovate 2014 - DevOps Technical Strategy
PDF
DevOps 101
PPTX
DevOps Transformations
PDF
Going the Next Step? Agile Values and Hardware Development by Urs Boehm
PDF
Integrating Hardware (Waterfall) and Software (Agile) Development
PDF
Refactoring for Software Architecture Smells - International Workshop on Refa...
PPTX
Introduction to DevOps
PPTX
Challenging The Role Of The Architect
PPT
DevOps 101 for Government
PPTX
DevOps Overview
PPTX
A Model-Based Systems Engineering Approach to Portfolio Management
PDF
TDD - Cultivating a Beginner's Mind
PPTX
KEYNOTE | WHAT'S COMING IN THE NEXT 10 YEARS OF DEVOPS? // ELLEN CHISA, bolds...
PPSX
Agile Architecture
About DevOps in simple steps
Introduction to Modern Software Architecture
Scaling Enterprise DevOps with CloudBees
Reducing Technical Debt
Implementing DevOps In Practice
Innovate 2014 - DevOps Technical Strategy
DevOps 101
DevOps Transformations
Going the Next Step? Agile Values and Hardware Development by Urs Boehm
Integrating Hardware (Waterfall) and Software (Agile) Development
Refactoring for Software Architecture Smells - International Workshop on Refa...
Introduction to DevOps
Challenging The Role Of The Architect
DevOps 101 for Government
DevOps Overview
A Model-Based Systems Engineering Approach to Portfolio Management
TDD - Cultivating a Beginner's Mind
KEYNOTE | WHAT'S COMING IN THE NEXT 10 YEARS OF DEVOPS? // ELLEN CHISA, bolds...
Ad

Similar to Principles and Techniques of Evolutionary Architecture with Dr. Rebecca Parsons (20)

PDF
Evolutionary architecture
PDF
Poised For Change
PDF
Princípios de Arquitetura Evolutiva
PPT
The Role Of An Architect
PDF
Creating a DevOps Practice for Analytics -- Strata Data, September 28, 2017
PPTX
Software Architecture Course - Part III Taxonomies - Definitions
PDF
Building Evolutionary Architectures - Rebecca Parsons
DOCX
DevOps Consulting Services to Fix Slow, Error-Prone Deployments
PPT
02 architectures in_context
PDF
Agile brazil2013poised
PPT
Improving The Software Development Lifecycle With Visual Studio Team System
PDF
The Modern Software Architect
PDF
Test Driven Development (TDD)
PDF
Webinar - Design Thinking for Platform Engineering
PDF
Software Architecture: How Much Design?
PPT
02_Architectures_In_Context.ppt
PPT
Synergy 7.0 Sales 10312008
PDF
Scrum Bangalore 18th Meetup - October 15, 2016 - Agile Architecture - Deepak ...
PDF
How to build successful blocks of DevOps
PDF
How to build successful blocks of DevOps
Evolutionary architecture
Poised For Change
Princípios de Arquitetura Evolutiva
The Role Of An Architect
Creating a DevOps Practice for Analytics -- Strata Data, September 28, 2017
Software Architecture Course - Part III Taxonomies - Definitions
Building Evolutionary Architectures - Rebecca Parsons
DevOps Consulting Services to Fix Slow, Error-Prone Deployments
02 architectures in_context
Agile brazil2013poised
Improving The Software Development Lifecycle With Visual Studio Team System
The Modern Software Architect
Test Driven Development (TDD)
Webinar - Design Thinking for Platform Engineering
Software Architecture: How Much Design?
02_Architectures_In_Context.ppt
Synergy 7.0 Sales 10312008
Scrum Bangalore 18th Meetup - October 15, 2016 - Agile Architecture - Deepak ...
How to build successful blocks of DevOps
How to build successful blocks of DevOps
Ad

Recently uploaded (20)

PDF
Empathic Computing: Creating Shared Understanding
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Encapsulation theory and applications.pdf
PDF
KodekX | Application Modernization Development
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
Machine learning based COVID-19 study performance prediction
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
cuic standard and advanced reporting.pdf
PDF
NewMind AI Monthly Chronicles - July 2025
Empathic Computing: Creating Shared Understanding
“AI and Expert System Decision Support & Business Intelligence Systems”
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
The AUB Centre for AI in Media Proposal.docx
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Reach Out and Touch Someone: Haptics and Empathic Computing
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Unlocking AI with Model Context Protocol (MCP)
Encapsulation theory and applications.pdf
KodekX | Application Modernization Development
Understanding_Digital_Forensics_Presentation.pptx
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Chapter 3 Spatial Domain Image Processing.pdf
Machine learning based COVID-19 study performance prediction
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
Network Security Unit 5.pdf for BCA BBA.
cuic standard and advanced reporting.pdf
NewMind AI Monthly Chronicles - July 2025

Principles and Techniques of Evolutionary Architecture with Dr. Rebecca Parsons

  • 1. Principles and Techniques of Evolutionary Architecture Rebecca Parsons Chief Technology Officer ThoughtWorks
  • 2. Principles of evolutionary architecture Why should I care? Emergent design vs evolutionary architecture How to achieve an evolutionary architecture in practice Techniques of evolutionary architecture Agenda
  • 3. It’s harder to predict the future Expectations for pace of change are increasing rapidly Business model lifetimes are shortening If you miss your minute of fame... Why Should I Care?
  • 4. Evolutionary Architecture and Emergent Design Evolutionary versus Emergent Design and Architecture Design and Architecture
  • 5. Postel’s Law Last responsible moment Architect and develop for evolvability Conway’s Law Architect for testability Principles of Evolutionary Architecture
  • 6. Minimizes technical debt from complexity Delay decisions as long as you can, but no longer Maximizes the information you have Evolutionary, neither emergent nor based on guesswork Decide early what your drivers are, and prioritize decisions accordingly Last Responsible Moment
  • 7. Consider data lifecycle and ownership Sensible breakdown of functionality Lightweight tooling and documentation Appropriate coupling Architect for Evolvability
  • 8. Software internal quality metrics focusing on ease of change Find hotspots and focus efforts there Measure continually, focusing on trends Develop for Evolvability
  • 10. Only validate what you need Be conservative in what you send Be liberal in what you receive Use version changes when a contract must be broken Holds for any information exchange Postel’s Law
  • 11. Business sensible components Aiming towards testability produces a well-architected system Messaging infrastructure used for messaging, not business logic Build pipelines support the volume Testing at many levels, including contract Architect for Testability
  • 12. Broken communications imply complex integration Organization’s design systems reflecting their communication structures If you don’t want your product to look like your organization, change your organization (or your product) Silos often result in broken communication Conway’s Law
  • 14. Changes compose in the same way functions compose De-compose big change into series of small changes Each change is a refactoring/migration pair (or triple if you include access code) And apply in the various environments during promotion And of course, version control the changes Database Refactoring
  • 15. Automate testing at all levels Automate environments and configurations Automate builds and deployments and use continuous integration Just because you CAN release at any time doesn’t mean you HAVE to Deployment should be boring!! Continuous Delivery
  • 16. Maximizes parallel independent work Acceptance tests at the systems’ interface Documents assumptions made One traditional role of Enterprise Architect Used in conjunction with Postel’s Law Contract Testing
  • 17. Understand various forms of technical debt Define your architectural fitness function Delay your decisions as long as you can Create and maintain the testing safety net Implement evidence based re-use Evolutionary Architecture