Dentmarking — Detail-Lastenheft (Spezial-Tool)
Spezial-Tool auf der Medidentas-Plattform (Erweiterbarkeit: docs/architektur/Erweiterbarkeit-Spezialtools.md,
A-6/R10). Zweck: je Zahnarzt-Praxis (Interessent oder Mandant, R1) auf Basis eines strukturierten
Fragebogens ein Betriebskennzahlen-Gutachten erstellen — Ist-Werte vs. Branchen-Benchmark
(Durchschnitt + optimaler Richtwert), daraus Praxispotential (Mehrumsatz/Mehrgewinn p. a.) und
Auffälligkeiten/Befunde als Einstieg in die Beratung. Dentmarking® ist der niedrigschwellige
Beratungs-Einstieg ("Ihr Gutachten für mehr Praxiserfolg!") und die Vorstufe zu Dexman
(laufendes Controlling): einmaliger Schnappschuss aus Selbstauskunft statt Dauerbetrieb aus Systemdaten.
ID-Konvention (Tool-scoped, agents.md §3): Dentmarking-Anforderungen tragen
DM-n, offene PunkteOP-DM-n. Sie referenzieren die Kern-IDs (R1/R2/R3/R5/R6/R8/R9/R10/R12, G-1..5). Dieses Dokument löst die in OP-DENTMARK-1 / OP-TOOLSPEC-1 geplante Tool-Spec ein.Quellenlage: Reverse-Engineering des bestehenden Excel-Werkzeugs
Dentmarking_v1.xlsm(Version2020.01.03 v1, bis mind. 2025 im Einsatz) + Online-/PDF-Fragebogen + Vorlagen. Die vollständig extrahierte Rechen- und Ablauflogik steht inDentmarking-Excel-Logik.md— sie ist die fachliche Referenz für die Neuimplementierung. Personenbezogene Echtdaten aus den Quelldateien wurden nicht übernommen (G-5, RISK-23).
1. Herkunft & Quellenlage (analysierte Artefakte)
| Artefakt | Inhalt / Rolle im Ist-Prozess |
|---|---|
Dentmarking_v1.xlsm | Das eigentliche Auswertungs-Werkzeug (Excel + VBA, Kiosk-Modus): Fragebogen-Import, Datenbasis, Kennzahlen-Vergleich, Potentialrechnung, Diagramme, PDF-Gutachten, Benchmark-Pflege. Enthielt einen echten Fragebogen-Datensatz (PII — nicht übernommen). |
Dentmarking_Fragebogen.pdf | Druck-/Kurzfassung des Fragebogens (4 Seiten, ~50 Felder) inkl. Datenschutz-Einwilligungstext. |
Link_Fragebogen_Dentmarking_medidentas.docx | Verweis auf den Online-Fragebogen: medidentas.de/fragebogen-dentmarking/ (Langfassung, 111 Felder inkl. DSGVO-Einverständnis). |
Betriebskennzahlen_Mehrbehandlerpraxis_Rohling.xlsx | Vorläufer (2015/2016): Eingabe-/Auswertungsblatt mit Richtwerten je Zahnarzt/Oralchirurg und Interpretationstexten — zeigt die intendierte Gutachten-Erzählweise. |
Auffa_lligkeiten_Dentmarking_Analyse.docx | Leere Word-Vorlage "Auffälligkeiten Dentmarking Analyse" (nummerierte Liste) — das manuelle Befund-Dokument des Beraters je Analyse. |
2. Zweck & Leitfragen (Dentmarking-True-North)
Dentmarking beantwortet je Praxis jederzeit/schnell/korrekt:
- Wo steht die Praxis im Branchenvergleich? — 18 Betriebskennzahlen vs. Ø und optimalem Richtwert, getrennt nach Praxistyp (Einbehandler/Mehrbehandler).
- Wo liegt ungenutztes Potential? — je Kennzahl Mehrumsatz und Mehrgewinn-Potential p. a. (Umsatzrendite-Annahme, Default 25 %).
- Was sind die Auffälligkeiten und nächsten Schritte? — strukturierte Befunde als Beratungseinstieg (→ Wiedervorlagen R5, Beratungsdoku R6).
Zusätzlich ist Dentmarking Lead-Instrument: Der öffentliche Fragebogen erzeugt Erstkontakte (Mandanten-Lebenszyklus "Erstkontakt/Lead", Lastenheft §5) — das Gutachten ist das Erstgespräch-Artefakt.
3. Nutzer & Rollen
| Rolle | Sieht / tut |
|---|---|
| Interessent / Praxisinhaber | füllt den Online-Fragebogen aus (Selbstauskunft, DSGVO-Einwilligung); erhält das Gutachten im Beratungsgespräch. |
| Berater (Medidentas-Anwender) | wählt den Fragebogen, prüft/plausibilisiert die Angaben, erzeugt das Gutachten, erfasst Befunde, leitet Beratungsanlässe ab. |
| Admin | pflegt Benchmark-Stammdaten (Ø/Richtwerte je Praxistyp) und den Fragenkatalog (versioniert). |
Rollen/Sichtbarkeit erben von R7; Benchmark-Pflege ist admin-gegated (im Alt-Tool: verstecktes Settings-Formular mit Klartext-Kennwort — entfällt).
4. Ist-Prozess (Excel v1) und seine Grenzen
Grenzen des Ist-Stands (Detail + Belege: Dentmarking-Excel-Logik.md §10):
manuelle Medienbrüche (Web → xlsx → Excel → PDF/Word), Windows-/Excel-only (Mac explizit gesperrt),
keine Mandanten-/Prozess-Anbindung, kein Audit-Trail, PII in Dateikopien auf Fileshares, Blattschutz mit
Klartext-Kennwort, mehrere Rechen-/Mapping-Fehler (u. a. Personalkostenquote aus Kopfzahlen statt
Kosten) und Benchmark-Werte ohne Quellen-/Standsangabe (2015/2020).
5. Funktionsbausteine (DM-n)
DM-1 — Fragebogen-Erfassung
Öffentlicher Online-Fragebogen (Wiederverwendung der Self-Service-Mechanik aus R2: öffentliche Route, Token/Turnstile, Einwilligung als SES-artige, auditierte Erklärung — D-9):
- Fragenkatalog versioniert (v1 = 111 Felder, 6 Themenblöcke: Kontakt/Praxis · Personal · Finanzen · Patienten · Organisation/Prozesse/Digitalisierung/Marketing · Ziele; vollständiger Katalog: Excel-Logik-Doku §3). Kurzfassung (PDF-Variante) als Teilmenge desselben Katalogs.
- DSGVO-Einwilligung ist Pflichtfeld (bereits im Ist-Fragebogen vorhanden); Speicherung EU (D1).
- Antworten werden einer Praxis (Objekt) unter einem Mandanten/Lead (R1) zugeordnet (Neuanlage "Lead" + Praxis bei Erstkontakt) — kein isolierter Datentopf mehr (Datenmodell §7, D-27).
- Import-Altpfad (xlsx-Upload) nur als Übergangs-Funktion für Bestandsdaten (OP-DM-4), idempotent (Duplikat-Erkennung — Alt-Tool duplizierte beim Mehrfach-Import).
- Wiederaufnehmbar (DM-9, D-33): Der Fragebogen kann jederzeit zwischengespeichert und über denselben Link fortgesetzt werden (Entwurf am Einladungs-Token, ohne Einreichen). Felder tragen eine Wichtigkeits-Klasse und einen Ausfüll-Score (DM-9); Zahlen-/Öffnungszeiten-Angaben lassen sich bewusst als "weiß ich nicht" / "wird nachgeliefert" markieren (statt sie leer zu lassen).
- Kanal-Entscheidung (D-27): eigenes öffentliches R2-Formular + xlsx-Übergangsimport; ein Weiterbetrieb des WordPress-Formulars mit Webhook-Übernahme wurde verworfen (zweites System, Mapping-Pflege).
DM-2 — Kennzahlen-Engine
Berechnet aus den Antworten 18 Betriebskennzahlen in 5 Gruppen (Umsatz- · Produktivitäts- · Patienten- · Kosten- · PZR-Parameter). Abgeleitet, nie gespeichert (G-2); Null-/Fehlwerte ergeben "keine Aussage" statt 0. Formeln exakt wie extrahiert (Excel-Logik-Doku §5), jedoch mit den fachlich korrigierten Varianten der Befunde B-1..B-4 (z. B. Personalkostenquote = Personalkosten/Honorarumsatz statt Mitarbeiterzahl/Honorarumsatz) — Korrekturen sind mit dem Fachbereich zu bestätigen (OP-DM-1).
DM-3 — Benchmark-Verwaltung
Benchmark-Stammdaten je Kennzahl × Praxistyp (Einbehandler/Mehrbehandler): Ø-Wert und optimaler Richtwert (Startwerte = extrahierte Tabelle, Excel-Logik-Doku §6). Admin-editierbar, versioniert mit Stand/Quelle; ein Gutachten referenziert die verwendete Benchmark-Version (Reproduzierbarkeit, G-4). Aktualisierung/Quellen der Werte: OP-DM-2.
DM-4 — Potentialrechnung
Je "mehr-ist-besser"-Kennzahl: Potential = max(0, Richtwert − Ist) × Bezugsgröße
(Bezugsgröße = Patienten/Stühle/Termine/Behandler/…); Monats-Kennzahlen ×12;
Mehrgewinn p. a. = Potential × Umsatzrendite-Annahme (Parameter, Default 25 %).
Exakte Zeilen/Bezugsgrößen: Excel-Logik-Doku §7.
DM-5 — Auswertung & Visualisierung
Vergleichs-Charts je Kennzahl: drei lineare Projektionsgeraden (Ø-Benchmark · optimaler Richtwert · eigene Praxis) über einer Mengen-Skala ("bei N Patienten/Stühlen/… ergibt sich …") — wie im Alt-Tool (10 Diagramm-Gruppen, Excel-Logik-Doku §8) — plus einfache Soll-Ist-Balken je Kennzahl.
DM-6 — Gutachten-Erzeugung (Report)
Erzeugt das Dentmarking-Gutachten mit wählbaren Abschnitten (wie Alt-Druckdialog): Deckblatt · Datenbasis · Betriebskennzahlen im Vergleich · Auswertung (Charts) · Praxispotential · Weitere Fragen und Angaben · Auffälligkeiten (DM-7). Ausgabe als PDF über die Dokumenten-Automatisierung (R12, OP-DOCGEN-1-Pfad), Ablage beim Mandanten (R3; produktiv R2, MED-D-61), Erzeugung auditiert (R8/G-4).
DM-7 — Auffälligkeiten / Befunde
Ersetzt die lose Word-Vorlage: strukturierte Befund-Liste je Gutachten (Kennzahl-Bezug, Freitext, Priorität, optional Textbausteine analog R6). Befunde können direkt Wiedervorlagen (R5) und Beratungsanlässe (R6) erzeugen — der Kopplungs-Mehrwert der Plattform (wie Dexman-Positionierung).
DM-8 — Übergabe an Dexman (Abgrenzung)
Dentmarking = einmaliges Gutachten aus Selbstauskunft (Fragebogen), Lead-/Einstiegs-Instrument. Dexman = laufendes Controlling aus Systemdaten (PVS/BWA/Bank, DEX-1). Übergabe: Fragebogen-Antworten
- Kennzahlen-Schnappschuss dienen Dexman als Baseline/Erstbefüllung je Mandant; gemeinsame Benchmark-Stammdaten (DM-3 ↔ DEX-7). Damit ist die Abgrenzungsfrage aus OP-DENTMARK-1 beantwortet; Rest-Detail (technischer Übergabezeitpunkt/-format) bleibt in OP-DM-3.
DM-9 — Feld-Datenmodell, Wichtigkeits-Klassen, Ausfüll-Score & Wiederaufnahme (D-33)
Ergänzt DM-1 um ein fachlich schärferes Feld-Modell und einen fortsetzbaren Ausfüllprozess. Der Alt-Fragebogen kannte nur "Zahl/Text/Ja-Nein" und rechnete mit fehlenden Werten stumm weiter (§9); DM-9 macht die Feldsemantik explizit und den Fortschritt sichtbar.
a) Feld-Datenmodell (Katalog-Metadaten, domain/dentmarking-katalog.ts). Jedes der 111 Katalogfelder
(Katalog v1 unverändert — es kommen keine neuen Antwortfelder hinzu, daher keine neue Katalog-Version)
trägt zusätzlich:
- Wichtigkeits-Klasse (siehe b),
- Wertebereich (
min/max/einheit) als weiche Plausibilisierung (§9) — z. B. Anzahl Behandler 1–500, Behandlungsstühle 1–200, Geldfelder€/Jahr, Flächenqm. Grenzen warnen, blocken nicht (bewusst — Ausreißer sind erklärbar, das Alt-Tool blockte gar nicht). - Struktur-Typ für Spezial-Eingaben statt Freitext — erster Typ
oeffnungszeiten(Wochentag × von/bis, im Formular als Zeit-Raster, serialisiert als JSON im Antwortwert). Weitere Struktur-Typen (z. B. Rechtsform-Auswahl) sind additiv nachrüstbar. - Markierbarkeit — ob "weiß ich nicht"/"wird nachgeliefert" sinnvoll ist (siehe c).
b) Drei Wichtigkeits-Klassen (aus der Kennzahlen-Analyse abgeleitet, Excel-Logik §5).
| Klasse | Bedeutung | Beispiele |
|---|---|---|
| essenziell | treibt die Leit-Kennzahlen / Benchmark-Auswahl / Lead-Erreichbarkeit / Einwilligung — ohne sie kein aussagekräftiges Gutachten | Honorarumsatz gesamt, behandelte Patienten, stattgefundene Termine, Anzahl Behandler/Inhaber/Stühle, Behandlungsstunden, Gesamtkosten, Personalkosten Praxis, Vollzeit-MA, Art/Name der Praxis, Nachname, E-Mail, DSGVO-Einwilligung |
| wichtig | speist Sekundär-Kennzahlen oder wesentlichen Kontext | PZR-Umsatz/-Kräfte/-Termine, Material-/Instandhaltungskosten, Neupatienten, Termin-Ausfälle, HKPs, Öffnungszeiten, Miete, Telefon |
| nice-to-have | qualitativ / Marketing / Digitalisierung / Ziele — kein Kennzahl-Bezug | Social-Media, Zielgruppe, Ziele/Wünsche, Beratungszimmer, Callcenter |
c) Feld-Markierung "weiß ich nicht" / "wird nachgeliefert". Markierbare Felder (Zahlen + Öffnungszeiten, nie die Einwilligung) können statt eines Werts eine dieser Markierungen tragen. Sie zeigen dem Berater den Unterschied zwischen übersehen und bewusst offen und liefern keinen Wert ins Gutachten (markiert ⇒ kein Jahreswert/keine qualitative Antwort). Sie überleben das Einreichen (an der Erhebung gespeichert) — "wird nachgeliefert" ist damit ein Nachfass-Anlass.
d) Ausfüll-Score (domain/dentmarking-score.ts, G-2 abgeleitet). Gewichteter Anteil der Felder mit
echtem Wert, Gewichte essenziell 3 · wichtig 2 · nice-to-have 1 — essenzielle Angaben heben den
Score am stärksten. Markierte Felder zählen nicht als Wert (getrennt als "offen markiert" ausgewiesen).
Das Formular zeigt den Score live (Client rechnet mit den vom Server gelieferten Gewichten = Single Source)
plus eine Aufschlüsselung je Klasse.
e) Wiederaufnahme (fortsetzbarer Fragebogen). Antworten + Markierungen werden als Entwurf am
Einladungs-Token zwischengespeichert (PUT /oeffentlich/fragebogen/:token/entwurf, kein Turnstile/keine
Einwilligung nötig — kein neuer Datentopf) und beim erneuten Öffnen des Links rehydriert. Das Einreichen
verwirft den Entwurf (die Erhebung ist dann die Quelle). Auditiert PII-arm (fragebogen.zwischengespeichert,
nur Zähler). DSGVO: Der Entwurf enthält Kontakt-/Betriebsdaten und liegt in D1/EU; er entsteht auf dem
eigenen Einladungslink der Praxis — die Einwilligung bleibt Pflicht beim Einreichen (RISK-18-Textprüfung
gilt fort).
f) TTL & Ablauf-Hook (Datenminimierung, G-5). Der zwischengespeicherte Fragebogen ist per Link ohne
Anmeldung erreichbar → er darf nicht unbegrenzt liegen bleiben. Die Gültigkeit (Link und Entwurf) hat
eine Höchstdauer von 30 Tagen, konfigurierbar in den Tenant-Einstellungen (einstellung-Tabelle,
Schlüssel fragebogen_entwurf_ttl_tage, Default 30, admin-editierbar, auf 1..30 geklemmt). Ein Cron-Hook
(entwuerfeAblaufBenachrichtigen, stündlich, idempotent über entwurf_ablauf_benachrichtigt_am wie
wiedervorlage.erinnert_am) markiert abgelaufene Einladungen mit Entwurf als abgelaufen und stößt eine
Benachrichtigung an — der eigentliche Versand des Zwischenstands per Mail ist noch offen (tbd); hier
existiert nur der Kanal-Seam (BenachrichtigungProvider) + Audit (fragebogen.entwurf_abgelaufen, PII-arm).
Der Entwurf bleibt erhalten, damit ein späterer Mail-Job den Inhalt versenden kann.
g) Statistik & Completion-Flow (GET /api/fragebogen/statistik). Über alle Praxen: der Trichter
erstellt → begonnen (Zwischenstand gespeichert) → eingereicht mit Anteilen, die Status-Zähler
(offen / davon begonnen / eingereicht / abgelaufen) und eine Liste der aktiven Entwürfe mit Ausfüll-Score,
beantworteten/markierten Feldern und Rest-Laufzeit (bald ablaufende zuerst → nachfassen). Rein abgeleitet
(G-2). Im Cockpit als Trichter-Balken + "Offene Zwischenstände"-Liste dargestellt; die Tenant-Einstellung
bearbeiten Admins im Cockpit-Bereich "Fragebogen-Einstellungen".
Tenant-Begriff: Medidentas läuft aktuell single-tenant (eine Organisation) — die Einstellungen sind org-weit gültig; der Key/Value-Store ist so geschnitten, dass eine spätere Mandanten-/Tenant-Trennung ohne Schemabruch möglich bleibt.
6. Kennzahlen-Katalog (Kurzreferenz)
| # | Kennzahl | Formel (semantisch) |
|---|---|---|
| 1.1 | Ø Honorar-Umsatz pro Patient | Honorarumsatz ÷ behandelte Patienten |
| 1.2 | Ø Honorar-Umsatz pro Beh.-Stuhl mtl. | (Honorarumsatz ÷ Stühle) ÷ 12 |
| 1.3 | Ø Honorar-Umsatz pro Termin | Honorarumsatz ÷ Termine |
| 1.4 | Ø Honorar-Umsatz pro Zahnarzt mtl. | (Honorarumsatz ÷ Behandler) ÷ 12 |
| 1.5 | Ø Honorar-Umsatz pro Vollzeit-MA mtl. | (Honorarumsatz ÷ Vollzeit-MA) ÷ 12 |
| 1.6 | Anteil Labor an Gesamtkosten | Laborkosten ÷ Gesamtkosten (Befund B-2 beachten) |
| 2.1 | Ø Honorar-Umsatz pro Beh.-Stunde | Honorarumsatz ÷ Behandlungsstunden |
| 2.2 | Personalkosten zu Honorar-Umsatz | Personalkosten ÷ Honorarumsatz (korrigiert, Befund B-1) |
| 2.3 | HKP-Umsetzungsquote | umgesetzte ÷ geschriebene HKPs |
| 3.1 | Termin-Ausfallquote (nicht eingehalten) | nicht eingehaltene ÷ stattgefundene Termine |
| 3.2 | Kurzfristige Absagequote | kurzfristig verschobene ÷ stattgefundene Termine |
| 3.3 | Neupatienten pro Monat pro Behandler | (Neupatienten ÷ 12) ÷ (Behandler + Inhaber) |
| 3.4 | Karteileichen-Quote | 1 − (behandelte ÷ EDV-erfasste Patienten) |
| 4.1 | Materialkosten-Quote | Materialkosten ÷ Gesamtkosten (Label-Befund B-3) |
| 4.2 | Instandhaltung pro Behandlungsraum p. a. | Instandhaltungskosten ÷ Stühle |
| 5.1 | PZR-Kräfte pro Behandler | PZR-Kraft-Äquivalent ÷ (Behandler + Inhaber) |
| 5.2 | PZR-Umsatz pro PZR-Kraft mtl. | (PZR-Umsatz ÷ PZR-Kraft-Äquivalent) ÷ 12 |
| 5.3 | Ø PZR-Termine pro PZR-Kraft pro Tag | (PZR-Termine ÷ PZR-Kraft-Äquivalent) ÷ 220 |
(PZR-Kraft-Äquivalent = Vollzeit-PZR-Kräfte + 0,5 × Teilzeit-PZR-Kräfte; 220 Arbeitstage p. a. — Konventionen aus dem Alt-Tool, Excel-Logik-Doku §5. KZ zählt 18 Positionen: 1.1–1.6, 2.1–2.3, 3.1–3.4, 4.1–4.2, 5.1–5.3 — die Tabelle listet alle 18 in der Gruppen-Nummerierung des Alt-Tools.)
7. Datenmodell (D-27 — Praxis/Objekt + Geschäftsjahr-Fakten, Dexman-fähig)
Grundsatz: Das Datenmodell ist so geschnitten, dass Dexman später ohne Umbau aufsetzt (gleiche Praxis-Entität, gleiche Faktentabelle mit anderen Quellen/feineren Perioden).
praxis(neue Kern-Entität, R1-Erweiterung "Objekt") — Betriebsstätte/Praxis unter dem Mandanten (1:n): Name, Typ (Einbehandler/Mehrbehandler/MVZ-Standort), Rechtsform, Standort, Geschäftsjahr-Beginn (Geschäftsjahr ≠ Kalenderjahr zulässig). Träger für Dentmarking und später Dexman (Behandler/Standort-Auflösung dockt hier an).praxis_jahreswert(Geschäftsjahr-Faktentabelle) — quantitative Betriebs-/Strukturdaten je (Praxis × Periode × Feldschlüssel): Wert, Quelle (fragebogen|bwa| späterpvs, mit Vorrangregel), erhoben am, Erhebungs-Referenz. Periodenmodell generisch (geschaeftsjahr,periodenTyp,periode): Dentmarking nutztperiodenTyp='jahr'; Dexman ergänzt Monat/Quartal ohne Schemabruch. Feldschlüssel kommen aus dem versionierten Katalog (typisiert über ein Feld-Schema — schmale Faktentabelle statt fester Spalten, überlebt Katalog-Änderungen ohne Migration).fragenkatalog_version— Feldkatalog (Schlüssel, Fragetext, Typ, Themenblock, quantitativ/qualitativ), versioniert.erhebung— Fragebogen-Eingang je Praxis: qualitative Antworten (JSON je Feldschlüssel) + Feld-Markierungen (JSON,weiss_nicht/nachgeliefert, DM-9) + Einwilligung + Eingangskanal + Geschäftsjahr-Bezug; die quantitativen Antworten fließen als Jahreswerte (Quellefragebogen) in die Faktentabelle (markierte Felder liefern keinen Wert).fragebogen_einladung.entwurf— wiederaufnehmbarer Zwischenstand (JSON{ antworten, markierungen }) +entwurf_gespeichert_amam Einladungs-Token (DM-9); wird beim Einreichen verworfen.benchmark_version— Ø/Richtwert je Kennzahl × Praxistyp, mit Stand/Quelle und optionalem Geschäftsjahr-Bezug (gilt_fuer_geschaeftsjahr, vorerst leer — Klärung OP-DM-2/OP-DM-7).gutachten— Referenzen (Erhebung, Geschäftsjahr, Benchmark-Version, Parameter wie Umsatzrendite), erzeugtes Dokument (R3-Referenz). Kennzahlen/Potentiale werden nicht gespeichert, sondern abgeleitet (G-2).befund— strukturierte Auffälligkeit je Gutachten (Kennzahl-Bezug, Text, Priorität).
8. Integration in den Medidentas-Kern
| Kern | Nutzung durch Dentmarking |
|---|---|
| R1 Mandant | Fragebogen erzeugt/verknüpft Lead + Praxis (Objekt) darunter; Gutachten hängt über die Praxis am Mandanten (Lifecycle "Erstkontakt→Onboarding"). Architektur: Modul im bestehenden Worker/D1, Tool-Aktivierung per Flag je Mandant (D-27; echte R10-Isolation erst bei Bedarf). |
| R2 Onboarding | Wiederverwendung öffentliches Formular + Einwilligungs-Mechanik (D-9, Turnstile). |
| R3 Dokumente | Gutachten-PDF wird in der Ablage beim Mandanten abgelegt (R3; produktiv R2, MED-D-61 — Referenz + Status). |
| R5 Wiedervorlagen | Befunde erzeugen Folge-Aufgaben ("PZR-Konzept besprechen", …). |
| R6 Beratungsdoku | Gutachten/Befunde als dokumentierter Beratungsanlass. |
| R8 Audit | Import/Erzeugung/Benchmark-Änderung append-only auditiert (G-4). |
| R10 Tool-Host | Dentmarking läuft als registriertes Spezial-Tool (Manifest, Isolation, OP-EXT-1). |
| R12 Doku-Automatisierung | PDF-Erzeugung des Gutachtens (OP-DOCGEN-1-Pfad). |
9. Nicht-funktionale Anforderungen
- Plattform statt Datei: kein Excel/VBA, kein OS-Lock-in (Alt-Tool: "nicht mit Excel for Mac!").
- EU-Datenresidenz (D1, A-4), PII-Minimierung (G-5); Antworten enthalten Kontakt- + Betriebsdaten.
- Reproduzierbarkeit: Gutachten aus (Fragebogen, Benchmark-Version, Parametern) jederzeit identisch neu ableitbar.
- Selbsterklärbarkeit (G-3): Kennzahlen mit sprechenden Namen + Erklärtext (statt "1.4.").
- Plausibilisierung: Eingaben validieren (Größenordnungen, Pflichtfelder) — Alt-Tool rechnete mit 0-Werten stumm weiter.
10. Compliance & Datenschutz (kritisch — proaktiv geflaggt)
- DSGVO: Fragebogen enthält personenbezogene Daten (Kontakt) + wirtschaftliche Praxisdaten; Einwilligungstext existiert im Ist-Fragebogen und ist juristisch zu prüfen (analog RISK-18); Zweckbindung (Gutachten/Beratung vs. Marketing-Kontakt getrennt einwilligen). Betroffenenrechte (Auskunft/Löschung) sind im Datei-Ist-Prozess praktisch nicht umsetzbar → Neuimplementierung. RISK-23.
- Alt-Datenbestand: Excel-Kopien mit Echtdaten liegen auf Fileshares (inkl. Kundennamen in Pfaden); Bereinigungs-/Migrationskonzept nötig (OP-DM-4). Keine PII aus den Quelldateien im Repo (G-5).
- Werbliche Aussagen: "Mehrgewinn-Potential" beruht auf Annahmen (Umsatzrendite 25 %, Benchmarks unklarer Herkunft) — im Gutachten als Annahme kennzeichnen (Haftung/Lauterkeit, vgl. RISK-14-Logik: Assistenz/Prognose ersetzt keine Beratung).
- Markenzeichen: "Dentmarking®" wird im Ist-Material mit ® geführt — Registerlage/Inhaberschaft klären (OP-DM-5).
11. Abgrenzung (Out of Scope)
- Kein laufendes Controlling (Dexman, DEX-1..7) — Dentmarking bleibt Schnappschuss/Gutachten.
- Keine PVS-/BWA-/Bank-Anbindung — Datenquelle ist die Selbstauskunft (BWA-Auswertung als manuelle Beraterleistung, wie im Ist-Fragebogen angeboten).
- Kein Behandler-Einzelvergleich (nur Praxis-Aggregat) — vermeidet BetrVG-Themen des Dexman (RISK-Dexman §9).
12. Umsetzungsplan (Slices, D-27)
| Slice | Inhalt | Bemerkung |
|---|---|---|
| T1 | Praxis/Objekt-Entität im Kern (Migration, API, UI im Mandant-Detail) | ✅ gebaut (0.27.0): Entität R1-F20..F27, Migration v14, GET/POST /api/mandanten/:id/praxen + PATCH /api/praxen/:id, Sektion im Mandant-Detail, auditiert (G-4). |
| T2 | Erhebung + Jahreswerte (Katalog v1 aus der Excel-Extraktion, Bestandsimport, idempotent) | ✅ gebaut (0.28.0): Fragenkatalog v1 als Code (111 Felder, Alt-Spalten-Mapping A–DG), erhebung + praxis_jahreswert (Migration v15), idempotenter Import (importSchluessel, B-5), Upsert je fachlichem Schlüssel, GET/POST /api/praxen/:id/erhebungen + …/jahreswerte, Import-UI je Praxis. |
| T3 | Kennzahlen-Engine + Benchmarks + Potential (korrigierte Formeln nach OP-DM-1, Benchmark-Version) | ✅ gebaut (0.29.0): 18 Kennzahlen rein abgeleitet (G-2), Formel-Varianten alt/korrigiert per Parameter (bis OP-DM-1 beantwortet), Benchmark v1-2020-excel (Code-Konstante; admin-editierbare Versionen = DM-3-Rest), Potential/Mehrgewinn (25 %-Annahme parametrisierbar), GET /api/praxen/:id/kennzahlen, Kennzahlen-Tabelle in der UI. Intern voll auswertbar. |
| T4 | Gutachten + Befunde (R3, Befunde → Wiedervorlagen R5) | ✅ gebaut (0.30.0): Gutachten als eingefrorener Beleg (Text-Fassung; referenziert Erhebung + Benchmark-Version + Parameter) + R3-Dokument-Referenz; strukturierte Befunde (Kennzahl-Bezug, Priorität) ersetzen die Word-Vorlage und erzeugen idempotent Wiedervorlagen (Quelle befund). ✅ PDF-Fassung gebaut (0.32.0, OP-DOCGEN-1/D-28): Gutachten-PDF aus denselben Blöcken, Ablage beim Mandanten (R3; produktiv R2, MED-D-61) + Download. Rest: Diagramm-Projektionen. |
| T6 | Feld-Datenmodell, Klassen, Score & Wiederaufnahme (DM-9) | ✅ gebaut (0.35.0, D-33): Katalog-Metadaten (Wichtigkeits-Klasse essenziell/wichtig/nice-to-have · Wertebereich min/max/Einheit · Struktur-Typ oeffnungszeiten · Markierbarkeit), Ausfüll-Score (gewichtet, domain/dentmarking-score.ts), Feld-Markierungen "weiß ich nicht"/"wird nachgeliefert" (an Erhebung), wiederaufnehmbarer Entwurf am Token (PUT /oeffentlich/fragebogen/:token/entwurf, Migration v19), angereicherter fragebogenKontext (Metadaten + Entwurf + Score), Client mit Live-Score/Marker-Steuerung/Öffnungszeiten-Raster/Bereichs-Hinweisen. |
| T7 | TTL, Ablauf-Hook & Statistik/Completion-Flow (DM-9-Folge) | ✅ gebaut (0.36.0, D-34): Tenant-Einstellungen (einstellung-Tabelle, Migration v20; fragebogen_entwurf_ttl_tage Default/Cap 30 Tage, admin-editierbar, GET/PUT /api/einstellungen), Einladungs-TTL aus der Einstellung (Route deckelt auf 30, G-5), Cron-Ablauf-Hook entwuerfeAblaufBenachrichtigen (markiert abgelaufene Entwürfe, Benachrichtigungs-Seam — Mail-Versand des Zwischenstands = tbd, OP-DM-8, idempotent via entwurf_ablauf_benachrichtigt_am), Statistik GET /api/fragebogen/statistik (Trichter erstellt→begonnen→eingereicht + aktive Entwürfe mit Score/Rest-Laufzeit), Cockpit-Sektionen "Fragebögen — Statistik & Completion-Flow" + "Fragebogen-Einstellungen". |
| T5 | Öffentlicher Fragebogen (R2-Mechanik, DSGVO-Einwilligung, Turnstile) | ✅ gebaut (0.31.0): tokenisierter Einladungslink je Praxis × GJ (fragebogen_einladung, Migration v17, 30 Tage gültig, Einmal-Einreichung), öffentliche Seite /fragebogen/<token> + API GET/POST /oeffentlich/fragebogen/:token (Turnstile optional, gleiche Mechanik wie Onboarding Slice 9), Katalog v1 in 6 Themenblöcken, DSGVO-Einwilligung Pflicht; Einreichung erzeugt idempotent die Erhebung (Kanal formular) über den T2-Pfad, auditiert PII-arm (G-4/G-5). Link-Erzeugung/-Kopie in der Praxen-UI. Offen/manuell: Cloudflare-Access-Bypass zusätzlich für /fragebogen* (RISK-19), Turnstile produktiv. |
13. Verbesserungen gegenüber dem Alt-Excel (umgesetzt, Stand T1–T5 / 0.31.0)
Was die Neuimplementierung anders und besser macht als Dentmarking_v1.xlsm — je Zeile mit Beleg:
| Alt-Excel (Ist bis 2025) | Neuimplementierung (umgesetzt) |
|---|---|
| Datei-Silo: xlsx-Kopien je Berater auf Fileshares, keine Mandanten-Anbindung | Teil der Plattform: Praxis/Objekt hängt am Mandanten (R1, T1); Auswertung beim Mandanten statt in einer Datei. |
| Ein Datensatz "aktiv" (verstecktes Auswahl-Blatt), Jahresbezug nur implizit ("im vergangenen Jahr") | Geschäftsjahr-explizit: Jahreswerte je Praxis × GJ (praxis_jahreswert, T2), mehrere Jahre nebeneinander; GJ ≠ Kalenderjahr am Praxis-Stammsatz (OP-DM-7 vorbereitet). |
| Import dupliziert bei Mehrfach-Import (Befund B-5, Beispieldatei: derselbe Datensatz ~55×) | Idempotenter Import über importSchluessel + Upsert auf den fachlichen Schlüssel (T2). |
| Rechenfehler: Personalkostenquote aus Kopfzahlen (B-1), Laborkosten-Doppelmapping (B-2), Materialkosten-Nenner ≠ Label (B-3) | Korrigierte Formeln als Default, Alt-Formeln als umschaltbare Kompatibilitäts-Variante (T3); Klärung läuft (OP-DM-1, Rückfrage 2026-07-04). |
| Fehlende Werte ⇒ stumme 0 in Kennzahlen/Diagrammen | "Keine Aussage" (null) bei fehlender Basis/Nenner 0 — Guards in der Engine (T3). |
| Fragebogen war Alles-oder-nichts (ein xlsx-Export, keine Zwischenspeicherung) | Wiederaufnehmbar (Zwischenspeichern + Fortsetzen über denselben Link, Entwurf am Token, DM-9/T6). |
| Alle Felder gleichwertig, kein Fortschritts-/Wichtigkeits-Signal | Drei Wichtigkeits-Klassen (essenziell/wichtig/nice-to-have) + gewichteter Ausfüll-Score live im Formular (DM-9/T6). |
| Fehlende Angabe = stumme Lücke (übersehen vs. bewusst offen ununterscheidbar) | Feld-Markierung "weiß ich nicht"/"wird nachgeliefert" — bleibt am Datensatz, treibt Nachfassen (DM-9/T6). |
| Nur "Zahl/Text", z. B. Öffnungszeiten als Freitext; keine Plausibilisierung | Feld-Datenmodell mit Wertebereich (weiche Grenzen, z. B. Behandler 1–500) + Struktur-Typ (Öffnungszeiten als Wochentag-Raster), DM-9/T6. |
| Keine Übersicht, wie viele Fragebögen laufen / wo sie hängen | Statistik & Completion-Flow im Cockpit (Trichter erstellt→begonnen→eingereicht, offene Zwischenstände mit Score & Rest-Laufzeit), DM-9/T7. |
| PII-Datei-Kopien ohne Ablauf/Löschregel auf Fileshares | TTL max 30 Tage (konfigurierbar, Datenminimierung G-5) + Ablauf-Hook für per Link ohne Auth erreichbare Entwürfe, DM-9/T7 (Mail-Versand = OP-DM-8). |
| Benchmarks in versteckter Tabelle, je Datei-Kopie änderbar, ohne Stand/Quelle | Versionierte Benchmark-Konstante v1-2020-excel, jede Auswertung nennt ihre Version (T3); Quelle/Aktualisierung als OP-DM-2 adressiert. |
| Konventionen unsichtbar in Formeln (0,5-Teilzeit, 220 Tage, 25 % Rendite) | Benannte, dokumentierte Parameter (KONVENTION), Rendite je Auswertung übersteuerbar (T3). |
| Schutz: Klartext-Kennwort im VBA (B-7), Excel-only, "nicht mit Mac" | R7-Rollen/Cloudflare Access statt Blattschutz; Browser statt Excel (T1–T3). |
| Keine Nachvollziehbarkeit von Änderungen | Append-only Audit (praxis.angelegt/geaendert, erhebung.erfasst — PII-arm) (G-4, T1/T2). |
| PII in Dateikopien und Pfaden (B-8) | Speicherung in D1/EU, Audit ohne Antwortinhalte; Alt-Bestand-Bereinigung als OP-DM-4/RISK-23 offen. |
| Fragebogen-Wissen implizit in 111 Spalten verteilt | Fragenkatalog v1 als Code (sprechende Schlüssel, Alt-Spalten-Mapping, Themenblöcke) — versionierbar (T2). |
| PDF-Druck als flüchtige Datei, Parameter (Benchmarks/Formeln) nicht nachvollziehbar | Gutachten als eingefrorener Beleg mit referenzierter Benchmark-Version, Formel-Variante und Rendite + R3-Dokument-Referenz beim Mandanten (T4); seit 0.32.0 zusätzlich als PDF in der Ablage beim Mandanten abgelegt + abrufbar (R3; produktiv R2, MED-D-61; OP-DOCGEN-1/D-28). |
| Auffälligkeiten als lose Word-Vorlage ohne Prozess-Anbindung | Strukturierte Befunde (Kennzahl-Bezug, Priorität) mit idempotenten Folge-Wiedervorlagen (R5) (T4). |
| Medienbruch-Kette WordPress-Formular → xlsx-Export → Excel-Import (B-5: Duplikate) | Öffentlicher Fragebogen auf der Plattform (tokenisierter Link je Praxis × GJ, Einmal-Einreichung, DSGVO-Einwilligung Pflicht, Turnstile-Option) — Antworten landen direkt als Erhebung + Jahreswerte, idempotent (T5). |
Noch nicht umgesetzt (bewusst, Slice-Plan §12): Diagramm-Projektionen (AEB-Pendant),
admin-editierbare Benchmark-Versionen (DM-3-Rest); manuell: Access-Bypass für /fragebogen* +
Turnstile produktiv (RISK-19).
13.1 Vorleistungen für Dexman (bereits nutzbar)
Dexman setzt ohne Umbau auf dem Gebauten auf (D-27 — "ein Datenmodell für beide Tools"):
| Gebaut (T1–T3) | Nutzen für Dexman |
|---|---|
| Praxis/Objekt-Entität (1:n unter Mandant, Typ, GJ-Beginn) | Träger für Standort-/Behandler-Auflösung (DEX-2/DEX-4); MVZ-Standorte bereits modelliert (mvz_standort). |
Faktentabelle praxis_jahreswert mit Quellen-Kennung (fragebogen · bwa · pvs) | DEX-1 schreibt BWA-/PVS-Werte in dieselbe Tabelle; Vorrangregel je Feld statt Doppelpflege (G-2). |
Generisches Periodenmodell (jahr/quartal/monat) | Dexman ergänzt Monats-/Quartalswerte ohne Schemabruch (DEX-2-Perioden). |
| Fragenkatalog v1 (sprechende Feldschlüssel) | gemeinsames Feld-Vokabular für Kennzahlen beider Tools; Dentmarking-Antworten = Baseline/Erstbefüllung je Mandant (DM-8 → DEX-1). |
| Kennzahlen-Engine-Muster (Definitions-getrieben, Benchmarks versioniert, Richtung/Potential) | Blaupause für die DEX-2-Engine; Benchmark-Verwaltung wird gemeinsam genutzt (DM-3 ↔ DEX-7). |
| Audit + Rollen + Mandanten-Kopplung aus dem Kern | erfüllt die Dexman-NFRs (§7/§9 im Dexman-Lastenheft) ohne Eigenbau. |
14. Offene Punkte (OP-DM-n)
| ID | Thema | Inhalt |
|---|---|---|
| OP-DM-1 | Fachliche Bestätigung der Korrekturen | Befunde B-1..B-4, B-9 der Excel-Analyse (Personalkostenquote, Laborkosten-Doppelbelegung, Materialkosten-Nenner, PA-Kosten-Lücke, Gewinn-Definition) — korrigierte Formeln vom Fachbereich bestätigen lassen (Excel-Logik-Doku §10). |
| OP-DM-2 | Benchmark-Quellen & -Aktualität | Ø-/Richtwerte stammen aus 2015/2020 ohne Quellenangabe; Herkunft klären (KZBV-Jahrbuch? eigene Mandats-Empirie?), Aktualisierungszyklus + Stand/Quelle je Benchmark-Version pflegen. Geschäftsjahr-Bezug der Benchmarks (Feld gilt_fuer_geschaeftsjahr, D-27) fachlich klären → OP-DM-7. |
| OP-DM-3 | Übergabe-Format an Dexman | Baseline-Übernahme (Antworten + Kennzahlen-Schnappschuss) technisch definieren, sobald Dexman-Datenmodell steht (DEX-1/OP-EXT-1). |
| OP-DM-4 | Alt-Daten-Migration & Bereinigung | Bestands-Fragebögen (xlsx-Exporte) importieren (idempotent), Fileshare-Altkopien bereinigen/archivieren (DSGVO, RISK-23). |
| OP-DM-5 | Marke & Fragebogen-Hosting | "Dentmarking®"-Registerlage; Ablösung des WordPress-Formulars (medidentas.de) durch das R2-Formular vs. Weiterbetrieb mit API-Übernahme. |
| OP-DM-6 | Lizenz-/Aktivierungsmodell | je Tool-Vertrag (OP-EXT-1), gemeinsam mit Dexman. |
| OP-DM-8 | Ablauf-Versand des Zwischenstands per Mail | Der Cron-Ablauf-Hook (DM-9/T7) markiert abgelaufene Fragebogen-Entwürfe und triggert den Benachrichtigungs-Seam, versendet den Zwischenstand aber noch nicht als Mail. Offen: Empfänger-Auflösung (Praxis-Kontakt aus den Antworten vs. Berater), Inhalt/Format (PII!), E-Mail-Adapter (G-1, statt Log-Kanal), Einwilligungs-/DSGVO-Prüfung des Versands. |
| OP-DM-7 | Geschäftsjahr-Detailfragen | Geschäftsjahr-Definition je Praxis (Beginn-Monat, abweichende GJ; der Alt-Fragebogen fragt nur "im vergangenen Jahr" → Zuordnungsregel beim Import) und Benchmark-Jahresbezug (gelten Ø/Richtwerte je Geschäftsjahr oder zeitlos? Zusammenspiel mit Benchmark-Versionen, OP-DM-2). Modell ist vorbereitet (D-27), fachliche Klärung offen. |
15. Quellen
Analysierte Original-Artefakte (Uploads 2026-07-03, nicht im Repo): Dentmarking_v1.xlsm ·
Dentmarking_Fragebogen.pdf · Link_Fragebogen_Dentmarking_medidentas.docx ·
Betriebskennzahlen_Mehrbehandlerpraxis_Rohling.xlsx · Auffa_lligkeiten_Dentmarking_Analyse.docx.
Extraktion: Dentmarking-Excel-Logik.md.