Building software has almost always involved fitting together prodncts and organizations as well as developing code. Software architecture is fundamental to both activities, especially today. For example, an ordi-nary business transaction will traverse many layers of software architecture,leveraging shared platforms such as the Internet, client browsers, Web servers, business logic components, security systems, and back-end databases. In this environment, many partners must not only apree on a core set of interfaces and standards, but they must also agree on how to use those standards. Partners must also agree on the value they will add and receive for their contribution. AII these agreements must remain workable and stay in place in the face of rapid changes in technologies, re-alignments of partners, shifts in business goals and require- ments, as well as the ever-present mergers and acquisitions. If these agreements do not remain in place, the product and its architecture may fail, causing pain for developers and customers, as well as their managers and sponsors. This book focuses on the interrelationship between software architecture and the organization. Software architecture serves as a framework that defines and orders not only the technical interactions needed to develop and implement a product, but also group and personal interactions. The ability of software architecture to fulfill this role over time relies on organizational factors.