Häufig gestellte Fragen zum Thema Software-Migration für Entscheidungsträger

Sie haben eine LOB Anwendung, eine Anwendung die läuft, und diese Anwendung haben Sie in einer älteren Microsoft-Technologie entwickelt, vielleicht mit Windows Forms, vielleicht mit Visual Basic .NET, möglicherweise schon in CSharp oder noch in VB6. Ihre Firma arbeitet erolfgreich damit. Vielleicht sind Sie auch ein ISV, ein „Independet Software Vendor¬ì, der Software für einen bestimmten Bereich entwickelt und Lizenzen dieser Software erfolgreich verkauft, und Ihre Kunden arbeiten bislang erfolgreich mit Ihrer Software. Nur: Sie haben Bauchschmerzen, vielleicht weil Sie nur vermuten oder schon wissen, dass Ihre Anwendung, die momentan problemlos läuft, mit einer veralteten Entwicklungstechnologie arbeitet. Und Sie spüren das Damoklesschwert förmlich über sich baumeln. Vielleicht wird es sogar in diesem Moment schon zunehmend schwieriger, Ihre Software am Laufen zu halten, weil es immer mehr Supportfälle und Installationsprobleme gibt, oder sich Kunden zunehmend über nicht mehr zu realisierende Funktionalität beschweren. Oder Sie stellen fest, dass Ihre Software nur noch auf sehr alten Plattformen wie Windows XP (ohne Support im April 2014) oder Windows Server 2003 (ohne Support im Juli 2015) problemlos läuft, unter Windows 7 oder Windows 8 aber versagt. Kunden oder Management fragen vielleicht auch immer häufiger nach der Möglichkeit, mobile Geräte anzubinden, die unter Windows 8 laufen, oder Ihre gesamte Software oder Teile Ihrer Software Saas-fähig zu machen.

In jedem Fall ist eine sogenannte „Migration¬ì dringend von Nöten, also ein Transit von Gestern nach Morgen in Sachen verwendeter Entwicklungstechnologie, um die sich nicht umhin kommen. Die einzige andere Alternative die Ihnen sonst bleibt, wäre, ihr Produkt aufzugeben „ keine wirkliche Alternative. Doch was genau bedeutet das für Sie und Ihr Team? Was ist eine Migration, welche Migrationsmöglichkeiten gibt es und was hat eine Migration auf Ihr Produkt oder auf Ihr Team für Auswirkungen? Die folgende FAQ-Liste soll Ihnen helfen, Ihre dringlichsten Fragen zu beantworten. Sollten sich daraus anschließende konkretere Fragen ergeben, wie ActiveDevelop Ihr Team und Sie aktiv bei der Migration Ihres Projektes unterstützen können, vereinbaren Sie einen Gesprächstermin mit uns.

Q: Unsere Anwendung ist komplett in Visual Basic 6 (VB6) geschrieben. Wieso können wir diese nicht einfach auch unter Windows 8 und neueren Betriebssystemen weiterverwenden?
A: Aus mehreren Gründen. Zwar läuft die¬† Visual Basic 6 Virtuelle Maschine (also die Laufzeitumgebung) unter aktuellen Windows Versionen im so genannten WOW (Windows-on-Windows, 32 auf 64 Bit-Modus), aber viele klassische Komponenten sind veraltet und immer mehr versagen ihren Dienst. Es ist also nicht die Kernlaufzeitumgebung, die unter Betriebssystemen ab Windows 7 Probleme macht, sondern oft einige Komponenten zur Daten-Visualisierung (Tabellen, Charts) oder „ bei Kommunikationskomponenten¬† – deren Inkompatibilität mit den neueren Betriebssystemen. Ein Wechsel in zu neuen Entwicklungstechnologien ist also unumgänglich.

Q: Unsere Anwendung nutzt bereits Windows Forms unter .NET laufen. Wie nutzen wir damit neue Technologien wie Windows 8, Windows Mobile 8 oder Cloud-Computing mit Azure? Müssen wir hier auch migrieren?
A: Das hängt sehr von der Architektur Ihrer Anwendung ab. Falls Sie sich schon zu Beginn der Entwicklung viel Zeit für die Architektur gelassen haben, und UI (User Interface, also die Benutzerschnittstelle), UI-Steuerung, Business-Logik und Daten-Zugriff strikt voneinander getrennt haben, haben Sie eine sehr gute Ausgangsbasis, viel Ihres Codes weiterverwenden zu können „ sowohl in Azure-Projekten und im Mobile Computing. Falls Ihre Windows Forms .NET-Anwendung direkt auf Datenbanken zugreift, und Benutzer-Oberfläche, Business-Logik und Datenzugriff quasi miteinander verschmelzen, benötigen Sie zügig eine Migrationsstrategie, um in der Welt jenseits von Windows 8 erfolgreichen Fuß fassen zu können.

Q: Was verstehen Sie unter „Weicher Migration“, was unter „Evolution“?
A: Im Grunde genommen das gleiche. Es gibt zwei Möglichkeiten von Gestern nach Morgen zu kommen. a) Sie frieren den alten Entwicklungsstand Ihrer Software ein, beginnen auf der grünen Wiese komplett neu, entwickeln ihr Produkt von Grund auf mit neuen Ansätzen und schalten dann nach Jahren der Entwicklungsarbeit sozusagen um. Das ist ein Aufwand, der viel kostet und ein großes Risiko birgt, gerade bei größeren Projekten oder bei ISVs. b) Sie versuchen in Ihrer vorhandenen Anwendung Schnittstellen, quasi zum Zerschneiden Ihrer Software in Module zu identifizieren, und migrieren nur Module, und nur die Funktionalitäten, die Sinn machen, auf die neuen Technologien. Das minimiert das Risiko einer Migration enorm. Diese Vorgehensweise bezeichnen wir als „weiche Migration“.

Q: Können wir unsere Visual Basic 6-Anwendung nicht einfach mit Visual Basic .NET neu kompilieren und dann so weiterverwenden?
A: Nein. Visual Basic 6 und Visual Basic .NET haben bis auf eine prinzipielle Sprachähnlichkeit nicht viel miteinander zu tun. Außerdem sind Visual Basic 6-Anwendungen oftmals „historisch gewachsene“, riesige Quellcode-Brocken ohne oder mit nur minimaler Architektur, zudem nur selten mit objektorientierten Ansätzen entwickelt und deswegen nicht mehr teamfähig und schon gar nicht testfähig. Es gibt zwar Möglichkeiten, größere Anwendungen von Firmen, die sich darauf spezialisiert haben, „nur¬ì unter Visual Basic in der .NET-Version wieder lauffähig zu machen, doch die Kosten dafür schlagen mit ca. 1,50 Euro pro Codezeile und mehr zu Buche, und im Grunde genommen haben Sie den gleichen Brocken, den Sie zuvor in VB6 hatten, anschließend in .NET (oder einer anderen Plattform). Die wichtige Chance einer neuen (ersten?) Architektur vertuen Sie dabei.

Q: Wenn wir unsere bestehende Anwendung sowie so neu konzipieren müssen, sollen wir das dann nicht lieber gleich in C# oder in JavaScript/HTML5 machen? Wieso wieder in Visual Basic?
A: Grundsätzlich ist es egal, ob Sie Ihre Anwendung on C# oder in VB entwickeln. Sie müssen sich noch nicht einmal für eine Sprache entscheiden: heutzutage kann die eine nichts relevant besser, was die andere könnte oder umgekehrt. Die eine Sprache erzeugt auch keinen schnelleren oder langsameren Code als die andere. Visual Basic 6 oder VBA-Entwicklern wird der Umstieg viel leichter in VB.NET fallen, und sie werden eher wieder produktiv arbeiten können. Einem späteren Umstieg steht ebenfalls nichts im Weg, da sich Projektmappen sprachtechnisch mischen lassen, und selbst eine Codekonvertierung von VB zu C# und umgekehrt ist in vielen Fällen mit kaum notwendiger Nacharbeit machbar.

Q: Sie erwähnen Windows 8 in Sachen Mobile Computing. Windows 8 macht bei Tablets und Smartphones immer mehr Land gut, aber erreichen wir mit unserem Code auch Android oder iOS-Geräte?
A: Auch hier kommt es darauf an. Bei durchdachter Architektur in Ihrer .NET-Anwendung haben Sie einen entscheidenden Vorteil. Haben Sie sich für C# entschieden, steht Ihnen zwar mit Umwegen und Tool-Investition auch der Weg in die Android und iOS-Welt zur Verfügung „ Sie können sogar bei .NET bleiben! Sollten Sie sich für VB entschieden haben: In Moment hilft für die entscheidenden Business-Teile Ihrer Anwendung nur C# weiter, aber die lassen sich mit nicht viel Aufwand konvertieren. Falls nicht, gilt wieder: Eine weiche Migration aka ¬ÇEvolution¬ë, mit einem gutem Plan bringt Sie hier zum Ziel.

Q: Was zeichnet ActiveDevelop vor Mitbewerbern aus?
A: Als erstes die Erfahrung und das Toolset rund um das Thema Migration. Wir wissen, welche Schwierigkeiten auf Sie zukommen werden und können Sie darauf vorbereiten. Es geht nicht nur im die Vermittlung des bloßen Wissens der neuen Technologien, sondern vielmehr darum, individuelle Konzepte zu finden, wie sich Ihre Produktmodernisierung auch mit Ihrem Berufsalltag verbinden lässt. Es geht darum, eine schnelle Analyse Ihrer bestehenden Software vorzunehmen, um die richtigen Schritte einzuleiten. Sie müssen ERST Ihr Team migrieren und dann erst Ihre Produkte „ diese beiden Meilensteine umzusetzen, ohne das alte Produkt zu vernachlässigen, kann schnell zum Risiko werden. Darüber hinaus: Als MVP für die Programmiersprache Visual Basic stehen wir gerade unter dem Aspekt „weiche Migration¬ì sowie ¬ÇEvolution¬ë mit anderen MVPs und Teams auf der ganzen Welt in Kontakt, um unsere Erfahrungen auszutauschen. Obendrein verfügen wir über sehr gute Kontakte zu den Entwicklungsteam von CSharp, Visual Basic und Visual Studio, und bilden damit Ihre Schnittstelle zum Puls der Zeit. Informationen und Trends, das Wissen über Best Practices und die effizientesten Wege zum Ziel in Sachen Evolution und ¬ÇWeicher Migration¬ë erreichen uns als erstes, und diesen Vorteil können Sie direkt über uns nutzen.