Story: VB6-Migration
Von VB6 ins Web bei Harris

Von VB6 direkt an die technologische Spitze katapultiert

Harris Local Government migriert 16 Legacy-Anwendungen nach .NET und führt sie zu einer einzigen browserbasierten Anwendung zusammen

Der Softwarehersteller Harris Local Government hat sich auf unternehmenskritische Software für den öffentlichen Sektor spezialisiert. Seine ERP-Lösung für die Kommunalverwaltung wird von Gemeinden, Bezirken sowie von Wasser- und Abwasserunternehmen in den gesamten Vereinigten Staaten verwendet. Mit mehr als 400 Kunden-Installationen besteht die Software-Suite aus 16 Anwendungen für die Finanzverwaltung, Gehaltsabrechnung und Bürgerdienste wie Kraftfahrzeugzulassung, Vermögenssteuerveranlagung und Hundesteuer. Ursprünglich in den späten 1990er und frühen 2000er Jahren geschrieben, konnte die Software auf Basis von Visual Basic 6 (VB6) mit den heutigen Anforderungen jedoch nicht mehr Schritt halten. Mit Unterstützung von fecher und einer externen Designfirma war Harris in der Lage, die technologische Grundlage seiner Software vollständig zu erneuern und auf den modernsten Stand zu bringen. Als Ergebnis des zweijährigen Projekts ist die ERP-Software nun eine konsolidierte Browser-Anwendung mit moderner Benutzeroberfläche, die an jedem Ort und auf jedem mit dem Internet verbundenen Gerät verwendet werden kann.

„Bei den Kunden, die unsere ERP-Software nutzen, handelt es sich um eher kleine Gemeinden mit einer durchschnittlichen Einwohnerzahl unter 10.000 und selten mehr als 10 Anwendern“, erklärt Joe LaBuda, Executive Vice President von Harris Local Government. „Dennoch wollen sie genau wie größere Unternehmen dezentral arbeiten und von verschiedenen Orten aus zugreifen können. Außerdem ist ihnen wichtig, den Bedarf an Anwenderschulungen zu reduzieren, indem sie auf einer vertrauten browserbasierten Plattform arbeiten.“

Es gab also sowohl von der installierten Basis als auch von potenziellen neuen Kunden eine klare Nachfrage nach browserbasierter Software. Auf der anderen Seite hatte Microsoft seit langem das Ende der Unterstützung für Visual Basic Classic angekündigt und mit jedem neuen Release von Microsoft Windows traten mehr Probleme bei der Unterstützung der VB6-basierten ERP-Suite auf. Nicht zuletzt beschränkten die Mängel von VB6 einige der fortgeschrittenen Funktionen, die Harris implementieren wollte. All dies führte 2016 schließlich zu der Entscheidung, dringend die möglichen Alternativen zu evaluieren.

Harbor - Foto: Roman Boed, pxhere.com

„Bei dem, was wir in der Software implementieren konnten,
waren wir durch die Einschränkungen von VB6 limitiert.“


Eine naheliegende Lösung wäre die Bildung eines internen Teams gewesen, das die Software von Grund auf neu schreibt. „Ein derart gewaltiges Unterfangen hätte einen erheblichen Aufwand bedeutet und umfangreiche Neueinstellungen nötig gemacht. Wir hielten es einfach für ein zu großes Risiko, ein völlig neues Entwicklungsteam nur für dieses einmalige Projekt aufzubauen", erklärt Joe LaBuda. Bei der Suche nach professionellen Dienstleistungsunternehmen, die bei ihrem Projekt unterstützen sollten, stieß LaBuda dann bald auf den deutschen Software-Modernisierungsspezialisten fecher. „Was fecher auszeichnete, waren ihre Migrationswerkzeuge, die unseren Code auf die neue Plattform umsetzen konnten. Alle anderen Unternehmen, mit denen wir gesprochen haben, hätten im Grunde nichts anderes getan, als die Software von Grund auf neu zu schreiben – genau wie wir selbst es auch hätten tun müssen.“

Bevor sie in das eigentliche Projekt investierten, wollten LaBuda und sein Team sich anhand eines Pilotprojekts mit einen der Module der Suite vom angebotenen Ansatz überzeugen. „Wir haben das Inkasso-Modul ausgewählt, da es recht komplex ist, verschiedene Technologien verwendet und auch Integrationen von Drittprodukten benötigt“, erinnert er sich. Das Pilotprojekt begann im Frühjahr 2017. Im Sommer, als der migrierte Code zurückgeliefert worden war und die Qualitätssicherung bestanden hatte, war man bei Harris mehr als zuversichtlich, auf dem richtigen Weg zu sein.

Schwerpunkt auf dem Front-End

Anschließend wurde das Pilotprojekt dem Anwenderbeirat vorgestellt. Die zehn langjährigen Kunden waren mit den Ergebnissen ebenso zufrieden wie Harris. Die einzige zusätzliche Verbesserung, die sie sehen wollten, betraf die Benutzeroberfläche. Der Migrationsprozess hatte einfach die bestehenden VB6-Masken übernommen und aus diesen funktionell gleichwertige Web-Formulare erstellt. „Wir erkannten, dass wir etwas mehr tun mussten. Es war offensichtlich, dass ein modernes, anspruchsvolleres Look-and-Feel uns helfen würde, die Benutzerakzeptanz zu erhöhen“, so LaBuda. Entsprechend wurde eine externe Webdesign-Firma in das Projektteam aufgenommen und mit der Aufgabe betraut, die neue Benutzeroberfläche zu entwerfen.

„Die Festpreisoption war ideal:
So wussten wir von vornherein genau, was die Migration kosten würde
und wie unsere Kunden davon profitieren.“

Die neuen browserbasierten Forms sind intuitiv bedienbar

Das Team war nun komplett und das eigentliche Projekt konnte beginnen. „Da wir dies als eine Investition betrachteten, für die wir eine Rendite erwarten, war die von fecher angebotene Festpreisoption für uns ideal: Wir wussten von vornherein, was die Migration uns kosten und wie unsere Kunden davon profitieren würden“, erklärt LaBuda.

Eine nach der anderen ließ fecher die Anwendungen durch den Migrationsprozess laufen, der damit beginnt, dass ein Tool namens vbPORTER den VB6-Code nach .NET bringt und ihn in C# und Windows Forms konvertiert. Danach macht winformPORTER, ein weiteres automatisiertes Tool, alles webfähig, so dass die resultierenden Anwendungen in einem Browser statt auf dem Windows-Desktop verwendet werden können. „So einfach dies auch klingt, ist zwischen den automatisierten Schritten viel manuelle Arbeit zu leisten“, so Andrea Bradea, Projektleiterin bei fecher. „Die Werkzeuge decken jedoch 80 bis 90 Prozent des Aufwands ab, was unser Migrationsmodell für den Kunden finanziell attraktiv macht.“

Parallel zur laufenden VB-Portierung begann der Webdesigner mit der Arbeit an Beispiel-Formularen, anhand derer er moderne Standards für die Benutzerschnittstelle der Browser-App entwickelte. Neben Photoshop-Designs und HTML-Mock-ups entstand ein detaillierter Styleguide, der alle Aspekte der Benutzerschnittstelle definierte: Welche Bedienelemente zu verwenden sind und wie sie zu gestalten sind, welche Abstände zwischen den einzelnen Elementen einzuhalten sind, welche Regeln hinsichtlich der Farbgebung gelten, wo welche Hintergrundbilder und Symbole zu verwenden sind und vieles mehr. Mit Hilfe dieses Styleguides entwickelte das fecher-Migrations-Team ein Theme für die Webplattform und hielt sich auch im weiteren Verlauf des Projektes an dessen Vorgaben.

Als Teil der Web-Enabling-Phase wurden die 16 zuvor getrennten Executables zu einer einzigen Web-Anwendung konsolidiert, für die der Designer ein neues Hauptmenü entwickelt hatte. „Obwohl dies einige zusätzliche technologische Herausforderungen für das Team bedeutete, hat es sich auf jeden Fall gelohnt – erlaubt es doch den Benutzern, einfach zwischen den Formularen zu wechseln, auch wenn diese zu verschiedenen Modulen gehören“, erklärt Bradea. Weitere besondere Herausforderungen auf dem Weg zum Web waren ein ActiveX-Berichtswerkzeug eines Drittanbieters, das durch einen neuen .NET- und Browser-kompatiblen Report Writer ersetzt werden musste, sowie die hartkodierte Verbindung zu einem Quittungsdrucker, für den nicht einmal ein Windows-Treiber existierte. „Es sind Überraschungen wie diese, die jedes Web-Enabling-Projekt zu einem einzigartigen Erlebnis machen“, schmunzelt Bradea rückblickend.

(Fast) alles funktioniert im Web

Das Problem der Druckersteuerung konnte schließlich mit einer Windows-Tray-App gelöst werden, die fecher genau für diesen Zweck entwickelt hat. Alles andere, einschließlich sämtlicher Formulare und der gesamten Funktionalität aus 16 Anwendungen, kann nun überall im Internet genutzt werden, egal ob vom Windows-Desktop, einem Apple-Gerät, einem Smartphone oder einem Tablet.

Alle 16 Einzelanwendungen sind jetzt in einer Browser-App integriert

„Als wir dies unserem Anwenderbeirat zeigten, wollten die Mitglieder es sofort ausprobieren, und zwar eher früher als später“, berichtet LaBuda. „Um jedoch sicherzustellen, dass alles reibungslos abläuft, geben wir die neue Software immer nur nach und nach für jeweils einen Kunden frei.“

„Wir hatten eher eine Partnerschaft
als nur eine Kunden-Lieferanten-Beziehung.“


Bevor die Einführung überhaupt beginnen konnte, musste eine umfangreiche Testphase absolviert werden. „Selbst nach der ersten Testrunde bei fecher entdeckten wir noch eine Reihe von Problemen, als wir mit der Qualitätssicherung begannen“, erklärt LaBuda. „Aber fecher war sehr entgegenkommend und das ganze Projekt fühlte sich viel mehr wie eine Partnerschaft als nur eine Kunden-Lieferanten-Beziehung an. Wir haben das Budget eingehalten und eine Codebasis von weit über zwei Millionen Codezeilen in nur 24 Monaten mit großartigen Ergebnissen auf .NET und das Web übertragen!“ Aus diesem Grund hat LaBuda fecher auch gleich an die Kollegen in anderen Unternehmen der Harris-Gruppe weiterempfohlen. „Dies wird nicht unser letztes gemeinsames Projekt gewesen sein“, ist er sich sicher.

Story als PDF anzeigen