engl.: n-tier software architecture

Eine n-tier-Softwarearchitektur (tier (engl.) - Schicht) bezeichnet ein mehrschichtig aufgebautes Softwaresystem.

Bei einem zweischichtigen Client-Server-System (2-tier-Architektur) ist die Software funktional in zwei Ebenen eingeteilt, bspw. in Datenbank-Server und Applikations-Client.

Bei einer 3-tier-Architektur als dreischichtiges Client-Server-System ist die Software funktional in drei Ebenen eingeteilt: back end, middle ware und front end. Dabei besteht das back end in der Regel aus einem Datenbank-Server, die middle ware aus einem Applikationsserver und das front end aus einem Client. Der Client ist in der Regel nur für die Anzeige der Daten und die Verarbeitung der Benutzereingaben erforderlich. Er besitzt und benötigt im Idealfall keinerlei Informationen zur Datenspeicherung und -verwaltung. Der Applikationsserver koordiniert und verarbeitet Anforderungen und Aktualisierungen von mehreren Clients. Er ist für die Definition von Datenmengen und die Interaktion mit dem Datenbank-Server verantwortlich und beinhaltet die eigentliche Programm-Intelligenz. Vorteile einer solchen Archtitektur liegen in der getrennten Pflege der Schichten, in der Möglichkeit zu schlanken Clients und in der zentralen Datenverwaltung. Der Applikationsserver kann bspw. zentral gepflegt werden, ohne dass Updates auf alle Clients aufgespielt werden müssen.

Der Systemaufbau einer n-Tier-Architektur kann über den einer 3-tier-Architektur hinausgehen. Es kann mindestens einer der drei Bereiche (back end, middleware oder front end) weiter unterteilt werden, so dass neue Zwischenschichten entstehen. Werden bspw. im back end, also im Bereich des Datenbanksystems, stored procedures eingesetzt, um auf das Datenbanksystem zuzugreifen, so sind diese als weitere Zwischenschicht zu betrachten.

  Grafik einer 3-tier-Softwarearchitektur
Abbildung 1: Beispiel einer 3-tier-Softwarearchitektur (Grafik: Lehrstuhl fml)

  • Keine Stichwörter