Eine große Geschäftsanwendung mit Legacy-Technologie ist wie ein denkmalgeschütztes Haus. Man schätzt die Zuverlässigkeit, die gewohnte und behagliche Atmosphäre, ist aber dennoch unzufrieden, mit der Aufteilung mancher Räume und hier und dort fällt Putz von den Wänden. "Smart" ist es auch nicht mehr – ein wenig Technik und Automatisierung wäre jedoch wünschenswert.
Schnell wird klar, dass geringfügige Änderungen einzelner Räume nicht zur gewünschten Verwandlung führen. Eine vollständige Entkernung und eine umfassende Überarbeitung mit Neuaufbau wäre der richtige Weg zum Ziel. Die Kernsanierung ist ein bewährtes Verfahren, um Alt und Neu zu verbinden und damit den Wert des Objektes in seiner bekannten Zuverlässigkeit zu erhalten.
Nach Abschluss der Modernisierung sind alle Versorgungsleitungen neu verlegt und erweitert, die Wände dem aktuellen Raumbedarf angepasst und die Oberflächen mit modernsten Materialen neu gestaltet worden.
Allzu häufig wird die Frage sofort verneint. Nur eine Neuentwicklung scheint eine moderne Anwendung, die auf den heutigen Browsern und mobilen Devices verwendbar ist, möglich zu machen. Bei fecher sehen wir das anders.
Unsere Teams arbeiten tagtäglich an „Kernsanierungsprojekten“ in der Softwarebranche, für Kunden aus aller Welt. Sie konservieren die Zuverlässigkeit und bewährte, oft sehr detaillierte Funktionalität der geschäftskritischen Anwendungen und machen sie fit für die Zukunft. Sie modernisieren die Programmiersprache, tauschen also Gupta oder Visual Basic 6 aus durch C# oder VB.NET. Sie modernisieren die Bedienung mittels aktueller Konzepte zur Navigation, aber auch hinsichtlich der Verwendbarkeit mit jedem beliebigen Browser. Sie schaffen Vertrauen auf Basis der bewährten und von den Endanwendern geschätzten Zuverlässigkeit und Funktionstiefe.
Die folgende Abbildung zeigt eine Verwaltungsmaske mit einem für die 90er typischen Anwendungsdesign. Sicherlich erfüllt sie auch heute noch die Anforderungen an die Funktionalität und Bedienbarkeit.
Visualisieren Sie kurz Ihren nächsten Neukunden-Termin: Welche der beiden Anwendungen würden Sie lieber präsentieren?
Unbestreitbar und einfach: In die Entwicklung der Software muss investiert werden, um mit dem Wettbewerb Schritt halten zu können. Als Mindestanforderung muss die bekannte Funktionalität in einem schicken neuen Outfit, also einer neu gestalteten Benutzeroberfläche, implementiert werden.
Soll die Anwendung künftig nicht nur wie gewohnt funktionieren und schick aussehen, sondern auch webfähig sein, dann werden 99 von 100 Entwicklern nur einen Weg vorschlagen: Die vollständige Neuentwicklung der Software. Die erste Aufwandsschätzung für 1,5 Millionen Lines of Code, 30 einzelne Module, 350 Report Templates und 1500 Masken beläuft sich auf 50 Personenjahre. Das ist auch für ein großes Team eine sehr herausfordernde Aufgabe. Die Time-To-Market wird nicht unter 4-5 Jahren liegen.
Nun möchten Sie also wettbewerbsfähig bleiben und ziehen dafür den scheinbar einzig möglichen Weg der Neuentwicklung für Ihre Software in Betracht. Dabei stellen Sie fest:
Die Kosten sind zu hoch.
Das Risiko ist nicht kalkulierbar.
Das Ergebnis ist nicht vorhersehbar.
Das Projekt dauert bis zur Marktreife zu lange.
Der Wettbewerber wird die Chance nutzen und Ihnen Kunde für Kunde abwerben.
Mit der toolbasierten Migration, einem leistungsfähigen Web-Framework und einem User Interface Redesign ist das Projekt in Jahresfrist abgeschlossen - zu einem Bruchteil der Kosten.
Das oben gezeigte Beispiel ist ein Ausschnitt aus einer Software mit 1,5 Millionen Quellcode Zeilen und mehr als 1500 einzelnen Masken. Mit fechers Werkzeugen wurde der gesamte Quellcode von Visual Basic 6 nach C# übersetzt. Das User Interface ist auf der Basis von HTML5 implementiert; diese Transformation erfolgt automatisiert. Die Neuanordnung und -gruppierung der Controls wird toolbasiert vorbereitet und dann manuell fertig gestellt. Einige Elemente, wie die Navigation, wurden neu implementiert. Die Fenster aus der alten Anwendung haben die gleiche Funktion wie zuvor, nur in neuem Design und in neuer, zuvor konfigurierter Anordnung.
Die Vorteile einer solchen Anwendungsmodernisierung sind vielfältig und für alle Beteiligten besondere:
Es gibt nach wie vor Bedenken hinsichtlich des Betriebes einer Webanwendung. Manche Kunden möchten lieber ein "Programm" auf Ihrem Desktop als Executable ausführen. Kein Problem: Die oben gezeigte Webanwendung konfigurieren Sie einfach als Standalone-Anwendung. Damit wird der Browser und Webserver integriert und die Ausführung ist, identisch zu einer Client-Server-Umgebung, auf jedem Windows PC möglich.
Prüfen Sie bei Neuentwicklungsprojekten, die eine Legacy-Software ablösen sollen, den Weg der Migration. Neben der häufig umgesetzten 1:1 (oder as-is) Migration gibt es auch Mischformen, mit denen nicht nur die Programmiersprache ausgetauscht, sondern gleichzeitig ein Refactoring des User Interfaces, der Architektur oder auch neue Funktionalität, wie Resizing, Mehrsprachigkeit, Responsiveness, Mobile Support implementiert wird.
Die Kosten und die Dauer solcher Projekte können bereits zu Beginn sehr genau geschätzt werden. Festpreis und Werkvertrag sorgen schließlich für die Sicherheit, die Ihnen bei dem Weg der Neuentwicklung fehlt.
Mehr zum Thema: Wie funktioniert das Web Enabling von fecher? Video ansehen >>