/** * Demo VVT (Verarbeitungsverzeichnis / Processing Activities Register) for AI Compliance SDK * Art. 30 DSGVO - These are seed data structures - actual data is stored in database */ import { ProcessingActivity, RetentionPolicy } from '../types' export const DEMO_PROCESSING_ACTIVITIES: ProcessingActivity[] = [ { id: 'demo-pa-1', name: 'KI-gestützte Kundenanalyse', purpose: 'Analyse von Kundenverhalten und Präferenzen zur Personalisierung von Angeboten, Churn-Prediction und Marketing-Optimierung', legalBasis: 'Art. 6 Abs. 1 lit. f DSGVO (berechtigtes Interesse) / Art. 6 Abs. 1 lit. a DSGVO (Einwilligung für erweitertes Profiling)', dataCategories: [ 'Stammdaten (Name, Adresse, E-Mail, Telefon)', 'Transaktionsdaten (Käufe, Bestellungen, Retouren)', 'Nutzungsdaten (Clickstreams, Seitenaufrufe, Verweildauer)', 'Demographische Daten (Alter, Geschlecht, PLZ-Region)', ], dataSubjects: [ 'Bestandskunden (ca. 250.000 aktive)', 'Registrierte Interessenten (ca. 100.000)', 'Newsletter-Abonnenten (ca. 180.000)', ], recipients: [ 'Interne Fachabteilungen (Marketing, Vertrieb)', 'E-Mail-Marketing-Dienstleister (AV-Vertrag vorhanden)', 'Cloud-Infrastruktur-Anbieter (AV-Vertrag vorhanden)', ], thirdCountryTransfers: false, retentionPeriod: '3 Jahre nach letzter Aktivität, danach Anonymisierung', technicalMeasures: [ 'AES-256 Verschlüsselung', 'Pseudonymisierung', 'Zugriffskontrolle mit MFA', 'Audit-Logging', ], organizationalMeasures: [ 'Rollenbasiertes Berechtigungskonzept', 'Verpflichtung auf Datengeheimnis', 'Regelmäßige Datenschutzschulungen', 'Dokumentierte Prozesse', ], }, { id: 'demo-pa-2', name: 'Automatisierte Bewerbungsvorauswahl', purpose: 'KI-gestützte Vorauswahl von Bewerbungen basierend auf Lebenslauf-Analyse und Qualifikationsabgleich zur Effizienzsteigerung im Recruiting', legalBasis: 'Art. 6 Abs. 1 lit. b DSGVO (vorvertragliche Maßnahmen) / § 26 BDSG (Beschäftigungsverhältnis)', dataCategories: [ 'Bewerberdaten (Name, Kontakt, Geburtsdatum)', 'Qualifikationen (Ausbildung, Berufserfahrung, Zertifikate)', 'Lebenslaufdaten (Werdegang, Fähigkeiten)', 'Bewerbungsschreiben', ], dataSubjects: [ 'Bewerber auf offene Stellen', 'Initiativbewerber', ], recipients: [ 'HR-Abteilung', 'Fachabteilungsleiter (nur finale Kandidaten)', 'Betriebsrat (Einsichtnahme möglich)', ], thirdCountryTransfers: false, retentionPeriod: '6 Monate nach Abschluss des Bewerbungsverfahrens (bei Ablehnung), länger nur mit Einwilligung für Talentpool', technicalMeasures: [ 'Verschlüsselte Speicherung', 'Zugangsbeschränkung auf HR', 'Automatische Löschroutinen', 'Bias-Monitoring', ], organizationalMeasures: [ 'Human-in-the-Loop für finale Entscheidungen', 'Dokumentierte KI-Entscheidungskriterien', 'Transparente Information an Bewerber', 'Regelmäßige Fairness-Audits', ], }, { id: 'demo-pa-3', name: 'Kundenservice-Chatbot', purpose: 'Automatisierte Beantwortung von Kundenanfragen im First-Level-Support mittels KI-gestütztem Dialogsystem', legalBasis: 'Art. 6 Abs. 1 lit. b DSGVO (Vertragserfüllung) / Art. 6 Abs. 1 lit. f DSGVO (berechtigtes Interesse)', dataCategories: [ 'Kundenstammdaten (zur Identifikation)', 'Kommunikationsinhalte (Chat-Verläufe)', 'Technische Daten (Session-ID, Zeitstempel)', 'Serviceanfragen und deren Lösungen', ], dataSubjects: [ 'Kunden mit aktiven Verträgen', 'Interessenten mit Anfragen', ], recipients: [ 'Kundenservice-Team (bei Eskalation)', 'Cloud-Anbieter (Hosting, AV-Vertrag)', ], thirdCountryTransfers: false, retentionPeriod: '2 Jahre für Chat-Verläufe, danach Anonymisierung für Training', technicalMeasures: [ 'TLS-Verschlüsselung', 'Keine Speicherung sensitiver Daten im Chat', 'Automatische PII-Erkennung und Maskierung', ], organizationalMeasures: [ 'Klare KI-Kennzeichnung gegenüber Kunden', 'Jederzeit Übergabe an Menschen möglich', 'Schulung des Eskalations-Teams', ], }, { id: 'demo-pa-4', name: 'Mitarbeiterverwaltung', purpose: 'Verwaltung von Personalstammdaten, Gehaltsabrechnung, Zeiterfassung und Personalentwicklung', legalBasis: 'Art. 6 Abs. 1 lit. b DSGVO (Arbeitsvertrag) / § 26 BDSG (Beschäftigungsverhältnis) / gesetzliche Pflichten (Steuer, SV)', dataCategories: [ 'Personalstammdaten (Name, Adresse, Geburtsdatum, SV-Nr.)', 'Vertragsdaten (Arbeitsvertrag, Gehalt, Arbeitszeit)', 'Zeiterfassungsdaten', 'Leistungsbeurteilungen', 'Bankverbindung', ], dataSubjects: [ 'Aktive Mitarbeiter', 'Ehemalige Mitarbeiter (Archiv)', ], recipients: [ 'HR-Abteilung', 'Lohnbuchhaltung / Steuerberater', 'Sozialversicherungsträger', 'Finanzamt', ], thirdCountryTransfers: false, retentionPeriod: '10 Jahre nach Ausscheiden (steuerliche Aufbewahrungspflichten)', technicalMeasures: [ 'Verschlüsselte Speicherung', 'Strenge Zugriffskontrolle', 'Getrennte Systeme für verschiedene Datenkategorien', ], organizationalMeasures: [ 'Need-to-know-Prinzip', 'Dokumentierte Prozesse', 'Betriebsvereinbarung zur Datenverarbeitung', ], }, { id: 'demo-pa-5', name: 'Website-Analyse und Marketing', purpose: 'Analyse des Nutzerverhaltens auf der Website zur Optimierung der User Experience und für personalisierte Marketing-Maßnahmen', legalBasis: 'Art. 6 Abs. 1 lit. a DSGVO (Einwilligung via Cookie-Banner)', dataCategories: [ 'Pseudonymisierte Nutzungsdaten', 'Cookie-IDs und Tracking-Identifier', 'Geräteinformationen', 'Interaktionsdaten (Klicks, Scrollverhalten)', ], dataSubjects: [ 'Website-Besucher (nur mit Einwilligung)', ], recipients: [ 'Marketing-Team', 'Analytics-Anbieter (AV-Vertrag)', 'Advertising-Partner (nur mit erweiterter Einwilligung)', ], thirdCountryTransfers: true, retentionPeriod: '13 Monate für Analytics-Daten, Cookie-Laufzeit max. 12 Monate', technicalMeasures: [ 'IP-Anonymisierung', 'Secure Cookies', 'Consent-Management-System', ], organizationalMeasures: [ 'Transparente Cookie-Richtlinie', 'Einfacher Widerruf möglich', 'Regelmäßige Cookie-Audits', ], }, { id: 'demo-pa-6', name: 'Videoüberwachung', purpose: 'Schutz von Eigentum und Personen, Prävention und Aufklärung von Straftaten in Geschäftsräumen', legalBasis: 'Art. 6 Abs. 1 lit. f DSGVO (berechtigtes Interesse an Sicherheit)', dataCategories: [ 'Videoaufnahmen', 'Zeitstempel', 'Aufnahmeort', ], dataSubjects: [ 'Mitarbeiter in überwachten Bereichen', 'Besucher und Kunden', 'Lieferanten', ], recipients: [ 'Sicherheitspersonal', 'Geschäftsleitung (bei Vorfällen)', 'Strafverfolgungsbehörden (auf Anforderung)', ], thirdCountryTransfers: false, retentionPeriod: '72 Stunden, bei Vorfällen bis zur Abschluss der Untersuchung', technicalMeasures: [ 'Verschlüsselte Speicherung', 'Automatische Löschung nach Fristablauf', 'Eingeschränkter Zugriff', ], organizationalMeasures: [ 'Beschilderung der überwachten Bereiche', 'Betriebsvereinbarung mit Betriebsrat', 'Dokumentiertes Einsichtsprotokoll', ], }, ] export const DEMO_RETENTION_POLICIES: RetentionPolicy[] = [ { id: 'demo-ret-1', dataCategory: 'Kundenstammdaten', description: 'Grundlegende Daten zur Kundenidentifikation (Name, Adresse, Kontaktdaten)', legalBasis: 'Handels- und steuerrechtliche Aufbewahrungspflichten (§ 257 HGB, § 147 AO)', retentionPeriod: '10 Jahre nach Vertragsende', deletionMethod: 'Sichere Löschung mit Protokollierung, bei Papier: Aktenvernichtung DIN 66399', exceptions: [ 'Laufende Rechtsstreitigkeiten', 'Offene Forderungen', ], }, { id: 'demo-ret-2', dataCategory: 'Transaktionsdaten', description: 'Bestellungen, Rechnungen, Zahlungen, Lieferungen', legalBasis: '§ 257 HGB, § 147 AO (handels- und steuerrechtliche Aufbewahrung)', retentionPeriod: '10 Jahre ab Ende des Geschäftsjahres', deletionMethod: 'Automatisierte Löschung nach Fristablauf', exceptions: [ 'Garantiefälle (bis Ende der Garantiezeit)', 'Prüfungen durch Finanzbehörden', ], }, { id: 'demo-ret-3', dataCategory: 'Bewerberdaten', description: 'Lebenslauf, Anschreiben, Zeugnisse, Korrespondenz', legalBasis: 'AGG (Diskriminierungsschutz) / § 26 BDSG', retentionPeriod: '6 Monate nach Abschluss des Verfahrens', deletionMethod: 'Sichere Löschung, bei Papier: Aktenvernichtung', exceptions: [ 'Aufnahme in Talentpool (mit Einwilligung): 2 Jahre', 'Diskriminierungsklagen: bis Abschluss', ], }, { id: 'demo-ret-4', dataCategory: 'Personalakten', description: 'Arbeitsverträge, Gehaltsabrechnungen, Beurteilungen, Abmahnungen', legalBasis: '§ 257 HGB, § 147 AO, Sozialversicherungsrecht', retentionPeriod: '10 Jahre nach Ausscheiden (teilweise 30 Jahre für Rentenansprüche)', deletionMethod: 'Sichere Löschung mit Dokumentation', exceptions: [ 'Arbeitsrechtliche Streitigkeiten', 'Rentenversicherungsnachweise (lebenslang empfohlen)', ], }, { id: 'demo-ret-5', dataCategory: 'Marketing-Profile', description: 'Analysedaten, Segmentierungen, Präferenzen, Kaufhistorie', legalBasis: 'Einwilligung (Art. 6 Abs. 1 lit. a DSGVO)', retentionPeriod: '3 Jahre nach letzter Aktivität, dann Anonymisierung', deletionMethod: 'Pseudonymisierung → Anonymisierung → Löschung', exceptions: [ 'Widerruf der Einwilligung (sofortige Löschung)', ], }, { id: 'demo-ret-6', dataCategory: 'Videoaufnahmen', description: 'Aufnahmen der Sicherheitskameras', legalBasis: 'Berechtigtes Interesse (Art. 6 Abs. 1 lit. f DSGVO)', retentionPeriod: '72 Stunden', deletionMethod: 'Automatisches Überschreiben', exceptions: [ 'Sicherheitsvorfälle (bis Abschluss der Untersuchung)', 'Anforderung durch Strafverfolgungsbehörden', ], }, { id: 'demo-ret-7', dataCategory: 'KI-Trainingsdaten', description: 'Anonymisierte Datensätze für Modell-Training', legalBasis: 'Berechtigtes Interesse / ursprüngliche Zweckbindung (bei Kompatibilität)', retentionPeriod: 'Solange Modell aktiv, danach Löschung mit Modell-Archivierung', deletionMethod: 'Sichere Löschung bei Modell-Retirement', exceptions: [ 'Audit-Trail für Modell-Herkunft (anonymisierte Metadaten)', ], }, { id: 'demo-ret-8', dataCategory: 'Audit-Logs', description: 'Protokolle von Datenzugriffen und Systemereignissen', legalBasis: 'Nachweispflichten DSGVO, Compliance-Anforderungen', retentionPeriod: '10 Jahre', deletionMethod: 'Automatisierte Löschung nach Fristablauf', exceptions: [ 'Laufende Untersuchungen oder Audits', ], }, ] export function getDemoProcessingActivities(): ProcessingActivity[] { return DEMO_PROCESSING_ACTIVITIES } export function getDemoRetentionPolicies(): RetentionPolicy[] { return DEMO_RETENTION_POLICIES }