Rambøll, der er en international ingeniør- og rådgivningsvirksomhed, stod over for komplekse udfordringer ved at skulle kunne overvåge strukturel integritet og administrere store mængder sensorbaserede data i realtid. Resultatet blev en cutting-edge webapplikation, der ikke blot muliggør overvågning af strukturel integritet, men også håndterer sensor-målinger i realtid — en ret banebrydende tilgang til at håndtere udfordringerne indenfor branchen. Beregningerne drives af Rambølls Digital Twin-teknologi der giver brugerne dybdegående indsigt i den faktiske strukturelle ydeevne og levetid.
Designet fra brugerens perspektiv
Vi har ved opgaven benyttet os af Design Thinking, med fokus på at designe applikationen fra brugerens perspektiv. Gennem workshops, opnåede vi dyb indsigt i brugernes behov og mål. Den iterative proces involverede tidlig anvendelse af prototyper, hvilket ikke blot afdækkede idéer og muligheder, men også sikrede, at designet hele tiden blev forfinet baseret på feedback. Denne brugercentrerede tilgang har været kernen i udviklingen af en applikation, der ikke kun er teknologisk avanceret, men også intuitiv og brugervenlig.
Teknisk arkitektur
En nøglebeslutning var at skabe en "cloud agnostic" løsning og derfor valgte vi en container-baseret arkitektur, fremfor serverless, der ellers ville have været et oplagt valg. Vi lod os dog alligevel inspirere af microservice-arkitektur i løsningsforslaget til behandling og ingestion af det indgående data.
Her gjorde vi brug af en orkestreringsmodel, der deployer en præcis mængde on-demand containere til de forskellige steps i databehandlingen. Vi opdelte databehandlingen i parallelisérbare dele, med efterfølgende postprocessering, for at optimere håndteringen af de store datamængder. På denne måde laves flest mulige beregninger parallelt, uden dobbeltbehandling af data.
For at optimere datakaldene i selve applikationen, gemmes data i InfluxDB. Ved at bruge separate databaser til relationel og tidsseriedata, opnås den optimale performance og datastruktur.
Projektet har også fra et teknisk synspunkt været fyldt med spændende udfordringer. Blandt andet skulle vi opfinde et dataformat til overførsel af mere end 40.000 geometrier, samt vilkårligt mange tilknyttede datakategorier til hvert punkt — alt sammen visualiseret i 3D, direkte i browseren.
Den brugervendte del af applikationen er udarbejdet som et Node + Typescript API med en React-baseret frontend. Til brug i 3D visualiseringen, udnyttede vi det populære Three.js framework.