Achtergronden: Ontwikkeling en validatie van de rekenmodule

30 oktober 2015

Inleiding
De rekenmodule is gekoppeld aan de database van het Nederlandse Kinderformularium en berekent een individuele dosis op basis van specifieke patiënt data en de dosis gegevens uit de database van het Kinderformularium. De website www.kinderformularium.nl wordt gevoed uit dezelfde database.

De invoer in de database wordt gecontroleerd en geautoriseerd door een tweede persoon.

De rekenmodule berekent de dosering voor een individuele patiënt op basis van de normdosering uit het Kinderformularium. Apothekers rekenen bij voorkeur de berekende dosering terug naar de normdosering. Deze functionaliteit is nog niet opgenomen in de rekenmodule.

Hieronder worden de functionele eisen die gesteld zijn aan de rekenmodule beschreven.

Functionele eisen rekenmodule
Stap 1: Keuze van het geneesmiddel
De gebruiker selecteert de geneesmiddel door naar de monografie van het betreffende geneesmiddel in het Kinderformularium te navigeren. Door in de monografie op de rekenmodule icoon te klikken wordt de rekenmodule voor het betreffende middel geopend.

Stap 2: Input van patiëntgegevens door de gebruiker.

  • Geboortedatum: de geboortedatum wordt gebruikt om de huidige leeftijd van de patiënt te berekenen. De rekenmodule selecteert op basis van de leeftijd in stap 4 de bijbehorende gegevens uit de database van het Kinderformularium. Indien de geboortedatum minder dan 28 dagen geleden ten opzichte van de huidige datum ligt, vraagt het systeem of de patiënt pre-term geboren is. Als de patiënt preterm geboren is, vraagt het systeem om aanvullende patiëntgegevens (indien van toepassing bij het betreffende middel):
    • Zwangerschapsduur bij geboorte: De rekenmodule selecteert op basis van de zwangerschapsduur in stap 4 de bijbehorende gegevens uit de database van het Kinderformularium.
    • Geboortegewicht: De rekenmodule selecteert op basis van de leeftijd in stap 3 de bijbehorende gegevens uit de database van het Kinderformularium
  • Huidig gewicht: gewicht in kg
  • Lengte: uitsluitend bij geneesmiddelen met een doseeradvies dat wordt gegeven in mg/m2 wordt de lengte van de patiënt gevraagd teneinde het lichaamsoppervlak te berekenen met behulp van de Mosteller formule.
  • De rekenmodule controleert het gewicht voor de leeftijd waarbij het gebruik maakt van de groeicurves voor kinderen in Nederland. Indien het gewicht afwijkend is voor de leeftijd met een afwijking van meer dan twee standaarddeviaties, geeft de rekenmodule een signaal. De gebruiker moet bevestigen dat geboortedatum en gewicht correct zijn of invoer corrigeren.


Stap 3: Keuzes ten aanzien van het geneesmiddel

  • Indicatie: de indicaties voor gebruik van het geselecteerde geneesmiddel worden weergegeven in een drop-down lijst. De drop down lijst wordt geëxtraheerd uit de database van het Kinderformularium rekening houdend met de leeftijd en het gewicht van de patiënt. Zodoende wordt voor de individuele patiënt alleen indicaties getoond waarvoor een doseeradvies in het Kinderformularium beschreven is. De gebruiker selecteert een indicatie.
  • Toedieningsweg: De toedieningswegen die beschikbaar zijn voor de geselecteerde indicatie en leeftijdscategorie worden getoond in een dropdown lijst. De drop down lijst wordt geëxtraheerd uit de database van het Kinderformularium. De gebruiker selecteert een toedieningsweg
  • Toedieningsvorm: Uitsluitend wanneer het Kinderformularium verschillende doseeradviezen voor verschillende toedieningsvormen beschrijft, worden de toedieningsvormen die beschikbaar zijn bij de gekozen toedieningsweg getoond in een drop down lijst. De drop down lijst wordt geëxtraheerd uit de database van het Kinderformularium. De gebruiker selecteert een toedieningsvorm
  • Doseerfrequentie: Uitsluitend wanneer meerdere doseerfrequenties mogelijk zijn, worden de beschikbare doseerfrequenties in een drop down lijst getoond aan de gebruiker. De top-down lijst wordt geëxtraheerd uit de database van het Kinderformularium. De gebruiker selecteert de gewenste doseerfrequentie.
  • Start/onderhoudsdosis: indien er sprake is van een onderscheid in start-, en onderhoudsdosis waarbij verschillende doseerfrequenties van toepassing zijn, dient de gewenste doseerfrequentie voor zowel start-, als onderhoudsdosis te worden geselecteerd.
  • Doseerrange: wanneer het doseeradvies van het kinderformularium is weergegeven als een range, dient de gebruiker aan te geven welke dosering binnen de range hij/zij wenst te gebruiken. De doseerrange wordt getoond. Indien er sprake is van een titratie op basis van effect binnen een range, is het niet nodig een dosis te selecteren.

Step 4: Uitkomst berekende dosering

  • De rekenmodule extraheert op basis van de ingevoerde patiëntgegevens (leeftijd, gewicht) en gemaakte keuzes ten aanzien van het geneesmiddel (indicatie, toedieningsweg, toedieningsvorm, doseerfrequentie en dosis) de doseringsparameters uit de Kinderformularium database:
    • De (dag)dosis in (eenheid)/kg (m2) wordt vermenigvuldigd met het gewicht/lichaamsoppervlak van de patiënt.
    • De berekende dosering wordt getoetst aan de maximale dosering. Bij overschrijding wordt de maximale dosering als berekend advies aangehouden.
    • De berekende dagdosis wordt gedeeld door de doseerfrequentie
    • De berekende individuele dosis wordt getoond aan de gebruiker als keerdosering en als dagdosering.

Stap 5: optioneel: aanvullende berekening

  • De berekende individuele dosis kan worden omgerekend naar een doseeradvies in ml van een product van een bepaalde concentratie. De concentratie van het te gebruiken product wordt ingevoerd als ”X (gewicht eenheid) per Y(volume eenheid)”
  • De rekenmodule rekent de berekende individuele keerdosering en dagdosering om naar een volume eenheid (meestal ml) door de berekende dosis te delen door de ingevoerde gewichtseenheid per de enkele volume-eenheid.

Risico minimalisatie maatregelen:

  • Verkeerde invoer lengte gewicht leidt tot fouten die ernstige gevolgen kunnen hebben aan de patiënt: Controle op combinatie leeftijd en gewicht aan hand van standaard groeicurves TNO, bij afwijkingen > 2 SD tov normaal signaal aan gebruiker en noodzaak te bevestigen leeftijd en gewicht;
  • Selectie van indicatie, toedieningsweg, toedieningsvorm, toedieningsfrequentie:  Actieve selectie: default staat keuze vak op selecteer <……>. Gebruiker dient een actieve keuze te maken om volgende stappen te kunnen doorlopen.
  • Log van ingevoerde gegevens van elke gemaakte berekening met de rekenmodule: Er kan bij een eventuele verkeerde uitkomst direct teruggekeken worden naar de ingevoerde gegevens en de gemaakte stappen. Naast de logging wordt bij het versturen van een probleem of opmerking vanuit de rekenmodule de gehele samenvatting van de ingevoerde gegevens meegestuurd om het eventuele probleem snel te kunnen reproduceren.
  • Uitschakelen Rekenmodule per monografie: Per geneesmiddel monografie is geprogrammeerd of de rekenmodule gebruikt kan worden of niet. Indien blijkt dat de rekenmodule voor een bepaald middel een foute uitkomsten genereert kan de rekenmodule voor het betreffende middel uitgeschakeld worden.
  • Uitschakelen Rekenmodule Noodknop: Indien blijkt dat de rekenmodule foute uitkomsten genereert, kan de rekenmodule onmiddellijk uitgeschakeld worden voor alle geneesmiddelen in het kinderformularium
  • Gebruiker kan continu de ingevoerde gegevens controleren:  Samenvatting patiëntgegevens en geselecteerde geneesmiddelparameters. Op basis van de geselecteerde parameters wordt het doseeradvies van het kinderformularium in de samenvatting getoond. Door terugkoppeling van de geselecteerde gegevens aan de gebruiker is controle mogelijk op de manier waarop het berekende doseeradvies tot stand komt.

Testen van de rekenmodule
Het functioneren van de rekenmodule is getest in de volgende browsers Internet Explorer (versie 8 of hoger), Firefox en Chrome.

Op basis van bovenstaande vereiste functionaliteiten en risicominimalisatie maatregelen is de rekenmodule ontwikkeld door middel van een test-retest model. Hierbij werd het functioneren van de rekenmodule tijdens de ontwikkeling steeds getest aan de hand van een aantal doseer scenario’s (Berekenen van doseringen met diverse doseereenheden: mg/kg, IE/kg, mg/m2; Start-,onderhoudsdosering; Doseerrange; Doseeradviezen met afwijkende tijd: dosering per 36 uur, dosering per 48 uur; Titratie doseringen; Selectie juiste leeftijdscategorie ahv ingevoerde geboortedatum; Dosering op basis van continue infuus, ZN medicatie;  Controle op maximale dosering; Omrekenen naar vloeibaar product; Premature neonaten; Afronding)
Verschillende geneesmiddelen die gebruik maken van hetzelfde doseerscenario zijn aan de test onderworpen. De door de rekenmodule berekende doseringen zijn steeds handmatig mbv een rekenmachine gecontroleerd. Problemen met de rekenmodule zijn geïdentificeerd, geanalyseerd, hersteld en opnieuw getest. Deze cirkel is doorlopen totdat de rekenmodule voldeed aan de functionele eisen en foutloos de individuele doseringen berekende. De problemen en oplossingen zijn gedocumenteerd.

Alfaversie
De ontwikkelde alfa versie is vervolgens als volgt gevalideerd:
Voor een aselecte steekproef van 230 middelen uit de kinderformularium database zijn doseringen voor 2 fictieve patiënten doorgerekend.

  • Patiënten:
    • Patiënt 1: 10 kg, 75 cm, geboren 01-07-2014 (op moment van testen 1 jaar oud)
    • Patiënt 2: 50 kg, 162 cm, geboren 01-07-2002 (op moment van testen 13 jaar oud)
  • Selectie middelen:
    • alle middelen opgenomen in Kinderformularium, op alfabetische volgorde op stofnaam, ieder 5e middel op de lijst PLUS
    • alle middelen opgenomen in Kinderformularium, op alfabetische volgorde op ATC, ieder 5e middel op de lijst

Van de 460 berekeningen bevatte 26 cases (5%) nog een foutieve berekening. Deze cases zijn geanalyseerd, hersteld en opnieuw getest. Nadat de alle 460 berekeningen foutloos werden uitgevoerd is de rekenmodule als beta-model gelanceerd.

Betaversie
Alhoewel de rekenmodule uitgebreid getest is, is het onmogelijk om alle mogelijke varianten in de circa 650 middelen die het Kinderformularium bevat door te rekenen en te valideren. De volgende stap is dan ook validatie door gebruikers. Gebruikers worden opgeroepen om kritische blik te hebben ten aanzien van de resultaten en problemen te melden.

De rekenmodule werd op 07 sept 2015 gelanceerd. Op 26 oktober 2015 is circa 6600 keer gebruik gemaakt van de rekenmodule door gebruikers in de dagelijkse praktijk. In deze periode zijn 18 meldingen ontvangen ten aanzien van problemen met de rekenmodule. Geen van deze meldingen betrof een foutieve berekening.

Wijzigingen in de rekenmodule
Voordat er een technische verandering doorgevoerd wordt aan de rekenmodule, wordt deze eerst op een ontwikkelomgeving getest. Dit gebeurt in eerste instantie aan de hand van een serie geautomatiseerde tests die de uitkomsten van verschillende berekeningen doorloopt om te verifiëren of deze nog juist zijn. Daarna wordt er door een testpanel handmatig bepaald of de rekenmodule nog correct werkt. Als beide uitkomsten positief zijn wordt de verandering op de live omgeving doorgevoerd.