foodfittery App für flexible Rezepte nach modularem Aufbau
Featureweise Migration von Breuningers nativer Android- und iOS-App zum Cross-Platform-Framework Flutter
Kunde: E. Breuninger GmbH & Co.
Projekt: Migration Breuningers nativer Onlineshopping-Apps zu Flutter
Leistungen: App-Entwicklung, Backend-Entwicklung
Methoden: Scrum
Technologien:
- iOS: Swift, SwiftUI, Combine, The Composable Architecture
- Android: Kotlin, Jetpack Compose
- Flutter: Dart, BloC
- Backend: Ktor, Spring Boot
Entwicklungszeitraum: Juli 2021 bis Juni 2023
jambit überführte in Zusammenarbeit mit dem internen Breuninger-Team deren bestehende Fashion-Apps Feature per Feature von nativen Android- und iOS-Versionen in das Cross-Platform-Framework Flutter. Dabei entwickelt jambit auch bestehende Funktionen in neuem Design und Clean Architecture neu.
Cross-Platform-Entwicklung für Shopping auf höchstem Niveau
Der Name E. Breuninger GmbH & Co. steht für exklusive Shopping-Erlebnisse von Lifestyle- und Textilwaren im Premiumsegment. Neben den 13 deutschen Kaufhäusern können Kund*innen im eigenen Online-Shop und der zugehörigen App rund um die Uhr einkaufen, was das Herz begehrt.
Um die App-Entwicklung noch effizienter zu gestalten, schneller auf Anforderungen reagieren zu können und für eine noch bessere Einkaufserfahrung kundensichtbare Features zu releasen, hat Breuninger beschlossen, die Fashion-App komplett auf Flutter umzustellen.
Um das Flutter-Rewrite möglichst zügig und sicher voranzutreiben, hat Breuninger jambit als zuverlässigen und performanten externen Dienstleister mit Flutter-Know-how an Bord geholt.
Durch diesen effizienten Cross-Platform-Ansatz konnte jambit gemeinsam mit dem In-house-Entwicklungsteam von Breuninger den Entwicklungsprozess beschleunigen und eine einheitliche Anwendung für Android und iOS erstellen.
Dies führte zu kürzeren Entwicklungszyklen, schnelleren Markteinführungen neuer Funktionen und letztendlich einer Kostenersparnis. Die Endnutzer*innen der App profitieren nun von einer nahtlosen Anwendungserfahrung über verschiedene Geräte hinweg.
Flutter: Wenn eine App zwei Welten erobert – Cross-Platform vs. Native
Eine native App ist eine Anwendung, die speziell für eine bestimmte Plattform oder ein bestimmtes Betriebssystem entwickelt wird. Die native App-Entwicklung für Android und iOS erfordert oft separate Teams und Ressourcen für jede Plattform. Dadurch erhöhen sich Entwicklungskosten, Entwicklungsdauer und Time-to-Market.
Und genau hier kommt Cross-Platform-Entwicklung für Apps ins Spiel. Sie ermöglicht die Erstellung von hochwertigen mobilen Anwendungen, die auf verschiedenen Betriebssystemen laufen, ohne separate Versionen für jede Plattform entwickeln zu müssen.
Eine einzige Codebasis genügt und die App kann gleichzeitig auf mehreren Plattformen ausgespielt werden. Diese Wiederverwendung von Code spart Zeit und Ressourcen und bietet App-Nutzer*innen eine noch reibungslosere Einkaufserfahrung.
Keine unterschiedlichen Entwicklungsteams für Android und iOS, weniger Entwicklungskosten, eine kürzere Time-to-Market – die Vorteile für Kund*innen liegen auf der Hand. Aber was genau ändert sich durch Flutter für die Enduser der App?
Verbesserte Shopping-Experience für App-Nutzer*innen durch Flutter
Durch die einheitliche Codebasis sind User Interface und User Experience über verschiedene Plattformen hinweg konsistent. Es gibt daher keine Unterschiede in den Apps zwischen Android- und iOS-Geräten. Das vereinfacht das Handling durch ähnliches Aussehen und Verhalten wie Bedienung und Navigation. Zum anderen ermöglicht es die gleichen Funktionen. Da diese nur einmal entwickelt werden müssen, können sie gleichzeitig auf allen Plattformen veröffentlicht werden. Ein echter Gewinn für alle User!
Außerdem können Updates und Bugfixes schneller bereitgestellt werden, da Änderungen an der gemeinsamen Codebasis sofort auf beiden Plattformen ausgespielt werden können. Nutzer*innen erhalten somit schneller Zugriff auf neue Funktionen und Fehlerkorrekturen.
Von jambit implementierte Features für ein optimiertes Shopping-Erlebnis
Einige bestehende Features der Apps waren bislang nur für iOS optimiert. Im Rahmen des Projekts entwickelte das jambit Team in enger Zusammenarbeit mit dem In-house-Team diese neu in Flutter. So stehen sie nun auch Android-Nutzer*innen zur Verfügung. Zu diesen Features gehören unter anderem das Adressbuch zur Verwaltung von Liefer- und Rechnungsadressen sowie der Fashion-Finder. Diese intelligente Suchfunktion zeigt ähnliche Artikel passend zu einem ausgewählten Produkt an.
Eine an den Fashion-Finder angelehnte Funktion ist die Brand Selection mit Produktvorschlägen für ausgewählte Marken. Außerdem entwickelte jambit die Frontend-Elemente zum In-App-Messaging. Eine ausgeklügelte Methode, die App-Usern aktionsbasiert Informationen zu neuen Features oder aktuell laufenden Aktionen bereitstellt.
Ein weiteres Feature ist die Breuninger Card Activation. Mit ihrer Hilfe können Kund*innen ihre Breuninger-Karten direkt über die App aktivieren, um von exklusiven Vorteilen zu profitieren.
Zudem wirkte das jambit Team am Bestellstatus für eine transparente Übersicht der Bestellungen und am Homefeed mit. Im Homefeed erfolgt nun das Laden der Daten direkt über die eigene ServiceAPI, anstatt die Daten von den nativen Apps über einen Method-Channel in das Flutter-Modul zu übertragen. Das macht die App noch effizienter und flexibler.
Backend-Anteil als Anti-Corruption-Layer
Zusätzlich zum Mobile-Development mit Flutter entwickelte jambit am Backend der App mit. Das Backend fungiert als eine zentralisierte Schnittstelle, um die verschiedenen APIs der diversen Entwicklungsteams zu integrieren. Dieses Vorgehen sorgt dafür, dass nicht sämtliche Logik in die mobilen Apps implementiert werden muss. Durch die Aggregation und Konsolidierung der Datenströme ist die Codebasis zudem übersichtlicher und weniger fehleranfällig.
Im Rahmen der Backend-Entwicklung führte das jambit Team bestehende Services von Breuninger in einem sogenannten Anti-Corruption-Layer (ACL) zusammen. Diese Zwischenschicht setzte das Team strategisch ein, um die Abhängigkeiten zwischen den Hauptkomponenten der App und externen Diensten und APIs signifikant zu reduzieren. Änderungen in diesen externen Systemen können daher isoliert und von den Hauptkomponenten der App entkoppelt werden. Das stellt sicher, dass die App auch bei Änderungen von außerhalb nicht zwangsweise geupdatet werden muss, da die erforderlichen Anpassungen in der ACL vorgenommen werden können.
Auch unerwartete Abstürze oder Fehler in der App selbst konnten schnell behandelt werden. Durch den Backend-Anteil haben wir weiterführend Stabilität und Zuverlässigkeit der App verbessert.
Die Erfolge auf einen Blick:
- Erfolgreiches Flutter-Rewrite und Umzug der beiden nativen Plattformen auf Flutter.
- Beschleunigte In-house-getriebene Entwicklung dank partnerschaftlicher Zusammenarbeit mit dem Breuninger-Team.
- Umstellung der nativen Apps auf Flutter-only.
- Entwicklung bestehender Features in neuem Design und Clean Architecture.
- Schnellere Markteinführung neuer Funktionen dank Flutter.
- Einfachere Wartung, Weiterentwicklung und Kostenersparnis durch eine konsistente Codebasis in Flutter.
- Gemeinsame Entwicklung neuer Feature-Module mit dem In-house-Team für eine bessere User Experience.
- Enger Austausch von Breuninger und dem jambit Entwicklungsteam für eine ideale Lösungsfindung.
Auch Lust auf Flutter? Kontaktieren Sie uns für eine Beratung.
Für Fragen steht Ihnen Maximilian Claus, Senior Business Relationship Manager Industry & Energy, gern zur Verfügung. Hinterlassen Sie ihm einfach eine Nachricht über das Kontaktformular.
Sie können ihn auch gern direkt über LinkedIn anschreiben oder ihn telefonisch unter der Nummer +49.1516.78 53 678 erreichen.
- Vorherige Seite
- Zur Übersicht
- Nächste Seite