Published by Addison-Wesley Professional (June 23, 2021) © 2021

Eoin Woods | Murat Erder | Pierre Pureur
    VitalSource eTextbook (Lifetime access)
    €29,99
    Adding to cart… The item has been added
    ISBN-13: 9780136523680

    Continuous Architecture in Practice: Software Architecture in the Age of Agility and DevOps ,1st edition

    Language: English

    Update Your Architectural Practices for New Challenges, Environments, and Stakeholder Expectations
    "I am continuously delighted and inspired by the work of these authors. Their first book laid the groundwork for understanding how to evolve the architecture of a software-intensive system, and this latest one builds on it in some wonderfully actionable ways."
    --Grady Booch, Chief Scientist for Software Engineering, IBM Research
    Authors Murat Erder, Pierre Pureur, and Eoin Woods have taken their extensive software architecture experience and applied it to the practical aspects of software architecture in real-world environments. Continuous Architecture in Practice provides hands-on advice for leveraging the continuous architecture approach in real-world environments and illuminates architecture's changing role in the age of Agile, DevOps, and cloud platforms. This guide will help technologists update their architecture practice for new software challenges.

    As part of the Vaughn Vernon Signature Series, this title was hand-selected for the practical, delivery-oriented knowledge that architects and software engineers can quickly apply. It includes in-depth guidance for addressing today's key quality attributes and cross-cutting concerns such as security, performance, scalability, resilience, data, and emerging technologies. Each key technique is demonstrated through a start-to-finish case study reflecting the authors' deep experience with complex software environments. Key topics include:
    • Creating sustainable, coherent systems that meet functional requirements and the quality attributes stakeholders care about
    • Understanding team-based software architecture and architecture as a "flow of decisions"
    • Understanding crucial issues of data management, integration, and change, and the impact of varied data technologies on architecture
    • Architecting for security, including continuous threat modeling and mitigation
    • Architecting for scalability and resilience, including scaling microservices and serverless environments
    • Using architecture to improve performance in continuous delivery environments
    • Using architecture to apply emerging technologies successfully
    Register your book for convenient access to downloads, updates, and/or corrections as they become available. See inside book for details.
    Foreword by Vaughn Vernon, Series Editor xv
    Foreword by Kurt Bittner xix
    Introduction xxi
    Acknowledgments xxv
    About the Authors xxvii


    Chapter 1: Why Software Architecture Is More Important than Ever 1
    What Do We Mean by Architecture? 1
    Software Industry Today 3
    Current Challenges with Software Architecture 5
    Software Architecture in an (Increasingly) Agile World 8
    Introducing Continuous Architecture 11
    Applying Continuous Architecture 17
    Introduction to the Case Study 19
    Summary 22

    Chapter 2: Architecture in Practice: Essential Activities 23
    Essential Activities Overview 24
    Architectural Decisions 26
    Quality Attributes 32
    Technical Debt 36
    Feedback Loops: Evolving an Architecture 42
    Common Themes in Today's Software Architecture Practice 48
    Summary 54

    Chapter 3: Data Architecture 55
    Data as an Architectural Concern 56
    Key Technology Trends 60
    Additional Architectural Considerations 76
    Summary 84
    Further Reading 85

    Chapter 4: Security as an Architectural Concern 87
    Security in an Architectural Context 88
    Architecting for Security 92
    Architectural Tactics for Mitigation 101
    Maintaining Security 115
    Summary 119
    Further Reading 119

    Chapter 5: Scalability as an Architectural Concern 123
    Scalability in the Architectural Context 124
    Architecting for Scalability: Architecture Tactics 134
    Summary 155
    Further Reading 156

    Chapter 6: Performance as an Architectural Concern 159
    Performance in the Architectural Context 159
    Architecting for Performance 163
    Summary 183
    Further Reading 184

    Chapter 7: Resilience as an Architectural Concern 187
    Resilience in an Architectural Context 188
    Architecting for Resilience 195
    Architectural Tactics for Resilience 200
    Maintaining Resilience 216
    Summary 222
    Further Reading 223

    Chapter 8: Software Architecture and Emerging Technologies 225
    Using Architecture to Deal with Technical Risk Introduced by New Technologies 226
    Introduction to Artificial Intelligence, Machine Learning, and Deep Learning 227
    Using Machine Learning for TFX 230
    Using a Shared Ledger for TFX 246
    Summary 257
    Further Reading 258

    Chapter 9: Conclusion 259
    What Changed and What Remained the Same? 259
    Updating Architecture Practice 261
    Data 263
    Key Quality Attributes 264
    The Architect in the Modern Era 267
    Putting Continuous Architecture in Practice 268

    Appendix A: Case Study 269

    Appendix B: Comparison of Technical Implementations of Shared Ledgers 299


    Glossary 301
    Index 311