Hardcover: 576 pages
Publisher: Addison-Wesley Professional; 1 edition (April 30, 2005)
Product Dimensions: 7.5 x 1.5 x 9.5 inches
Shipping Weight: 2.2 pounds
Average Customer Review: 4.7 out of 5 stars See all reviews (40 customer reviews)
Best Sellers Rank: #267,334 in Books (See Top 100 in Books) #29 in Books > Computers & Technology > Hardware & DIY > Microprocessors & System Design > Computer Design #125 in Books > Computers & Technology > Hardware & DIY > Design & Architecture #321 in Books > Textbooks > Computer Science > Software Design & Engineering
I want to start by countering the negative review that is currently viewed as the most helpful here on . The reviewer did not like that the book did not seem to address most directly what would be needed by "project managers, team leads and most importantly developers."I'm going to suggest that the reviewer started reading the book with a preconceived notion of what a software architect is, and what software architecture is about. It's no surprise. I'm reading several books on software architecture; all of them confront and try to address what might be a common definition, given that there are so many ambiguous definitions throughout the world.The authors of this book make clear that ALL of the stakeholders in a software project must be appropriately addressed. That's a huge challenge! From business executives to analysts to even project managers, team leads, and developer, all of them must share a common understanding of the entire system and what will be changed. If the architect is primarily thinking about how to communicate with the development team, then that architect should have her title changed to development lead or chief engineer.It was by reading this book for the main purpose of understanding what a software architect really is responsible for, that I can now easily distinguish the software architect role from other roles. The responsibility is to everybody that has a material interest in the project.And how can one possibly communicate appropriately to people whose interest and technical acumen will range as wide as is possible throughout a business?
When it comes to the systems or software architecture, I subscribe to Tom Demarco's definition: "An architecture is a framework for the disciplined introduction of change." ([...] And while most of the job postings matching "architect" these days talk about the need for writing and testing code, there is a growing awareness in the industry that in order to build a resilient enterprise system an organization must look beyond design patterns and coding idioms. In addition to the technical challenges, building large enterprise system requires effort of many professionals during an extended period of time. This brings other non-technical risks into the picture.This is one of the better books covering many issues that comprise System Architecture discipline in the light of their personal experience. The authors introduce us to an approach for partitioning architecture using Viewpoints (behavioral characteristics, e.g. Functional, Information, Concurrency, Development, Deployment, Operational) and Perspectives (nonfunctional aspects, e.g. Security, Performance and Scalability, Availability and Resilience, Evolution).The first half of the book describes the discipline of Application Software Architecture, the second half contains two catalogs, one for Viewpoints and the other for Perspectives. Both catalogs describe concerns, artifacts (models), problems and pitfalls when focusing on a viewpoint or perspective.I would qualify this book as a companion and reference for a beginner through intermediate level. It gives an excellent overview of what a system architect has to go through day in and day out to achieve success. The book contains a wealth of advice on what to pay and not pay attention to in any particular stage of the architectural development.
Some might look at my book collect and think I have hoarding issues. If I had to pick just one Software Architecture book to keep, this would be the one.This is the second edition of one of the best books written on software systems architecture. If you are in the software development industry, you should read this book. If you are a Software Architect, you must read this book.This book covers a vast amount of material but it ties it all together in a way that paints a complete picture of what software systems architecture is all about.The book starts out covering architecture fundamentals. There is a chapter on Software Architecture Concepts, Viewpoints and Views, Architectural Perspectives, and The Role of the Software Architect.It then presents a process for software architecture and explains all the elements involved with the process. This part of the book contains chapters on The Architecture Definition Process, Concerns, Principles and Decisions, Identifying and Engaging Stakeholders, Identifying and Using Scenarios, Using Styles and Patterns, Producing Architectural Models, and Evaluating the Architecture.Next is a viewpoint catalog. The part of the book goes into the details of the different viewpoints the authors recommend considering as part of you architectural analysis. The viewpoints include Context, Information, Functional, Concurrency, Information, Development, Deployment, and Operational. Each viewpoint is a separate chapter. This section ends with a chapter that show how to achieve consistency across views.After the viewpoint catalog the authors present a perspective catalog. Perspectives ensure that quality properties that cross several views are accounted for and analyzed.
Software Systems Architecture: Working With Stakeholders Using Viewpoints and Perspectives Requirements Elicitation Techniques - Simply Put!: Helping Stakeholders Discover and Define Requirements for IT Projects Articulating Design Decisions: Communicate with Stakeholders, Keep Your Sanity, and Deliver the Best User Experience Toward Competent Practice: Conversations With Stakeholders Symbian OS Platform Security: Software Development Using the Symbian OS Security Architecture (Symbian Press) The Architecture of Computer Hardware, Systems Software, and Networking: An Information Technology Approach The Architecture of Computer Hardware, Systems Software, & Networking: An Information Technology Approach Small Memory Software: Patterns for systems with limited memory (Software Patterns Series) Bartolome de las Casas and the Conquest of the Americas (Viewpoints / Puntos de Vista) Living the Dream: New Immigration Policies and the Lives of Undocumented Latino Youth (New Critical Viewpoints on Society) Viewpoints: Mathematical Perspective and Fractal Geometry in Art Genetically Modified Food (Global Viewpoints) A History of the Cuban Revolution (Viewpoints / Puntos de Vista) Euthanasia (Opposing Viewpoints) Raising Mixed Race: Multiracial Asian Children in a Post-Racial World (New Critical Viewpoints on Society) Embedded Systems Security: Practical Methods for Safe and Secure Software and Systems Development The Dissociative Mind in Psychoanalysis: Understanding and Working With Trauma (Relational Perspectives Book Series) Therapeutic Perspectives On Working With Lesbian, Gay and Bisexual Clients (Pink Therapy) Chinese Architecture and Metaphor: Song Culture in the Yingzao Fashi Building Manual (Spatial Habitus: Making and Meaning in Asia's Architecture) Rendering in SketchUp: From Modeling to Presentation for Architecture, Landscape Architecture, and Interior Design