Systemkontext und Module
Status: Entwurf · Spec-Kandidat: ja
Systemarchitektur (Mermaid)
flowchart LR U[Benutzer / Fachbereich] A[Admin / Fachadministrator] F[Web-Frontend] API[API- / Service-Layer] META[Metadatenmodul] CORE[Stammdatenmodul] AUDIT[Audit-Modul] SEARCH[Suche / Reporting / Views] DB[(PostgreSQL)] CFG[Konfigurator] EXT[Externe Systeme] WH[Webhooks / Events optional]
U --> F A --> F F --> API
API --> META API --> CORE API --> AUDIT API --> SEARCH
META --> DB CORE --> DB AUDIT --> DB SEARCH --> DB
CFG --> API API --> EXT API --> WHModule
| Modul | Verantwortung |
|---|---|
| META – Metadatenmodul | Verwaltung von DDM_ENTITY_TYPE, DDM_ENTITY_TYPE_ATTRIBUTE, DDM_RELATION_TYPE, DDM_ENUM_SET, DDM_ENUM_VALUE. Validiert Metadaten-Konsistenz (z. B. Enum-Set existiert, Relation-Type passt zu Datentyp). |
| CORE – Stammdatenmodul | Verwaltung von DDM_ENTITY und DDM_ENTITY_RELATION. Validiert Entitäten gegen Metadaten, schreibt DDM_ENTITY_VERSION-Snapshots, setzt Lösch-/Archivlogik um. |
| AUDIT – Audit-Modul | Schreibt AA_AUDIT_LOG-Einträge in derselben Transaktion wie die fachliche Änderung. |
| SEARCH – Suche / Reporting / Views | Stellt Suche (Volltext, strukturierter Filter) und SQL-Views (mdm.v_<key>) bereit. |
Interne Schnittstellen
- Metadatenmodul → Stammdatenmodul (Schema-/Validierungsregeln liefern)
- Stammdatenmodul → Audit-Modul (Änderungsprotokolle erzeugen)
- Stammdatenmodul → Such-/Reportingmodul (Suchindex- und View-Pflege)
Externe Akteure
- Web-Frontend – Bedienoberfläche für Fachadministratoren und Sachbearbeiter
- Konfigurator – konsumiert die API für Konfigurationsdaten
- Externe Systeme – Daten-Austausch über REST API und SQL Views
- Webhook-/Event-Konsumenten – optional, für asynchrone Integration