Die Architektur

Ausgangspunkt und übliche Sichtweise

Der Ausgangspunkt der ISA Architektur ist der Blick auf eine IT Landschaft aus der Vogelperspektive – mit den drei üblichen Blickwinkeln - Management, Fachlichkeit und Technik (s.a. Präsentationen).

ArchitectureUsualView

Alle drei Sichten betrachten gemeinsame Vorhaben wie z.B. ein Systemrelease, eine Service Implementierung oder eine einzelne neue Anforderung jeweils aus ihrem spezifischen Blickwinkel und in Form der damit verbundenen Gegenstände und Strukturen. Das bedeutet, dass sie zwar an einer Sache arbeiten – aber unterschiedliche Schwerpunkte haben und unterschiedliche Sprachen sprechen.

Daher müssen Informationen zwischen den einzelnen Bereichen ständig aktuell und konsistent aufeinander abgebildet, abstrahiert und transformiert werden – was mit viel Aufwand und vor allem mit einem hohen Risiko verbunden ist, durch diesen Prozess eine lückenhafte bzw. ungeeignete Bewertungs-, Planungs- oder Informationsgrundlage zu erhalten.

Modulare Architektur und Sichtweise

Bei einer modularen Architektur ist das vollkommen anders  (s.a. Client Server Architektur).

ArchitectureModularView

Hier bildet das Modul einen überschaubaren und abgegrenzten funktionalen Baustein, der in allen Bereichen gleich gut als konkreter Arbeitsgegenstand verwendet werden kann und so eine einheitliche “Sprache” und Sicht für alle Beteiligten realisiert. Die Fachlichkeit beschreibt ein Modul mit bestimmten Anforderungen, das Management plant das Modul und die Technik realisiert und betreibt das Modul. Auf diese Weise bilden Module einen eindeutigen, universellen und austauschbaren Baustein für beliebige Systeme und Dienste.

ModularITBasicArchitecture

Die konkrete ISA Architektur

In der ISA Architektur ist daher - alles einfach ein Modul1 – und ein System ist eine konkrete “Zusammenstellung” bestimmter, für dieses System vorgesehener oder benötigter Module, die alle gleich sind und die plattform- und technologieunabhängig in einem zentralen Repository liegen (s.a. Client Server Architektur und Repository Browser).

Modulare Basisarchitektur

Ein System entwickelt sich so durch kontinuierliches Hinzufügen oder Austauschen von Modulen und/oder Modulversionen – wobei die Systemstruktur automatisch durch die Nutzungsbeziehungen2 der Module definiert wird. Zentraler und eindeutiger Angelpunkt für alle Beteiligten ist der eindeutige Modulname und die eindeutige Modulanforderungsliste, die allgemein verständlich alle fachlich/funktionalen Anforderungen an ein Modul beinhaltet (s.a. Modulspezifikation und Modulkonzept).

Damit kann jeder Bereich die Artefakte produzieren, die für seine Zwecke notwendig sind und bewegt sich trotzdem immer in einem, durch die eindeutige Identität und die Verlinkung eines Moduls gebildeten, konsistente Kontext mit dem übergeordneten Vorhaben.

Ein Gegenstand - alle Artefakte

Ein weiterer großer Vorteil dieser Architektur ist, dass sie unverändert auch auf bestehende Systeme und Landschaften angewendet werden kann um z.B. kontinuierliche Migrationen, Erweiterungen oder Integrationen durchzuführen. Z.B. können auf diese Weise Schnittstellen oder Erweiterungen zu bestehenden Systemen leicht zu Modulen gemacht werden, die wenn notwendig auch unabhängig vom Releasezyklus eines bestehenden Systems gehandhabt werden können.

Damit bietet die Architektur sowohl ein einfaches, modulares Konzept (s.a. Enterprise Architektur “out of the box”) für einzelne Anwendungssysteme – als auch eine unabhängige Lösung für Systemintegration und Services aus einer übergreifenden IT Sicht.

AtomModule

Die technische Basis der Architektur
Ein entscheidender Punkt für die reale Umsetzbarkeit einer solchen Architektur ist, dass die beschriebenen universellen und versionierbaren Module auch technisch realisierbar sind – denn solange sie “nur” konzeptionell vorhanden sind, können sie ihre Vorteile nur sehr beschränkt zum tragen bringen.

Die notwendige Technik dafür liefern zwei kleine Basismodule und der ebenso kleine, generische Service Broker, die zusammen einfach nur plattformunabhängige Modularität und middlewareunabhängige Kommunikation für Java und die JEE ermöglichen.

_____________________
1: “alles” ist hier sowohl inhaltlich wie auch technologisch gemeint. Ein ISA Modul kann alles sein – ein Modul auf dem Server, das ein remoter Dienst ist, eine Datenbank- oder Middlewaretechnologie, eine GUI Oberfläche in einem SmartClient,  ein Script in einem WebClient, eine allgemeine oder abstrakte API, ein System oder ein Produkt, eine Bibliothek, ein Algorithmus oder ein Regelwerk … usw.

2: Ein modulares ISA System ist durch die eindeutig benannten Module und deren expliziten Nutzungsbeziehungen wie ein Hypertext-Dokument strukturiert (s.a. Vergleich und Browser).