Getting Architecture Just Right: Detailed Practical Guidance
for Architecting Any Real-World IT Project
To build effective architectures, software architects must tread a fine line between precision and ambiguity (a.k.a. big animal pictures). This is difficult but crucial: Failure to achieve this balance often leads directly to poor systems design and implementation. Now, pioneering IBM Distinguished Engineer and Chief Technology Officer Tilak Mitra offers the first complete guide to developing end-to-end solution architectures that are “just enough”--identifying and capturing the most important artifacts, without over-engineering or excessive documentation, and providing a practical approach to consistent and repeated success in defining software architectures.
Practical Software Architecture provides detailed prescriptive and pragmatic guidance for architecting any real-world IT project, regardless of system, methodology, or environment. Mitra specifically identifies the artifacts that require emphasis and shows how to communicate evolving solutions with stakeholders, bridging the gap between architecture and implementation.
Through a real-world case study, Mitra guides you iteratively through building an end-to-end solution architecture. Step by step, he addresses key topics in developing system contexts, architecture overviews, architecture decisions, functional models, operational models, integration patterns for systems design, infrastructure matters, and more. Throughout, you’ll find clear, crisp, and accurate guidance for crafting architectures that can be confidently delivered on time and budget.
Using architecture to promote communication, enable planning, and support functional as well as nonfunctional capabilities (such as scalability, performance, maintainability, and security)
Focusing on the architectural problem at hand and avoiding overreliance on theory and generalization
An architectural introduction to analytics
Capturing “just enough” about system context, architecture overview, architecture decisions, functional models, and operational models
Integration patterns and their usage in architecture design
Infrastructure matters in any software architecture
A real-world case study and its software architecture