We can't find the internet
Attempting to reconnect
Something went wrong!
Hang in there while we get back on track
How to Build Evolvable Systems | ThoughtWorks Keynote @ DeveloperWeek 2019
Here is the meta description: "Learn how to build evolvable systems with ThoughtWorks Keynote at DeveloperWeek 2019. Discover the principles and techniques for creating adaptable systems that prioritize change and customer value."
- Ecosystem change is as important as requirement change, and architects must plan for both.
- Evolutionary architecture is not just for microservices, but a broader approach to building adaptable systems.
- Key to evolutionary architecture is prioritizing changes and focusing on one aspect at a time.
- Fitness functions guide the development of a system and ensure it meets specific requirements.
- Unsatisfactory solutions can lead to constant refactoring, whereas incremental change can be more efficient.
- Conway’s law states that an organization’s system will reflect its communication structures, making it crucial to enable communication and change management.
- The “last responsible moment” principle ensures that changes are made only when necessary, and the “simulation” principle allows for testing and prototyping.
- Structured monoliths can be more evolvable than traditional monoliths, but still require planning and incremental change.
- Evolutionary architecture is not a replacement for traditional software development principles, but a complementary approach.
- The “guided” principle ensures that solutions are focused on specific priorities and iterations.
- Database refactoring is a technique for facilitating incremental change and evolution of a system.
- Testability is crucial for evolutionary architecture, as it allows for experimentation and evaluation of different solutions.
- Building adaptable systems requires a willingness to change and iteration, rather than a fixed vision or plan.
- A focus on customer value and feedback is essential for understanding what changes are necessary and prioritizing them effectively.