Inhaltsverzeichnis
Ausgangssituation
Viele Unternehmen stehen heute vor der Herausforderung, ihre bestehenden Desktop- und Cloud-Softwarelösungen auf mobile Plattformen zu erweitern, um den sich ständig ändernden Anforderungen gerecht zu werden. Unsere jüngste Erfolgsgeschichte erzählt von einem solchen Kunden, dessen Name und Produkt aus Datenschutzgründen nicht genannt werden können. Dieser Kunde hatte eine spezialisierte Softwarelösung im Einsatz, die es ermöglichte, betriebliche Abläufe zu verwalten und zu protokollieren. Das Problem? Er benötigte dringend eine mobile App, die es den Anwendern ermöglichte, Gefährdungen zu identifizieren und Schutzmaßnahmen zu erstellen, einschließlich der Möglichkeit, Bilder zu den Vorgängen hinzuzufügen. Das klang nach einer spannenden Herausforderung.
Die ursprüngliche App wurde um das Jahr 2016 entwickelt, in der Ära des iPhone 6S/7 und des Galaxy S7. Sie basierte auf Ionic (Version 2) und Apache Cordova. Die App war jedoch aufgrund unregelmäßiger Wartung und Weiterentwicklung bereits Anfang 2020 veraltet. Das User Interface wirkte altmodisch und konnte die Möglichkeiten moderner Smartphones nicht nutzen.
Im Jahr 2022 wandte sich der Kunde an uns, um die Anwendung zu migrieren und auf den neuesten Stand zu bringen. Dies war der Beginn einer aufregenden Reise, die schließlich zur Veröffentlichung der aktualisierten App im App Store Ende 2022 führte.
Die Herausforderungen im Detail
Die Analyse des Projekts förderte einige spannende Herausforderungen zutage:
- Bugs und Inkompatibilitäten: Veraltete Frameworks und Technologien hatten im Laufe der Jahre eine Vielzahl von Fehlern in die App eingebracht, die es dringend zu beheben galt.
- Funktionsunterschiede: Die Desktop- und Cloud-Versionen der Software und die mobile App wiesen erhebliche Unterschiede in ihren Funktionen auf, da sie separat entwickelt worden waren.
- Veraltetes UI/UX: Das User Interface war in die Jahre gekommen und entsprach nicht mehr den Erwartungen moderner Nutzer.
- Sicherheitslücken: Veraltete Android- und iOS-SDKs hatten Sicherheitslücken hinterlassen und verhinderten Updates im App Store.
- Manueller Aufwand: Der Build-Prozess erforderte für den Kunden plattformspezifische Hardware (Apple Mac für Entiwcklungsumgebung iOS, sowie Android), welcher für jedes Update alle paar Monate aus dem Schrank geholt werden musste, was sowohl zeitaufwändig als auch kostspielig war.
Das Ziel des Projekts
Unsere Mission war klar definiert:
- Neuaufbau der App: Wir entschieden uns, die bestehende App nicht einfach nur zu aktualisieren, sondern eine vollständige Neuentwicklung auf Basis von Ionic 5+ und Capacitor durchzuführen.
- Beseitigung von Bugs: Wir machten uns daran, alle vorhandenen Fehler zu korrigieren, um eine stabile Anwendung zu gewährleisten.
- Integration neuer Funktionen: Wir passten die App an die aktuellen Anforderungen an, um sicherzustellen, dass sie die Bedürfnisse und Erwartungshaltung der Anwender erfüllt.
- Automatisierung des Build-Prozesses: Um den manuellen Aufwand zu beseitigen, implementierten wir eine automatisierte Build- und Deployment-Lösung.
- Offline-First-Ansatz: Die App sollte als vollständige Offline-First-App konzipiert sein, was bedeutet, dass sie keine permanente Internetverbindung erfordert und die Benutzer ein ununterbrochenes App-Erlebnis erhalten.
Das Vorgehen
Die Umsetzung dieses ehrgeizigen Projekts erforderte eine sorgfältige Planung und ein durchdachtes Vorgehen. Angesichts der Komplexität der vorhandenen Anwendung und ihrer Geschichte entschieden wir uns, nicht einfach eine Aktualisierung vorzunehmen. Stattdessen begannen wir mit einem sauberen Neuprojekt und übernahmen die Geschäftslogik schrittweise, wobei wir bei Bedarf Anpassungen vornahmen. Dieser Ansatz ermöglichte es uns, ein modernes UI zu gestalten, das auf aktuellen Best Practices basiert.
Unser Fokus lag auf einem zeitgemäßen Look & Feel, einer intuitiven Benutzererfahrung und einer fehlerverzeihenden Oberfläche. Durch diese Herangehensweise konnten wir eine moderne Anwendung erstellen, die reaktionsschnell arbeitet und sich nahtlos in die Welt der SaaS-Produkte einfügt.
Während des Prozesses befassten wir uns intensiv mit den aufgestauten Bugs und lösten die Unterschiede zwischen den Cloud-/Desktop-Versionen und der App auf. Das Ergebnis war eine Anwendungsumgebung ohne Abstürze, Abbrüche oder Fehlermeldungen.
Um die Aktualisierungen in die App Stores zu beschleunigen, integrierten wir einen Cloud-Build-Service für Continuous Integration und Continuous Delivery (CI/CD). Dieser Service übernahm den Quellcode direkt aus der Git-Quellcodeverwaltung und automatisierte die Erstellung und Bereitstellung der Apps gemäß vordefinierter Konfigurationen, Zertifikate und Regeln. Dies führte dazu, dass zukünftige Updates wesentlich einfacher und kosteneffizienter waren.
Das erfreuliche Fazit
Die erfolgreiche Migration dieser Anwendung ermöglichte es dem Kunden, auf eine moderne App zu blicken, die von seinen Kunden positiv aufgenommen wurde. Diese Erfolgsgeschichte unterstreicht, dass mobile Apps regelmäßige Pflege und Aktualisierung erfordern. Die Einführung einer CI/CD-Pipeline zur automatisierten Erstellung und Bereitstellung von Updates im App Store ist von höchster Bedeutung, um unnötige Kosten zu vermeiden und den Erfolg einer App sicherzustellen.
Diese Geschichte zeigt auch, dass selbst veraltete Legacy-Software in moderne, leistungsstarke Anwendungen umgewandelt werden kann, die den aktuellen Anforderungen gerecht werden. Sie möchten auch Ihr Softwareprojekt in die Zukunft führen und Ihre Kunden begeistern? Kontaktieren Sie uns noch heute, und wir helfen Ihnen, Ihre Vision zu verwirklichen. Vertrauen Sie auf unsere Expertise zur App- und Frontend-Entwicklung, um Ihre Software auf das nächste Level zu heben und in den App Stores erfolgreich zu etablieren. Lassen Sie uns gemeinsam den Wandel gestalten!