Hello,
In Section 3.3 of the book (see below to download an excerpt of the book that includes Chapter 3), I talk about the goal of architecture. At a conceptual level, the goal is to minimize the impact and cost of change. When you're able to do this, you've effectively eliminated the architectural significance of change. That means you've given yourself the ability to more easily change that area of the system. So, in my opinion, a good software architecture is one that can easily accommodate change. To achieve this type of architecture, you apply proven design practices (GOF
patterns, modularity patterns) and principles (SOLID principles) in the right areas of the system.
Visit the book's website at
modularity.kirkk.com where you can review all 18 patterns and download an excerpt of the book. There is also a
mobile web application available that you can take with you wherever you go.
--kirk
Twitter: @pragkirk