.comment-link {margin-left:.6em;}

Tuesday, November 22, 2005

What is Software Architecture?

There have been some many interpretations and definitions of software architecture. I will attempt to document definitions that I have come across here for reference.

The Unified Modeling Language User Guide - "Architecture is a set of significant decisions about:
Architecture-Centric Software Project Management - "Software architecture is concerned with capturing the structures of a system and the relationships among the elements ... The structures we found fell into several broad categories: conceptual architecture, module architecture, execution architecture, and code architecture."

Beyond Software Architecture - "A system architecture defines the basic 'structure' of the system (e.g. the high-level modules comprising the major functions of the system , the management and distribution of data, the kind and style of its user interface, what platform(s) will it run on, and so forth"