Healthcare EMR Entwicklungspatterns
Patterns für die Entwicklung von Electronic Medical Record (EMR) und Electronic Health Record (EHR) Systemen. Priorisiert Patientensicherheit, klinische Genauigkeit und Effizienz für Ärzte.
Wann verwenden
- Erstellung von Patienten-Encounter-Workflows (Beschwerde, Untersuchung, Diagnose, Rezept)
- Implementierung klinischer Notizen (strukturiert + Freitext + Sprache-zu-Text)
- Gestaltung von Rezept-/Medikationsmodulen mit Arzneimittelinteraktionsprüfung
- Integration von Clinical Decision Support Systems (CDSS)
- Erstellung von Laborergebnis-Anzeigen mit Referenzbereich-Hervorhebung
- Implementierung von Audit-Trails für klinische Daten
- Gestaltung barrierefreier UIs für die klinische Dateneingabe im Gesundheitswesen
Wie es funktioniert
Patientensicherheit zuerst
Jede Designentscheidung muss anhand der Frage bewertet werden: "Könnte dies einem Patienten schaden?"
- Arzneimittelinteraktionen MÜSSEN warnen, nicht stillschweigend passieren
- Abnormale Laborwerte MÜSSEN visuell gekennzeichnet werden
- Kritische Vitalparameter MÜSSEN Eskalations-Workflows auslösen
- Keine klinische Datenänderung ohne Audit-Trail
Einseitiger Encounter-Flow
Klinische Begegnungen sollten vertikal auf einer einzigen Seite ablaufen – kein Tab-Wechsel:
Patientenkopfzeile (sticky – immer sichtbar)
├── Demographische Daten, Allergien, aktive Medikamente
│
Encounter-Ablauf (vertikaler Scroll)
├── 1. Hauptbeschwerde (strukturierte Vorlagen + Freitext)
├── 2. Anamnese der aktuellen Erkrankung
├── 3. Körperliche Untersuchung (nach Systemen)
├── 4. Vitalparameter (automatische klinische Bewertung)
├── 5. Diagnose (ICD-10/SNOMED-Suche)
├── 6. Medikamente (Arzneimitteldatenbank + Interaktionsprüfung)
├── 7. Untersuchungen (Labor-/Radiologie-Anordnungen)
├── 8. Plan & Nachsorge
└── 9. Signieren / Sperren / Drucken
Intelligentes Vorlagensystem
interface ClinicalTemplate {
id: string;
name: string; // z.B. "Brustschmerz"
chips: string[]; // anklickbare Symptom-Chips
requiredFields: string[]; // Pflichtfelder
redFlags: string[]; // löst nicht-wegklickbaren Alarm aus
icdSuggestions: string[]; // vorab zugeordnete Diagnosecodes
}
Rote Flaggen in jeder Vorlage müssen einen sichtbaren, nicht-wegklickbaren Alarm auslösen – KEINE Toast-Benachrichtigung.
Medikationssicherheitsmuster
Benutzer wählt Medikament
→ Prüfung auf Wechselwirkungen mit aktuellen Medikamenten
→ Prüfung auf Wechselwirkungen mit Encounter-Medikamenten
→ Prüfung auf Patientenallergien
→ Dosisvalidierung gegen Gewicht/Alter/Nierenfunktion
→ Bei KRITISCHER Wechselwirkung: Verschreibung VOLLSTÄNDIG BLOCKIEREN
→ Arzt muss Überbrückungsgrund dokumentieren, um Blockade zu umgehen
→ Bei SCHWERWIEGENDER Wechselwirkung: Warnung anzeigen, Bestätigung erforderlich
→ Alle Warnungen und Überbrückungsgründe im Audit-Trail protokollieren
Kritische Wechselwirkungen blockieren die Verschreibung standardmäßig. Der Arzt muss explizit mit einem dokumentierten Grund im Audit-Trail überbrücken. Das System erlaubt niemals stillschweigend eine kritische Wechselwirkung.
Muster für gesperrte Encounter
Sobald ein klinischer Encounter signiert ist:
- Keine Bearbeitung möglich – nur ein Addendum (ein separater verknüpfter Datensatz)
- Sowohl das Original als auch das Addendum erscheinen im Patienten-Zeitstrahl
- Der Audit-Trail erfasst, wer signiert hat, wann, und alle Addendum-Datensätze
UI-Muster für klinische Daten
Vitalparameter-Anzeige: Aktuelle Werte mit Normalbereich-Hervorhebung (grün/gelb/rot), Trendpfeile im Vergleich zu vorherigen Werten, automatisch berechnete klinische Scores (NEWS2, qSOFA), Eskalationshinweise direkt im Text.
Laborergebnis-Anzeige: Normalbereich-Hervorhebung, Vorwertsvergleich, kritische Werte mit nicht-wegklickbarem Alarm, Entnahme-/Analysenzeitstempel, ausstehende Anforderungen mit erwarteter Bearbeitungszeit.
Rezept-PDF: Ein-Klick-Erstellung mit Patientendaten, Allergien, Diagnose, Arzneimitteldetails (Generikum + Markenname, Dosis, Verabreichungsweg, Häufigkeit, Dauer), Arzt-Signaturblock.
Barrierefreiheit im Gesundheitswesen
UIs im Gesundheitswesen haben strengere Anforderungen als typische Web-Apps:
- 4,5:1 Mindestkontrast (WCAG AA) – Ärzte arbeiten bei unterschiedlichen Lichtverhältnissen
- Große Touch-Ziele (mindestens 44x44px) – für beanspruchte/schnelle Interaktion
- Tastaturnavigation – für Power-User, die schnell Daten eingeben
- Keine reinen Farbindikatoren – Farbe immer mit Text/Icon kombinieren (farbenblinde Ärzte)
- Screenreader-Labels auf allen Formularfeldern
- Keine automatisch verschwindenden Toasts für klinische Warnungen – Arzt muss aktiv quittieren
Anti-Patterns
- Speichern klinischer Daten im Browser-LocalStorage
- Stille Fehler bei Arzneimittelinteraktionsprüfung
- Wegklickbare Toasts für kritische klinische Warnungen
- Tab-basierte Encounter-UIs, die den klinischen Workflow fragmentieren
- Bearbeitung von signierten/gesperrten Encountern zulassen
- Anzeige klinischer Daten ohne Audit-Trail
- Verwendung des Typs
anyfür klinische Datenstrukturen
Beispiele
Beispiel 1: Patienten-Encounter-Ablauf
Arzt öffnet Encounter für Patient #4521
→ Sticky-Header zeigt: "Rajesh M, 58M, Allergien: Penicillin, Aktive Medikamente: Metformin 500mg"
→ Hauptbeschwerde: wählt Vorlage "Brustschmerz"
→ Klickt Chips: "substernal", "Ausstrahlung in den linken Arm", "drückend"
→ Rote Flagge "drückender substernaler Brustschmerz" löst nicht-wegklickbaren Alarm aus
→ Untersuchung: CVS-System — "S1 S2 normal, kein Geräusch"
→ Vitalparameter: HR 110, BD 90/60, SpO2 94%
→ NEWS2 automatisch berechnet: Score 8, Risiko HOCH, Eskalationsalarm angezeigt
→ Diagnose: sucht "ACS" → wählt ICD-10 I21.9
→ Medikamente: wählt Aspirin 300 mg
→ CDSS prüft gegen Metformin: keine Wechselwirkung
→ Signiert Encounter → gesperrt, ab diesem Zeitpunkt nur noch Addenda
Beispiel 2: Medikationssicherheits-Workflow
Arzt verschreibt Warfarin für Patient #4521
→ CDSS erkennt: Warfarin + Aspirin = KRITISCHE Wechselwirkung
→ UI: rotes nicht-wegklickbarerModal blockiert die Verschreibung
→ Arzt klickt "Mit Grund überbrücken"
→ Gibt ein: "Nutzen überwiegt Risiken — INR-Protokoll überwacht"
→ Überbrückungsgrund + Warnung im Audit-Trail gespeichert
→ Verschreibung wird mit dokumentierter Überbrückung fortgesetzt
Beispiel 3: Gesperrter Encounter + Addendum
Encounter #E-2024-0891 signiert von Dr. Shah um 14:30
→ Alle Felder gesperrt — keine Bearbeitungsschaltflächen sichtbar
→ Schaltfläche "Addendum hinzufügen" verfügbar
→ Dr. Shah klickt auf Addendum, fügt hinzu: "Laborergebnisse eingegangen — Troponin erhöht"
→ Neuer Datensatz E-2024-0891-A1 mit Original verknüpft
→ Zeitstrahl zeigt beides: Original-Encounter + Addendum mit Zeitstempeln