SOA modernisiert Natural-Anwendungen

16.01.2008
Von Thomas F. Wolf

Middleware

Der Servicegenerator transformiert nicht nur die Anwendungen in Services; er generiert auch die komplette Middleware für das Zusammenspiel zwischen modernen Benutzeroberflächen und Services inklusive WSDL-Beschreibungen (Web Services Description Language). Die Middleware sorgt dafür, dass die modernen Oberflächen mit den Services kommunizieren. Schließlich muss ein Klick auf einen Button der Benutzeroberfläche den Aufruf eines Service auslösen.

Model Driven Development

Softwareentwicklung mittels Model Driven Development (MDD) trennt nach Abstraktionsgrad geordnet Geschäftsmodell, fachliches Modell, technisches Modell und Programmiersprachenebene voneinander. Im Sinne eines Forward Engineering verfolgt MDD das Ziel, die fachlichen Modelle über die technische Ebene auf die Programmiersprachenebene automatisch zu transformieren. Das Modell ist damit der Ausgangspunkt für die Softwareentwicklung. Treten Änderungen auf, wird zuerst das Modell geändert. Durch automatische Transformation werden technisches Modell und Code synchron gehalten. So wird im Modell statt im Code gepflegt.

Der Charme von MDD besteht zum einen darin, auch Nichtentwickler am Entstehungsprozess zu beteiligen, weil die Spezifikation einer Software nicht in einer Programmiersprache erfolgt. Zum anderen legt man sich bei der technischen Umsetzung nicht auf eine aktuelle Variante fest, sondern kann immer wieder neue Varianten vorsehen. Das ist besonders dort wichtig, wo sich die Technik alle zwei bis drei Jahre grundlegend ändert, wie beispielsweise bei der Entwicklung von grafischen Benutzeroberflächen.

Der Servicegenerator erzeugt ferner auch die Benutzeroberflächen. Dazu generiert er Excel-Dateien. Diese werden in das Modell eines GUI-Generators importiert. Aus dem Modell heraus erzeugt dieses System wahlweise Swing- oder Ajax-Oberflächen inklusive Event-Steuerung. Innerhalb weniger Minuten lassen sich so komplette Benutzeroberflächen erstellen. Diese Art der GUI-Erzeugung mittels Model-Driven Development-Werkzeugen (siehe Kasten "Model Driven Development"), gepaart mit Automatisierung, empfiehlt sich nicht nur für die Modernisierung, sondern auch für Neuentwicklungen. Die Überführung von Natural-Anwendungen in eine SOA muss also nicht zur Sisyphosarbeit ausarten. Eine sanfte Migration in die Neuzeit ist möglich und schützt bei überschaubarem Aufwand die vorhandenen Investitionen.