Hvordan bygger man cloud-løsninger uden adgang til clouden og leverer avancerede kort-tjenester og terrændata til mobiltelefoner uden netadgang? To senior arkitekter i Systematic forklarer.
Der er garanti for både forhindringer, udfordringer og benspænd, når man udvikler moderne teknologi til et domæne med heftige restriktioner.
Manglende netadgang, usikker radiokommunikation og legacy hardware. Det er nogle af arbejdsbetingelserne for de udviklerteams, der arbejder med Systematics SitaWare-suite.
SitaWare er et kommando- og kontrolsystem, der anvendes primært i forsvaret, men også mange andre steder med høje krav til sikkerhed og robusthed, bl.a. inden for offshore, nødhjælp og beredskab ved naturkatastrofer.
Racerbil på larvefødder
Robert Schultz Krogshave er senior solution architect. Martin Andersen er senior software architect.
De er med til at udvikle noget, man kunne fristes til at kalde ”en racerbil på larvefødder”: Den nyeste og mest avancerede teknologi, men robustificeret og tilpasset til situationer, hvor det går hårdt for sig og hvor der er begrænset tilgang til ressourcer.
Robert og Martins teams har ansvaret for nye løsninger i SitaWare-suiten. Robert arbejder på et netop lanceret produkt, der supplerer SitaWare Headquarters, der anvendes af ledere og koordinatorer i forsvaret.
Det nye produkt, kaldet SitaWare Insight, er en platform til integration af Big Data og AI-services og fungerer som et beslutningsstøtte-system. Martin arbejder med løsningerne SitaWare Edge og SitaWare Frontline, der kører på soldaternes Android-telefoner og på pc’ere fastmonteret i køretøjer.
»Jeg sidder med løsningerne til den enkelte soldat ude i mudderet,« fortæller Martin.
»Det er f.eks. kort-services i stil med Google Maps, der hjælper soldaten med bl.a. at finde sin præcise placering i terrænet og kommunikere den videre til andre. Den type funktionalitet kræver normalt netadgang. Telefonen kontakter cloud’en og 10 millisekunder senere har man svaret. Den mulighed har vi bare ikke altid. Soldaternes telefoner er ofte air-gapped og fuldstændig afkoblet fra nettet. De kommunikerer via forsvarets radiosystem, der har lav båndbredde, høj latency og stort pakketab. Hvad gør man så?«
Self-contained apps
Martin Andersen, senior software architect hos Systematic.
Martin og hans kolleger har håndteret det tekniske udfordringer ved at bygge en Angular applikation. Selv om Angular egentlig er en web app, så kører den her helt nede på Android-telefonen som en native Android-applikation. Samme applikation kører på pc’en i køretøjet, men her opfører den sig fuldstændig som en native applikation, selv om der kører webteknologi nedenunder.
Hjemme på basen downloader soldaten kortet til sin telefon eller pc og bruger det derefter ude i felten, som om man var koblet på nettet. Udviklerne er endda lykkedes med at lave nogle værktøjer til avanceret terrænanalyse, der hjælper soldaten med at finde de bedste udkigsposter eller udpege de steder i terrænet, hvorfra man kan blive set af andre.
»Selv med netadgang er det en kompleks opgave. Men vi har faktisk fået til at køre i et offline miljø. Det synes jeg er ret sejt, ikke bare rent teknisk, men også fordi adgangen til disse informationer i felten kan være afgørende for liv og død for den enkelte soldat. Det giver en ekstra dimension til arbejdet, at vi er med til at udvikle produkter, som beskytter udsendte soldater i verdens konfliktområder,« siger Martin.
Hybride apps
Den 10 år gamle platform, som Edge og Frontline applikationerne oprindeligt kørte på, er nu udskiftet med en platform baseret på moderne webteknologi, bl.a. Angular, TypeScript og en embedded webserver.
Det har givet mulighed for hybrid kryds-platforms udvikling af applikationer, der giver brugeren en oplevelse af moderne app-funktionalitet, samtidig med at teknologien kører uden netadgang, under heftige restriktioner og meget forskellig hardware.
»Brugerne skal have et UI, der er lækkert og intuitivt, selv om det kører på pc’er, der er fastmonteret i et køretøj og som kan være 20 år gamle. I forsvaret kan man ikke bare skifte hardware ud fra dag til dag. Det skal certificeres og opfylde nogle særlige krav. Men en 20 år gammel pc kan for eksempel ikke nødvendigvis køre 64 bit og derfor skal vores applikation kunne understøtte 32 bit. Det er den slags finurligheder, der gør det spændende at arbejde med de her ting,« siger Martin.
Inspireret af Spotify
Ifølge Martin minder arkitekturen på Android-telefonen om applikationer som Spotify og Teams. Her har man også en web-brugerflade, der er pakket ind i en native app.
SitaWare Frontline og SitWare Edge fungerer efter et lignende koncept. Men skallen omkring det hele har vi bygget selv, fordi vi skal have fuld kontrol med, at telefonen bruger sine interne ressourcer og ikke kalder op til internettet i stedet.
Integrerer datastrømme
Robert har tilsvarende udfordringer, men på et helt andet niveau. Han har været med til at udvikle den nye SitaWare Insight løsning, en Big Data integrations-platform til beslutningsstøtte for personalet i forsvarets hovedkvarter.
Robert Schultz Krogshave, Senior Solution Architect hos Systematic.
Insight er et Business Intelligence-lignende værktøj, der integrerer forskellige datastrømme, bl.a. fra sensorer og på tværs af dokumenttyper og filformater. Den tilbyder forskellige AI- og NLP-services, til blandt andet objektanalyse og anomaligenkendelse. Insight bygger på cloud-teknologi, blot med den komplikation, at den skal kunne fungere uden adgang til public cloud.
»Vi kører cloud native teknologi og udvikling, men systemet skal kunne fungere air-gapped, uden adgang til nettet,« forklarer han.
»Det gør det svært. F.eks. forventer nogle af de AI services vi bruger, at de kan hente ting på nettet. Det kan de bare ikke. I stedet pakker vi det hele ind i nogle selvindeholdte services, som så løser opgaven.«
»Vi arbejder med open source produkter oven på Kubernetes og Istio. Vores system er ”cloud agnostic”. Det er i stand til at køre i public cloud, men af sikkerhedsgrunde vil de færreste af vores kunder vælge den løsning, siger Robert Schultz Krogshave.
I stedet hjælper Systematic kunden med at etablere sin egen cloud med et antal servere, der passer til deres behov.
»Det giver os så nogle udfordringer omkring skalering, når vi ikke har uanede ressourcer i CPU og RAM. Det som AWS og Azure har hundredevis af super dygtige folk til at bygge, det må vi klare selv. Det er megasvært og kræver at man har nogle gode kolleger, man kan sparre med,« siger Robert.
Anomali-detektion
Systematic har selv udviklet en række funktionaliteter til Insight-løsningen, bl.a. billedanalyse, objektgenkendelse og detektion af anomalier. De bygger videre på de systemer Systematic allerede har udviklet til farvandsovervågning og som f.eks. kan udpege fartøjer med en adfærd, der ligger uden for normalbilledet.
Hybrid event d. 24. februar
Systematic præsenterer nogle af de arkitektur-beslutninger der ligger til grund for udviklingen af næste generations produkter til SitaWare suiten.
Derudover er Insight bygget som en åben dataplatform, der giver brugerne mulighed for selv at konfigurere indgående data, designe et processeringsflow, bygge dashboards m.m.
Til det formål har Systematic etableret en undervisningsplatform omkring SitaWare Insight, der uddanner brugerne i Data Science, bl.a. validering og filtrering af data og træning af modeller.
EVENT 24. FEBRUAR - From the Tactical Edge to Winning the Battle in the Cloud
Systematic inviterer 24. februar til en hybrid event, hvor Martin Andersen, Robert Schultz Kroghhave og senior program manager Jens Erik Meldgaard præsenterer nogle af de arkitektur-beslutninger der ligger til grund for udviklingen af næste generations produkter til SitaWare suiten.
Eventen er målrettet erfarne arkitekter, dataloger og ingeniører.