Evolutionary UI
In Septmber 2017 our Thoughtworks CTO Rebecca Parsons together with Neal Ford and Patrick Kua wrote a book titled Building Evolutionary Architectures: Support Constant Change. The book contains a lot of useful tips and insights on how to steer software architectures to meet evolvability goals which you care about to drive your product forward.
Unfortunately the book did not contain any reference to the frontend space.
Rufus Raghunath and I, co-leaders of the internal TW Frontend Community, decided to put together a presentation which explores how to apply some of those evolutionary architecture techniques to UI development.
Most recently we had the opportunity to give our talk at the very first O’Reilly Software Architecture Conference in Berlin. Enjoy the talk and feel free to reach out to me on twitter if you have any feedback.
Evolutionary UI: Change as a first-class citizen in the modern frontend world
by Rufus Raghunath & Giamir Buoncristiani
Allowing for change is especially important when designing your frontend applications, where ever higher user expectations meet the fast-paced JavaScript ecosystem.
In this talk, we will show how the principles of evolutionary architecture can be applied to UI to prioritize changeability. We’ll consider several approaches to making a modern UI application more evolvable, such as the controversial microfrontends pattern, and examine specific “fitness functions” that will keep you and your team honest to your requirements without sacrificing evolvability. We’ll also discuss the tradeoffs you make when you choose a more evolutionary frontend architecture, and provide a framework for thinking about how much future change you’ll need to account for.