Book description
The software development ecosystem is constantly changing, providing a constant stream of new tools, frameworks, techniques, and paradigms. Over the past few years, incremental developments in core engineering practices for software development have created the foundations for rethinking how architecture changes over time, along with ways to protect important architectural characteristics as it evolves. This practical guide ties those parts together with a new way to think about architecture and time.
Publisher resources
Table of contents
- Foreword
- Preface
- 1. Software Architecture
- 2. Fitness Functions
- 3. Engineering Incremental Change
- 4. Architectural Coupling
- 5. Evolutionary Data
-
6. Building Evolvable Architectures
- Mechanics
- Greenfield Projects
- Retrofitting Existing Architectures
- Migrating Architectures
-
Guidelines for Building Evolutionary Architectures
- Remove Needless Variability
- Make Decisions Reversible
- Prefer Evolvable over Predictable
- Build Anticorruption Layers
- Case Study: Service Templates
- Build Sacrificial Architectures
- Mitigate External Change
- Updating Libraries Versus Frameworks
- Prefer Continuous Delivery to Snapshots
- Version Services Internally
- Case Study: Evolving PenultimateWidgets’ Ratings
- 7. Evolutionary Architecture Pitfalls and Antipatterns
- 8. Putting Evolutionary Architecture into Practice
- Index
Product information
- Title: Building Evolutionary Architectures
- Author(s):
- Release date: September 2017
- Publisher(s): O'Reilly Media, Inc.
- ISBN: 9781491986363
You might also like
book
Generative Deep Learning, 2nd Edition
Generative AI is the hottest topic in tech. This practical book teaches machine learning engineers and …
book
Designing Data-Intensive Applications
Data is at the center of many challenges in system design today. Difficult issues need to …
book
Flow Architectures
Software development today is embracing events and streaming data, which optimizes not only how technology interacts …
book
Spring Boot: Up and Running
With over 75 million downloads per month, Spring Boot is the most widely used Java framework …