What, exactly, is architecture as opposed to plain old software development? And why does architecture matter? In his keynote address at the OSCON conference this week, as seen below, author Martin Fowler took on these two questions and was able to deliver surprisingly detailed answers, given his scant 15-minute time limit.
First up: The what. Fowler says that architecture has two main components. There's the shared understanding of a system's design among the key developers, and there's the answer to the question, "What decisions are hard to change?" Combined and boiled down, these components define architecture as "the important stuff -- whatever it is." (Despite how that sounds, Fowler isn't being glib or evasive; the video shows the detailed logic that leads him to this conclusion.)
As for why it matters, Fowler sees it is a rejection of the notion that quality can be traded off for lower cost. In fact, good architecture leads to better internal (that is, not-customer-facing) quality, which in turn leads to a project that can be more easily updated and take on new features.
Then there's the Design Stamina Hypothesis, which is best explained by Fowler's graph -- and which every developer is likely understand from personal experience.