Architektur in der Software ist nicht nur als Bauplan einer Applikation, sondern auch als Ablaufplan zu verstehen und beschreibt somit abstrakt die statischen, als auch die dynamischen Aspekte. Sie besteht daher aus ihren einzelnen Komponenten , Schnittstellen und Beziehungen untereinander, welche in verschiedenen Sichten dargestellt werden, um eine Applikation auch den jeweiligen Stakeholdern verständlicher zu machen.
Nebenbei wird durch die Architektur eine Applikation auch gleich dokumentiert , um gegebenenfalls Fehler oder externe Einwirkungen schon vor Beginn der eigentlichen Entwicklung zu erkennen, was ganz wesentlich zur Qualität einer Applikation beiträgt.
Schlussendlich zeigt die Architektur auch die Machbarkeit , die Erfüllung aller Anforderungen und deckt gar evtl. unnötige Funktionen auf.
Weitere Entwicklungstufen sollte in der Architektur enthalten sein:
1. Erstellung eines Prototyps um den gesamten Ablauf sehen und testen zu können
2. Erstellung von UnitTestings zur permanenten Prüfung einzelner Komponenten (WhiteBox-Testing)
3. Prüfung des Ergebnisses einer Applikation auf die Umsetzung der Kundenwünsche (BlackBox-Testing), um darauf aufbauend den nächsten Release zu planen