The Definitive, Practical, Proven Guide to Architecting Modern Software--Fully Updated with New Content on Mobility, the Cloud, Energy Management, DevOps, Quantum Computing, and More Updated with eleven new chapters, Software Architecture in Practice, Fourth Edition, thoroughly explains what software architecture is, why it's important, and how to design, instantiate, analyze, evolve, and manage it in disciplined and effective ways. Three renowned software architects cover the entire lifecycle, presenting practical ...
Read More
The Definitive, Practical, Proven Guide to Architecting Modern Software--Fully Updated with New Content on Mobility, the Cloud, Energy Management, DevOps, Quantum Computing, and More Updated with eleven new chapters, Software Architecture in Practice, Fourth Edition, thoroughly explains what software architecture is, why it's important, and how to design, instantiate, analyze, evolve, and manage it in disciplined and effective ways. Three renowned software architects cover the entire lifecycle, presenting practical guidance, expert methods, and tested models for use in any project, no matter how complex. You'll learn how to use architecture to address accelerating growth in requirements, system size, and abstraction, and to manage emergent quality attributes as systems are dynamically combined in new ways. With insights for utilizing architecture to optimize key quality attributes--including performance, modifiability, security, availability, interoperability, testability, usability, deployability, and more--this guide explains how to manage and refine existing architectures, transform them to solve new problems, and build reusable architectures that become strategic business assets. Discover how architecture influences (and is influenced by) technical environments, project lifecycles, business profiles, and your own practices Leverage proven patterns, interfaces, and practices for optimizing quality through architecture Architect for mobility, the cloud, machine learning, and quantum computing Design for increasingly crucial attributes such as energy efficiency and safety Scale systems by discovering architecturally significant influences, using DevOps and deployment pipelines, and managing architecture debt Understand architecture's role in the organization, so you can deliver more value Register your book for convenient access to downloads, updates, and/or corrections as they become available. See inside book for details.
Read Less
The second edition of the book makes a good journeyman's guidebook, which the first edition didn't since software architecture was still a mystique. The second edition, which has been heavily revamped, makes it clear that software architecture is a mature discipline. I used the first edition, along with SEI technical papers in a graduate-level software architecture introductory course. After reading the first edition, I still wasn't sure what a software architect should do. The second edition makes it clear. I think a lot of the technical papers that I read are now chapters in the book. Some new chapters are simply great: Understanding Quality Attributes, Achieving Qualities, Designing the Architecture, Documenting Software Architectures, the ATAM, and the CBAM. I really liked the replacement of ADL with UML, the de facto standard, with all of its warts and blemishes. This book is my bible with regards of software architecture. In previous S.E. courses, I heard about software architecture, but the notion never quite sank on my skull; perhaps because the notion itself required a course on itself, or in this case, a book. A minor problem is that the book does not use UML; however, the diagrams the authors use are easy to understand. More importantly, I find the narrative is as good as the diagrams themselves. I almost never have to look at the diagrams to understand the notions. Tumbs up to the authors!