In einer langfristigen Zusammenarbeit entstehen nach und nach spezialisierte Applikationen für die Bedarfe der Inventarkreisel GmbH.
Die Inventarkreisel GmbH ist ein mittelständisches Unternehmen (ca. 15 Mitarbeiter) in Kassel, das sich auf den Handel mit gebrauchten Büromöbeln spezialisiert hat. Im Wesentlichen lässt sich der Geschäftsprozess skizzieren als:
Gemeinsam werden in einem laufenden Prozess Bereiche identifiziert, in denen wir mit Software Prozesse vereinfachen können. Dabei ist zu berücksichtigen, dass das Unternehmen bereits jetzt (insbesondere im Vergleich zum Wettbewerb) sehr gut im Bereich IT aufgestellt ist, mit einem umfassenden Warenwirtschaftssystem (JTL) und einer Anbindung an diverse Handelsplattformen wie Ebay.
In den folgenden Abschnitten stellen wir dar, welche Lösungen für Teilbereiche gefunden wurden. Es handelt sich um ein lebendes Dokument, zu dem sicherlich noch die eine oder andere Ergänzung folgen wird.
Bei einer Räumung wurden die Möbelstücke von den Mitarbeitern am Objekt auf LKWs geladen und dann zum Hauptsitz des Unternehmens transportiert. Dort geschah dann die Erfassung des LKW-Inhalts inklusive Aufnahme der Möbel in die Warenwirtschaft. Da die Räumungen stoßweise erfolgen, entsteht hier auch ein entsprechend ungleichmäßiger Bedarf an Warenaufnahmen. Geplant wurde, bei den Räumungen auf LKW-Wechselbrücken umzusteigen, diese dann nach Kassel zu transportieren und dort dann eine stetigere Zubuchung der Waren einzuführen, mit den Wechselbrücken als Zwischenlager im Wareneingang.
Unser Ziel war, die Möbelstücke direkt am LKW bei der Verladung bereits grob zu erfassen. Daraus ergeben sich dann die folgenden zusätzlichen Möglichkeiten:
Mittels der Smartphone-App „IK-Voraufnahme“ (Android & iOS) wird es den Verladearbeitern ermöglicht, direkt am Objekt bereits grundlegende Daten zu den Möbelstücken zu erfassen. Sie geben der Ladung insgesamt einen Namen und können dann beliebig Möbel hinzufügen. Ein Möbelstück wird erfasst via:
Wenn mehrere gleichartige Möbelstücke verladen werden, dann kann dieses Hinzufügen entweder durch Swipen des existierenden Eintrags (links = 1 weniger, rechts = 1 mehr) oder durch direkte Eingabe der Anzahl und dann jeweils Klicken / Tappen von plus / minus-Icons erfasst werden.
Im Warenausgang kann die App genutzt werden, um größere Ladungen (zum Beispiel für den Export) zu erfassen, wobei dann zumeist die Artikelnummer reicht, da sämtliche anderen Daten im Warenwirtschaftssystem verfügbar sind.
Bisher muss eine Ladung erst in die Zentrale nach Kassel transportiert, dort abgeladen und detailliert erfasst werden. Dank "IK-Voraufnahme" stehen aber zuvor bereits wichtige Daten zur Verfügung, die entsprechend auch genutzt werden können.
Mittels der Webapp "IK-Trucksale", die in die Website der Inventarkreisel GmbH eingebunden ist, können die bei Räumungen entstandenen Ladungen im Ganzen, noch bevor sie in der Zentrale entladen und detailliert erfasst werden, von professionellen Möbelhändlern direkt gekauft werden. Auf diese Weise reduzieren sich die Handlungskosten dramatisch und selbst wenn die Händler nicht direkt an der gesamten Ladung interessiert sind, so erhalten sie doch frühzeitig Hinweise auf die demnächst einzeln verfügbaren Artikel.
Die Inventarkreisel GmbH hat in der Vergangenheit lediglich insofern Exportgeschäft gehabt, als dass natürlich auch mal Bestellungen aus dem europäischen Wirtschaftsraum eingegangen und entsprechend abgearbeitet wurden. Dabei sollte es aber nicht bleiben. Es wurden inzwischen erste Erfahrungen damit gesammelt, Containerladungen nach Afrika (zurzeit nur Ghana) zu versenden und dort vor Ort von Handelspartnern vertreiben zu lassen. Allerdings ergibt sich hier das Problem, dass die Handelspartner in Ghana die Verwaltung der Bestände und vor allem die Gewinnung von relevanten Daten (welche Möbelstücke verkaufen sich wie schnell zu welchen Preisen) nicht in der gewünschten Qualität gewährleisten zu können, um optimale Erfolge auch dort zu erzielen.
Der Versand nach Ghana und in der Folge auch an andere Schwellenländer soll forciert werden. Dies ist ökonomisch besonders sinnvoll, weil dort ein Markt existiert für solche Möbel, die in Deutschland bereits nicht mehr vermarktbar, aber zugleich zu schade für eine Entsorgung sind. Das hat zur Folge, dass die Verwertungsquote deutlich steigt, was ökonomisch und ökologisch sinnvoll ist. Um aber die gewünschte Informationsqualität zu erhalten, ist es wichtig, unsere Handelspartner bestmöglich dabei zu unterstützen, die Verwaltung nach professionellsten Maßstäben zu organisieren. Dazu gehört
Mittels der App „IK-Kassenbuch“ können die Handelspartner die üblichen Funktionalitäten einer (vereinfachten!) Warenwirtschaft abbilden und zugleich einen reibungslosen Ablauf der Geschäftsbeziehung gewährleisten. Sie verbessern sowohl unseren als auch ihren eigenen Überblick. Diese Anwendung wird den ausländischen Handelspartnern bzw. ihren Mitarbeitern kostenfrei zur Verfügung gestellt, damit die Mitarbeiter dort auf ihren dienstlichen / privaten Smartphones sehr einfach ihr Lager mit Inventarkreisel-Waren verwalten, ihre Verkäufe und auch ihre sonstigen Einnahmen und Ausgaben erfassen können. Auf diese Weise professionalisieren wir unsere Handelspartner und zugleich hat die Inventarkreisel GmbH jederzeit Zugriff auf aktuelle Verkaufszahlen und Statistiken (a la „durchschnittlicher erzielter Preise pro Möbelstück“), was bei der Planung weiterer Lieferungen von großem Wert ist.
In der Administrations-App "IK-Admin" (für Windows) kann die Verwaltung der Inventarkreisel GmbH die Ladungen direkt nach Erfassung sehen, sie beliebig editieren und bei Warenausgängen kann sie die Ladungen auch direkt aus dem Warenbestand ausbuchen und zur Versendung (zum Beispiel nach Ghana) markieren. Nach Ankunft im Zielland kann sie die Ladung auflösen und in Warenannahmen für das Zielland umwandeln. Ferner können hier alle grundlegenden Daten für die anderen Apps gepflegt werden. Dazu gehören zum Beispiel:
Zudem laufen hier natürlich alle Daten zusammen, die in IK-Kassenbuch anfallen. Man kann sich also jederzeit informieren, wie gut die Läger in den ausländischen Partnerunternehmen noch gefüllt sind und welche Möbel wie gut verkauft werden konnten. Dabei stehen alle Statistiken sowohl in der Landeswährung als auch umgerechnet in Euro zur Verfügung.
Alle Anwendungen wurden mit Dart und dem Framework Flutter umgesetzt. Dadurch ergibt sich automatisch, dass im Wesentlichen jede App auf Android, iOS, Windows, Linux und im Web lauffähig sein könnte. Faktisch haben wir für jede App andere Zielplattformen (2mal Android / iOS, 1mal Windows und 1mal Web) und entsprechend bei der Umsetzung darauf geachtet, auf den Zielplattformen vollständig lauffähig zu sein.
Alle Anwendungen basieren auf einem gemeinsamen Kern, sodass Änderungen an den wesentlichen Strukturen und Datenmodellen nicht vierfach vorgenommen werden müssen. Eines der wichtigen Ziele in der Entwicklung war, nicht zu viele Updates der Endgeräte nötig zu machen, da die Nutzer schon aus geographischen Gründen schlecht verfügbar sind. Daher sind viele Konfigurationen (zum Beispiel die in der App sichtbaren Texte und deren Übersetzungen) datenbankgesteuert.
Die eingesetzte Datenbanktechnologie ist MariaDb. Der Datenbankzugriff erfolgt über eine TreeQL-REST-API, die auf dem eigenen Server beheimatet ist. Die Datenbankauthentifizierung erfolgt über SimpleAuth. Die meisten Anwendungen werden lokal in Kassel eingesetzt und kommen daher ohne Nutzerauthentifizierung aus. Für IK-Kassenbuch, das zuerst in Ghana eingesetzt wird, wurde eine Firebase-Auth-Nutzerauthentifizierung implementiert.
Als State Management Technologie und Service Locator innerhalb der Dart-Applikationen kommt Riverpod zum Einsatz.
Eine besondere Herausforderung war, dass die Apps sehr unterschiedliche Anforderungen an die Synchronisation zwischen App und Backend stellen:
Die entsprechenden Provider, welche die Business-Logik und eben auch die Synchronisations-Logik beinhalten, sind also in mehreren Versionen erstellt worden, die alle den gleichen Interfaces genügen. Die einzelnen Apps bekommen lediglich in einer Grundkonfiguration mitgeteilt, welche Provider sie für welche Bereiche (z.B. Ladungen, Bestände, Standorte, Transaktionen etc.) zu nutzen haben.
Die Bestände werden im Wesentlichen backendseitig aktualisiert. Wenn also ein Verkauf getätigt oder eine Warenannahme bestätigt oder eine Bestandsveränderung erfasst wird, dann wird diese Transaktion zur Datenbank übertragen und mittels Triggern wird die entsprechende Bestandsbuchung durchgeführt. Für alle Apps gilt, dass das Design sich mehr oder weniger aus den Flutter-Standards ergibt. Es war schlicht nicht Fokus der Arbeit, hier auch eine besonders gefällige User-Experience zu erschaffen.
Einen noch etwas detaillierteren Überblick über die App-Suite gibt es in diesem PDF.
Wir werden die App-Suite kontinuierlich entwickeln. Zurzeit steht vor allem die noch bessere Anbindung an die JTL-Warenwirtschaft im Vordergrund. Zudem müssen die ausländischen Partner noch unterwiesen werden.