Tag:  Projekte

Meine wichtigsten Projekte

Hier sind nur die wichtigsten Projekte der letzten 20 Jahre genannt:

Umstellung Datenaustausch von URL auf Datenbank

Auf Anforderung der internen Security musste der URL basierte Datenaustausch zwischen verschiedene In-Hause Anwendungen auf einen Datenbank basierten Datenaustausch umgestellt werden. Die Umstellung konnte in dem In-Hause Framework so weit gekapselt werden, dass der Umstellungsaufwand für die Anwendungen bis auf die notwendige Erweiterung um die Datenbank- Konfiguration minimal war. Da mit dieser Änderung sämtliche auf dem In-Hause Framework basierenden Anwendungen betroffen waren, konnte dies zur Aktualisierung der Server, Java Laufzeitumgebung und aller verwendeten internen und externen Frameworks genutzt werden. Um das Risiko der Änderung und der Updates sowie den Aufwand besser abschätzen zu können, wurden vorab 3 Anwendungen von mir prototypenhaft in kürzester Zeit umgestellt. Während dieser testweisen Umstellung habe ich eine Umstellungs- und Migrations-Dokumentation für die Anwendungsentwicklung erstellt. Außerdem wurde das Monitoring der Anwendungen und der Datenbank deutlich erweitert und verbessert. Hierüber sind nun Zahlen zu den Anwendungen, Geschäftsvorfällen und einzelnen Seiten möglich. Damit kann in Zukunft leichter abgeschätzt werden, wie welche Anwendungen genutzt werden, welche weiter entwickelt werden sollten oder abgelöst werden können.

Neuer Oberflächenstandard Google Web Toolkit

In enger Zusammenarbeit mit der strategischen Architektur wurde ein neuer Oberflächenstandard basierend auf dem Google Web Toolkit entwickelt und für die Anwendungsentwicklung ein internes GWT Framework und ein GWT Anwendungsrahmen mit zentralem Style entwickelt und bereitgestellt. Dies umfasst neben einem Showcase und Templates auch Schulungsunterlagen und Schulungen für die Anwendungsentwickler.

Eclipse RCP Prototyp

Um verschiedene, vorhanden Technologien, wie Web Anwendungen, 3270 Terminal Emulationen und Dokumentenviewer unter einer gemeinsamen Oberfläche für die Sachbearbeitung bereitzustellen, habe ich einen Prototypen einer Rahmenanwendung basierend auf Eclipse RCP erstellt. Basierend auf diesem Prototypen wurde dann von der Anwendungsentwicklung eine Rahmen Sachbearbeiteranwendung entwickelt. Die Anwendung war bei den Sachbearbeitern sehr beliebt. Allerdings ist der Update immer ein Problem geblieben; hier sind Web basierte Anwendungen ganz klar im Vorteil.

WSDL Service Schnittstelle

Entwicklung einer allgemeinen WSDL Service Schnittstelle mit standardisiertem Header, Meldungen und Fehlerbereich.

Anbindung Wetterdienstleister

Zur Betrugserkennung bei Überspannungsschäden wurde eine Anbindung an einen externen Wetterdienstleisters bereitgestellt. Damit ist es schon bei der Schadenmeldung möglich, schnell und einfach zu prüfen, ob ein Überspannungsschaden in Betracht kommt oder nicht. Man glaubt nicht, wie viele Leute das Versicherungsprinzip nicht verstanden haben …

Generische Oberfläche

Konzeption und Realisierung einer generischen Oberfläche durch XML konfigurierbar. Ziel war die leichte und schnelle Erstellung von spezifischen Oberflächen für zahlreiche Geschäftsvorfälle. Durch die spezifisch auf den Geschäftsvorfall angepasste Maske konnte die Zahl der Eingabefelder klein gehalten werden und damit der Geschäftsvorfall schneller bearbeitet werden.

Zentraler Style für Anwendungssysteme

Entwicklung eines zentralen Styles und Umsetzung in CSS und JSP Taglibs. Anschließende Umstellung diverser Anwendungen auf diesen neuen Style. Ziel war einheitliches Aussehen und Usability. Zentralisierung von Änderungen und Kosteneinsparungen.

C/S Prozesssteuerung

Entwicklung und Realisierung einer C/S Prozesssteuerung mit Anbindung und Transaktionssteuerung des HOSTs.

Dokumentensystem

Evaluierung eines Dokumentensystem und Bereitstellung als Service und Client Bibliothek für Java Anwendungen.

C/S Performance Messungen

Entwicklung und Bereitstellung einer Java Bibliothek zur Performance Messung.

Java Competence Center

Aufbau eines Java Competence Center und eines Standardsierungsgremium.

Redesign monolithisches Framework

Redesing und Refactoring eines monolithischen Frameworks in wieder verwendbare Komponenten mit einer sauberen Schichtenarchtektur. Einführung von JUnit, QS und Dokumentation. Projektleitung, Architektur und Mitentwicklung.

C/S Entwicklungsumgebung mit Eclipse und Tomcat

Aufbau und Betreuung einer C/S Entwicklungsumgebung mit Eclipse und Tomcat.

Anbindung Versicherungsbestandsystem an Fremdsysteme

Zur Anbindung von Fremdsystemen an ein neu entwickeltes C/S- Versicherungsbestandsystems habe ich eine DTD/XML-Beschreibung entwickelt. Diese Beschreibung definiert Datentypen, Parameterlisten, Tabellen und Methoden. Mit dieser Beschreibung sind u.a. generische Dialoge zur Anzeige und Verwaltung von Fremdsystemdaten möglich.

Neuentwicklung eines Versicherungsbestandsystem

Neuentwicklung eines Versicherungsbestandsystems in Java mit einem Historisierungskonzept und Datenbankdesign, welches sowohl maximale Datensicherheit als auch Revisionssicherheit garantiert und die Möglichkeit von Lazy-References für einen optimierten Zugriff bietet.

Pflegeprogramm Mitarbeiterdaten

Javaprogramm mit JDBC - Datenbankzugriff auf DB2 für die zentrale Verwaltung, Abgleich und Korrektur interner und externer Mitarbeiterdaten, deren Daten über die verschiedensten Anwendungen (Legitimation, Email, Abrechnung, … ) verwaltet wurden.

COBOL Anwendungsschnittstelle

COBOL Anwendungsschnittstelle mit Steuer-, Ein- und Ausgabebereich zur Vereinheitlichung und Vereinfachung der Programmentwicklung, sowie zum leichteren Austausch der (fachlichen) Module. Dabei erfolgt die Lösung eines fachlichen Probleme nicht mehr über den Aufruf eines bestimmten, physikalischen Moduls, sondern über einen fachlichen Zugriff. Also statt “CALL MODUL-X” => “GIB-VERMITTLERDATEN”. Welches konkretes physikalisches Modul diese Ausgabe tatsächlich löst, wird erst zur Laufzeit ermittelt, ebenso die Modulversion. Zusätzlich kann in Abhängigkeit vom Aufrufer auch ein anderes Modul angezogen werden. Darüber hinaus bietet diese zentrale Modulschnittstelle den Programmen zentrale Services wie z.B. Legitimationsprüfungen, Logfunktionen und Abrechnungsinformationen an.

BS2000 - OS/390 Connectivityprogramm

Für den Zugriff auf ein unter OS/390 erstellten Organisationsdatenbank wurde eine Connectivityprogramm entwickelt, mit dem BS2000 Programme Zugriff auf fachliche Funktionen zur Verwaltung der Organisationsdatenbank erhielten.

Datenbankschnittstelle mit Datenzugriffsmodulen

Datenbankschnittstelle mit Datenzugriffsmodulen um Anwendungsprogrammen einen einheitlichen Zugriff auf DB2-Daten zu ermöglichen und die Verwendung von SQL in den Programmen selbst zu vermeiden. Durch die zentrale Schnittstelle konnte die Benutzung für den Anwendungsprogrammierer vereinfacht und die Wartung und Änderbarkeit von Programmen erhöht werden. Zusätzlich konnte der Zugriff auf die Daten schon auf einer sehr niedrigen Ebene, ohne Anwendungsprogramm, durch Testtreiber getestet werden.

Programm zur Verwaltung von Organisationsdaten

Im Rahmen einer Umstrukturierung im Konzern und durch Restriktionen in bestehenden Anwendungen wurde es erforderlich, Organisationsdaten wie z.B. “Wo wird ein Vertrag bearbeitet”, in einer eigenen Datenbank abzulegen und per Programm den bestehenden Altsystemen zugänglich zu machen. Ausgehend von einem Objektmodell unter Beachtung einer vollständigen und revisionssicheren Historisierung wurde ein entsprechendes Datenmodell entwickelt und die Daten den Altsystemen bereitgestellt.

Integration MQS C-API

Eine von mir neu entwickelte C-API für MQS wurde in ein Workflowsystem zur Kommunikation zwischen Sinix und OS/390 integriert.

MQS C-API

Zur Erleichterung für die Anwendungsentwicklung wurde um die doch relativ komplexe MQ-API eine eigene, vereinfachte, für alle Anwendungsentwickler standardisierte, API entwickelt.

Y2K

Y2K-Umstellung eines Rechtsschutzsystem mit umfangreichen Testtreibern.

Integration Partneranwendung in Bestandssystems

Integration einer ein PC-basierten Partneranwendung in ein bestehendes Versicherungsbestandssystems. Um die Aufwände und Risiken der Integration möglichst niedrig zu halten, sollten die bestehenden Anwendungsprogramme nicht geändert werden. Da in dem Bestandssystem die Zugriffe auf die Datenbank über eine zentrale Datenbankschnittstelle mit Zugriffsmodulen erfolgte, konnte die Integration genau an diese Stelle erfolgen. Die bestehenden Datenzugriffsmodule auf die Partnerdaten wurden durch Wrappermodule ausgetauscht, die auf das neue Partnersystem zugriffen, aber nach oben mit den Anwendungskomponenten über die bestehenden Schnittstellen kommunizieren. Die Umstellung gelang in kürzester Zeit ohne irgendeine Anpassung an den bestehenden Anwendungsprogrammen, obwohl die zugrundeliegenden Datenstrukturen erheblich von einander abwichen.

Cobol Editor mit Formularen, Bausteinen und Variablen

Cobol Editor mit Formularen, Bausteinen und Variablen, um die Briefschreibung zu beschleunigen und um individuelle Briefe und Scheckbriefe zu erstellen. Jeder Brief basierte danach auf einem Formular, das bereits den wesentlichen Brieftext enthielt. Das Formular wurde in Abhängigkeit vom Geschäftsvorfall automatisch ausgewählt und vorgeschlagen. Der Sachbearbeiter konnte aber auch ein anderes zu diesem Geschäftsvorfall passendes Formular auswählen. Zusätzlich konnte in den bestehenden Brief an jeder beliebigen Stelle Bausteine mit vorgefertigten Textabsätzen eingefügt werden. Formular- und Bausteintext konnten Variablen enthalten, die automatisch vom System gefüllt oder vom Sachbearbeiter einmalig eingegeben wurden, um so den Brieftext sehr kundenbezogen und individuell zu gestalteten. Die Variablenexpansion erfolgte dabei unter Berücksichtigung der Zeilenlänge und der Absätze.

Zentrales Anzeigemodul

Zur Vereinfachung und Standardisierung der Anwendungsentwicklung wurde ein zentrales Blättermodul zur Anzeige und Auswahl von Daten entwickelt. Das Modul enthält standardisierte Funktionen wie z.B. Suchen, Auswählen, etc. Das Modul war so einfach in der Verwendung durch die Anwendungsentwicklung, dass es in wenigen Minuten integriert werden konnte und schon drei Monate nach seiner Entwicklung mehr als einhundert mal in der Anwendung integriert wurde, mit einer deutlichen Verbesserung der Usability für den Endnutzer.

Migration Philips P4000 auf AS400

Für einen Kunden wurden die Daten einer File basierten Versicherungsbestandsführung von einer Philips P4000 auf eine AS400 für ein neues Bestandssystem basierend auf einer relationalen Datenbank migriert. Die Probleme bei diese Migration bestand einmal in der technischen Übertragung der Daten von der P4000 zur AS400, den erheblich voneinander abweichenden Datenstrukturen und der Programmgrösse des Migrationsprogrammes und der Migrationszeit. Die Übertragung der Daten konnte nur über dem Umweg einer AIX zur AS400 erfolgen. Die bestehenden Daten wurden zunächst auf der Philips P4000 eingelesen und in die Datenstruktur des Zielsystem konvertiert sowie fehlenden Datenfelder berechnet und je Relation als ASCII-File abgespeichert. Anschliessend wurden die Daten auf eine AIX übertragen und von dort in die AS400 eingelesen. Wegen der stark abweichenden Datenstrukturen mussten alle zu einem Vertrag gehörenden Daten inklusive alle Historienstände im Speicher gehalten und umformatiert werden. Um das Programm möglichst optimal dem Speicherbedarf anzupassen, wurden zuerst alle Daten analysiert und die Programmtabellen genau auf die nötige Maximalgrösse eingerichtet.

Vorbereitung Y2K

Im Rahmen einer sehr frühen, vorbereitenden Y2K Umstellung eines Bestandssystem wurden in der Datenbank und in den Programmen alle zweistelligen Jahresformate auf 4 Stellen erweitert. Nur in der GUI und auf Druckstücken wurden, wenn der Platz für eine Erweiterung nicht ausreichte, die Jahreszahlen zweistellig belassen. Zusätzlich wurden das Datumsformat in allen Programmen vereinheitlicht. Die Problem war nicht die programmtechnische Umsetzung sondern die Analyse der betroffen Programme, Tabellen und Datenbankfeldern. Ausgehend von den bekannten Datumsfeldern in der Datenbank wurde mittels AWK-Skripts die gesamten Sourcen nach relevanten Programmstellen solange iterativ durchsucht und die Liste der relevanten Datumsfelder erweitert, bis keine weiteren Datenfelder gefunden wurden. Für die Umstellung selbst wurden zunächst zentrale COBOL-Module zur Konvertierung von 2 nach 4 Stellen und für jedes in der Anwendung vorkommende Datumsformat entwickelt. Soweit eine Erweiterung auf 4 Stellen nicht möglich war, wurden die Zeitfenster nicht hart in den Anwendungsprogrammen verdrahtet, sondern per logischen Namen in einer Datumsroutine verpackt, so dass zukünftige Anpassungen nur an einer Stelle gemacht werden müssen.

Redesign Schadensystem

Ein bestehendes Schadensystem wurde an eine stark geändert Bestandsführung angepasst.

Migration PC -> UNIX

Im Rahmen eines Kundenprojektes wurden Daten einer PC-Versicherungsanwendung in eine neue Versicherungsbestandsführung auf Unix migriert. Das besondere Problem dieser Migration war, dass das Format und der Inhalt der Quell-Daten unbekannt waren und vor der Migration analysiert werden mussten. Die PC-Daten wurden mittels COBOL-Programme eingelesen, entpackt und als ASCII-File auf die Unix-Zielplattform übertragen. Auf dem UNIX-System wurden die Daten per Cobol-Programme eingelesen, in das Format des neuen Bestandssystem übertragen sowie fehlenden Daten neu berechnet und per Embedded-SQL in die Datenbank eingestellt.

und vieles mehr …