Direct naar inhoud

Founding-partnerprogramma — drie plekken, 36 maanden een vaste prijs, meebeslissen over de roadmap.

Wat u krijgt →
Curanta
Architectuurbesluiten

Waarom wij bouwen zoals wij bouwen.

Voor uw I&A en architect: waarom wij een keuze maakten, niet alleen welke. Zo kunt u vóór een aanbesteding beoordelen of onze afwegingen bij uw organisatie passen.

Iedere ADR volgt de standaard context → besluit → consequenties-structuur. Aanvaard = besluit is in de code doorgevoerd. Wijzigingen worden in versies bijgehouden; een nieuwe ADR vervangt zo nodig een oude.

ADR-001
2025-09
Aanvaard

Modulaire monolith over microservices

Context

Voor zorgsoftware die klein begint, met beperkte ontwikkelcapaciteit, zijn microservices in beheer te duur. Tegelijk moeten modules per klant los aan te zetten zijn.

Besluit

Wij bouwen een modulaire monolith op .NET 10 met strikt afgebakende modules (Application/Domain/Infrastructure per module), die als één geheel wordt uitgeleverd. Modules zijn per organisatie aan of uit te zetten.

Consequenties

Eenvoudiger deployment en lagere infrastructuurkosten. Latere splitsing naar separate services is mogelijk maar niet gepland. Risico: discipline op module-grenzen vereist code-reviews en architectuurtests.

ADR-002
2025-10
Aanvaard

FHIR R4 als standaard voor uitwisseling

Context

Nederlandse zorgketen beweegt naar verplichte interoperabiliteit (Wegiz, MedMij). HL7v2 is legacy; eigen formaten betekenen lock-in en aansluiting met de keten frustreren.

Besluit

FHIR R4 (niet R5) is de canonieke representatie voor cliënt, dossier, observaties en medicatie aan de API-grens. Intern blijft de relationele structuur eigen — FHIR is een grens-format, geen opslag-format.

Consequenties

Zodra de publieke API er is, documenteert hij FHIR R4. Bij overgang naar R5 staat compatibiliteits-onderhoud vooraan. Nederlandse profielen (Nictiz zib-mapping) worden incrementeel toegevoegd.

ADR-003
2025-11
Aanvaard

Hosting binnen de EU — geen uitzondering

Context

Zorgaanbieders eisen aantoonbaar dat zorggegevens niet buiten de EER worden verwerkt. Voor de marketingsite (curanta.nl, bij Strato in Duitsland) gelden deze eisen niet: daar staan geen zorggegevens.

Besluit

De zorgapplicatie (app.curanta.nl) en de databases draaien bij IONOS Cloud in Berlijn (Duitsland). Geen hosting buiten de EER. Een wijziging in de subverwerkerslijst melden wij 30 dagen van tevoren.

Consequenties

Hogere latency voor non-EU-bezoekers (irrelevant voor NL-zorg). De AI-functies zijn de uitzondering op "alles in de EER": staan ze aan, dan gaat gepseudonimiseerde tekst naar Anthropic in de VS, onder modelcontractbepalingen (SCC).

ADR-004
2025-12
Aanvaard

BSN-encryptie op veldniveau met AES-256-GCM

Context

Het BSN is een wettelijk identificatienummer (art. 87 AVG, art. 46 UAVG), in de zorg geregeld in de Wabvpz. Versleuteling op kolomniveau beschermt het BSN ook tegen wie de databasebestanden of een back-up in handen krijgt. De database als geheel is nog niet versleuteld; dat komt er vóór de eerste zorgorganisatie met echte cliëntgegevens.

Besluit

Het BSN wordt op veldniveau versleuteld opgeslagen met AES-256-GCM. Zoeken gaat via een apart, gepeperd hash-veld, zodat een gelijkheidsvraag geen ontsleuteling nodig heeft.

Consequenties

Index-scans op BSN gebruiken het hash-veld, niet de versleutelde kolom. De sleutel staat buiten de database, in de configuratie van de server; een productieserver zonder eigen sleutel start niet.

ADR-005
2026-02
Aanvaard

Nis2Care als zustermerk naast de NIS2-module in Curanta

Context

NIS2 is een eigen specialisme met specialistische onderwerpen (Z-CERT, IGJ-meldplicht, registratie van medische apparatuur) die niet vanzelf in het ECD van Curanta horen. ECD-klanten willen de meldplicht wel in hun eigen omgeving.

Besluit

Curanta heeft een eigen NIS2-incidentmodule (registratie en de meldtermijnen van 24 uur, 72 uur en één maand). Een uitgebreider NIS2-product voor zorgaanbieders met een ander ECD werken wij apart uit onder de naam Nis2Care; dat is nog niet beschikbaar.

Consequenties

Curanta-klanten hebben de meldplicht-registratie in hun eigen omgeving. Nis2Care krijgt, zodra het er is, eigen marketing. Klanten kopen ze samen of apart — dat is een commerciële keuze.

Mist u een onderwerp?

Vragen over de architectuur ontvangen wij graag rechtstreeks. Bijvoorbeeld: hoe wij een spoedherstel controleren voordat het live gaat, of waarom wij bewust geen Kubernetes draaien. Mail info@curanta.nl — wij reageren binnen 1 werkdag.

Wilt u onze architectuurplaat zien?

Wij stellen op aanvraag een architectuurplaat op met netwerkzones, gegevensstromen en subverwerkers, zonder NDA.