What is “software architecture”? Or why do we call things “architecture” when they apply to things other than buildings? What is it that drives this goofiness? In this post, I will present my glibly-phrased but dead serious definition. How that plays out in the practice of creating software, well, that is for later discussion. For […]