Files
triqura-ecd/docs/swift/archive/nextgen-epd-waarde-analyse-ephemeral-ui.md
2025-12-27 13:17:00 +01:00

552 lines
21 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Waarde-Analyse Ephemeral UI EPD
**Document:** Waar ligt de waarde en hoe implementeren?
**Datum:** december 2024
**Auteurs:** Product Owner, Klant (GGZ Zorginstelling), UX Designer
---
## 1. Klant Perspectief: De Zorginstelling
### 1.1 De Pijn van Vandaag
**Citaten uit het veld:**
> "Mijn verpleegkundigen besteden 40% van hun tijd aan administratie. Dat is tijd die niet naar de cliënt gaat."
> — Teamleider GGZ
> "We hebben een EPD met 200 schermen. Niemand kent ze allemaal. Nieuwe medewerkers doen er 3 maanden over om het te leren."
> — ICT Manager
> "Na een crisis-interventie moet ik 20 minuten typen. Terwijl ik eigenlijk bij de volgende cliënt moet zijn."
> — SPV'er
### 1.2 Waar Ligt de Echte Waarde?
**Waarde = Tijd terug naar de zorg**
| Activiteit | Nu (minuten) | Ephemeral (minuten) | Besparing |
|------------|--------------|---------------------|-----------|
| Dagnotitie na ADL | 3-5 | 0.5 | **80%** |
| Rapportage na gesprek | 8-15 | 2-3 | **75%** |
| Overdracht maken | 20-30 | 5 | **80%** |
| Patiënt opzoeken | 1-2 | 0.2 | **85%** |
| Navigeren naar juiste scherm | 0.5-1 per actie | 0 | **100%** |
**Rekenvoorbeeld voor 1 afdeling (10 FTE):**
- 10 medewerkers × 8 notities/dag × 3 min besparing = **4 uur/dag terug**
- Per jaar: **1000+ uur** extra zorgcontact
### 1.3 Wat de Klant Wil Zien
**Primair:**
1. **Snelheid** - "Ik zeg iets, het staat erin"
2. **Betrouwbaarheid** - "Het begrijpt me, ook in GGZ-taal"
3. **Geen gedoe** - "Ik hoef niet na te denken over het systeem"
**Secundair:**
4. Overdracht die zichzelf schrijft
5. Minder training voor nieuwe medewerkers
6. Voice input (handsfree tijdens zorg)
**Niet gevraagd maar wel gewaardeerd:**
- AI-suggesties ("wil je de arts informeren?")
- Proactieve alerts ("let op: 3 valincidenten deze week")
### 1.4 Waarde Prioritering door Klant
```
████████████████████████████████ HOOGSTE WAARDE
█ 1. Snelle dagnotities (voice)
█ 2. Rapportage na gesprek
█ 3. Automatische overdracht
████████████████████████████ HOGE WAARDE
█ 4. Patiënt snel vinden
█ 5. Context-aware (weet welke dienst)
████████████████████ GEMIDDELDE WAARDE
█ 6. Behandelplan assistentie
█ 7. Agenda integratie
████████████ LAGERE WAARDE
█ 8. Metingen invoer
█ 9. Intake ondersteuning
```
### 1.5 Klant Conclusie
**Meeste waarde:** De drie "high-frequency, low-complexity" taken:
1. **Dagnotitie** - 10-20x per dag per medewerker
2. **Rapportage** - 3-5x per dag per behandelaar
3. **Overdracht** - 2-3x per dag per afdeling
**Implementatie advies:** Begin hier. Dit is waar 80% van de tijdwinst zit.
---
## 2. Product Owner Perspectief: Waarde vs. Effort
### 2.1 Value/Effort Matrix
```
HOGE WAARDE
┌───────────────────┼───────────────────┐
│ │ │
│ QUICK WINS │ BIG BETS │
│ ──────────── │ ──────────── │
│ • Dagnotitie │ • Intent API │
│ • Zoeken │ • Voice flow │
│ • Context bar │ • Overdracht AI │
│ │ │
LAGE ├───────────────────┼───────────────────┤ HOGE
EFFORT │ │ EFFORT
│ │ │
│ FILL-INS │ MONEY PITS │
│ ──────────── │ ──────────── │
│ • Metingen │ • Intake wizard │
│ • Agenda view │ • Behandelplan │
│ • Recent badges │ • Full ambient │
│ │ │
└───────────────────┼───────────────────┘
LAGE WAARDE
```
### 2.2 Waarde Drivers per Bouwblok
| Bouwblok | Frequentie | Tijdwinst | Effort | **Waarde Score** |
|----------|------------|-----------|--------|------------------|
| **Dagnotitie** | 20x/dag | 80% | Laag | ⭐⭐⭐⭐⭐ |
| **Zoeken** | 15x/dag | 85% | Laag | ⭐⭐⭐⭐⭐ |
| **Rapportage** | 5x/dag | 75% | Medium | ⭐⭐⭐⭐ |
| **Overdracht** | 2x/dag | 80% | Medium | ⭐⭐⭐⭐ |
| **Agenda** | 3x/dag | 50% | Laag | ⭐⭐⭐ |
| **Metingen** | 2x/dag | 60% | Laag | ⭐⭐⭐ |
| **Behandelplan** | 1x/week | 40% | Hoog | ⭐⭐ |
| **Intake** | 1x/maand | 30% | Hoog | ⭐ |
### 2.3 MVP Definitie op Basis van Waarde
**MVP = Hoogste waarde, laagste effort**
```
┌─────────────────────────────────────────────────────────────┐
│ MVP SCOPE │
├─────────────────────────────────────────────────────────────┤
│ │
│ MUST: Command Center + Intent │
│ ├── Text input │
│ ├── Voice input (Deepgram bestaand) │
│ └── Fallback blok-picker │
│ │
│ MUST: Dagnotitie Blok ⭐⭐⭐⭐⭐ │
│ ├── Quick entry form │
│ ├── Categorie pre-select uit intent │
│ ├── Patient pre-fill │
│ └── 1-click save │
│ │
│ MUST: Zoeken Blok ⭐⭐⭐⭐⭐ │
│ ├── Patient search (cmdk) │
│ ├── Quick actions per result │
│ └── Set active patient │
│ │
│ SHOULD: Rapportage Blok ⭐⭐⭐⭐ │
│ ├── Wrapper rond bestaande ReportComposer │
│ ├── Voice dictation │
│ └── AI structurering │
│ │
│ COULD: Overdracht Blok ⭐⭐⭐⭐ │
│ └── AI samenvatting (API bestaat al) │
│ │
└─────────────────────────────────────────────────────────────┘
```
### 2.4 Wat NIET in MVP
| Blok | Reden voor uitstel |
|------|-------------------|
| Behandelplan | Laag-frequent, hoog-complex, bestaande UI voldoet |
| Intake | Zeer laag-frequent, wizard is complex |
| Metingen | Lage waarde-perceptie bij klant |
| Agenda | Bestaande agenda werkt, lage urgentie |
### 2.5 Release Strategie
**Week 1-2: Foundation**
- Command Center shell
- Intent API (basic)
- Dagnotitie blok
**Week 3: Core Value**
- Zoeken blok
- Rapportage blok
- Voice refinement
**Week 4: Demo Polish**
- Overdracht blok
- Animaties
- Demo scenario's
**Post-Demo: Iterate**
- Metrics verzamelen
- Intent accuracy verbeteren
- Overige blokken op basis van feedback
---
## 3. UX Designer Perspectief: Waarde in de Interactie
### 3.1 Waar Ontstaat Waarde in de UX?
**Waarde = Friction verwijderen**
De grootste UX-waarde zit niet in features, maar in het **elimineren van stappen**:
```
TRADITIONEEL EPD:
Login → Dashboard → Menu → Submenu → Patiënten → Zoeken →
Selecteer → Menu → Rapportage → Type selecteren → Formulier →
Invullen → Validatie fixen → Opslaan → Bevestiging
= 14 stappen, 12+ klikken, 3-5 minuten
EPHEMERAL UI:
Command Center → "Notitie voor Jan" → Invullen → Opslaan
= 4 stappen, 2 klikken, 30 seconden
```
### 3.2 De Vijf Waarde-Momenten
**Moment 1: De Eerste Seconde**
```
┌─────────────────────────────────────────────────────────────┐
│ │
│ Goedemiddag. Wat wil je doen? │
│ ___________________________________________________ │
│ │
│ 💡 "notitie jan", "overdracht", "zoek marie" │
│ │
└─────────────────────────────────────────────────────────────┘
WAARDE: Geen keuze-stress. Geen menu's. Eén vraag.
```
**Moment 2: De Herkenning**
```
User: "notitie voor Jan"
System:
┌─────────────────────────────────────────────────────────────┐
│ 📝 Dagnotitie voor Jan de Vries │
│ ───────────────────────────────────────────────────────── │
│ Categorie: [ADL ▼] Tijd: [14:32] │
│ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ _ │ │
│ └─────────────────────────────────────────────────────┘ │
│ │
│ [Opslaan] │
└─────────────────────────────────────────────────────────────┘
WAARDE: "Het begreep me!" Patient al ingevuld. Direct typen.
```
**Moment 3: De Voice Flow**
```
User klikt 🎤
┌─────────────────────────────────────────────────────────────┐
│ 🔴 Luistert... │
│ │
│ "Mevrouw heeft goed gegeten, medicatie ingenomen, │
│ was wat onrustig vanmorgen maar nu stabiel" │
│ │
│ [Stop] [Opnieuw] │
└─────────────────────────────────────────────────────────────┘
WAARDE: Handen vrij. Praten is sneller dan typen.
Natuurlijke taal, geen formulier-denken.
```
**Moment 4: De Bevestiging**
```
Na opslaan:
┌─────────────────────────────────────────────────────────────┐
│ ✓ Notitie opgeslagen [Ongedaan] │
└─────────────────────────────────────────────────────────────┘
Recent: [Jan - Notitie ✓ 14:32]
WAARDE: Zekerheid. "Het staat erin." Undo als vangnet.
```
**Moment 5: De Volgende Actie**
```
System: Klaar. Wat nu?
___________________________________________________
Suggestie: Je hebt nog 2 patiënten met openstaande notities
WAARDE: Flow behouden. Niet terug naar start.
Proactief helpen.
```
### 3.3 Waarde-Killers (Anti-Patterns)
| Anti-Pattern | Waarom Slecht | Oplossing |
|--------------|---------------|-----------|
| "Weet je het zeker?" dialoog | Vertraagt, twijfel zaaien | Undo in plaats van confirm |
| Verplichte velden | Blokkeert snelle invoer | Alleen patient verplicht |
| Modal op modal | Cognitive overload | Max 1 laag diep |
| Laden... spinner | Wachten = frustratie | Optimistic UI |
| "Sessie verlopen" | Werk kwijt | Auto-save drafts |
### 3.4 Implementatie: Waarde-First Design
**Principe 1: Progressive Disclosure**
```
Stap 1: Minimaal formulier (alleen tekst)
Stap 2: Optionele details (categorie, tijd) - collapsed
Stap 3: Geavanceerd (tags, links) - hidden by default
```
**Principe 2: Defaults die Kloppen**
```typescript
// Pre-fill logica
const defaults = {
patient: context.activePatient || extractFromIntent(input),
category: inferCategory(input), // "medicatie" → Medicatie
time: new Date(), // Nu
includeInHandover: true, // Standaard aan
}
```
**Principe 3: Keyboard-First, Voice-Enhanced**
```
Enter = Opslaan (als er tekst is)
Escape = Sluiten (met draft save)
Tab = Volgende veld
Cmd+K = Terug naar Command input
Spacebar = Start/stop voice (in input)
```
**Principe 4: Feedback Loops**
```
Input → Instant echo (wat het systeem hoorde)
Processing→ Subtle indicator (geen blocking spinner)
Success → Toast + sound + Recent update
Error → Inline, niet modal, met fix-suggestie
```
### 3.5 Waarde Meten
**Metrics die waarde bewijzen:**
| Metric | Target | Hoe Meten |
|--------|--------|-----------|
| Time-to-first-input | <2 sec | Timestamp command → blok open |
| Task completion time | <30 sec (notitie) | Blok open → save |
| Intent accuracy | >90% | Correct blok / totaal attempts |
| Voice adoption | >40% | Voice inputs / totaal inputs |
| Fallback usage | <15% | Blok-picker clicks / totaal |
| Error rate | <5% | Failed saves / totaal saves |
### 3.6 UX Implementatie Prioriteit
```
WEEK 1: Core Interaction
├── Command input component
├── Voice indicator states
├── Block container met animaties
└── Success/error feedback
WEEK 2: Waarde-Blokken
├── Dagnotitie (minimalist form)
├── Zoeken (cmdk + patient cards)
└── Pre-fill animations
WEEK 3: Polish
├── Microinteracties
├── Keyboard shortcuts
├── Fallback blok-picker
└── Onboarding hints
WEEK 4: Demo Ready
├── Happy path perfectioneren
├── Edge case handling
├── Performance tuning
└── Demo scenario walkthroughs
```
---
## 4. Gezamenlijke Waarde-Conclusie
### 4.1 Waar Ligt de Meeste Waarde?
**Top 3 Waarde-Dragers:**
| # | Feature | Waarde Reden |
|---|---------|--------------|
| 1 | **Voice Dagnotitie** | Hoogste frequentie (20x/dag), grootste tijdwinst (80%), laagste effort |
| 2 | **Instant Zoeken** | Elimineert navigatie volledig, elke actie begint met "wie" |
| 3 | **Smart Pre-fill** | "Het systeem begrijpt me" - emotionele waarde + tijdwinst |
**Waarde Piramide:**
```
/│\
/ │ \
/ │ \
/ │ \ DELIGHT
/ AI │ \ "Het systeem denkt mee"
/ suggestie \
/──────────────\
/ \
/ Pre-fill \ SATISFACTION
/ Voice input \ "Het begrijpt me"
/ Snelle feedback \
/────────────────────────\
/ \
/ Intent herkenning \ BASIC
/ Blok openen \ "Het werkt"
/ Opslaan lukt \
/──────────────────────────────────\
```
### 4.2 Implementatie Volgorde op Basis van Waarde
```
FASE 1: "Het werkt" (Basic)
─────────────────────────
• Command Center layout
• Text input → Intent → Blok openen
• Dagnotitie blok (simpel form)
• Opslaan + bevestiging
FASE 2: "Het begrijpt me" (Satisfaction)
────────────────────────────────────────
• Voice input integratie
• Patient pre-fill uit intent
• Categorie herkenning
• Zoeken blok
FASE 3: "Het denkt mee" (Delight)
─────────────────────────────────
• Rapportage met AI structurering
• Overdracht met AI samenvatting
• Suggesties ("wil je ook...?")
• Context-aware hints
```
### 4.3 Concrete Implementatie Aanbevelingen
**1. Start met Dagnotitie, niet Rapportage**
*Waarom:*
- Dagnotitie is simpeler (1 tekstveld)
- Hogere frequentie = sneller feedback
- Sneller "waarde-bewijs" voor stakeholders
- Rapportage kan als "upgrade" komen
**2. Bouw Zoeken als Fundament**
```typescript
// Zoeken is de basis voor alles
"notitie jan" Zoek Jan Open Dagnotitie
"gesprek met jan" Zoek Jan Open Rapportage
"overdracht jan" Zoek Jan Open Overdracht
// Zonder goede zoek = geen pre-fill = geen waarde
```
**3. Voice is Must-Have, niet Nice-to-Have**
*Klant citaat:*
> "Ik draag handschoenen, ik heb net iemand gewassen,
> ik kan niet gaan typen. Voice is geen luxe."
*Implementatie:*
- Voice input in Command Center (dag 1)
- Voice in Dagnotitie tekstveld (dag 1)
- Deepgram werkt al - alleen UI koppelen
**4. Pre-fill is de "Magie"**
```typescript
// Dit is het WOW-moment
Input: "Jan heeft medicatie gehad"
Resultaat:
Patient: Jan de Vries (auto-selected)
Categorie: Medicatie (auto-selected)
Tekst: "heeft medicatie gehad" (pre-filled)
Tijd: 14:32 (current time)
// User hoeft alleen: review → save
```
**5. Fallback = Vertrouwen**
```
Als intent mislukt:
┌─────────────────────────────────────────────────────────────┐
│ Ik begreep dat niet helemaal. │
│ │
│ ┌────────┐ ┌────────┐ ┌────────┐ ┌────────┐ │
│ │ 📝 │ │ 🔍 │ │ 📋 │ │ 🔄 │ │
│ │Notitie │ │ Zoeken │ │Rapport │ │Overdr. │ │
│ └────────┘ └────────┘ └────────┘ └────────┘ │
│ │
│ Of probeer opnieuw: ____________________________ │
└─────────────────────────────────────────────────────────────┘
// Nooit een doodlopende straat
```
### 4.4 Success Criteria (Waarde-Based)
| Stakeholder | Success = |
|-------------|-----------|
| **Klant** | "Mijn team is 30 min/dag sneller klaar met admin" |
| **Zorgverlener** | "Ik hoef niet meer na te denken over het systeem" |
| **PO** | "Demo leidt tot concrete vervolgafspraak" |
| **UX** | "Users raken de fallback-picker zelden aan" |
---
## 5. Actieplan
### Week 1: Foundation + Eerste Waarde
- [ ] Command Center layout
- [ ] Dagnotitie blok (simpel)
- [ ] Basic intent classification
- [ ] Voice input in Command
### Week 2: Core Waarde
- [ ] Zoeken blok (cmdk)
- [ ] Patient pre-fill
- [ ] Categorie herkenning
- [ ] Fallback blok-picker
### Week 3: Waarde Uitbreiden
- [ ] Rapportage blok
- [ ] AI structurering
- [ ] Overdracht blok
- [ ] Microinteracties
### Week 4: Demo + Metrics
- [ ] Demo scenario's perfectioneren
- [ ] Waarde-metrics implementeren
- [ ] LinkedIn content
- [ ] Stakeholder presentatie
---
*De meeste waarde zit in de eenvoudigste dingen: snel een notitie maken,
snel iemand vinden, en het gevoel dat het systeem je begrijpt.*