Die Architektur von Software beschreibt das Zusammenspiel einzelner Komponenten, sowohl im Bereich der Infrastruktur als auch bei Business [Applications|Application]. Ein Software Architekt setzt sich typischerweise mit dem [Requirements Engineering] zusammen und konstruiert eine passende Architektur, auf der die Anforderungen realisiert werden können. In der Regel werden erfahrenere [Consultants|Consultant] als Software Architekten eingesetzt, die vorher oft als [Senior] [Developer] tätig waren.

!!!Technologie
In der Architektur werden die verwendeten [Technologienn|Technologien] festgelegt. Das Zuzsammenspiel der eingesetzten Technologien festzulegen, ist ebenfalls Aufgabe der Architektur. Für das Zusammenspiel stehen einige bewährte [Design Pattern|Design Pattern] auf verschiedenen Skalenebenen zur Verfügung. Erfahrene Architekten verfügen über einen reichhaltigen Erfahrungsschatz an solchen Patterns.

!!!Integration
Hinzu kommen integrative Komponenten, die das Zusammenspiel der Technologien gewährleisten. Integrative Komponenten spielt besonders dann eine Rolle, wenn viele verschiedene Technologien eingesetzt werden. Dadurch erreicht man folgende Vorteile:
* Unabhängigkeit von bestimmten Anbietern
* Vereinfachung beim Wechsel auf neuere Versionen
* Erweiterung eines einmal gebauten Frameworks