Midrange MAGAZIN – Juli 2007
Midrange MAGAZIN – Juli 2007
Midrange MAGAZIN – Juli 2007
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
Anwendungsmodernisierung auf iSeries<br />
Modulare Anwendungsarchitektur<br />
Die organisch gewachsenen monolithischen Anwendungsprogramme, die Datenzugriff,<br />
Anwendungslogik und Benutzerschnittstelle in einem Programm enthalten, lassen sich nur<br />
schwer <strong>–</strong> wenn überhaupt <strong>–</strong> in moderne Anwendungsarchitekturen integrieren.<br />
Die Auftrennung monolithischer<br />
Programme in einzelne Module,<br />
die eine klar definierte Funktion besitzen,<br />
ist die Grundlage, um bestehende<br />
Anwendungslösungen, die mit RPG<br />
oder COBOL realisiert wurden, in neue<br />
Anwendungsumgebungen <strong>–</strong> wie zum<br />
Beispiel Web-Services oder serviceorientierte<br />
Architektur (SOA) <strong>–</strong> zu integrieren.<br />
Damit können die vorhandenen<br />
Fähigkeiten weiter genutzt werden, ohne<br />
auf moderne Weiterentwicklungen<br />
verzichten zu müssen. Außer der größeren<br />
Flexibilität bietet eine modulare<br />
Anwendungsarchitektur auch noch andere<br />
Vorteile während der Entwicklung<br />
und Wartung einer Anwendung.<br />
Die Modularisierung fördert die<br />
Wiederverwendbarkeit von Code und<br />
erlaubt damit die Verwendung bestehender<br />
und getesteter Module bei neuen<br />
Projekten. Das vermeidet die mehrfache<br />
Implementierung einer Funktion<br />
und vereinfacht die Wartung.<br />
Durch die Modularisierung wird<br />
die Programmstruktur übersichtlicher.<br />
Die Hauptroutine steuert den<br />
Programmfluss und enthält nur noch<br />
Prozeduren und Funktionsaufrufe, in<br />
denen die Detailfunktionen implementiert<br />
sind. Die interne Implementierung<br />
eines Moduls ist außerhalb des<br />
Moduls nicht sichtbar und deshalb für<br />
den Programmierer, der dieses Modul<br />
verwendet, unerheblich. Dadurch<br />
führen Änderungen innerhalb eines<br />
Moduls nicht zwangsläufig zu Änderungen<br />
in den Programmen, die dieses<br />
Modul benutzen, was die Wartung und<br />
Entwicklung in einem Team vereinfacht.<br />
Durch die Modularisierung werden<br />
die einzelnen Programme (Module)<br />
kleiner; sie sind dadurch leichter überschaubar<br />
und einfacher zu testen. Systemspezifische<br />
Implementierungen<br />
können klar vom Rest der Anwendung<br />
abgegrenzt werden, was die Imple-<br />
mentierung plattformübergreifender<br />
Anwendungen erleichtert.<br />
Die Modularisierung einer Anwendung<br />
erlaubt die Implementierung<br />
definierter Schnittstellen, die auch<br />
die zukünftige Integration neuer Technologien<br />
erleichtert. Die Anwendung<br />
kann unterschiedliche Technologien<br />
<strong>–</strong> zum Beispiel unterschiedliche Programmiersprachen<br />
<strong>–</strong> verwenden, um<br />
jeweils die geeignete Technologie für<br />
die Implementierung einer Funktion<br />
auszuwählen (siehe Abbildung 1). Zum<br />
Beispiel könnte die Prüfung eines Datenbankfelds<br />
direkt in der Datenbank<br />
durch einen Datenbank-Constraint realisiert<br />
werden.<br />
Integrated Language Environment<br />
Um modulare Programme unter i5/OS<br />
zu implementieren, heißt das passende<br />
Programm-Modell: Integrated Language<br />
Environment (ILE). ILE wurde mit<br />
Release V2R3 für die Sprache C einge-<br />
07/<strong>2007</strong> · MIDRANGE MAgAZIN<br />
1