MODELLGETRIEBENE ARCHITEKTUR IN EINEM J2EE ... - OXSEED
MODELLGETRIEBENE ARCHITEKTUR IN EINEM J2EE ... - OXSEED
MODELLGETRIEBENE ARCHITEKTUR IN EINEM J2EE ... - OXSEED
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
objekte<br />
modellgetriebene architektur<br />
Abb. 1: Die Architekturschichten des neuen Bausparsystems<br />
im Überblick (die Abk. WFMS steht für „Workflow-<br />
Management-System”)<br />
die Planungen einbezogen und verfolgt. Hierzu gehörte neben dem<br />
Aufbau der schichtenartigen Softwarearchitektur (siehe Abb. 1) das<br />
Herausarbeiten eines Designstils mit einem UML-Modell, das weitgehend<br />
von technischen Aspekten und Implementierungsdetails abstrahiert<br />
und die Grundlage einer translativen Codegenerierung bilden sollte.<br />
Als Werkzeuge für diesen Ansatz wurden „ArcStyler” (Interactive<br />
Objects Software GmbH) und „Rational Rose” (Rational Software<br />
Corporation) ausgewählt (vgl. [IOS02]). Die Interactive Objects<br />
Software GmbH hat nach unseren Vorgaben in wenigen Wochen eine<br />
Technologie-Projektion erstellt, die von uns ausgebaut wurde und selbständig<br />
weiterentwickelt wird. Sie enthält die Generierungsschablonen<br />
(Templates) der zu generierenden Artefakte, in die Aufrufe von Jython-<br />
Methoden 1 ) eingebettet sind, über die auf die Modellinformationen<br />
zugegriffen wird. Für die Erstellung dieser Schablonen bietet der<br />
ArcStyler eine integrierte Entwicklungsumgebung mit Debugging-<br />
Möglichkeiten an. Die Schablonen definieren geschützte Bereiche, in<br />
denen sich der Anwendungsentwickler ausschließlich bewegen und<br />
Fachlogik einfügen darf, da nur diese Bereiche in nachfolgenden<br />
Generierungsläufen erhalten bleiben. Hierzu muss dem Generator<br />
immer der aktuelle Quellenstand zur Verfügung gestellt werden.<br />
Die Generierung kann für einzelne Modellklassen, für Pakete von<br />
Modell-Klassen oder für das ganze Modell aus dem CASE-Werkzeug<br />
heraus aufgerufen werden. Um die zur Generierung notwendigen<br />
Parameter einstellen zu können, wurden in Rational Rose neben den<br />
1 )Jython ist eine Java-Implementierung der<br />
Skriptsprache Python (siehe: http://www.jython.org).<br />
speziellen Eigenschaftsleisten des ArcStylers auch eigene<br />
eingefügt, deren Properties die Generierungsvorlagen<br />
verwenden. Daneben wird die<br />
Generierung auch durch den Einsatz von Stereotypen<br />
gesteuert.<br />
Während die Kernteile des Designmodells (Klassen,<br />
Methoden, Assoziationen etc.) relativ technologieunabhängig<br />
sind, werden die technologiespezifischen<br />
Einstellungen innerhalb der leicht austauschbaren<br />
Eigenschaftsleisten gepflegt, und die<br />
Generierungsschablonen enthalten die Projektion auf<br />
die technische Umgebung. Damit kann unser Stil als<br />
konform zum Standard der „Model Driven<br />
Architecture” der OMG angesehen werden (vgl.<br />
[Koc02]). Der Ansatz der modellbasierten Generierung<br />
konzentriert sich auf diejenigen Komponenten und<br />
Anwendungsteile, bei denen fachliche Breite zu erwarten<br />
ist und deren Menge mit der Zahl der<br />
Anwendungsfälle stetig anwächst. Unsere Darstellung<br />
trägt dem Rechnung und setzt deshalb bewusst den<br />
Schwerpunkt auf den stilbildenden modellgetriebenen<br />
Ansatz.<br />
Methodenaufruf:<br />
<br />
<br />
<br />
<br />
615<br />
010<br />
AFH002<br />
<br />
<br />
<br />
<br />
Methodenantwort:<br />
<br />
<br />
<br />
<br />
<br />
<br />
Testfiliale B<br />
615<br />
Test-Name<br />
10<br />
<br />
<br />
Eschborn<br />
6236<br />
<br />
Stuttgarterstr. 1<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
Listing 1: Beispiel des zur Server-Großrechner-<br />
Kommunikation eingesetzten, auf XML basierenden<br />
Protokolls. Es wird die Methode „getStandort” des<br />
COBOL-Moduls „BL-User” aufgerufen.