Uthyrningsföretag för maskiner · 2 länder · 200+ anställda

Komplett ersättning av ett fältsystem — med mobilapp och utan appbutiker

Ett åldrande molnsystem med en separat nativ Android-app, ersatt av ett enda modernt .NET-system med en PWA för fältet — pushnotiser, offlineläge och kamera inkluderat. Kärnutvecklingen tog 12 arbetsdagar.

  • 12 arbetsdagar kärnutveckling
  • 38 000+ maskinenheter migrerade
  • Push och offline på iPhone och Android
  • 1 system i stället för 3

Kunden

Ett maskinuthyrningsföretag med kontor i två länder och över 200 anställda — dispatchers på kontoren, förare och mekaniker ute i fält.

Utmaningen

Den dagliga verksamheten gick genom tre separata system: en webbapplikation för dispatchers, en separat nativ Android-app för fältpersonalen och en molndatabas med ständigt växande månadsavgifter. Appen kunde inte utvecklas vidare — varje ändring krävde en mobilspecialist, publicering via Google Play och dagar av väntan. iPhones stöddes inte alls.

Företaget ville ha ett enda system som det kunde underhålla billigt på egen hand — utan att riskera den dagliga driften för tiotals kontor under övergången.

Angreppssättet

Bevisa den riskabla delen först. Det vanligaste argumentet mot webbaserade mobilappar är att "pushnotiser fungerar inte på iPhone". Så vi började med en prototyp som bevisade motsatsen — på riktiga enheter, innan en enda rad av det faktiska systemet skrevs.

Beskriv sedan det gamla systemet skärm för skärm. Vi tog fram en komplett specifikation av den befintliga appen — varje skärm, varje status, varje beteende — och gjorde den till en checklista. Regeln var enkel: den första releasen måste vara omöjlig att skilja från originalet för användarna. Inga "förbättringar" som förvirrar människor vana vid det gamla. Nya funktioner byggdes in, men dolda — för att slås på efter övergången.

Bygg sedan det nya som en helhet. Ett enda .NET-system som betjänar både dispatchkontoret och mobilappen. Mobildelen är en PWA — installeras från webbläsaren som en vanlig app, men utan appbutiker, utan publiceringsavgifter och utan väntan: varje ny version når alla telefoner direkt.

PWA:n har allt den nativa appen hade — och mer:

  • Pushnotiser vid nya uppdrag, verifierade på riktiga iPhone- och Android-enheter;
  • Offlineläge — uppdrag kan visas och slutföras utan täckning (vanligt i fältarbete), och åtgärder synkas automatiskt när uppkopplingen är tillbaka;
  • Kamera och GPS — foton bifogas rapporter direkt från appen, koordinater registreras vid varje statusändring;
  • hela katalogen med 38 000+ maskinenheter, sökbar även utan internet.

Resultatet

  • Kärnutvecklingen tog 12 arbetsdagar — en komplett ersättning av dispatchsystemet, mobilappen och datamigreringen.
  • 38 000+ maskinenheter, 200+ användare och hela arkivet (nära 20 000 uppdragsfoton) migrerade med automatisk antalsvalidering mot den gamla databasen.
  • Ett system i stället för tre — en server, en databas, en kodbas. Underhållet kräver inte längre någon mobilspecialist.
  • iPhone-stöd för första gången — utan att skriva en separat app.
  • En färdig grund för nästa steg: en assistent som svarar på frågor ur maskinernas OEM-manualer är redan inbyggd.

Nyckelbeslutet var inte tekniskt utan processmässigt: den första releasen replikerar det gamla systemet ett-till-ett så att övergången inte bär någon risk — och de nya funktionerna slås på först därefter.

Teknik

.NET 10 · ASP.NET Core · MariaDB · PWA (service worker, IndexedDB) · Firebase Cloud Messaging