Making Open Work
May 8–9, 2017: Training & Tutorials
May 10–11, 2017: Conference
Austin, TX

Evolutionary architectures

Neal Ford (ThoughtWorks)
11:00am11:40am Thursday, May 11, 2017
Architecture
Location: Ballroom G
Level: Intermediate
Average rating: ****.
(4.21, 14 ratings)

Who is this presentation for?

  • Software architects

Prerequisite knowledge

  • An understanding of current architectural patterns

What you'll learn

  • Learn how to build architectures that gracefully evolve over time

Description

The software development ecosystem exists in a state of dynamic equilibrium, where any new tool, framework, or technique leads to disruption and the establishment of a new equilibrium. Predictability is impossible when the foundation architects plan against changes constantly in unexpected ways. Instead, prefer evolvability over predictability. For many years, software architecture was described as the “parts that are hard to change later.” But then microservices showed that if architects build evolvability into the architecture, change becomes easier. An evolutionary architecture supports incremental, guided change as a first principle across multiple dimensions. Neal Ford illustrates how to achieve evolutionary architectures and how to retrofit existing systems to support better evolution.

Drawing on concepts from his upcoming book, Neal investigates the family of software architectures that support evolutionary change and explains how to build evolvable systems. Understanding how to evolve architecture requires understanding how architectural dimensions interact; Neal describes how to achieve appropriate coupling between components and services. Incremental change is critical for the mechanics of evolution; Neal covers how to build engineering and DevOps practices to support continuous change. Uncontrolled evolution leads to undesirable side effects; Neal demonstrates how fitness functions build protective, testable scaffolding around critical parts to guide the architecture as it evolves.

Photo of Neal Ford

Neal Ford

ThoughtWorks

Neal Ford is a software architect and meme wrangler at ThoughtWorks, a global IT consultancy with an exclusive focus on end-to-end software development and delivery. Neal focuses on designing and building large-scale enterprise applications and is the designer and developer of applications, instructional materials, magazine articles, courseware, and video presentations as well as the author and/or editor of six books spanning a variety of technologies, including, most recently, The Productive Programmer. He is also an internationally acclaimed speaker, having delivered more than 600 talks at over 100 developer conferences worldwide. Check out his website at Nealford.com. He welcomes feedback and can be reached at nford@thoughtworks.com.

Leave a Comment or Question

Help us make this conference the best it can be for you. Have questions you'd like this speaker to address? Suggestions for issues that deserve extra attention? Feedback that you'd like to share with the speaker and other attendees?

Join the conversation here (requires login)

Comments

Naveen Dokuparthi |
05/18/2017 4:01pm CDT

Great presentation especially for those who want to grow in the area of architecure.

Senthil Arumugam | SOFTWARE ENGINEER
05/15/2017 7:36am CDT

Love this session and great presentation slides