Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Met modulair functioneel testen wordt bedoeld, dat per applicatie module de input en output van het relevante proces wordt beoordeeld.

...

Zoals beschreven, is door de methodiek van VIPP Babyconnect Interoperabiliteit Geboortezorg, de gegevensuitwisseling tussen de applicaties gestandaardiseerd. Hierdoor is het mogelijk om de testwerkzaamheden op te knippen en is het niet nodig om het publiceren en raadplegen van volledige datasets in alle mogelijke combinaties van applicaties te testen.

image-20240227-090132.pngImage Added

Rekenvoorbeeld:

Stel, er zijn 5 bronsystemen, 5 PGO’s, en 5 viewers. En ieder bronsysteem communiceert op een eigen manier met de PGO’s en viewers.

Dan zijn de mogelijke combinaties 5 x 5 x 5 = 125, waarbij de oorzaak van een fout in verschillende onderliggende delen gezocht moet worden

Stel dat er een “eenheid van taal” is waar elke module mee werkt. Dus, een bron systeem levert “eenheid van taal”, een PGO en een viewer, gebruiken de “eenheid van taal”

...

Als elk module per stuk getest wordt, dan zijn er 5 + 5 + 5 = 15 testen nodig, een fout is dan direct toe te wijzen aan de betreffende module. Als blijkt dat elke module voldoet moet er wel overzicht testen gedaan worden, maar dat is alleen ter acceptatie.

Het functioneren van het netwerk wordt weldegelijk geheel moet wel degelijk alsnog getest, maar dan met een kleine testdataset. Dit vermindert de complexiteit van testwerkzaamheden en bespaart een aanzienlijke hoeveelheid tijd en middelen.

Zorgaanbieder
Publiceren

 

...

image-20240207-095334.pngImage Added

 

Modulair functioneel testen bestaat 4 onderdelen die hierboven genummerd schematisch staan weergegeven:

  1. Fixtures: Maken van functioneel kwalificatiemateriaal en fixtures (voor uitleg zie hieronder).

    1. Kwalificatiemateriaal is de naam die Nictiz heeft gegeven aan al het testmateriaal wat nodig is voor het kwalificeren van een

  2. Publiceren: Kan een zorgaanbieder correct publiceren (beschikbaar stellen)?

  3. Raadplegen, start starten van een viewer: Kan een zorgaanbieder correct een viewer activeren? (SSO routine)

  4. Raadplegen, de viewer zelf: Kan een zorgverlener via een viewer correct raadplegen en zijn de generieke functies correct ingevuld?

  5. Verzamelen: Kan een PGO correct gegevens verzamelen?

    1. Het woord verzamelen is door medMij gegeven aan de functie voor het ophalen van gegevens bij zorgaanbieders. De burger kan in het eigen PGO beschikbare gegevens verzamelen.

 

...

Fixtures

Dit zijn FHIR-resources die door de CMIO van VIPP Babyconnect, en specialisten van Nictiz zijn gemaakt en waarvan met zekerheid is vastgesteld dat ze conform de specificaties van de informatiestandaard Geboortezorg zijn. Het maken van deze fixtures moet als eerste stap gebeuren voordat er getest kan gaan worden (#0 in het schema hierboven). Deze resources worden vervolgens telkens bij elke module als vergelijkingsmateriaal ingezet.

Bij het testen van het publiceren/beschikbaar stellen wordt de output vergeleken met de fixtures. Bij het testen van het verzamelen bij de PGO’s worden de fixtues als bron gebruikt. En bij het testen van het raadplegen met de viewer, worden de fixtures als bron gebruikt.

Info

Wat is FHIR? (spreek uit als fire)

FHIR = Fast Healthcare Interoperability Resources

De Fast Healthcare Interoperability Resources-standaard is een reeks regels en specificaties voor het uitwisselen van elektronische gezondheidszorggegevens. Het is ontworpen om flexibel en aanpasbaar te zijn, zodat het kan worden gebruikt in een breed scala aan omgevingen en met verschillende zorginformatiesystemen. Wikipedia (Engels)

https://nictiz.nl/standaarden/overzicht-van-standaarden/hl7-fhir/

https://medmij.nl/media/factsheet-fhir/

Voor de fixtures worden gegevens van verschillende testpersonen vastgesteld. Deze testpersonen zijn volledig fictief en zijn niet gebaseerd op daadwerkelijke personen. De testpersonen hebben een volledige zwangerschap doorlopen, echter in verschillende zorgvormen volgens patient journeysuse-cases. Deze gegevens worden vastgelegd in “voorbeeld FHIR-resources” volgens de vastgestelde afspraken. Deze fixtures worden beheerd door Nictiz en staan in de testomgeving, die wordt ingericht door het landelijk programmabureau en /of Nictiz.

Info

Wat is een testomgeving?

...

Een testomgeving is een beschermde groep van toepassingen en applicaties waarmee veilig testen kunnen worden uitgevoerd. Testen worden niet uitgevoerd in de live omgevingen van zorgaanbieders.

Een testomgeving is zoveel mogelijk gelijk aan een live omgeving.

In de use-cases dienen zoveel mogelijk, zoniet alle van de , velden van PWD gebruikt te worden. Indien er aan een dataveld een waardelijst verbonden is, dan wordt hieruit, bij voorkeur willekeurig, een waarde geselecteerd die past binnen de patient journey.

Publiceren

Binnen het modulair ontwerp van VIPP Babyconnect zijn er verschillende implementatievarianten van het proces publiceren mogelijk. Hierin onderscheiden we de rollen Registrator (module A in het module model), Extractor (module B0 in het module model) en Convertor (module B1 in het module model). Zorgaanbieders moeten gegevens correct kunnen publiceren, maar dat wil dus niet zeggen dat het gebruikte bronsysteem zelf FHIR-resources moet kunnen leveren. (beschikbare output mag ook geconverteerd worden). Zie het Afsprakenstelsel voor meer informatie over dit proces en deze rollen.

Bronsystemen kunnen incrementeel ontsloten worden aan de hand van een groeipad. Bijvoorbeeld:

  1. Prio1: minimale set aan gegevens die relevant is tijdens een acute situatie

    1. Huidige afspraak voor verloskunde: kernset +

  2. Prio2: gegevens in PDF/A, bijvoorbeeld een bevalverslag.

  3. Het relevante deel van de Integrale zwangerschapskaart

  4. De rest van het relevante deel van PWD 3.2

Uitgangspunten

●        Deze testen vinden plaats in de productieomgeving [TW1] van de leverancier gekoppeld aan de testomgeving InteropLab.

●        Bij een SaaS-systeem (verloskunde, kraam) wordt per bronsysteem getest. (Niet de zorgverlener of de zorgaanbieder.) Dit testwerk gebeurt door een kartrekker-regio tijdens de eerste implementatie (zie tabel pagina 6).

○        Reden hiervoor is, dat alle gebruikers van een SaaS systeem, gebruik maken van dezelfde omgeving. Als een SaaS systeem eenmaal getest en goed bevonden is, geldt dat voor alle gebruikers van dat systeem. (SaaS = Software as a Service)

●        Bij on-premise-oplossingen (echo, ziekenhuis) wordt per bronsysteem én zorgaanbieder getest, niet de zorgverlener. Dit testwerk zal dus door alle zorgaanbieders die gebruikmaken van dit systeem moeten worden uitgevoerd.

○        Reden hiervoor is, dat alle gebruikers van een on premise systeem, gebruik maken van dezelfde omgeving. Als een SaaS systeem eenmaal getest en goed bevonden is, geldt dat voor alle gebruikers van dat systeem. (SaaS = Software as a Service)

●        Er hoeft niet gewacht te worden met testen totdat het bronsysteem het relevante deel van het volledige PWD kan publiceren. Er kan begonnen worden met het testen van bijv. Prio1, afhankelijk van het beoogde groeipad.

 

Aanpak bij publiceren FHIR

  1. Een zorgverlener legt samen met een informatieanalist van Nictiz, een applicatiespecialist en eventueel de CMIO van VIPP Babyconnect een vastgestelde set van gegevens vast in unieke velden van het bronsysteem.

  2. De set van gegevens wordt vanuit het bronsysteem volgens één van de implementatievarianten gepubliceerd naar de testomgeving als FHIR-resources.

    1. Bij variant “direct FHIR” ga naar stap 3

    2. Bij variant “via een convertor”

      1. Voor ADA wordt een testset aangemaakt met de ADA testtool van ZW Connect

      2. De ADA testset wordt geconverteerd door de convertor,

      3. Voor de test van het FHIR resultaat, gaan naar stap 3, Voor de test van de ADA output van het XIS, ga dan hieronder door

      4. De ADA output van het XIS, wordt vergeleken met de vastgestelde testset via compare functie van notepad ++ (plugin)

      5. Als compare ok is, ga dan door naar volgende stap, Als niet ok, dan terug naar het XIS

      6. De ADA output van het XIS wordt ook door de convertor gehaald, en verder naar stap 3

  3. De gepubliceerde FHIR-resources worden vergeleken met de fixtures.

    1. De FHIR resources worden zowel semantisch, als syntactisch gevalideerd.

  4. Er wordt gecontroleerd of logging correct heeft plaatsgevonden: is er inzichtelijk wie er wat wanneer heeft gepubliceerd?

  5. De resultaten van de test worden gerapporteerd.

Om dit geheel te monitoren wordt het gereedschap InteropLab toegepast. Binnen InteropLab worden de testen uitgevoerd en de resultaten gerapporteerd.

 

Aanpak bij publiceren PDF/A

  1. Een zorgverlener legt samen met een informatieanalist van Nictiz en eventueel de CMIO van VIPP Babyconnect een vastgestelde set van gegevens vast in unieke velden van het bronsysteem.

  2. De set van gegevens wordt vanuit de bronsysteem volgens één van de implementatievarianten gepubliceerd naar de testomgeving als PDF/A.

  3. De inhoud van de PDF/A worden vergeleken met de patiënt journeys.

  4. De resultaten van de test worden gerapporteerd.

 

Resultaten

●        SaaS oplossing: bij akkoord is het bronsysteem gekwalificeerd voor het publiceren van de geteste dataset.

●        On-premise oplossing: bij akkoord is de combinatie zorgaanbieder-bronsysteem gekwalificeerd voor publiceren van de geteste dataset.

●        De resultaten van de test zijn inzichtelijk voor de deelnemers, de overige regio’s, het landelijk programmabureau en Nictiz.

 

Specifiek voor het testen van publiceren is er een testomgeving: InteropLab. Dit is een testsysteem voor het uitvoeren van conformiteits- en interoperabiliteitstesten tegen gepubliceerde projectspecificaties en standaarden, zoals FHIR. Hiermee kunnen zowel de transacties als de content van de transacties gevalideerd worden.

 

Het is tevens mogelijk om de implementatie van generieke functies zoals lokalisatie en adressering te testen[TW2] .

 

De uit te voeren testen worden uitgewerkt in testscripts en de behaalde testresultaten zijn inzichtelijk in rapportages. Het is binnen InteropLab mogelijk om verschillende gescheiden omgevingen te creëren, bijv. eigen omgevingen per regio, per leverancier, etc.

 

Raadplegen, functie start viewer (SSO)

Vanuit het bronsysteem moet een zorgverlener een viewer kunnen activeren via een SSO-koppeling. In de SSO-koppeling worden de identificerende attributen van de zorgverlener/zorgaanbieder verwerkt. Zie het Afsprakenstelsel voor meer informatie over dit proces en deze rollen.

Bij het proces raadplegen SSO moet het aanleveren van vereiste credentials worden getest:

●        Identificatie: de identiteit van de zorgverlener, de identiteit van de zorgaanbieder

○        Authenticatie:  de authenticatie wordt uitgevoerd vanuit de viewer

○        Autorisatie:  de autorisatie wordt opgevraagd vanuit de viewer na authenticatie,

○        Lokalisatie: De lokalisatie wordt geactiveerd vanuit de viewer,

○        Adressering: de adressering wordt opgevraagd vanuit de viewer op basis van de lokalisatie,

○        Toestemming: toestemming van de cliënt voor het raadplegen van gegevens wordt opgevraagd vanuit de viewer, na authenticatie en na lokalisatie.

Uitgangspunten

●        Deze testen vinden plaats in de productieomgeving van de leverancier van het XIS gekoppeld aan de genoemde testomgeving.

●        Bij een SaaS-systeem (verloskunde, kraam) wordt per bronsysteem en viewer getest en niet de zorgverlener of de zorgaanbieder. Dit testwerk gebeurt door de kartrekker-regio tijdens de eerste implementatie.

●        Bij on-premise-oplossingen (echo, ziekenhuis) wordt per bronsysteem én viewer én zorgaanbieder getest, niet de zorgverlener. Dit testwerk zal dus door alle zorgaanbieders die gebruikmaken van deze combinatie moeten worden uitgevoerd.

●        de viewer hoeft hier niet getest te worden, die heeft een eigen test

 

Aanpak

  1. Een zorgverlener legt een testpersoon vast in het eigen systeem (alleen identificerende gegevens) t.b.v. de SSO-koppeling.

  2. De zorgaanbieder wordt toegevoegd aan het individueel zorgnetwerk van de testzwangere.

  3. De zorgverlener activeert de viewer De credentials worden beoordeeld

  4. De resultaten van de testen worden gerapporteerd in InteropLab

 

Resultaten

●        SaaS oplossing: bij akkoord is de combinatie bronsysteem-SSO gekwalificeerd voor het activeren van een viewer.

●        On-premise oplossing bij akkoord is de combinatie bronsysteem-SSO gekwalificeerd voor het activeren van een viewer.

●        De resultaten van de test zijn inzichtelijk voor de deelnemers, de overige regio’s, het landelijk programmabureau en Nictiz.

 

Raadplegen, functie de viewer zelf

...

Bij het proces raadplegen moet ook een deel van de voor digitale gegevensuitwisseling benodigde generieke functies worden getest:

●        Identificatie: ontvangen van de credentials  van identiteit van zorgverlener en van de identiteit zorgaanbieder,

●        Authenticatie:  UZI register openen en vaststellen of de zorgverlener daadwerkelijk is wie hij/zij beweert te zijn,

●        Autorisatie:  Vanuit UZI register rol opvragen en register rol/zib matrix openen. toekennen van rechten aan zorgverlener om gegevens in te zien,

●        Lokalisatie: eigen FHIR server bevragen over care team. bij welke zorgaanbieders bevinden zich welke gegevens van de cliënt,

●        Adressering: Zorg-AB openen op basis van zorgaanbieders in care team. opvragen van het digitale adres van de zorgaanbieder,

●        Toestemming: Eigen FHIR server bevragen over consent. toestemming van de cliënt voor het raadplegen van gegevens.

Uitgangspunten

●        Deze testen vinden plaats in de productieomgeving van de leverancier van de viewer gekoppeld aan de genoemde testomgeving.

●        Bij een SaaS-systeem (verloskunde, kraam) wordt per bronsysteem en viewer getest en niet de zorgverlener of de zorgaanbieder. Dit testwerk gebeurt door de kartrekker-regio tijdens de eerste implementatie.

●        Bij on-premise-oplossingen (echo, ziekenhuis) wordt per bronsysteem én viewer én zorgaanbieder getest, niet de zorgverlener. Dit testwerk zal dus door alle zorgaanbieders die gebruikmaken van deze combinatie moeten worden uitgevoerd.

●        Er hoeft niet gewacht te worden met testen totdat de viewer het volledige PWD kan raadplegen. Er kan begonnen worden met het testen van bijv. de integrale zwangerschapskaart, afhankelijk van het beoogde groeipad.

●        De generieke functies identificatie, authenticatie en autorisatie in het bronsysteem  (dossiertoegang) behoren zorgaanbieders nu sowieso al op orde te hebben, dus deze vallen buiten de scope van dit testprotocol.

●        De generieke functies autorisatie (raadpleegbare informatie), lokalisatie, adressering en toestemming zijn wel onderdeel van het testprotocol en worden getest in InteropLab.

●        Wanneer het medisch autorisatieprotocol beschikbaar komt, wordt dit opgenomen in dit testprotocol.

 

Aanpak

  1.      Een zorgverlener legt een testpersoon vast in het eigen systeem (alleen identificerende gegevens) t.b.v. de SSO-koppeling.

  2. De zorgaanbieder wordt toegevoegd aan het individueel zorgnetwerk van de testzwangere.

  3. De zorgverlener activeert de viewer en raadpleegt de relevante fixtures.

  4. Samen met een informatieanalist van Nictiz worden de in de viewer getoonde gegevens vergeleken met de verwachte gegevens op basis van de fixtures en patiënt journeys.

  5. De zorgaanbieder wordt verwijderd uit het individueel zorgnetwerk van de testzwangere.

  6. De zorgverlener activeert de viewer en probeert de relevante fixtures opnieuw te raadplegen.

  7. Er wordt gecontroleerd of logging correct heeft plaatsgevonden: is er inzichtelijk wie er wat wanneer heeft geraadpleegd?

  8. De resultaten van de testen worden gerapporteerd.

 

Resultaten

●        bij akkoord is de viewer gekwalificeerd voor het raadplegen van de geteste dataset.

●        De resultaten van de test zijn inzichtelijk voor de deelnemers, de overige regio’s, het landelijk programmabureau en Nictiz.

 

 

 

Verzamelen

Het proces verzamelen, waarbij cliënten hun gegevens in een PGO (module E in het schema hierboven) ophalen, staat beschreven in het MedMij Afsprakenstelsel.

Uitgangspunten

●        Deze testen vinden plaats in de productieomgeving van de leverancier gekoppeld aan de genoemde testomgeving.

●        Er wordt per PGO en DVZA getest en niet de zorgverlener of de zorgaanbieder. Dit testwerk gebeurt door de kartrekker-regio tijdens de eerste implementatie.

●        De dataset is de Integrale zwangerschapskaart zoals beschreven in de Informatiestandaard Geboortezorg (IZK in het schema op pagina 9)

Aanpak

  1. De leverancier activeert een PGO voor een testzwangere.

  2. De informatieanalist haalt de relevante fixtures met de  gegevensdienst Verzamelen integrale zwangerschapskaart via de DVZA op bij (een) fictieve zorgaanbieder(s) in de testomgeving.

  3. De informatieanalist vergelijkt de in de PGO getoonde gegevens met de verwachte gegevens op basis van de fixtures en patiënt journeys.

  4. De resultaten van de test worden gerapporteerd.

 

Resultaten

●        Bij akkoord zijn de PGO en DVZA gekwalificeerd voor de gegevensdienst Verzamelen integrale zwangerschapskaart.

●        De resultaten van de test zijn inzichtelijk voor de deelnemers, de overige regio’s, het landelijk programmabureau, MedMij en Nictiz.

 

Delen

Het MedMij afsprakenstelsel onderkent ook nog het proces delen. Dit valt echter buiten de scope van VIPP Babyconnect en daarmee dit testprotocol.use-case.

Info

Wat is PWD?

PWD = Perinataal Woordenboek en Dataset

De informatiestandaard Geboortezorg noemen we ook wel PWD: het Perinataal Woordenboek en Dataset. Deze zorgt voor eenduidige informatievoorziening tussen zorgverleners en onderzoekers die betrokken zijn bij verloskundige, gynaecologische, kindergeneeskundige & kraamzorg voor de zwangere en het (ongeboren) kind.

https://nictiz.nl/standaarden/informatiestandaarden/geboortezorg/