# Roadmap: Intent-Driven EPD voor Screening & Intake **Document:** Strategische Roadmap **Versie:** 1.0 **Datum:** 2026-02-04 **Auteurs:** Business Development, Product Management, Consultancy **Bron:** Stakeholder Sessie (11 rollen, zie `stakeholder-sessie-intake-intents.md`) **Technische basis:** Cortex V2 PRD (zie `docs/intent/prd-cortex-v2.md`) --- ## Executive Summary Dit document beschrijft de roadmap voor de ontwikkeling van een intent-driven EPD-module voor screening en intake in de GGZ. De kern: **spraak- en tekstgestuurde interactie** die clinici in staat stelt om informatie op te vragen en vast te leggen zonder door menu's te navigeren. ### Kernboodschap > **"De cliënt vertelt zijn verhaal één keer. De keten onthoudt het."** De huidige situatie: een cliënt vertelt zijn verhaal gemiddeld 4-5 keer (huisarts, screener, intaker, psychiater, behandelaar). De ambitie: maximaal 1-2 keer. ### Business Case Samenvatting | Metric | Huidige situatie | Doelstelling | Impact | |--------|------------------|--------------|--------| | Voorbereidingstijd behandelaar | 30+ min/cliënt | <15 min | **50% reductie** | | Verslaglegging na intake | 45 min/intake | 15 min | **67% reductie** | | Doorlooptijd intake-afsluiting | 5-7 dagen | 1-2 dagen | **70% sneller** | | Keren dat cliënt verhaal vertelt | 4-5x | 1-2x | **Betere cliëntervaring** | --- ## Strategische Context ### Waarom nu? 1. **Technologie is rijp** - LLM's kunnen betrouwbaar intent-classificatie en samenvatting doen 2. **Arbeidsmarkt is krap** - Efficiëntie nodig om met minder mensen meer te doen 3. **Cliëntverwachtingen stijgen** - "Waarom moet ik alles opnieuw vertellen?" 4. **Wachtlijsten drukken** - Elke minuut die vrij komt kan naar zorg ### Positionering ``` ┌─────────────────────────────────────────────────────────────────────────────┐ │ MARKTPOSITIONERING │ ├─────────────────────────────────────────────────────────────────────────────┤ │ │ │ Traditioneel EPD Intent-Driven EPD Volledig AI-EPD │ │ ────────────────── ───────────────── ────────────── │ │ • Menu-gedreven • Spraak/tekst-gestuurd • AI schrijft zelf │ │ • Formulier-based • Intent-based • Autonome beslissing │ │ • Click-intensief • Conversationeel • Minimale input │ │ │ │ ◄─────────────────── WIJ ───────────────────► │ │ │ │ Veilig, gevalideerd, Efficiënt én menselijk Te vroeg, te risicovol│ │ maar inefficiënt Clinicus blijft in control Privacy-zorgen │ │ │ └─────────────────────────────────────────────────────────────────────────────┘ ``` --- ## De Keten: Van Verwijzing tot Behandeling ### Procesoverzicht ``` FASE 1 FASE 2 FASE 3 FASE 4 FASE 5 FASE 6 Verwijzing Aanmelding Screening Intake Afsluiting Behandeling ─────────────────────────────────────────────────────────────────────────────── Huisarts → Admin → Screener → Intaker → MDO → Behandelaar Psychiater ─────────────────────────────────────────────────────────────────────────────── ↑ │ INTENT-DRIVEN EPD SCOPE │ ════════════════════════ │ Fase 2 t/m Fase 5 + overdracht ───────────────┘ ``` ### Kritieke Overdrachtsmomenten | Van → Naar | Pijnpunt | Oplossing | |------------|----------|-----------| | Huisarts → Admin | Incomplete verwijzing | Gestructureerde verwijzing (buiten scope) | | Admin → Screener | Onduidelijke werklijst | `intake_lijst`, `werklijst_screening` | | Screener → Intaker | Hulpvraag niet doorstroomt | `hulpvraag_query`, betere documentatie | | Intaker → Psychiater | Risico's verspreid, medicatie-info mist | `risico_query`, `medicatie_historie` | | Intaker → Behandelaar | Geen executive summary, doelen vaag | `overdracht_samenvatting`, `behandeldoelen_query` | | Intaker → Huisarts | Late/geen terugkoppeling | `brief_huisarts` | --- ## Productvisie ### North Star Metric > **"Percentage cliënten dat in de eerste behandelsessie zegt: 'Fijn dat u al weet wat er speelt.'"** Dit meet de volledige keten: van intake-kwaliteit tot overdracht tot behandelaarvoorbereiding. ### Productprincipes 1. **Clinicus blijft in control** - AI suggereert, mens accordeert 2. **Multimodaal** - Spraak óf typen, nooit afdwingen 3. **Query eerst, actie later** - Eerst bewijzen dat informatie ophalen werkt 4. **Human-in-the-loop** - Geen autonome AI-beslissingen over patiëntdata 5. **Fallback altijd beschikbaar** - Klassieke interface blijft werken ### Feature Categorieën ``` ┌─────────────────────────────────────────────────────────────────────────────┐ │ FEATURE MATRIX │ ├─────────────────────────────────────────────────────────────────────────────┤ │ │ │ QUERY (lezen) ACTIE (schrijven) │ │ ───────────── ──────────────── │ │ │ │ LAAG RISICO intake_status contact_loggen │ │ (Fase 1) risico_query screening_besluit │ │ diagnose_query │ │ intake_lijst │ │ │ │ MIDDEL RISICO medicatie_historie anamnese_toevoegen │ │ (Fase 2) onderzoeken_query risico_toevoegen │ │ overdracht_samenvatting │ │ │ │ HOOG RISICO - diagnose_toevoegen │ │ (Fase 3) behandeladvies_invoer │ │ medicatie_voorschrijven* │ │ │ │ * Buiten huidige scope │ │ │ └─────────────────────────────────────────────────────────────────────────────┘ ``` --- ## Het Cortex Intent System ### Van Reactief naar Proactief Het huidige EPD is **reactief**: de gebruiker klikt, het systeem reageert. Cortex transformeert het EPD van een "digitaal formulier" naar een **AI Collega** die: 1. **Begrijpt** wat je bedoelt (niet alleen wat je zegt) 2. **Onthoudt** de context (wie is "hij"? wat is "morgen"?) 3. **Suggereert** proactief wat je misschien vergeet > **Kernprincipe:** "De clinicus spreekt zijn *intentie* uit, niet zijn *administratie*. Mijn intentie is 'Zorg voor Mohammed regelen'. De administratie (agenda, brief, notitie) is het systeem's probleem." ### The Three-Layer Architecture ``` ┌─────────────────────────────────────────────────────────────────────────────┐ │ CORTEX THREE-LAYER MODEL │ ├─────────────────────────────────────────────────────────────────────────────┤ │ │ │ ┌─────────────────────────────────────────────────────────────────────┐ │ │ │ LAYER 1: REFLEX ARC │ │ │ │ ───────────────────── │ │ │ │ • Lokale pattern matching (regex) │ │ │ │ • Latency: <20ms │ │ │ │ • Confidence ≥ 0.7 → direct uitvoeren │ │ │ │ • Voorbeelden: "Agenda vandaag", "Zoek Jan", "Wat zijn de risico's"│ │ │ └─────────────────────────────────────────────────────────────────────┘ │ │ │ │ │ │ Escalatie bij: │ │ │ • Confidence < 0.7 │ │ │ • Multi-intent ("en", "daarna") │ │ │ • Ambiguïteit (top-2 delta < 0.1) │ │ ▼ │ │ ┌─────────────────────────────────────────────────────────────────────┐ │ │ │ LAYER 2: INTENT ORCHESTRATOR │ │ │ │ ──────────────────────────── │ │ │ │ • AI-powered classificatie (Claude) │ │ │ │ • Latency: ~400ms │ │ │ │ • Multi-intent parsing: "Zeg af en maak notitie" │ │ │ │ • Context resolution: "hij" → actieve patiënt │ │ │ │ • Relative time: "morgen" → concrete datum │ │ │ └─────────────────────────────────────────────────────────────────────┘ │ │ │ │ │ │ Na succesvolle actie │ │ ▼ │ │ ┌─────────────────────────────────────────────────────────────────────┐ │ │ │ LAYER 3: NUDGE ENGINE │ │ │ │ ───────────────────────── │ │ │ │ • Proactieve suggesties │ │ │ │ • Async (na actie-completion) │ │ │ │ • Protocol-gebaseerd: "Risico hoog → Veiligheidsplan bespreken?" │ │ │ │ • Accept/Dismiss met countdown │ │ │ └─────────────────────────────────────────────────────────────────────┘ │ │ │ └─────────────────────────────────────────────────────────────────────────────┘ ``` ### Multi-Intent Support Clinici denken niet in losse commando's, maar in **gecombineerde acties**: ``` ┌─────────────────────────────────────────────────────────────────────────────┐ │ MULTI-INTENT VOORBEELD │ ├─────────────────────────────────────────────────────────────────────────────┤ │ │ │ Gebruiker: "Voeg risico toe: suïcidaliteit matig, en plan een │ │ veiligheidsbespreking in voor volgende week" │ │ │ │ ┌─────────────────────────────────────────────────────────────────────┐ │ │ │ Layer 1 (Reflex): Detecteert "en" → ESCALEER │ │ │ └─────────────────────────────────────────────────────────────────────┘ │ │ │ │ │ ▼ │ │ ┌─────────────────────────────────────────────────────────────────────┐ │ │ │ Layer 2 (Orchestrator): Parse naar Action Chain │ │ │ │ │ │ │ │ Intent 1: risico_toevoegen │ │ │ │ • type: suïcidaliteit │ │ │ │ • severity: matig │ │ │ │ • patient: [actieve patiënt] │ │ │ │ │ │ │ │ Intent 2: create_appointment │ │ │ │ • type: veiligheidsbespreking │ │ │ │ • when: [volgende week → concrete datum] │ │ │ │ • patient: [actieve patiënt] │ │ │ └─────────────────────────────────────────────────────────────────────┘ │ │ │ │ │ ▼ │ │ ┌─────────────────────────────────────────────────────────────────────┐ │ │ │ UI: ActionChainCard │ │ │ │ ┌───────────────────────────────────────────────────────────────┐ │ │ │ │ │ ✅ 1. Risico toegevoegd: suïcidaliteit matig │ │ │ │ │ ├───────────────────────────────────────────────────────────────┤ │ │ │ │ │ ⏳ 2. Afspraak plannen: veiligheidsbespreking (ma 10 feb) │ │ │ │ │ └───────────────────────────────────────────────────────────────┘ │ │ │ └─────────────────────────────────────────────────────────────────────┘ │ │ │ │ Signaalwoorden: "en", "daarna", "ook", "eerst", "vervolgens" │ │ │ └─────────────────────────────────────────────────────────────────────────────┘ ``` ### Context Awareness Het systeem begrijpt **impliciete context** zonder dat de clinicus expliciet hoeft te zijn: | Context Type | Voorbeeld Input | Resolutie | |--------------|-----------------|-----------| | **Pronoun** | "Wat zijn de risico's van hem?" | "hem" → Mohammed (actieve patiënt) | | **Relatieve tijd** | "Plan controle over 3 dagen" | → concrete datum (7 februari) | | **Impliciete patiënt** | "Voeg diagnose toe: depressie" | → voor actieve patiënt | | **Verwijzing** | "Zoals besproken in de intake" | → link naar intake-verslag | **Context Injection:** ```typescript interface CortexContext { activePatient: Patient | null; // Wie is er geopend? currentView: 'intake' | 'agenda'; // Waar ben ik? agendaToday: Appointment[]; // Wat staat er vandaag? recentIntents: Intent[]; // Wat vroeg ik net? intakeProgress: IntakeStatus; // Waar zijn we in de intake? } ``` ### Nudge Engine: Proactieve Intelligentie De Nudge Engine is wat Cortex onderscheidt van een "slim zoeksysteem". Het systeem **denkt mee**: ``` ┌─────────────────────────────────────────────────────────────────────────────┐ │ NUDGE ENGINE - PROACTIEVE SUGGESTIES │ ├─────────────────────────────────────────────────────────────────────────────┤ │ │ │ TRIGGER NUDGE │ │ ──────────────────────────────────────────────────────────────────────── │ │ │ │ Risico toegevoegd: 💡 "Veiligheidsplan opstellen?" │ │ suïcidaliteit ≥ matig [Ja, nu] [Later] [Nee] │ │ │ │ Intake bijna compleet 💡 "Samenvatting genereren voor MDO?" │ │ (8/9 secties) [Genereer] [Nog niet] │ │ │ │ Diagnose toegevoegd: 💡 "Behandeladvies toevoegen?" │ │ depressie [Ja] [Overslaan] │ │ │ │ Kindcheck: kinderen in gezin 💡 "Kindcheck invullen niet vergeten" │ │ maar niet ingevuld [Open kindcheck] [Dismiss] │ │ │ │ Anamnese bevat "medicatie 💡 "Medicatiehistorie opvragen bij │ │ van huisarts geprobeerd" huisarts?" │ │ [Ja] [Staat al in dossier] │ │ │ │ Intake afgerond maar geen 💡 "Brief naar huisarts genereren?" │ │ terugkoppeling verstuurd [Genereer] [Later] │ │ │ └─────────────────────────────────────────────────────────────────────────────┘ ``` **Nudge Principes:** 1. **Non-intrusief** - Toast, geen modal. Gebruiker kan negeren. 2. **Contextual** - Alleen suggesties die nu relevant zijn 3. **Actionable** - Één klik om uit te voeren 4. **Dismissable** - "Nee" is altijd een optie, geen schuldgevoel 5. **Learning** (toekomst) - Onthoud welke nudges deze gebruiker negeert ### Knowledge & Protocol Engine (Toekomst) De Nudge Engine is de eerste stap naar een bredere **Knowledge Engine**: ``` ┌─────────────────────────────────────────────────────────────────────────────┐ │ KNOWLEDGE ENGINE EVOLUTIE │ ├─────────────────────────────────────────────────────────────────────────────┤ │ │ │ FASE 1: Hardcoded Rules (MVP) │ │ ───────────────────────────── │ │ • Regex-based triggers │ │ • Vaste suggesties │ │ • Voorbeeld: "suïcidaliteit" → veiligheidsplan nudge │ │ │ │ FASE 2: Protocol Rules (Post-MVP) │ │ ───────────────────────────────── │ │ • Configureerbare if-then rules │ │ • Admin UI voor rule management │ │ • GGZ-standaarden als rules (Multidisciplinaire Richtlijnen) │ │ • Voorbeeld: MR Depressie → behandelstappen suggereren │ │ │ │ FASE 3: Intelligent Matching (Toekomst) │ │ ──────────────────────────────────────── │ │ • NLP voor complexere matching │ │ • Semantic similarity (niet alleen keywords) │ │ • Voorbeeld: "hopeloosheid" herkend als risico-signaal │ │ │ │ FASE 4: Predictive Intelligence (Visie) │ │ ──────────────────────────────────────── │ │ • Learning from patterns │ │ • Predictive suggestions ("Bij vergelijkbare cliënten...") │ │ • Adaptive confidence per gebruiker │ │ • Sentiment analysis in gespreksverslagen │ │ │ └─────────────────────────────────────────────────────────────────────────────┘ ``` ### Intake-Specifieke Flows **Flow: Intake met Nudges** ``` Intaker opent intake Mohammed │ ▼ Cortex: Context geladen (patiënt, intake-status 4/9) │ ▼ Intaker: "Wat moet ik nog doen?" │ ▼ ┌─────────────────────────────────────────┐ │ IntakeStatusBlock │ │ ✅ Algemeen ✅ Anamnese │ │ ✅ Risico ⬜ Kindcheck │ │ ⬜ Diagnose ⬜ Behandeladvies │ │ ... │ │ Voortgang: 44% ████░░░░░ │ └─────────────────────────────────────────┘ │ ▼ 💡 Nudge: "Kindcheck nog niet ingevuld. Er zijn kinderen in het gezin." [Open kindcheck] [Later] │ ▼ Intaker: "Voeg diagnose toe: depressieve stoornis matig" │ ▼ ✅ Diagnose toegevoegd │ ▼ 💡 Nudge: "Behandeladvies toevoegen?" [Ja, dicteren] [Later] │ ▼ Intaker: "Ja, dicteren" │ ▼ 🎤 Dicteren gestart... Intaker: "Behandeladvies: CGT individueel, 16 sessies, wekelijks. Start medicatie sertraline 50mg in overleg met psychiater. Doel: verminderen depressieve klachten, verbeteren slaap, hervatten werkactiviteiten." │ ▼ ┌─────────────────────────────────────────┐ │ Bevestig behandeladvies: │ │ │ │ Vorm: CGT individueel │ │ Sessies: 16 │ │ Frequentie: wekelijks │ │ Medicatie: sertraline 50mg (consult) │ │ Doelen: │ │ • Verminderen depressieve klachten │ │ • Verbeteren slaap │ │ • Hervatten werkactiviteiten │ │ │ │ [Opslaan] [Bewerken] [Annuleren] │ └─────────────────────────────────────────┘ │ ▼ ✅ Behandeladvies opgeslagen │ ▼ 💡 Nudge: "Intake is nu 89% compleet. Samenvatting genereren?" [Genereer voor MDO] [Nog niet klaar] ``` ### Intent Catalogus voor Intake | Intent | Layer | Type | Nudge Trigger? | |--------|-------|------|----------------| | `intake_status` | Reflex | Query | Nee | | `intake_lijst` | Reflex | Query | Nee | | `risico_query` | Reflex | Query | Nee | | `risico_toevoegen` | Orchestrator | Actie | Ja → Veiligheidsplan bij ≥matig | | `diagnose_query` | Reflex | Query | Nee | | `diagnose_toevoegen` | Orchestrator | Actie | Ja → Behandeladvies | | `anamnese_query` | Reflex | Query | Nee | | `anamnese_toevoegen` | Orchestrator | Actie | Nee | | `kindcheck_query` | Reflex | Query | Nee | | `kindcheck_invullen` | Orchestrator | Actie | Nee | | `intake_samenvatting` | Orchestrator | AI-Query | Nee | | `overdracht_samenvatting` | Orchestrator | AI-Query | Nee | | `brief_huisarts` | Orchestrator | AI-Actie | Nee | | `intake_afsluiten` | Orchestrator | Actie | Ja → Brief huisarts | | `intake_navigeer` | Reflex | Navigatie | Nee | ### UI Componenten voor Intent-Driven Interactie ``` ┌─────────────────────────────────────────────────────────────────────────────┐ │ UI COMPONENT LIBRARY │ ├─────────────────────────────────────────────────────────────────────────────┤ │ │ │ 1. COMMAND INPUT │ │ ┌─────────────────────────────────────────────────────────────────────┐ │ │ │ 🎤 "Voeg risico toe: suïcidaliteit matig" ⌘K │ │ │ └─────────────────────────────────────────────────────────────────────┘ │ │ • Voice toggle │ │ • Keyboard shortcut (⌘K focus, ⌘Enter submit) │ │ • Autocomplete suggesties │ │ │ │ 2. PROCESSING INDICATOR │ │ ┌─────────────────────────────────────────────────────────────────────┐ │ │ │ ⏳ Begrijpen... (Layer 2 actief) │ │ │ └─────────────────────────────────────────────────────────────────────┘ │ │ • Alleen bij AI-acties (>100ms) │ │ • Niet bij Reflex │ │ │ │ 3. ACTION CHAIN CARD │ │ ┌─────────────────────────────────────────────────────────────────────┐ │ │ │ ✅ 1. Risico toegevoegd │ │ │ │ ⏳ 2. Afspraak plannen... │ │ │ │ ⬜ 3. Notitie maken │ │ │ └─────────────────────────────────────────────────────────────────────┘ │ │ • Multi-intent visueel │ │ • Progressie per stap │ │ │ │ 4. CLARIFICATION CARD │ │ ┌─────────────────────────────────────────────────────────────────────┐ │ │ │ ❓ Welke Mohammed bedoel je? │ │ │ │ ○ Mohammed A. (actieve intake) │ │ │ │ ○ Mohammed B. (afgeronde intake) │ │ │ └─────────────────────────────────────────────────────────────────────┘ │ │ • Bij ambiguïteit │ │ • Geen "Ik begrijp het niet" │ │ │ │ 5. NUDGE TOAST │ │ ┌─────────────────────────────────────────────────────────────────────┐ │ │ │ 💡 Veiligheidsplan opstellen? [Ja] [Nee] 15s │ │ │ └─────────────────────────────────────────────────────────────────────┘ │ │ • Bottom-right │ │ • Auto-dismiss countdown │ │ • Non-blocking │ │ │ │ 6. CONFIRMATION DIALOG │ │ ┌─────────────────────────────────────────────────────────────────────┐ │ │ │ Ik ga toevoegen: │ │ │ │ │ │ │ │ Risico: Suïcidaliteit │ │ │ │ Ernst: Matig │ │ │ │ Toelichting: Passieve doodswens, geen concreet plan │ │ │ │ │ │ │ │ [Bevestigen] [Aanpassen] [Annuleren] │ │ │ └─────────────────────────────────────────────────────────────────────┘ │ │ • Bij write-acties │ │ • Human-in-the-loop │ │ │ └─────────────────────────────────────────────────────────────────────────────┘ ``` --- ## Roadmap Fasen ### Overzicht ``` Q1 2026 Q2 2026 Q3 2026 Q4 2026 2027+ ───────────────────────────────────────────────────────────────────────────────────────── FASE 1 FASE 2 FASE 3 FASE 4 FASE 5 Foundation + Dicteren AI-Samenvatting Uitrol + Knowledge Query Versterking Pilot & Overdracht Optimalisatie Engine ████████████ ████████████ ████████████ ████████████ ████████████ Three-Layer Voice input AI-gegenereerde Brede adoptie Protocol rules Architecture Anamnese dicteren samenvattingen Training Predictive Basic Nudges Risico dicteren Executive summary Basic Nudges live Learning Reflex + Orchestrator Multi-intent Nudge triggers Iteratie Advanced Nudges ───────────────────────────────────────────────────────────────────────────────────────── PILOT: 5 intakers PILOT: 5 intakers PILOT: 10 intakers UITROL: Alle INNOVATIE Go/No-go ─────────► Go/No-go ─────────► Go/No-go ─────────► Evaluatie ──────────► Doorontwikkeling ``` ### Cortex Lagen per Fase | Fase | Layer 1 (Reflex) | Layer 2 (Orchestrator) | Layer 3 (Nudge) | |------|------------------|------------------------|-----------------| | **1** | ✅ Uitgebreid | ⚠️ Basis | ⚠️ Hardcoded PoC | | **2** | ✅ Stabiel | ✅ Multi-intent | ⚠️ Basis triggers | | **3** | ✅ Stabiel | ✅ AI-samenvatting | ✅ Intake-nudges | | **4** | ✅ Geoptimaliseerd | ✅ Productie-ready | ✅ Live voor alle | | **5** | ✅ Stabiel | ✅ Enhanced | 🚀 Knowledge Engine | --- ### Fase 1: Foundation + Query Versterking (Q1 2026) **Doel:** Meer informatie snel toegankelijk via intent-queries **Risico:** Laag **Investering:** 2 sprints #### Deliverables | Item | Type | Beschrijving | Stakeholder-waarde | |------|------|--------------|-------------------| | **Three-Layer Architecture** | Architectuur | Reflex + Orchestrator + Nudge basis | Alle | | Reflex Arc uitbreiding | Layer 1 | Nieuwe patterns voor intake-intents | Snelheid | | Confidence thresholds | Layer 1 | Tuning escalatie naar Layer 2 | Accuraatheid | | `intake_lijst` | Query + Block | Overzicht alle intakes met filters | Admin, Manager | | `intake_status` (verbetering) | Query + Block | Completere status met voortgangspercentage | Alle clinici | | `onderzoeken_query` | Query + Block | Welke onderzoeken zijn aangevraagd/afgerond | Psychiater, Intaker | | `kindcheck_query` | Query + Block | Kindcheck status en resultaten | Intaker | | `anamnese_query` | Query + Block | Anamnese samenvatting ophalen | Intaker, Behandelaar | | **Basic Nudge (PoC)** | Layer 3 | Hardcoded nudge: "Kindcheck niet ingevuld" | Intaker | | Dashboard basis | Feature | KPI-weergave voor management | Manager | #### Success Metrics | Metric | Target | Meetmethode | |--------|--------|-------------| | Adoptie query-intents | >50% van intakers gebruikt 1x/dag | Logging | | Time-to-information | <10 sec voor status-query | Performance monitoring | | Gebruikerstevredenheid | NPS >30 | Survey na 4 weken | #### Go/No-go Criteria - [ ] Minimaal 3 intakers gebruiken queries dagelijks - [ ] Geen kritieke bugs in productie - [ ] Gemiddelde query-tijd <10 seconden - [ ] Positieve feedback uit gebruikersinterviews --- ### Fase 2: Dicteren Pilot (Q2 2026) **Doel:** Valideren van voice-input voor verslaglegging **Risico:** Middel **Investering:** 2 sprints + pilot-begeleiding #### Deliverables | Item | Type | Beschrijving | Stakeholder-waarde | |------|------|--------------|-------------------| | **Multi-Intent Support** | Layer 2 | Parsing van "X en Y" zinnen | Efficiëntie | | Context Awareness | Layer 2 | Pronoun resolution ("hij" → patiënt) | Natuurlijkheid | | Relatieve tijd | Layer 2 | "morgen" → concrete datum | Gebruiksgemak | | `anamnese_toevoegen` | Actie-intent | Dicteren van anamnese-fragmenten | Intaker | | `risico_toevoegen` | Actie-intent | Dicteren van risico-inschatting | Intaker | | ActionChainCard | UI Component | Multi-intent visuele feedback | UX | | Confirmatie-dialoog | UX Pattern | "Ik ga toevoegen: X. Klopt dat?" | Alle | | Pause/resume | Feature | Onderbreking-tolerante dictatie | Screener, Intaker | | **Nudge: Risico → Veiligheidsplan** | Layer 3 | Bij suïcidaliteit ≥matig | Veiligheid | | **Nudge: Diagnose → Behandeladvies** | Layer 3 | Na toevoegen diagnose | Workflow | | Pilot-dashboard | Feature | Metrics voor pilot-evaluatie | Manager, PO | #### Pilot Setup ``` ┌─────────────────────────────────────────────────────────────────────────────┐ │ PILOT CONFIGURATIE │ ├─────────────────────────────────────────────────────────────────────────────┤ │ │ │ Deelnemers: 5 intakers (mix ervaren/nieuw) │ │ Duur: 8 weken │ │ Begeleiding: Wekelijkse check-in, dedicated support │ │ Controlegroep: 5 intakers met klassieke werkwijze │ │ │ │ Metingen: │ │ • Tijd verslaglegging (voor/na) │ │ • Kwaliteit verslagen (steekproef review) │ │ • Gebruikerstevredenheid (wekelijkse pulse) │ │ • Cliëntervaring (interview sample) │ │ │ └─────────────────────────────────────────────────────────────────────────────┘ ``` #### Success Metrics | Metric | Target | Meetmethode | |--------|--------|-------------| | Tijd verslaglegging | 30% reductie | Tijdregistratie | | Dicteer-accuraatheid | >95% correct na confirmatie | Steekproef | | Intaker-tevredenheid | >7/10 | Wekelijkse survey | | Pilot-continuiteit | 4/5 intakers blijven gebruiken | Observatie | #### Go/No-go Criteria - [ ] Minimaal 30% tijdwinst op verslaglegging - [ ] Geen toename in fouten/omissies in dossiers - [ ] 4 van 5 pilotdeelnemers willen doorgaan - [ ] Privacy/compliance goedgekeurd (DPIA indien nodig) --- ### Fase 3: AI-Samenvatting & Overdracht (Q3 2026) **Doel:** AI-gegenereerde samenvattingen voor betere overdracht **Risico:** Middel-Hoog **Investering:** 2 sprints #### Deliverables | Item | Type | Beschrijving | Stakeholder-waarde | |------|------|--------------|-------------------| | `intake_samenvatting` | AI-intent | Samenvatting van volledige intake | Intaker, MDO | | `overdracht_samenvatting` | AI-intent | Executive summary voor behandelaar | Behandelaar | | `brief_huisarts` | AI-intent | Gestructureerde terugkoppeling | Huisarts | | Review-flow | UX Flow | Accorderen/bewerken van AI-output | Intaker | | Template-systeem | Feature | Standaard formats voor outputs | Alle | | **Nudge: Intake compleet → Samenvatting** | Layer 3 | "Samenvatting genereren voor MDO?" | Workflow | | **Nudge: Afsluiting → Brief huisarts** | Layer 3 | "Terugkoppeling naar verwijzer?" | Keten | | **Nudge: Behandeldoelen vaag** | Layer 3 | "Doelen concretiseren?" | Kwaliteit | #### AI-Output Kwaliteitseisen ``` ┌─────────────────────────────────────────────────────────────────────────────┐ │ KWALITEITSEISEN AI-SAMENVATTING │ ├─────────────────────────────────────────────────────────────────────────────┤ │ │ │ MUST HAVE: │ │ ✓ Kernvraag in 1-2 zinnen │ │ ✓ Diagnose(s) met code │ │ ✓ Risico's met severity (stoplicht) │ │ ✓ Behandeldoelen concreet │ │ ✓ Medicatie-status │ │ ✓ Aandachtspunten voor behandelaar │ │ │ │ MUST NOT: │ │ ✗ Hallucinaties (info die niet in dossier staat) │ │ ✗ Medische adviezen die niet in bron staan │ │ ✗ Diagnoses die niet gesteld zijn │ │ ✗ Weglaten van risico-informatie │ │ │ │ KWALITEITSCONTROLE: │ │ • 100% human review voor go-live │ │ • Steekproef review na go-live (10%) │ │ • Feedback-loop voor verbetering │ │ │ └─────────────────────────────────────────────────────────────────────────────┘ ``` #### Success Metrics | Metric | Target | Meetmethode | |--------|--------|-------------| | Bruikbaarheid samenvatting | >80% direct bruikbaar | Review door behandelaar | | Hallucinatie-rate | <1% | Steekproef tegen bron | | Voorbereidingstijd behandelaar | <15 min | Tijdregistratie | | Behandelaar-tevredenheid | >7/10 | Survey | #### Go/No-go Criteria - [ ] Hallucinatie-rate <1% in steekproef van 50 samenvattingen - [ ] 80% van behandelaars vindt summary bruikbaar - [ ] Geen kritieke informatie weggelaten in samenvattingen - [ ] DPIA afgerond en goedgekeurd --- ### Fase 4: Uitrol & Optimalisatie (Q4 2026) **Doel:** Brede adoptie en continue verbetering **Risico:** Middel **Investering:** 2+ sprints + change management #### Deliverables | Item | Type | Beschrijving | Stakeholder-waarde | |------|------|--------------|-------------------| | Uitrolplan | Organisatie | Gefaseerde uitrol naar alle intakers | Manager | | Training materiaal | Documentatie | Video's, handleidingen, FAQ | Alle | | Onboarding flow | UX | In-app begeleiding voor nieuwe gebruikers | Alle | | Champions netwerk | Organisatie | Super-users voor peer support | Manager | | Feedback-systeem | Feature | In-app feedback en suggesties | PO, Dev | | A/B testing | Feature | Optimalisatie van prompts en flows | PO | #### Uitrolstrategie ``` ┌─────────────────────────────────────────────────────────────────────────────┐ │ UITROLSTRATEGIE │ ├─────────────────────────────────────────────────────────────────────────────┤ │ │ │ Week 1-2: Champions training (5 super-users) │ │ Week 3-4: Team 1 (5 intakers) + champions support │ │ Week 5-6: Team 2 (5 intakers) + Team 1 als peer support │ │ Week 7-8: Alle intakers (2 resterende) │ │ Week 9+: Monitoring en optimalisatie │ │ │ │ SUPPORT MODEL: │ │ • Week 1-4: Dedicated support (2 uur/dag beschikbaar) │ │ • Week 5-8: Champions als eerste lijn │ │ • Week 9+: Standaard support + feedback-loop │ │ │ └─────────────────────────────────────────────────────────────────────────────┘ ``` #### Success Metrics | Metric | Target | Meetmethode | |--------|--------|-------------| | Adoptie | >80% actief gebruik | Logging | | Verslagleggingstijd | 50% reductie vs. baseline | Tijdregistratie | | Cliënttevredenheid intake | >8/10 | CES survey | | Behandelaar "kent cliënt" | >90% positief | Eerste-sessie survey | --- ### Fase 5: Knowledge & Intelligence Engine (2027+) **Doel:** Van hardcoded nudges naar configureerbare protocol-engine **Risico:** Hoog (innovatie) **Investering:** Continu, meerdere sprints #### Visie Fase 5 transformeert Cortex van een "slim hulpmiddel" naar een **kennisgedreven assistent** die: - GGZ-richtlijnen kent en toepast - Leert van gebruikersgedrag - Proactief risico's signaleert - Predictieve suggesties doet #### Deliverables | Item | Type | Beschrijving | Stakeholder-waarde | |------|------|--------------|-------------------| | **Protocol Rules Engine** | Layer 3 | Configureerbare if-then rules | Flexibiliteit | | Admin UI voor rules | Feature | Rules beheren zonder code | Beheerders | | GGZ-richtlijnen als rules | Content | MR Depressie, Angst, etc. | Klinische kwaliteit | | **NLP-based matching** | Layer 3 | Semantic similarity i.p.v. keywords | Accuraatheid | | Sentiment detection | Layer 2 | "Hopeloos" herkennen als risico-signaal | Veiligheid | | **Adaptive confidence** | Layer 1-2 | User-specific thresholds | Personalisatie | | Learning from corrections | Feature | Systeem leert van feedback | Continue verbetering | | **Predictive suggestions** | Layer 3 | "Bij vergelijkbare cliënten..." | Innovatie | #### Protocol Rules Voorbeeld ``` ┌─────────────────────────────────────────────────────────────────────────────┐ │ PROTOCOL RULES ENGINE │ ├─────────────────────────────────────────────────────────────────────────────┤ │ │ │ RULE: MR_DEPRESSIE_BEHANDELSTAP │ │ ───────────────────────────────── │ │ IF: │ │ diagnose CONTAINS "depressieve stoornis" │ │ AND severity IN ["matig", "ernstig"] │ │ AND behandeladvies NOT EXISTS │ │ THEN: │ │ NUDGE: "Volgens MR Depressie: CGT of IPT als eerste keus." │ │ ACTIONS: [toon_richtlijn, start_behandeladvies] │ │ │ │ RULE: RISICO_ESCALATIE │ │ ───────────────────────────────── │ │ IF: │ │ risico.suicidaliteit >= "matig" │ │ AND veiligheidsplan NOT EXISTS │ │ AND last_check > 7 days │ │ THEN: │ │ NUDGE: "Veiligheidsplan niet bijgewerkt. Bespreken met cliënt?" │ │ PRIORITY: HIGH │ │ ACTIONS: [open_veiligheidsplan, plan_afspraak] │ │ │ │ RULE: KINDCHECK_REMINDER │ │ ───────────────────────────────── │ │ IF: │ │ patient.has_children = true │ │ AND kindcheck.status = "niet_ingevuld" │ │ AND intake.fase >= "anamnese" │ │ THEN: │ │ NUDGE: "Er zijn minderjarige kinderen. Kindcheck invullen?" │ │ ACTIONS: [open_kindcheck] │ │ │ └─────────────────────────────────────────────────────────────────────────────┘ ``` #### Predictive Intelligence (Visie) ``` ┌─────────────────────────────────────────────────────────────────────────────┐ │ PREDICTIVE INTELLIGENCE │ ├─────────────────────────────────────────────────────────────────────────────┤ │ │ │ Op basis van 1000+ afgeronde intakes: │ │ │ │ "Bij cliënten met vergelijkbaar profiel (depressie, burn-out │ │ voorgeschiedenis, 35-45 jaar) was de gemiddelde behandelduur │ │ 18 sessies. 70% had baat bij medicatie-ondersteuning." │ │ │ │ 💡 Suggestie: "Overweeg combinatiebehandeling CGT + medicatie" │ │ │ │ [Toon onderliggende data] [Negeer] [Feedback: niet relevant] │ │ │ │ ⚠️ DISCLAIMER: Dit zijn statistische patronen, geen klinisch advies. │ │ De behandelaar blijft verantwoordelijk voor de klinische beslissing. │ │ │ └─────────────────────────────────────────────────────────────────────────────┘ ``` #### Success Metrics | Metric | Target | Meetmethode | |--------|--------|-------------| | Nudge acceptance rate | >40% | Logging | | Protocol compliance | >80% richtlijn-acties gevolgd | Audit | | False positive rate | <10% irrelevante nudges | User feedback | | Predictive accuracy | >70% voor behandelduur | Outcome tracking | #### Ethische Overwegingen | Aspect | Principe | Implementatie | |--------|----------|---------------| | Transparantie | Uitlegbaar waarom een nudge komt | "Gebaseerd op MR Depressie §4.2" | | Autonomie | Clinicus beslist altijd | Nudge is suggestie, nooit verplichting | | Privacy | Geen individuele data voor learning | Alleen geaggregeerde patronen | | Bias | Monitoren op ongelijke behandeling | Fairness metrics per doelgroep | --- ## Risico's en Mitigatie ### Risicomatrix | Risico | Impact | Kans | Mitigatie | |--------|--------|------|-----------| | **Lage adoptie** | Hoog | Middel | Champions, vroege gebruikersbetrokkenheid, multimodaal | | **Privacy/AVG issues** | Hoog | Laag | DPIA vroeg uitvoeren, geen audio-opslag | | **AI-hallucinaties** | Hoog | Middel | Human-in-the-loop, confidence scoring, review-flows | | **Technische complexiteit** | Middel | Middel | Incrementeel bouwen, MVP-first | | **Weerstand clinici** | Middel | Middel | Betrekken bij ontwerp, bewijs met pilot | | **Vendor lock-in (LLM)** | Middel | Laag | Abstractielaag, multi-provider support | | **Scope creep** | Middel | Hoog | Strikte prioritering, nee zeggen | ### Kritieke Afhankelijkheden | Afhankelijkheid | Eigenaar | Status | |-----------------|----------|--------| | Deepgram API (spraak-naar-tekst) | Extern | ✅ Operationeel | | Claude API (LLM) | Extern | ✅ Operationeel | | DPIA goedkeuring | Directeur Zorg | ⏳ Nog uit te voeren | | Pilot-deelnemers | Manager Intake | ⏳ Te selecteren | | Training budget | Directeur Zorg | ⏳ Te accorderen | --- ## Budgetindicatie ### Ontwikkelkosten (indicatief) | Fase | Sprints | Effort | Indicatie | |------|---------|--------|-----------| | Fase 1: Foundation | 2 | 4 weken | €€ | | Fase 2: Dicteren | 2 | 4 weken + pilot | €€€ | | Fase 3: AI-Samenvatting | 2 | 4 weken | €€€ | | Fase 4: Uitrol | 2+ | 4+ weken + training | €€ | | **Totaal** | **8+** | **16+ weken** | **€€€€€** | ### Operationele kosten (indicatief, per maand) | Component | Kosten | Schaling | |-----------|--------|----------| | Deepgram (spraak) | € | Per minuut audio | | Claude API (LLM) | €€ | Per token | | Hosting/infra | € | Vast | | **Totaal** | **€€€/maand** | Variabel met gebruik | ### Return on Investment ``` ┌─────────────────────────────────────────────────────────────────────────────┐ │ ROI BEREKENING (INDICATIEF) │ ├─────────────────────────────────────────────────────────────────────────────┤ │ │ │ TIJDWINST PER INTAKE: │ │ • Verslaglegging: 30 min → 15 min = 15 min bespaard │ │ • Voorbereiding behandelaar: 30 min → 15 min = 15 min bespaard │ │ • Totaal per intake: 30 minuten │ │ │ │ VOLUME: │ │ • 12 intakers x 3 intakes/week = 36 intakes/week │ │ • 36 intakes x 30 min = 18 uur/week bespaard │ │ • 18 uur x 48 weken = 864 uur/jaar │ │ │ │ WAARDE: │ │ • 864 uur x €X/uur = significante besparing │ │ • OF: Capaciteit voor ~300 extra intakes/jaar │ │ │ │ KWALITATIEVE BATEN: │ │ • Betere cliëntervaring (minder herhaling) │ │ • Hogere kwaliteit overdrachten │ │ • Minder administratieve frustratie │ │ • Aantrekkelijker werkgeverschap │ │ │ └─────────────────────────────────────────────────────────────────────────────┘ ``` --- ## Governance ### Stuurgroep | Rol | Verantwoordelijkheid | Frequentie | |-----|---------------------|------------| | Directeur Zorg | Go/no-go besluiten, budget | Per fase | | Manager Intake | Operationele aansturing, pilot | Wekelijks | | Product Owner | Backlog, prioritering, kwaliteit | Continu | | Tech Lead | Architectuur, haalbaarheid | Sprint | ### Besluitvorming ``` FASE-OVERGANG BESLUIT ───────────────────── Stuurgroep │ ┌───────────┼───────────┐ │ │ │ Business Klinisch Technisch criteria criteria criteria │ │ │ └───────────┼───────────┘ │ Go / No-go ``` ### Rapportage | Rapport | Frequentie | Audience | |---------|------------|----------| | Sprint review | 2-wekelijks | Team + PO | | Pilot voortgang | Wekelijks | Manager + PO | | Stuurgroep update | Per fase | Directie | | Metrics dashboard | Continu | Alle stakeholders | --- ## Kwaliteitscriteria ### De Drie Tests Elke feature wordt getoetst aan drie perspectieven: **1. De Mohammed-test (Cliëntperspectief)** > "Zorgt dit ervoor dat de cliënt zijn verhaal minder vaak hoeft te vertellen?" **2. De Eerste-Sessie-test (Behandelaarperspectief)** > "Kan de behandelaar in de eerste sessie zeggen: 'Ik weet wie u bent'?" **3. De Huisarts-test (Ketenperspectief)** > "Krijgt de huisarts tijdig en volledig terugkoppeling?" ### Definition of Done Feature is pas "done" als: - [ ] Functioneel getest en werkend - [ ] Gebruikerstest uitgevoerd met minimaal 3 gebruikers - [ ] Privacy-review uitgevoerd - [ ] Documentatie bijgewerkt - [ ] Logging/metrics geïmplementeerd - [ ] Fallback naar klassieke route werkt --- ## Volgende Stappen ### Directe Acties (komende 2 weken) | Actie | Eigenaar | Deadline | |-------|----------|----------| | Pilot-deelnemers selecteren | Manager Intake | Week 1 | | DPIA-traject starten | Directeur Zorg | Week 1 | | Sprint 1 stories uitwerken | Product Owner | Week 2 | | UX research plannen (huisarts, behandelaar) | UX Designer | Week 2 | | Technische spike: dicteren haalbaarheid | Dev Team | Week 2 | ### Besluitpunten voor Stuurgroep | Besluit | Wanneer | Input nodig | |---------|---------|-------------| | Budget accordering Fase 1-2 | Week 2 | Kostenraming, business case | | DPIA scope en aanpak | Week 3 | Privacy-analyse | | Pilot go-ahead | Week 4 | Deelnemers, criteria | --- ## Appendix ### A. Gerelateerde Documenten - `stakeholder-sessie-intake-intents.md` - Volledige stakeholder-analyse - `docs/intent/intake-intent-proces/gap-analyse-intake-cortex.md` - Technische gap-analyse - `docs/intent/intake-intent-proces/fo-to-bouwplan-intake-blocks-mvp.md` - MVP specificaties ### B. Intent Catalogus | Intent | Type | Layer | Fase | Nudge Trigger | Status | |--------|------|-------|------|---------------|--------| | `intake_status` | Query | Reflex | 1 | - | ✅ Gebouwd | | `risico_query` | Query | Reflex | 1 | - | ✅ Gebouwd | | `diagnose_query` | Query | Reflex | 1 | - | ✅ Gebouwd | | `intake_navigeer` | Nav | Reflex | 1 | - | ✅ Gebouwd | | `intake_lijst` | Query | Reflex | 1 | - | ⏳ Gepland | | `onderzoeken_query` | Query | Reflex | 1 | - | ⏳ Gepland | | `anamnese_toevoegen` | Actie | Orchestrator | 2 | - | ⏳ Gepland | | `risico_toevoegen` | Actie | Orchestrator | 2 | Veiligheidsplan (≥matig) | ⏳ Gepland | | `diagnose_toevoegen` | Actie | Orchestrator | 2 | Behandeladvies | ⏳ Gepland | | `intake_samenvatting` | AI | Orchestrator | 3 | - | ⏳ Gepland | | `overdracht_samenvatting` | AI | Orchestrator | 3 | - | ⏳ Gepland | | `brief_huisarts` | AI | Orchestrator | 3 | - | ⏳ Gepland | | `intake_afsluiten` | Actie | Orchestrator | 3 | Brief huisarts | ⏳ Gepland | ### B2. Nudge Catalogus | Nudge | Trigger | Fase | Prioriteit | |-------|---------|------|------------| | Kindcheck niet ingevuld | Kinderen in gezin, kindcheck leeg | 1 | Middel | | Veiligheidsplan | Suïcidaliteit ≥ matig | 2 | Hoog | | Behandeladvies | Diagnose toegevoegd | 2 | Middel | | Samenvatting genereren | Intake ≥ 80% compleet | 3 | Middel | | Brief huisarts | Intake afgesloten, geen terugkoppeling | 3 | Laag | | Doelen concretiseren | Behandeldoelen vaag/generiek | 3 | Laag | | MR Depressie stappen | Diagnose depressie, geen behandeladvies | 5 | Middel | | Risico herbeoordeling | Risico ≥ matig, > 7 dagen geleden | 5 | Hoog | ### C. Stakeholder Overzicht | Rol | Primaire behoefte | Key intent(s) | |-----|------------------|---------------| | Cliënt | Niet herhalen | - (indirect) | | Huisarts | Terugkoppeling | `brief_huisarts` | | Admin | Overzicht | `intake_lijst` | | Screener | Snelheid | `screening_besluit` | | Intaker | Dicteren | `anamnese_toevoegen` | | Psychiater | Context | `medicatie_historie` | | Behandelaar | Overdracht | `overdracht_samenvatting` | | Manager | KPI's | `intake_lijst` + dashboard | --- *Document eigenaar: Product Management* *Review cyclus: Per fase-overgang* *Laatste update: 2026-02-04*