ITSM/docs/adr/ADR-009-konzernplattform-mo...

1.7 KiB
Executable File
Raw Blame History

ADR-009: Konzernplattform als Modul-Monolith

Datum: 2026-07-15 · Status: ERSETZT durch ADR-010 (2026-07-28) — Modul-Monolith bleibt gueltig, aber die Plattform (Groundcontrol) ist der Kern, nicht das ITSM · Vorgabe: "Wir machen aus dem ITSM eine Konzernplattform inkl. HR, CRM, usw."

Kontext

Das ITSM soll zur Unternehmensplattform mit Fachmodulen (HR, CRM, weitere) werden. Es existiert bereits ein Erweiterungs-Muster (AES-Suite unter /erweiterungen mit eigener Rolle aes_user). Alternativen: separate Services je Domaene mit SSO vs. Module im bestehenden Binary.

Entscheidung

Modul-Monolith: Fachmodule sind Rust-Module im ITSM-Binary und teilen sich Mandantentrennung, Auth/Sessions, CSRF, Audit-Log, Retention, UI-Shell und Deployment. Je Modul: eigenes src/.rs, eigene Tabellen mit Praefix (hr_, crm_), eigene Rolle(n) fuer den Zugriff (hr_manager, crm_agent), eigene Nav-Gruppe. Der Kern (web.rs/db.rs/security.rs) bleibt modulagnostisch.

HR-Daten sind besonders schuetzenswert: Zugriff ausschliesslich admin + hr_manager — operative ITSM-Rollen (change_manager, agent) sehen HR NICHT. CRM: admin + crm_agent.

Konsequenzen

  • Ein Deployment, eine DB, konsistente Sicherheit/Audit ueber alle Module; schnellste Iterationsgeschwindigkeit bei aktueller Teamgroesse (1).
  • Modul-Verknuepfungen (Kunde<->Ticket, Onboarding->Service Request) sind einfache Joins statt Service-APIs. Ein-Rollen-Modell wird mit wachsender Modulzahl eng — Abloesung durch Modul-Grants ist als Plattform-phase-004 eingeplant. Bei stark divergenter Last oder Team-Skalierung waere ein Service-Split ein neuer ADR; die Praefix-Trennung der Tabellen haelt diesen Weg offen.