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
Building Micro-Frontends
What's the answer to today's increasingly complex web applications? Micro-frontends. Inspired by the microservices model, this …
book
Learning JavaScript Design Patterns, 2nd Edition
Do you want to write beautiful, structured, and maintainable JavaScript by applying modern design patterns to …
book
Designing Data-Intensive Applications
Data is at the center of many challenges in system design today. Difficult issues need to …
book
Modern Software Engineering: Doing What Works to Build Better Software Faster
Improve Your Creativity, Effectiveness, and Ultimately, Your Code In Modern Software Engineering, continuous delivery pioneer David …