COBOL bildet in vielen Unternehmen das Rückgrat der kommerziellen Anwendungen. Eine Ablösung wäre weder wirtschaftlich, noch technisch sinnvoll. Um neue Technologien zu integrieren stellt COBOL heute die benötigten Verfahren zur Verfügung. Damit lässt sich COBOL-Logik beispielsweise auch von Web-Anwendungen nutzen. Die Rolle, die COBOL auch heute in der IT-Welt spielt, wird von vielen Anwendern, aber auch von vielen weborientierten Software-Entwicklern unterschätzt. COBOL ist noch immer das Rückgrat der Unternehmens-IT, denn in vielen großen Unternehmen, insbesondere in Banken und Versicherungen, besteht die Mehrzahl der unternehmenskritischen Software-Anwendungen aus COBOL-Programmen. Sie werden oft von Hunderten von COBOL-Entwicklern gepflegt und weiterentwickelt. Laut einer Untersuchung der Gartner-Group belaufen sich die COBOL-Investitionen weltweit auf etwa fünf Billionen Dollar, es existieren mehr als 200 Milliarden Zeilen COBOL-Code – und dies ist keineswegs totes Kapital, denn jedes Jahr kommen etwa fünf Milliarden neue Zeilen dazu.

Kein Wunder also, dass COBOL-Anwender gar nicht daran denken, ihre Anwendungs-Software von COBOL auf andere Sprachen umzustellen. Eine Ablösung der COBOL-Systeme etwa durch C++ oder durch Java steht meist schon aus Kostengründen nicht zur Diskussion. So hat beispielsweise die AMB Generali Holding AG den Aufwand für eine hypothetische Umstellung ihrer Anwendungen auf stattliche 750 Millionen Euro geschätzt. Von dem immensen Investitionsaufwand ganz abgesehen würde eine derartige Umstellung mehrere Jahre dauern, zudem wäre während dieser Zeit die Neu- und Weiterentwicklung der Anwendungen blockiert. Sprechen schon die wirtschaftlichen Gründe gegen einen Abschied von der COBOL-Welt, so gibt es für die Anwender meist auch keine fachliche Veranlassung für einen Kurswechsel. Die vorhandenen Anwendungen sind leistungsfähig, robust und stabil. Gerade im Massenbetrieb, wenn es beispielsweise um die zuverlässige Abwicklung von Millionen von Transaktionen geht, ist die Kombination COBOL/Mainframe technisch ohne Alternative.

Verbindung bewährter Prozesse mit neuer Technologie

Dennoch müssen sich auch COBOL-orientierte Unternehmen den neuen Technologien wie Java oder J2EE stellen. Trotz New-Economy-Krise hat das Web unwiderruflich Einzug in die Unternehmen gehalten, und folglich müssen die daraus entstehenden, neuen Geschäftsprozesse auch in der IT abgebildet werden. Eine Möglichkeit besteht darin, Web-Anwendungen zu entwickeln, die auf der COBOL-Software aufsetzen, die also nicht nur die vorhandenen Daten nutzen, sondern auch die in den Anwendungen enthaltenen Geschäftsregeln.

Das Problem besteht darin, dass diese Regeln zwar in den bestehenden Anwendungen enthalten, dort aber nicht direkt sichtbar sind. In einem Sammelsurium von Sourcen müssen die nutzbaren Geschäftsregeln identifiziert und anschließend isoliert werden. Manuell ist diese Arbeit nicht zu bewältigen. Abgesehen vom dabei entstehenden Aufwand sind oft die betreffenden Anwendungen nicht ausreichend gut dokumentiert und die Entwickler, die sie wie ihre Westentasche kannten, sind längst nicht mehr im Unternehmen. Folglich müssen für das Application Mining, also das Erschließen von nutzbaren Business-Regeln, Analysetools wie Revolve von Micro Focus eingesetzt werden. Sie können diese Arbeit automatisieren und einen Überblick über die Abläufe einer Legacy-Anwendung verschaffen, indem sie die internen Abhängigkeiten und den Programmfluss grafisch darstellen. Auf dieser Basis können Entwickler, die mit der fachlichen Seite der Geschäftsprozesse vertraut sind, bestimmen, welche Sourcen näher zu analysieren sind, um den gesuchten Businessprozess zu erhalten.

Nach einer derartigen Vor-Analyse werden die ausgewählten Sourcen mit speziellen Tools bearbeitet, um konkret nutzbare Prozeduren herauszufiltern. Die betreffenden COBOL-Programme werden mit dem AssetMiner von Micro Focus Abschnitt für Abschnitt automatisch nach verschiedenen Methoden untersucht. Dieser führt eine Bewertung von Code-Abschnitten durch, um festzustellen, welche Art von COBOL-Anweisungen sie enthalten. So sucht das Tool beispielsweise nach kopierten Code-Teilen oder er unterscheidet, ob im jeweiligen Code irgendwelche Berechnungen vorgenommen werden oder ob nur File I/O erfolgt. Er zieht daraus Rückschlüsse auf das Vorhandensein von Business-Regeln. Auch wenn sich solche Verfahren nicht vollständig automatisieren lassen, der Einsatz von Werkzeugen wie AssetMiner spart doch eine Menge Arbeit und macht derartige Projekte erst praktisch durchführbar.

Sind die nutzbaren Code-Teile schließlich identifiziert, müssen sie natürlich aus den vorhandenen Sourcen extrahiert werden. Dabei reicht es jedoch nicht, die betreffenden Anweisungen zu kopieren, denn zugleich müssen die erforderlichen Datendefinitionen zusammengestellt werden. Eine Aufgabe, die Tools übernehmen können, wäre, dass sie die benötigten Daten in Eingabe- und Ausgabeinformationen sowie temporäre Daten klassifizieren und die Daten- und Parameterschnittstelle generieren. Damit ist nun ein für sich unabhängiges COBOL-Unterprogramm entstanden, das die Geschäftsregeln in gekapselter Form enthält – eine neue Komponente, die man nun in verschiedene Architekturen wie COM- oder EJB-Server einsetzen kann. Dazu muss man sie nur noch mit den entsprechenden Schnittstellen ausstatten, die die Kommunikation zu anderen Software-Teilen regeln. Die Geschäftslogik ist dabei nach wie vor in COBOL realisiert; es handelt sich intern um die unveränderten, also bewährten und getesteten Prozesse. Extern sind sie nun aber über ihre neuen Schnittstellen auch für andere Architekturen oder Technologien nutzbar, diesen erscheinen sie als Black-Box.

Integration mit Web-Services

Eine weitere Möglichkeit für die Integration von COBOL-Logik in andere Umgebungen stellen die Web-Services dar, die neuerdings zunehmend an Bedeutung gewinnen. Auch hier bleibt COBOL seiner altbekannten Strategie treu, jede neue Technologie zu vereinnahmen. Web-Services können von COBOL-Anwendungen genutzt, aber auch auf COBOL-Basis erstellt werden. Für die Verbindung von Web-Services mit COBOL kommen wahlweise das Microsoft SOAP-Toolkit oder entsprechende Tools auf Basis von Java – beispielsweise das IBM Web Services Toolkit – in Frage. Das SOAP-Toolkit enthält eine Reihe von COM-Komponenten, die einen Zugriff auf vorhandene Web-Services ermöglichen, sowie einen WSDL-Generator, der WSDL-Files aus COM-Komponenten erzeugt und der diese als Web-Services verfügbar macht. COBOL-Werkzeuge wie Net Express von Micro Focus, die in der Lage sind, COM-Komponenten zu entwickeln, können auf diesem Weg auch Web-Services erstellen. Mit dem IBM Web-Services Toolkit können Java-Applikationen Web-Services aufrufen und umgekehrt Java-Klassen als Web-Services erstellen. Auf Basis der Verknüpfung von COBOL und Java können diese wiederum auf COBOL-Code zugreifen.

COBOL erweist sich in Fragen der Integration in andere Technologien immer wieder als erstaunlich flexibel. Das Gewicht der vorhandenen Anwendungen ist offenbar ein starkes Motiv, so dass die führenden Anbieter für jede neue Technologie – ob Objektorientierung, ob Windows, ob Java oder ob Web-Services – schon nach kurzer Zeit immer auch eine Brücke zu COBOL zur Verfügung stellen. Wenn das so weiter geht, nimmt das mit COBOL wohl nie ein Ende.

Micro Focus GmbH

D–85737 Ismaning

Telefon: (+49) 089/420 94-0

www.microfocus.com