

Beschreibung
Strategic Monoliths and Microservices helps business decision-makers and technical team members collaborate to clearly understand their strategic problems, and identify their optimal architectural approaches, whether those turn out to be distributed microserv...Strategic Monoliths and Microservices helps business decision-makers and technical team members collaborate to clearly understand their strategic problems, and identify their optimal architectural approaches, whether those turn out to be distributed microservices, well-modularized monoliths, or coarse-grained services partway between the two. Writing for MBA and IT students alike, leading software architecture expert Vaughn Vernon and Tomasz Jaskua guide you through making balanced architecture compositional decisions based on need and purpose rather than popular opinion, so you can maximize business value and deliver systems that evolve more easily. Throughout, the authors provide realistic application examples, showing how to construct well-designed monoliths that are maintainable and extensible, and how to decompose massively tangled legacy systems into truly effective microservices.
Make Software Architecture Choices That Maximize Value and Innovation"[Vernon and Jaskua] provide insights, tools, proven best practices, and architecture styles both from the business and engineering viewpoint. . . . This book deserves to become a must-read for practicing software engineers, executives as well as senior managers."--Michael Stal, Certified Senior Software Architect, Siemens TechnologyStrategic Monoliths and Microservices helps business decision-makers and technical team members clearly understand their strategic problems through collaboration and identify optimal architectural approaches, whether the approach is distributed microservices, well-modularized monoliths, or coarser-grained services partway between the two. Leading software architecture experts Vaughn Vernon and Tomasz Jaskua show how to make balanced architectural decisions based on need and purpose, rather than hype, so you can promote value and innovation, deliver more evolvable systems, and avoid costly mistakes. Using realistic examples, they show how to construct well-designed monoliths that are maintainable and extensible, and how to gradually redesign and reimplement even the most tangled legacy systems into truly effective microservices.Link software architecture planning to business innovation and digital transformationOvercome communication problems to promote experimentation and discovery-based innovationMaster practices that support your value-generating goals and help you invest more strategicallyCompare architectural styles that can lead to versatile, adaptable applications and servicesRecognize when monoliths are your best option and how best to architect, design, and implement themLearn when to move monoliths to microservices and how to do it, whether they're modularized or a "Big Ball of Mud"Register your book for convenient access to downloads, updates, and/or corrections as they become available. See inside book for details.
Autorentext
Vaughn Vernon is a champion of simplifying software architecture and development, with an emphasis on reactive methods. He has a unique ability to teach and lead with Domain-Driven Design using lightweight tools to unveil unimagined value. He helps organizations achieve competitive advantages using enduring tools such as architectures, patterns, and approaches, and through partnerships between business stakeholders and software developers.
Tomasz Jaskua has 20 years of professional experience as a developer, software architect, team leader, trainer, and technical conference speaker. An IDDD Workshop trainer in both French and Polish, he founded Paris Domain-Driven Design and F# user groups. Jaskua's company, Luteceo (luteceo.fr), spreads good software and architecture practices based on Domain-Driven Design and software craftsmanship. He previously worked for many companies in e-commerce, industry, insurance, and finance, gaining deep experience for creating software that delivers clear business value and competitive advantage.
Zusammenfassung
Make Software Architecture Choices That Maximize Value and Innovation
"[Vernon and Jaskua] provide insights, tools, proven best practices, and architecture styles both from the business and engineering viewpoint. . . . This book deserves to become a must-read for practicing software engineers, executives as well as senior managers."
--Michael Stal, Certified Senior Software Architect, Siemens Technology
Strategic Monoliths and Microservices helps business decision-makers and technical team members clearly understand their strategic problems through collaboration and identify optimal architectural approaches, whether the approach is distributed microservices, well-modularized monoliths, or coarser-grained services partway between the two.
Leading software architecture experts Vaughn Vernon and Tomasz Jaskua show how to make balanced architectural decisions based on need and purpose, rather than hype, so you can promote value and innovation, deliver more evolvable systems, and avoid costly mistakes. Using realistic examples, they show how to construct well-designed monoliths that are maintainable and extensible, and how to gradually redesign and reimplement even the most tangled legacy systems into truly effective microservices.
Learn when to move monoliths to microservices and how to do it, whether they're modularized or a "Big Ball of Mud"Register your book for convenient access to downloads, updates, and/or corrections as they become available. See inside book for details.
Inhalt
Foreword xiii
Preface xvii
Acknowledgments xxv
About the Authors xxxi
Part I: Transformational Strategic Learning through Experimentation 1
Executive Summary 3
Chapter 1: Business Goals and Digital Transformation 7
Digital Transformation: What Is the Goal? 8
Why Software Goes Wrong 11
Your Enterprise and Conway's Law 18
(Re)Thinking Software Strategy 24
Are Monoliths Bad? 30
Are Microservices Good? 31
Don't Blame Agile 34
Getting Unstuck 36
Summary 37
References 38
Chapter 2: Essential Strategic Learning Tools 39
Making Decisions Early and Late, Right and Wrong 40
Culture and Teams 43
Modules First 51
Deployment Last 55
Everything in Between 57
Where Is Your Spaghetti and How Fast Does It Cook? 70
Strategic Architecture 70
Applying the Tools 72
Summary 75
References 75
Chapter 3: Events-First Experimentation and Discovery 77
Commands and Events 78
Rapid Learning with EventStorming 81
Applying the Tools 92
Summary 99
References 100
Part II: Driving Business Innovation 101
Executive Summary 103
Chapter 4: Reaching Domain-Driven Results 109
Domains and Subdomains 111
Summary 115
References 116
Chapter 5: Contextual Expertise 117
Bounded Context and Ubiquitous Language 117
Core Domain 121
Supporting Subdomains, Generic Subdomains, and Technical Mechanisms 123
Business Capabilities and Contexts 125
Not Too Big, Not Too Small 128
Summary 129
References 130
Chapter 6: Mapping, Failing, and Succeeding--Choose Two 131
Context Mapping 131
Topography Modeling 151
Ways to Fail and Succeed 154
Applying the Tools 158
Summary 163
References 164
Chapter 7: Modeling Domain Concepts 165
Entities 166
Value Objects 167
Aggregates 168
Domain Services 169
…