TheIntroduction LogicalDesign PhysicalDesign PatternFoundations GuidelinesAndMyths ReferenceImplementation DependencyPatterns UsabilityPatterns ExtensibilityPatterns MaintenancePatterns AntiPatterns UtilitiesAndTools
Architecture is both an artifact and a process. As an artifact, it represents the structure of your system. But it is also a social construct. Your real system architecture, the one represented in code, is the least common denominator of the architectural vision that all developers understand, talk about, and use as their guide when writing new code. Architecture is also a process. It's a process because architecture requires constant attention, molding, and growth. The process side of architecture implies you can't do it all up-front. You can do some, but then you've got to hit the code. Defining architecture is an iterative process. It requires coding to flush out future architectural issues...that is, those issues that impact performance, load, scalability, operating in a clustered environment, and more.