Full utskifting av et feltoperasjonssystem — med mobilapp og uten appbutikker
Et aldrende skysystem med en separat native Android-app, erstattet av ett moderne .NET-system med en felt-PWA — push-varsler, offline-modus og kamera inkludert. Kjerneutviklingen tok 12 arbeidsdager.
- 12 arbeidsdager med kjerneutvikling
- 38 000+ utstyrsenheter migrert
- Push og offline på iPhone og Android
- 1 system i stedet for 3
Kunden
Et utstyrsutleieselskap med kontorer i to land og over 200 ansatte — koordinatorer på kontorene, sjåfører og mekanikere ute i felt.
Utfordringen
Den daglige driften gikk gjennom tre separate systemer: en webapplikasjon for koordinatorene, en separat native Android-app for feltarbeiderne og en skydatabase med stadig økende månedskostnader. Appen kunne ikke videreutvikles — hver endring krevde en mobilspesialist, publisering gjennom Google Play og dager med venting. iPhone var ikke støttet i det hele tatt.
Selskapet ønsket ett system det kunne vedlikeholde rimelig på egen hånd — uten å risikere den daglige driften i titalls kontorer under overgangen.
Tilnærmingen
Bevis den risikable delen først. Det vanligste argumentet mot webbaserte mobilapper er at «push-varsler ikke fungerer på iPhone». Derfor startet vi med en prototype som beviste det motsatte — på ekte enheter, før en eneste linje av selve systemet ble skrevet.
Deretter: beskriv det gamle systemet skjerm for skjerm. Vi laget en komplett spesifikasjon av den eksisterende appen — hver skjerm, hver status, hver oppførsel — og gjorde den om til en sjekkliste. Regelen var enkel: den første utgivelsen skal være umulig å skille fra det gamle for brukerne. Ingen «forbedringer» som forvirrer folk som er vant til de gamle rutinene. Nye funksjoner ble bygget inn, men holdt skjult — for å slås på etter overgangen.
Så: bygg det nye som én helhet. Ett enkelt .NET-system som betjener både koordineringskontoret og mobilappen. Mobilsiden er en PWA — installert fra nettleseren som en vanlig app, men uten appbutikker, uten publiseringsgebyrer og uten venting: hver nye versjon når alle telefoner umiddelbart.
PWA-en har alt den native appen hadde — og mer:
- Push-varsler ved nye oppdrag, verifisert på ekte iPhone- og Android-enheter;
- Offline-modus — oppdrag kan vises og fullføres uten dekning (vanlig i feltarbeid), og handlingene synkroniseres automatisk når forbindelsen er tilbake;
- Kamera og GPS — bilder legges ved rapporter direkte fra appen, koordinater registreres ved hver statusendring;
- hele katalogen med 38 000+ utstyrsenheter, søkbar selv uten internett.
Resultatet
- Kjerneutviklingen tok 12 arbeidsdager — en full utskifting av koordineringssystemet, mobilappen og datamigreringen.
- 38 000+ utstyrsenheter, 200+ brukere og hele arkivet (nærmere 20 000 oppdragsbilder) migrert med automatisk kontrolltelling mot den gamle databasen.
- Ett system i stedet for tre — én server, én database, én kodebase. Vedlikeholdet krever ikke lenger en mobilspesialist.
- iPhone-støtte for første gang — uten å skrive en egen app.
- Et ferdig fundament for det som kommer: en assistent som svarer på spørsmål fra maskinenes OEM-manualer er allerede bygget inn.
Den avgjørende beslutningen var ikke teknisk, men prosessuell: den første utgivelsen kopierer det gamle systemet én til én, slik at overgangen ikke bærer noen risiko — og de nye mulighetene slås på først etterpå.
Teknologi
.NET 10 · ASP.NET Core · MariaDB · PWA (service worker, IndexedDB) · Firebase Cloud Messaging