Book description
The software architect role is evolving. As systems and distributed teams become more complex, it's often impossible for architects to be everywhere they need to be. To be effective, consultants and in-house architects alike have to move constantly from client to client or team to team to collaborate and work with code. And the situation is reaching a breaking point.
There's a better way. Andrew Harmel-Law, tech principal at Thoughtworks, shows you how architects and development teams can collaborate effectively and efficiently on the architectures of their systems. Techniques in this book help you ensure that everyone and everything is working toward the same goal. You'll learn how to create a collaborative, decentralized mindset that allows everyone to do architecture and build the best systems they've ever experienced.
With this book, you will:
- Understand the new dynamics that affect modern software delivery and how to take advantage of them to optimize for fast flow and continuous feedback
- Learn a methodology that brings software architecture and development together in partnership
- Nurture the fundamental interplay of decisions, advice, autonomy, and architecture
- Initiate practices and constraints that maximize benefits and mitigate risks
- Create an approach tuned to your skill sets, architecture, and your organization's engineering culture
- Identify and work to prevent failure modes when they threaten to arise
Publisher resources
Table of contents
- Brief Table of Contents (Not Yet Final)
-
1. Centralized Architecture Practices in a Decentralized World
- Both the Practice and End-Result of Software Architecture are Essential
- What are the Traditional Architecture Practices?
- The Five Software Revolutions
-
The Effect of the Software Revolutions on Architecture Practice
- The rise of decentralization
- Teams work best when decentralized
- Modern software works best when intentionally decentralized
- The decentralization of teams and their software must be aligned
- Centralized architectures and practices cause blocking and are inefficient
- Traditional architecture practices block delivery flow
- Traditional architecture practices fail to factor in sufficient feedback
- The Need for a New Approach to Architecture
- Conclusion
- 2. To Practice Architecture Is to Make Decisions
- 3. Decision Processes at Scale
- 4. The Architecture Advice Process
- 5. Rolling Out the Advice Process
- 6. Architectural Decision Records
- 7. Nurturing and Evolving Your Decentralized Culture (of Trust)
-
8. An Architecture Advice Forum
- Optimizing the Architecture Advice Process
- Introducing the Architecture Advice Forum
- Running an Architecture Advice Forum
- Social Dynamics at the Advice Forum
- Advice Forums Catalyze Powerful Group Dynamics
- Architectural Advice Forums Foster Conceptual Integrity and Social Cohesion
- Kicking off the Advice Process with an Advice Forum
- Alternative Advice Forum Flavors
- Conclusion
- 9. Organizational Alignment with Minimum Viable Agreements
- 10. Collectively Sourced Architectural Principles
- 11. Your Own Technology Radar
- 12. The Art of Deciding
- About the Author
Product information
- Title: Facilitating Software Architecture
- Author(s):
- Release date: November 2024
- Publisher(s): O'Reilly Media, Inc.
- ISBN: 9781098151867
You might also like
book
Software Architecture for Busy Developers
A quick start guide to learning essential software architecture tools, frameworks, design patterns, and best practices …
book
Software Architecture in Practice, 4th Edition
The Definitive, Practical, Proven Guide to Architecting Modern Software--Fully Updated with New Content on Mobility, the …
book
Software Architecture Patterns
The success of any application or system depends on the architecture pattern you use. By describing …
book
Architectural Patterns
Learn the importance of architectural and design patterns in producing and sustaining next-generation IT and business-critical …