Richtlinie: Architekturanalyse für J2EE-Anwendungen
Diese Richtlinie beschreibt einige der von J2EE bereitgestellten Technologien, die der Softwarearchitekt berücksichtigen muss.
Beziehungen
Zugehörige Elemente
Hauptbeschreibung

Einführung

Die Architekturanalyse ist die Phase, in der der Softwarearchitekt festlegt, wie die im Überblick über Java 2 Platform Enterprise Edition (J2EE) genannten Technologien am besten genutzt werden können, um sowohl die funktionalen als auch die nicht funktionalen Anforderungen des Systems zu erfüllen. Einige dieser Technologien werden in dieser Richtlinie erläutert.

J2EE-Implementierungskonfigurationen

J2EE unterstützt eine Reihe von J2EE-Implementierungskonfigurationen. Die Auswahl einer bestimmten Implementierungskonfiguration ist ein wichtiger Schritt in der Architekturanalyse, weil sie die Grundlage bildet, auf der die ursprüngliche Architektur basiert.

Die Auswahl einer J2EE-Implementierungskonfiguration bestimmt, welches Implementierungsmodell ursprünglich definiert wird. Die ausgewählte J2EE-Implementierungskonfiguration definiert die Konfiguration von physischen Knoten (d. h. von Maschinen) und von logischen Knoten (J2EE-Containern). An dieser Stelle legen Sie fest, ob Sie separate Web-Server und EJB-Server verwenden und ob Ihre Clients Browser sind, die HTTP verwenden, oder ob es "Fat"-Anwendungsclients sind.

Jede Implementierungskonfiguration hat andere Merkmale, daher sollte ihre Auswahl auf der Basis einer Reihe von Faktoren getroffen werden. Einige der Faktoren, die bei der Auswahl einer Implementierungskonfiguration berücksichtigt werden sollten, sind nachfolgend aufgeführt: Wartungsfreundlichkeit (wie werden Änderungen in einer Schicht isoliert, so dass sie keine Auswirkungen auf andere Schichten haben, und wie einfach ist die Implementierung von Upgrades?), Leistung und Skalierbarkeit (wie einfach ist das Hinzufügen von weiteren IT-Ressourcen?) sowie Zuverlässigkeit (was passiert, wenn eine Ressource ausfällt?).

Die Auswahl einer Implementierungskonfiguration bedingt eine Reihe von weiteren architekturbezogenen Entscheidungen bezüglich der Architekturmechanismen, die definiert werden müssen, bezüglich des gemeinsamen Zugriffs einer Anwendung (siehe Aufgabe: Beschreibung der Laufzeitarchitektur) und bezüglich der Verteilung der Anwendung (siehe Aufgabe: Beschreibung der Verteilung für J2EE-Anwendungen). 

J2EE-Mechanismen

Der Überblick über Java 2 Platform Enterprise Edition (J2EE) enthält eine Reihe von Mechanismen, die die Entwicklung von mehrschichtigen Unternehmenssystemen unterstützen (Persistenz, Interprozesskommunikation, Transaktionsmanagement, Sicherheit usw.). Während der Architekturanalyse definiert der Softwarearchitekt, was erstellt werden muss, im Gegensatz zu dem, was die J2EE-Plattform bereitstellt.

Die effektive Verwaltung des Anwendungsstatus ist ein wichtiger Aspekt beim Design verteilter Anwendungen. Eine Übersicht über einige allgemeine Punkte, die beim Design eines Anwendungsstatus berücksichtigt werden müssen, und über die Mechanismen für die Statusverwaltung in einer J2EE-Anwendung finden Sie im Artikel Richtlinie: Design des Status für J2EE-Anwendungen.