Binnen enkele maanden van leeg vel naar werkende oplossing

‘Ontwikkel een apparaat dat op afstand hartslag, bloeddruk en saturatie meet en de data verwerkt in dashboards voor artsen.’ Met die vraag meldde Open HealthHub zich bij First8 | Conclusion. Een uitdaging die Kelvin Vroegop, Java developer en consultant, samen met zijn collega’s graag aanging.

14 april 2021   |   Blog   |   Door: First8 Conclusion

Deel

Mannen bij werkplek

Het project werd opgestart met als doel de oplevering van een MVP (Minimal Viable Product). Toen na het initiële onderzoek bleek dat het ging lukken is het MVP in no-time doorontwikkeld naar een werkend eindproduct. Het resultaat: Een in Java en Angular geprogrammeerde oplossing die schaalbaar is en een goede performance levert.

Onderzoeksvraag

Een dergelijk product was nog niet op de markt. Tot voor kort moesten patiënten altijd naar het ziekenhuis komen om daar de metingen te laten doen. Een omslachtig, veeleisend en tijdrovend proces. Kelvin bedacht een manier hoe de koppeling gemaakt moest gaan worden, hoe data opgeslagen zou moeten worden en hoe deze data encrypted moest worden verzonden. Uiteraard moesten privacy en security worden gewaarborgd. “Over dit soort onderzoeksvragen en de invulling ervan sparren we hier bij First8 met alle collega’s. Op die manier maken we gebruik van elkaars kennis om de beste oplossing te vinden voor specifieke klantvragen”, vertelt hij. 

Van A naar B naar C

De door de leverancier ontwikkelde meetapparatuur verzamelt dus de data van hartslag-, bloeddruk- en saturatiemetingen van de patiënt. Die data moeten op een veilige wijze van het apparaat (A) in een begrijpelijk format in de database van de opdrachtgever (B) belanden. Om het vervolgens te vertalen naar een gebruiksvriendelijke interface (C) voor de arts. “Voor die laatste stap kwamen we uit bij de reeds bestaande software Highcharts. Alleen moet je dan wel eerst uitzoeken of de software kan omgaan met alle eisen. Je wilt namelijk 3 grafieken tonen, die dezelfde hoeveelheid data laten zien. Om daar de juiste structuur voor te verzinnen was een hele puzzel.” Zo bleek dat bij het tonen van meer dan 10.000 meetpunten de vertraging op 1 enkele grafiek te groot was. Om vervolgens de software daarmee te kunnen laten omgaan, moest de dataset op een andere manier in de backend worden opgeslagen. “Een tweede bottleneck was de performance, want voor iedere grafiek werd een aanroep gedaan naar de database. Met de uiteindelijke structuur die we daarop bedacht hebben kan de software zeer snel en heel duidelijk de initiële grafieken tonen.”

We zoeken altijd naar hoe iets beter kan en zijn nieuwsgierig naar een efficiëntere route. Zowel vooraf als in de uitvoering.

Kelvin Vroegop | Java Developer

Overzicht in 3 grafieken tegelijk

Het gebruik van 3 datasets betekent in dit geval 3 grafieken. Die moesten dus op elkaar worden afgestemd. Zodat de arts erop kan inzoomen en een klein stukje kan selecteren. Opvallende zaken, bijvoorbeeld wanneer waarden te laag of te hoog zijn, moesten als signalering een afwijkende kleur krijgen. En daarnaast moeten artsen, als ze inzoomen op de ene grafiek, direct de status op hetzelfde moment in de tijd kunnen zien in de andere grafieken. “Je moet dus over 3 grafieken een koppeling leggen op de tijdlijn en alle andere waarden.” 

Alles live in realtime

Het is belangrijk dat de arts live en in realtime de grafieken kan raadplegen. Mede daarom zijn keuzes voor herkenbaarheid van de gebruikers gebaseerd op wat ze al kenden. Bijvoorbeeld wat het kleurgebruik in de grafieken betreft. “We verplaatsen ons in de eindgebruiker, om te achterhalen wat voor hem belangrijk is.” De laatste stap was het live updaten van de grafieken. Want een eindgebruiker moet in het dashboard kunnen blijven werken op de plek waar hij bezig is terwijl de gegevens blijven binnenkomen. 

Regeren is vooruitzien

Wanneer First8 aan een dergelijk project begint is het uitgangspunt altijd om vooruit te denken en te zoeken naar de best-fit-for-purpose oplossing. Ze realiseren het product, maar proberen het tegelijkertijd zo generiek mogelijk te houden. In dit geval door op voorhand te bedenken wat er nodig is wanneer er een volgend apparaat moet worden ontsloten met meer meetgegevens, andere data of in een internationale uitrol moeten worden geïntegreerd. “Als het passend is binnen de oplossing proberen we vanuit het experiment en innovatie te werken. We zoeken altijd naar hoe iets beter kan en zijn nieuwsgierig naar een efficiëntere route. Zowel vooraf als in de uitvoering” besluit Kelvin.