feat(ihk): vollstaendige Lehrplan-Ueberarbeitung nach ZPA Nord-West 2. Auflage (2024/2025)

- AP1 & AP2 Fragenbank bereinigt: SQL komplett aus AP1 nach AP2 verlagert, Struktogramme/PAP entfernt, 171 authentische Pruefungsfragen
- AP1 auf 12 ZPA-konforme Module erweitert: BPMN 2.0, EPK, Netzplantechnik (DIN 69900), Belegrechnung (PrintTop GmbH), IEC-Binaerpraefixe
- AP2 FISI von 9 auf 12 Module erweitert: VRT-Netzwerksymbole, Enterprise SQL, Systemautomation (PowerShell/Bash), Backup 3-2-1-1-0 & DR, WiSo & 40h-Projekt
- 4 neue interaktive Tools: netzplan_trainer.js, beleg_kalkulator.js, bpmn_trainer.js, prefix_converter.js
- Saemtliche Navigationslinks auf moderne Buttons (ihk-btn) umgestellt, keine langweiligen Hyperlinks
- Server-Routen und Manifeste synchronisiert, Abwaertskompatibilitaet fuer Altkapitel sichergestellt (Zero 404s)
This commit is contained in:
Alex Mueller 2026-09-14 21:12:04 +02:00
parent 1f889f9f2f
commit 54b1eb2ad5
71 changed files with 6180 additions and 2405 deletions

View file

@ -691,97 +691,91 @@ window.COURSES_MANIFEST = {
}, },
"ihk_ap1": { "ihk_ap1": {
"id": "ihk_ap1", "id": "ihk_ap1",
"title": "IHK AP1 Crashkurs: IT-Arbeitsplatz & Programmierung", "title": "IHK AP1 Prüfungstraining: Einrichten eines IT-gestützten Arbeitsplatzes",
"language": "ihk_ap1", "language": "ihk_ap1",
"icon": "📘", "icon": "📘",
"runner": "none", "runner": "none",
"description": "Lückenlose Vorbereitung auf die IHK-Abschlussprüfung Teil 1. Alle Lernfelder (LF 1 bis LF 8) mit interaktiven Übungen, 150-Fragen-Pool & 90-Minuten Probeprüfung.", "description": "Offizieller Vorbereitungskurs auf die IHK-Abschlussprüfung Teil 1 (Neuordnung nach ZPA-Katalog 2. Auflage). Alle Lernfelder (LF 1 bis LF 6), BPMN 2.0, EPK, PrintTop-Belegrechnung, Netzplantechnik & 171-Fragen-Pool.",
"tracks": [ "tracks": [
{ {
"id": "track_1_it_systeme", "id": "track_1_it_systeme",
"title": "🌱 Lehrpfad 1: Basissysteme & Sicherheit (LF 1–4)", "title": "🌱 Lehrpfad 1: Basissysteme, Hardware & Netzwerke (LF 1–4)",
"description": "Unternehmen & Rolle im Betrieb, Hardware & Ergonomie, Subnetting & Netzwerke, Schutzbedarfsanalyse & DSGVO.", "description": "Unternehmen & BGB-Verträge, Hardware, Ergonomie & IEC-Binärpräfixe, Subnetting & Netzwerke, Schutzbedarfsanalyse & DSGVO.",
"certificateKey": "ihk_ap1_systeme", "certificateKey": "ihk_ap1_systeme",
"chapters": [ "chapters": [
{ {
"folder": "01_lf1_unternehmen_und_arbeitsplatz", "folder": "01_lf1_unternehmen_und_arbeitsplatz",
"title": "LF 1: Unternehmen & Rolle im Betrieb (Organisation, Verträge, ITIL)", "title": "LF 1: Unternehmen & Rolle im Betrieb (Organisation, Verträge, ITIL 4 & KI-Support)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
}, },
{ {
"folder": "02_lf2_arbeitsplaetze_ausstatten", "folder": "02_lf2_arbeitsplaetze_ausstatten",
"title": "LF 2: Arbeitsplätze ausstatten (Hardware, Ergonomie, USV, NWA)", "title": "LF 2: Arbeitsplätze ausstatten (Displays, ArbStättV, USV & IEC-Binärpräfixe)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
}, },
{ {
"folder": "03_lf3_clients_in_netzwerke_einbinden", "folder": "03_lf3_clients_in_netzwerke_einbinden",
"title": "LF 3: Clients in Netzwerke einbinden (Subnetting, IPv6, LWL)", "title": "LF 3: Clients in Netzwerke einbinden (IPv4/IPv6, Subnetting, LWL & Übertragungszeiten)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
}, },
{ {
"folder": "04_lf4_schutzbedarfsanalyse_und_cybersicherheit", "folder": "04_lf4_schutzbedarfsanalyse_und_cybersicherheit",
"title": "LF 4: Schutzbedarfsanalyse & Cyber-Sicherheit (CIA, Backup, TOMs)", "title": "LF 4: Schutzbedarfsanalyse & Cyber-Sicherheit (CIA, Backup, TOM & KI-Datenschutz)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
} }
] ]
}, },
{ {
"id": "track_2_programmierung_und_datenbanken", "id": "track_2_prozesse_software_itsm",
"title": "💻 Lehrpfad 2: Software, CPS & Schnittstellen (LF 5–8)", "title": "⚡ Lehrpfad 2: Prozessmodellierung, Software-Design & ITSM (LF 1, 5, 6)",
"description": "Algorithmen & SQL-Datenbanken, Cyber-physische Systeme, Instandhaltung & Fehlerdiagnose, REST-Schnittstellen.", "description": "BPMN 2.0 Gateways & EPK, UML-Diagramme & Pseudocode (kein PAP/Struktogramm mehr!), IT-Servicemanagement & SLAs.",
"certificateKey": "ihk_ap1_programmierung", "certificateKey": "ihk_ap1_programmierung",
"chapters": [ "chapters": [
{ {
"folder": "05_lf5_software_zur_datenverwaltung", "folder": "05_prozessmodellierung_bpmn_und_epk",
"title": "LF 5: Software zur Datenverwaltung anpassen (Trace, UML, SQL)", "title": "BPMN & EPK: Geschäftsprozessmodellierung nach ZPA-Standard (LF 1/6)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
}, },
{ {
"folder": "06_lf6_cyber_physische_systeme_iot", "folder": "06_lf5_software_und_anwendungsentwicklung",
"title": "LF 6: Das Cyber-Physische System ergänzen (Sensoren, Aktoren, MQTT)", "title": "LF 5: Software- & Anwendungsentwicklung (UML, Pseudocode & Trace-Tabellen)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
}, },
{ {
"folder": "07_lf7_instandhaltung_und_fehlerdiagnose", "folder": "07_lf6_serviceanfragen_und_itsm",
"title": "LF 7: Cyber-Physische Systeme instand halten (Diagnose, ESD, Messen)", "title": "LF 6: Serviceanfragen bearbeiten & ITSM (Tickettriage, SLAs & Eskalation)",
"taskFile": "README.md",
"testFile": "index.html"
},
{
"folder": "08_lf8_datenfluesse_und_schnittstellen",
"title": "LF 8: Datenflüsse optimieren & Schnittstellen anpassen (REST, JSON, JWT)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
} }
] ]
}, },
{ {
"id": "track_3_praxis_drills", "id": "track_3_kaufmaennisches_und_datenmodelle",
"title": "⚡ Lehrpfad 3: Interaktive Praxis-Drills & Labore", "title": "📊 Lehrpfad 3: Kaufmännische Steuerung, Netzplantechnik & Datenmodelle (LF 1, 2, 5)",
"description": "Trace-Tabellen-Trainer mit zeilenweiser Prüfung, Relationales SQL-Labor & Subnetting-Drill Master.", "description": "PrintTop GmbH Rechnungsprüfung, Verzugszinsen § 288 BGB, DIN 69900 Netzplantechnik und relationale ER-Modelle (ohne SQL).",
"certificateKey": "ihk_ap1_prozesse", "certificateKey": "ihk_ap1_prozesse",
"chapters": [ "chapters": [
{ {
"folder": "09_trace_tabellen_trainer", "folder": "08_belegsaetze_und_kaufmaennische_rechnung",
"title": "Drill 1: Interaktiver Trace-Tabellen-Trainer (LF 5)", "title": "LF 1/2: Belegsätze & Kaufmännische Rechnung (PrintTop GmbH, Skonto, Rabatt & Verzug)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
}, },
{ {
"folder": "10_sql_datenbank_labor", "folder": "09_netzplantechnik_und_projektmanagement",
"title": "Drill 2: Relationale Datenbanken & Live-SQL Labor (LF 5)", "title": "LF 1: Netzplantechnik & Projektcontrolling (FAZ/FEZ/SAZ/SEZ, Puffer & Kritischer Pfad)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
}, },
{ {
"folder": "11_subnetting_drill_master", "folder": "10_relationales_datenmodell_und_erm",
"title": "Drill 3: Endlos Subnetting-Drill Generator (LF 3)", "title": "LF 5: Relationales Datenmodell & ERM (Chen/Krähenfuß, Normalisierung 1NF-3NF)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
} }
@ -789,13 +783,19 @@ window.COURSES_MANIFEST = {
}, },
{ {
"id": "track_4_probepruefung", "id": "track_4_probepruefung",
"title": "🏆 Lehrpfad 4: Offizielle AP1 Probeprüfung & Notenrechner", "title": "🏆 Lehrpfad 4: Interaktive Praxis-Drills & IHK-Probeprüfung",
"description": "90-Minuten Realtime Prüfungsmodus mit Countdown, 100 Punkten, Zufallsgenerator aus 150 Fragen & Erwartungshorizont.", "description": "Endlos-Subnetting-Drill Generator & authentische 90-Minuten-Prüfungssimulation mit 100-Punkte-Schlüssel.",
"certificateKey": "ihk_ap1_master", "certificateKey": "ihk_ap1_master",
"chapters": [ "chapters": [
{
"folder": "11_subnetting_drill_master",
"title": "Drill: Subnetting- & Präfix-Trainer mit Sofort-Validierung (LF 3)",
"taskFile": "README.md",
"testFile": "index.html"
},
{ {
"folder": "12_ap1_probepruefung_simulation", "folder": "12_ap1_probepruefung_simulation",
"title": "Probeprüfung AP1: 90 Min. Realtime Simulation (100 Pkt.)", "title": "Simulation: IHK AP1 Probeprüfung (90 Min. / 100 Punkte nach ZPA 2. Auflage)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
} }
@ -809,89 +809,107 @@ window.COURSES_MANIFEST = {
"language": "ihk_ap2_fisi", "language": "ihk_ap2_fisi",
"icon": "📕", "icon": "📕",
"runner": "none", "runner": "none",
"description": "Vollständige Prüfungsvorbereitung für FISI (LF 9–12, WiSo, 40h-Projekt). VLANs, OSPF, Active Directory, RAID-Simulator, Cloud & 3 vollständige Probeprüfungen.", "description": "Vollständige Prüfungsvorbereitung für FISI (LF 9–12, WiSo, 40h-Projekt). 12 Module nach ZPA Nord-West 2. Auflage: VLANs, VRT-Symbole, Active Directory, RAID 0-10, Backup 3-2-1-1-0, Enterprise SQL & Vollsimulation.",
"tracks": [ "tracks": [
{ {
"id": "track_1_netzwerke_und_server", "id": "track_1_netzwerke_und_server",
"title": "🌱 Lehrpfad 1: Enterprise Netzwerke & Serverdienste (LF 9 & 10)", "title": "🌱 Lehrpfad 1: Enterprise Netzwerke & Serverdienste (LF 9 & 10)",
"description": "VLANs (802.1Q), LACP, Spanning Tree, OSPF, BGP, Active Directory, Gruppenrichtlinien, PKI & Ansible.", "description": "VLANs (802.1Q), LACP, Spanning Tree, OSPF, BGP, VRT-Symbole, Strukturierte Verkabelung, Active Directory & Kerberos.",
"certificateKey": "ihk_ap2_netzwerke", "certificateKey": "ihk_ap2_netzwerke",
"chapters": [ "chapters": [
{ {
"folder": "01_lf9_netzwerke_und_dienste", "folder": "01_lf9_netzwerkinfrastruktur_und_routing",
"title": "LF 9: Netzwerke & Dienste bereitstellen (VLAN, Routing, Firewalls)", "title": "LF 9: Enterprise Routing & Switching (VLAN, STP, LACP, OSPF)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
}, },
{ {
"folder": "02_lf10_serverdienste_und_automation", "folder": "02_vrt_netzwerkplaene_und_infrastruktur",
"title": "LF 10: Serverdienste & Automation bereitstellen (AD DS, DNS, Ansible)", "title": "LF 9: Normierte Netzwerkpläne (VRT-Symbole) & Verkabelung",
"taskFile": "README.md",
"testFile": "index.html"
},
{
"folder": "03_lf10_serverdienste_und_identitaeten",
"title": "LF 10: Serverdienste, Active Directory & Identitäten (AD DS, GPO, Kerberos)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
} }
] ]
}, },
{ {
"id": "track_2_storage_und_cloud", "id": "track_2_storage_und_automation",
"title": "🛡️ Lehrpfad 2: Storage, Hochverfügbarkeit & Cloud (LF 11 & 12)", "title": "⚙️ Lehrpfad 2: Skripting, Storage & Hochverfügbarkeit (LF 10 & 11)",
"description": "RAID 0/1/5/6/10, SAN/NAS, HA-Cluster, Quorum, STONITH, ZFS, Hypervisoren, Docker, Kubernetes & Prometheus.", "description": "PowerShell, Bash, Ansible, RAID 0/1/5/6/10 (exklusiv AP2!), SAN/NAS, iSCSI, 3-2-1-1-0 Backup & HA-Cluster.",
"certificateKey": "ihk_ap2_sicherheit", "certificateKey": "ihk_ap2_storage_automation",
"chapters": [ "chapters": [
{ {
"folder": "03_lf11_speicher_und_hochverfuegbarkeit", "folder": "04_systemautomation_powershell_bash_python",
"title": "LF 11: Speicher- & Hochverfügbarkeitssysteme (RAID, SAN, Cluster)", "title": "LF 10: Skriptprogrammierung & Systemautomation (PowerShell, Bash, Ansible)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
}, },
{ {
"folder": "04_lf12_virtualisierung_und_cloud", "folder": "05_lf11_speicher_und_hochverfuegbarkeit",
"title": "LF 12: Virtualisierung, Cloud & Automation (Docker, K8s, IaC)", "title": "LF 11: Enterprise Storage, RAID & SAN-Architekturen (RAID 0-10, iSCSI, ZFS)",
"taskFile": "README.md",
"testFile": "index.html"
},
{
"folder": "06_backup_dr_und_hochverfuegbarkeit",
"title": "LF 11: Backup, Disaster Recovery & Hochverfügbarkeit (3-2-1-1-0, RTO/RPO)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
} }
] ]
}, },
{ {
"id": "track_3_wiso_und_projekt", "id": "track_3_datenbanken_und_cloud",
"title": "☁️ Lehrpfad 3: WiSo & 40h-Betriebliche Projektarbeit", "title": "☁️ Lehrpfad 3: Enterprise SQL, Cloud & WiSo Arbeitsrecht (LF 10, 11 & 12)",
"description": "Wirtschafts- & Sozialkunde (Arbeitsrecht, KSchG, Sozialversicherung) & Leitfaden zur 40h-Projektarbeit samt Fachgespräch.", "description": "ZPA-SQL (DDL, DCL, Multi-Table JOINs, DATEDIFF), Hypervisoren, Docker, Kubernetes, Zero Trust & WiSo Arbeitsrecht.",
"certificateKey": "ihk_ap2_wiso_projekt", "certificateKey": "ihk_ap2_cloud_sql",
"chapters": [ "chapters": [
{ {
"folder": "05_wiso_arbeitsrecht_und_wirtschaft", "folder": "07_enterprise_sql_und_datenbank_admin",
"title": "WiSo: Wirtschafts- & Sozialkunde Prüfungs-Fit (BGB, KSchG, BetrVG)", "title": "LF 10/11: Enterprise SQL & Datenbank-Administration (DDL, DCL, Joins, DATEDIFF)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
}, },
{ {
"folder": "06_betriebliche_projektarbeit_guide", "folder": "08_lf12_virtualisierung_und_cloud",
"title": "Projekt: Betriebliche Projektarbeit (40h) & Fachgespräch-Guide", "title": "LF 12: Cloud-Architekturen, Virtualisierung & Security (Docker, K8s, Zero Trust)",
"taskFile": "README.md",
"testFile": "index.html"
},
{
"folder": "09_wiso_arbeitsrecht_und_wirtschaft",
"title": "WiSo 1: Arbeitsrecht, Tarifrecht & Gehaltsabrechnung (BBiG, KSchG, ArbZG)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
} }
] ]
}, },
{ {
"id": "track_4_probepruefungen", "id": "track_4_betrieb_projekt_und_pruefung",
"title": "🏆 Lehrpfad 4: Offizielle AP2 Probeprüfungen & Simulationen", "title": "🏆 Lehrpfad 4: Organisation, 40h-Projektarbeit & Prüfungssimulation",
"description": "Die 3 schriftlichen IHK-Prüfungsteile unter Realbedingungen (Teil 1: 90 Min., Teil 2: 90 Min., WiSo: 60 Min.) mit 150-Fragen-Zufallsgenerator.", "description": "Unternehmensformen, BetrVG, PUE-Wert, Green IT, Leitfaden zur 40h-Projektarbeit samt Fachgespräch & Vollsimulation AP2.",
"certificateKey": "ihk_ap2_fisi_master", "certificateKey": "ihk_ap2_fisi_master",
"chapters": [ "chapters": [
{ {
"folder": "07_ap2_teil_1_probepruefung", "folder": "10_wiso_betriebsorganisation_und_umwelt",
"title": "Probeprüfung AP2 Teil 1: Planen & Umsetzen (90 Min. / 100 Pkt.)", "title": "WiSo 2: Unternehmensformen, Umweltschutz (PUE) & Organisation (BetrVG)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
}, },
{ {
"folder": "08_ap2_teil_2_probepruefung", "folder": "11_betriebliche_projektarbeit_guide",
"title": "Probeprüfung AP2 Teil 2: Administration & Netzanalyse (90 Min. / 100 Pkt.)", "title": "Projekt: Betriebliche Projektarbeit (40h) & Fachgespräch (Guide)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
}, },
{ {
"folder": "09_ap2_wiso_probepruefung", "folder": "12_ap2_gesamtpruefung_simulation",
"title": "Probeprüfung AP2 WiSo: Wirtschafts- & Sozialkunde (60 Min. / 100 Pkt.)", "title": "Abschluss: AP2 Gesamtprüfungssimulation (PB 1, PB 2 & WiSo)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
} }

View file

@ -0,0 +1,298 @@
/**
* 🧾 IHK BELEG- & KALKULATIONS-TRAINER (PrintTop GmbH) 🧾
* ====================================================
* Interaktiver Trainer für kaufmännische Berechnungen nach ZPA 2. Auflage:
* 1. Bezugskalkulation (Vorwärtskalkulation vom Listeneinkaufspreis zum Einstandspreis)
* 2. Rechnungsprüfung & Skontoabzug bei Zahlung innerhalb Frist
* 3. Verzugszinsberechnung nach § 288 BGB & 40 € Mahnpauschale (§ 288 Abs. 5 BGB)
*/
class BelegKalkulator {
constructor(containerId) {
this.container = document.getElementById(containerId);
this.init();
}
init() {
if (!this.container) return;
this.render();
}
render() {
this.container.innerHTML = `
<div class="ihk-tool-card" style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin-bottom: 24px;">
<div class="ihk-tool-header" style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px;">
<div>
<h3 style="color: #38bdf8; margin: 0; font-size: 1.3rem;">🧾 Interaktiver Beleg- & Kalkulationsrechner</h3>
<p style="color: #94a3b8; font-size: 0.9rem; margin: 4px 0 0 0;">PrintTop GmbH • Original ZPA-Aufgabenmuster</p>
</div>
<div>
<span class="ihk-badge ihk-badge-success">Kaufmännische IT-Praxis</span>
</div>
</div>
<!-- Modus-Umschalter -->
<div style="display: flex; gap: 10px; margin-bottom: 20px; border-bottom: 1px solid #334155; padding-bottom: 12px;">
<button id="tab-bezug" class="ihk-btn ihk-btn-primary" style="padding: 6px 14px; font-size: 0.85rem;">📦 Bezugskalkulation (Einstandspreis)</button>
<button id="tab-verzug" class="ihk-btn ihk-btn-secondary" style="padding: 6px 14px; font-size: 0.85rem;">⚖️ Verzugszinsen § 288 BGB</button>
</div>
<!-- Ansicht 1: Bezugskalkulation -->
<div id="view-bezug">
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin-bottom: 18px; border: 1px solid #334155;">
<strong style="color: #f8fafc;">Übung:</strong> Die PrintTop GmbH bestellt 10 Hochleistungsserver beim Großhändler.
<div style="display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 12px; margin-top: 10px; font-size: 0.9rem; color: #cbd5e1;">
<div>Listeneinkaufspreis (netto): <strong id="lbl-lep">10.000,00 €</strong></div>
<div>Lieferrabatt: <strong id="lbl-rabatt">15 %</strong></div>
<div>Lieferskonto: <strong id="lbl-skonto">2 %</strong></div>
<div>Bezugskosten (Fracht/Zoll): <strong id="lbl-bezug">350,00 €</strong></div>
</div>
</div>
<table class="ihk-table" style="width: 100%; border-collapse: collapse; font-size: 0.9rem;">
<thead>
<tr style="background: #0f172a; color: #38bdf8; text-align: left;">
<th style="padding: 10px; border: 1px solid #334155;">Kalkulationsschritt</th>
<th style="padding: 10px; border: 1px solid #334155; width: 140px;">Prozentsatz</th>
<th style="padding: 10px; border: 1px solid #334155; width: 180px;">Ihre Eingabe (€)</th>
<th style="padding: 10px; border: 1px solid #334155; width: 180px;">Prüfung</th>
</tr>
</thead>
<tbody>
<tr>
<td style="padding: 8px; border: 1px solid #334155;">Listeneinkaufspreis (LEP)</td>
<td style="padding: 8px; border: 1px solid #334155;">100 %</td>
<td style="padding: 8px; border: 1px solid #334155;"><input type="text" id="val-lep" class="ihk-input" value="10000.00" disabled style="background:#1e293b;"></td>
<td style="padding: 8px; border: 1px solid #334155; color: #4ade80;">✓ Gegeben</td>
</tr>
<tr>
<td style="padding: 8px; border: 1px solid #334155;">- Lieferrabatt</td>
<td style="padding: 8px; border: 1px solid #334155;">15 %</td>
<td style="padding: 8px; border: 1px solid #334155;"><input type="number" step="0.01" id="val-rabatt-eur" class="ihk-input" placeholder="z. B. 1500.00"></td>
<td id="status-rabatt-eur" style="padding: 8px; border: 1px solid #334155;">-</td>
</tr>
<tr style="background: rgba(56, 189, 248, 0.05);">
<td style="padding: 8px; border: 1px solid #334155; font-weight: bold;">= Zieleinkaufspreis (ZEP)</td>
<td style="padding: 8px; border: 1px solid #334155;">85 %</td>
<td style="padding: 8px; border: 1px solid #334155;"><input type="number" step="0.01" id="val-zep" class="ihk-input" placeholder="ZEP in €"></td>
<td id="status-zep" style="padding: 8px; border: 1px solid #334155;">-</td>
</tr>
<tr>
<td style="padding: 8px; border: 1px solid #334155;">- Lieferskonto</td>
<td style="padding: 8px; border: 1px solid #334155;">2 % vom ZEP</td>
<td style="padding: 8px; border: 1px solid #334155;"><input type="number" step="0.01" id="val-skonto-eur" class="ihk-input" placeholder="Skonto in €"></td>
<td id="status-skonto-eur" style="padding: 8px; border: 1px solid #334155;">-</td>
</tr>
<tr style="background: rgba(56, 189, 248, 0.05);">
<td style="padding: 8px; border: 1px solid #334155; font-weight: bold;">= Bareinkaufspreis (BEP)</td>
<td style="padding: 8px; border: 1px solid #334155;">-</td>
<td style="padding: 8px; border: 1px solid #334155;"><input type="number" step="0.01" id="val-bep" class="ihk-input" placeholder="BEP in €"></td>
<td id="status-bep" style="padding: 8px; border: 1px solid #334155;">-</td>
</tr>
<tr>
<td style="padding: 8px; border: 1px solid #334155;">+ Bezugskosten (Fracht, Verpackung)</td>
<td style="padding: 8px; border: 1px solid #334155;">-</td>
<td style="padding: 8px; border: 1px solid #334155;"><input type="number" step="0.01" id="val-bezug-eur" class="ihk-input" value="350.00" disabled style="background:#1e293b;"></td>
<td style="padding: 8px; border: 1px solid #334155; color: #4ade80;">✓ Gegeben</td>
</tr>
<tr style="background: rgba(34, 197, 94, 0.1); font-weight: bold;">
<td style="padding: 10px; border: 1px solid #334155; color: #4ade80;">= Bezugspreis / Einstandspreis</td>
<td style="padding: 10px; border: 1px solid #334155;">-</td>
<td style="padding: 10px; border: 1px solid #334155;"><input type="number" step="0.01" id="val-einstand" class="ihk-input" placeholder="Einstandspreis €" style="border-color: #22c55e;"></td>
<td id="status-einstand" style="padding: 10px; border: 1px solid #334155;">-</td>
</tr>
</tbody>
</table>
<div style="display: flex; gap: 10px; margin-top: 16px;">
<button class="ihk-btn ihk-btn-success" id="btn-check-bezug">✓ Eingaben prüfen</button>
<button class="ihk-btn ihk-btn-secondary" id="btn-solve-bezug">💡 Lösung aufdecken</button>
<button class="ihk-btn ihk-btn-secondary" id="btn-new-bezug">🎲 Neue Zufallszahlen</button>
</div>
<div id="box-bezug-res" class="ihk-result-box" style="margin-top: 16px;"></div>
</div>
<!-- Ansicht 2: Verzugszinsen § 288 BGB -->
<div id="view-verzug" style="display: none;">
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin-bottom: 18px; border: 1px solid #334155;">
<strong style="color: #f8fafc;">Gesetzliche Grundlagen nach BGB (§ 288):</strong>
<p style="color: #cbd5e1; font-size: 0.9rem; margin: 8px 0 0 0; line-height: 1.6;">
- <strong>Verbrauchergeschäft (B2C):</strong> Basiszinssatz + <strong>5 Prozentpunkte</strong>.<br>
- <strong>Handelsgeschäft / Unternehmen (B2B):</strong> Basiszinssatz + <strong>9 Prozentpunkte</strong>.<br>
- <strong>Mahnpauschale bei B2B (§ 288 Abs. 5 BGB):</strong> Pauschal <strong>40,00 €</strong> Verzugsschadenersatz (unabhängig von tatsächlichen Mahnkosten!).<br>
- <strong>Zinsformel (Deutsche Zinsmethode 30/360):</strong> <code>Z = (Forderungsbetrag * Zinssatz * Verzugstage) / (100 * 360)</code>
</p>
</div>
<div style="display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 16px; margin-bottom: 20px;">
<div class="ihk-input-group">
<label>Rechnungsbetrag (Brutto):</label>
<input type="number" id="vz-betrag" class="ihk-input" value="11900.00" step="100">
</div>
<div class="ihk-input-group">
<label>Geschäftsart:</label>
<select id="vz-art" class="ihk-select">
<option value="B2B" selected>B2B (Handelsgeschäft zw. Firmen: +9 %-Pkt.)</option>
<option value="B2C">B2C (Verbrauchergeschäft: +5 %-Pkt.)</option>
</select>
</div>
<div class="ihk-input-group">
<label>Aktueller Basiszinssatz (§ 247 BGB):</label>
<input type="number" id="vz-basiszins" class="ihk-input" value="3.62" step="0.01">
</div>
<div class="ihk-input-group">
<label>Tage im Verzug:</label>
<input type="number" id="vz-tage" class="ihk-input" value="45" min="1" max="360">
</div>
</div>
<div style="display: flex; gap: 10px; margin-bottom: 16px;">
<button class="ihk-btn ihk-btn-success" id="btn-calc-verzug">🧮 Verzugszinsen & Gesamtforderung berechnen</button>
</div>
<div id="vz-result-card" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 18px; display: none;">
<h4 style="color: #38bdf8; margin: 0 0 12px 0;">Ergebnis der Zinsberechnung:</h4>
<div id="vz-result-content" style="color: #cbd5e1; font-size: 0.92rem; line-height: 1.8;"></div>
</div>
</div>
</div>
`;
this.attachEvents();
}
attachEvents() {
const tabBezug = document.getElementById("tab-bezug");
const tabVerzug = document.getElementById("tab-verzug");
const viewBezug = document.getElementById("view-bezug");
const viewVerzug = document.getElementById("view-verzug");
tabBezug.addEventListener("click", () => {
tabBezug.className = "ihk-btn ihk-btn-primary";
tabVerzug.className = "ihk-btn ihk-btn-secondary";
viewBezug.style.display = "block";
viewVerzug.style.display = "none";
});
tabVerzug.addEventListener("click", () => {
tabVerzug.className = "ihk-btn ihk-btn-primary";
tabBezug.className = "ihk-btn ihk-btn-secondary";
viewVerzug.style.display = "block";
viewBezug.style.display = "none";
});
document.getElementById("btn-check-bezug").addEventListener("click", () => this.checkBezug());
document.getElementById("btn-solve-bezug").addEventListener("click", () => this.solveBezug());
document.getElementById("btn-new-bezug").addEventListener("click", () => this.newBezugScenario());
document.getElementById("btn-calc-verzug").addEventListener("click", () => this.calculateVerzug());
}
getBezugValues() {
const lep = 10000;
const rabattP = 0.15;
const skontoP = 0.02;
const bezugK = 350;
const rabattEur = lep * rabattP; // 1500
const zep = lep - rabattEur; // 8500
const skontoEur = zep * skontoP; // 170
const bep = zep - skontoEur; // 8330
const einstand = bep + bezugK; // 8680
return { lep, rabattEur, zep, skontoEur, bep, bezugK, einstand };
}
checkBezug() {
const sol = this.getBezugValues();
const uRabatt = parseFloat(document.getElementById("val-rabatt-eur").value);
const uZep = parseFloat(document.getElementById("val-zep").value);
const uSkonto = parseFloat(document.getElementById("val-skonto-eur").value);
const uBep = parseFloat(document.getElementById("val-bep").value);
const uEinstand = parseFloat(document.getElementById("val-einstand").value);
let allOk = true;
const testVal = (actual, expected, statusId) => {
const el = document.getElementById(statusId);
if (Math.abs(actual - expected) < 0.05) {
el.innerHTML = `<span style="color:#4ade80;">✓ ${expected.toFixed(2)} €</span>`;
} else {
el.innerHTML = `<span style="color:#ef4444;">✕ Soll: ${expected.toFixed(2)} €</span>`;
allOk = false;
}
};
testVal(uRabatt, sol.rabattEur, "status-rabatt-eur");
testVal(uZep, sol.zep, "status-zep");
testVal(uSkonto, sol.skontoEur, "status-skonto-eur");
testVal(uBep, sol.bep, "status-bep");
testVal(uEinstand, sol.einstand, "status-einstand");
const box = document.getElementById("box-bezug-res");
box.style.display = "block";
if (allOk) {
box.innerHTML = `
<div style="border-left: 4px solid #22c55e; padding-left: 12px; color: #4ade80;">
<strong>🎉 Hervorragend!</strong> Alle 5 Kalkulationsschritte sind centgenau richtig berechnet.<br>
Der Bezugspreis beträgt exakt <strong>${sol.einstand.toFixed(2)} €</strong>.
</div>
`;
} else {
box.innerHTML = `
<div style="border-left: 4px solid #ef4444; padding-left: 12px; color: #f87171;">
<strong>⚠️ Abweichung entdeckt:</strong> Bitte prüfen Sie die rot markierten Zeilen. Beachten Sie, dass Lieferskonto (2 %) vom Zieleinkaufspreis (ZEP) abgezogen wird!
</div>
`;
}
}
solveBezug() {
const sol = this.getBezugValues();
document.getElementById("val-rabatt-eur").value = sol.rabattEur.toFixed(2);
document.getElementById("val-zep").value = sol.zep.toFixed(2);
document.getElementById("val-skonto-eur").value = sol.skontoEur.toFixed(2);
document.getElementById("val-bep").value = sol.bep.toFixed(2);
document.getElementById("val-einstand").value = sol.einstand.toFixed(2);
this.checkBezug();
}
newBezugScenario() {
this.solveBezug();
}
calculateVerzug() {
const betrag = parseFloat(document.getElementById("vz-betrag").value) || 0;
const art = document.getElementById("vz-art").value;
const basiszins = parseFloat(document.getElementById("vz-basiszins").value) || 0;
const tage = parseInt(document.getElementById("vz-tage").value, 10) || 0;
const aufschlag = art === "B2B" ? 9.0 : 5.0;
const zinssatzGesamt = basiszins + aufschlag;
const zinsen = (betrag * zinssatzGesamt * tage) / (100 * 360);
const pauschale = art === "B2B" ? 40.0 : 0.0;
const gesamtForderung = betrag + zinsen + pauschale;
const card = document.getElementById("vz-result-card");
const content = document.getElementById("vz-result-content");
card.style.display = "block";
content.innerHTML = `
<table style="width: 100%; border-collapse: collapse;">
<tr><td style="padding: 4px 0;">Hauptforderung:</td><td style="text-align: right; font-weight: bold;">${betrag.toFixed(2)} €</td></tr>
<tr><td style="padding: 4px 0;">Basiszinssatz:</td><td style="text-align: right;">${basiszins.toFixed(2)} %</td></tr>
<tr><td style="padding: 4px 0;">Gesetzlicher Verzugszinsaufschlag (${art}):</td><td style="text-align: right;">+ ${aufschlag.toFixed(2)} %-Punkte</td></tr>
<tr style="border-bottom: 1px solid #334155;"><td style="padding: 4px 0; font-weight: bold; color: #38bdf8;">= Verzugszinssatz p.a.:</td><td style="text-align: right; font-weight: bold; color: #38bdf8;">${zinssatzGesamt.toFixed(2)} %</td></tr>
<tr><td style="padding: 4px 0;">Verzugstage (30/360 Methode):</td><td style="text-align: right;">${tage} Tage</td></tr>
<tr><td style="padding: 4px 0; color: #facc15;">Berechnete Verzugszinsen:</td><td style="text-align: right; color: #facc15; font-weight: bold;">+ ${zinsen.toFixed(2)} €</td></tr>
${art === "B2B" ? `<tr><td style="padding: 4px 0; color: #fb923c;">Mahnpauschale (§ 288 Abs. 5 BGB):</td><td style="text-align: right; color: #fb923c; font-weight: bold;">+ 40,00 €</td></tr>` : ""}
<tr style="border-top: 2px solid #22c55e; font-size: 1.1rem;"><td style="padding: 8px 0; font-weight: bold; color: #4ade80;">Gesamtforderung an Schuldner:</td><td style="text-align: right; font-weight: bold; color: #4ade80;">${gesamtForderung.toFixed(2)} €</td></tr>
</table>
`;
}
}
document.addEventListener("DOMContentLoaded", () => {
if (document.getElementById("beleg-kalkulator-container")) {
window.belegKalkulator = new BelegKalkulator("beleg-kalkulator-container");
}
});

View file

@ -0,0 +1,172 @@
/**
* 🔄 IHK BPMN 2.0 & EPK INTERAKTIVER TRAINER 🔄
* ============================================
* Interaktiver Trainer zur Geschäftsprozessmodellierung:
* 1. Gateway-Logik (XOR, AND, OR) und Pfad-Entscheidungen
* 2. Pool & Lane Regeln (Sequenzfluss vs. Nachrichtenfluss)
* 3. EPK-Syntaxregeln (Ereignis-Funktions-Alternation, Konnektoren)
*/
class BpmnTrainer {
constructor(containerId) {
this.container = document.getElementById(containerId);
this.currentTask = 0;
this.tasks = [
{
title: "Aufgabe 1: BPMN 2.0 Gateway-Auswahl für IT-Support",
scenario: "Ein Kunde meldet ein Softwareproblem im Ticketsystem. Der First-Level-Support analysiert die Anfrage. Wenn das Problem durch Standardwissen gelöst werden kann, wird sofort eine Lösung an den Kunden geschickt. Falls Spezialwissen erforderlich ist, wird das Ticket an das Entwicklerteam eskaliert. Es wird EXAKT EINER dieser beiden Pfade gewählt.",
question: "Welches BPMN 2.0 Gateway muss für diese Verzweigung eingesetzt werden?",
options: [
{ text: "Exklusives Gateway (XOR) - Raute mit 'X' oder leer", correct: true, hint: "Richtig! XOR (Exclusive OR) schlägt genau einen Alternativpfad basierend auf Bedingungen ein." },
{ text: "Paralleles Gateway (AND) - Raute mit '+'", correct: false, hint: "Falsch. AND würde BEIDE Pfade gleichzeitig auslösen." },
{ text: "Inklusives Gateway (OR) - Raute mit 'O'", correct: false, hint: "Falsch. OR erlaubt eine beliebige Kombination (1 bis alle Pfade)." },
{ text: "Ereignisbasiertes Gateway - Raute mit Doppelkreis und Fünfeck", correct: false, hint: "Falsch. Ein event-basiertes Gateway wartet auf externe Ereignisse, nicht auf Datenbedingungen." }
]
},
{
title: "Aufgabe 2: Sequenzfluss vs. Nachrichtenfluss über Pool-Grenzen",
scenario: "Ein Onlineshop (Pool 'Webshop AG') kommuniziert mit einem externen Logistikdienstleister (Pool 'LogiTrans GmbH'). Eine Bestellung wurde abgeschlossen und soll an LogiTrans übertragen werden.",
question: "Welche Verbindungslinie ist zwischen zwei getrennten Pools (Blackbox oder Whitebox) nach BPMN 2.0-Standard zulässig?",
options: [
{ text: "Durchgezogene Linie mit gefülltem Pfeil (Sequenzfluss)", correct: false, hint: "Regelverstoß! Ein Sequenzfluss darf NIEMALS eine Pool-Grenze überschreiten." },
{ text: "Gestrichelte Linie mit offenem Pfeil und Kreis am Ursprung (Nachrichtenfluss)", correct: true, hint: "Perfekt! Nachrichtenflüsse (Message Flow) sind das EINZIGE Mittel zur Kommunikation zwischen getrennten Pools." },
{ text: "Gepunktete Linie ohne Pfeilspitze (Assoziation)", correct: false, hint: "Assoziationen verbinden lediglich Datenobjekte oder Textanmerkungen mit Elementen." },
{ text: "Doppelte durchgezogene Linie", correct: false, hint: "Dieses Symbol existiert im BPMN 2.0 Standard nicht." }
]
},
{
title: "Aufgabe 3: EPK Syntaxregeln (Ereignisgesteuerte Prozesskette)",
scenario: "Ein Auszubildender zeichnet eine EPK für die Serverüberwachung. Nach dem Ereignis 'Server ausgefallen' setzt er direkt einen XOR-Konnektor, um zwischen zwei Folgeaktionen zu verzweigen.",
question: "Ist diese Konstruktion nach den formalen Syntaxregeln einer EPK zulässig?",
options: [
{ text: "Nein! Ein Ereignis hat keine Entscheidungskraft. Eine XOR- oder ODER-Verzweigung darf nur nach einer FUNKTION erfolgen.", correct: true, hint: "Hervorragend! Ein Ereignis ist ein passiver Zustand ohne logische Intelligenz. Nur Funktionen treffen Entscheidungen, die danach mit XOR/ODER verzweigen dürfen." },
{ text: "Ja, jedes Element darf beliebig mit Konnektoren verzweigen.", correct: false, hint: "Falsch. Die Konnektorenregeln der EPK verbieten XOR/ODER direkt nach einem einzelnen Ereignis." },
{ text: "Nein, Konnektoren dürfen in EPKs grundsätzlich nur zur Zusammenführung, nie zur Verzweigung genutzt werden.", correct: false, hint: "Falsch. Konnektoren können sowohl verzweigen als auch zusammenführen." },
{ text: "Ja, solange das Ereignis ein Sechseck ist.", correct: false, hint: "Falsch. Die geometrische Form ändert nichts an den logischen Verknüpfungsregeln." }
]
}
];
this.init();
}
init() {
if (!this.container) return;
this.render();
}
render() {
const t = this.tasks[this.currentTask];
this.container.innerHTML = `
<div class="ihk-tool-card" style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin-bottom: 24px;">
<div class="ihk-tool-header" style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px;">
<div>
<h3 style="color: #38bdf8; margin: 0; font-size: 1.3rem;">🔄 BPMN 2.0 & EPK Modellierungs-Trainer</h3>
<p style="color: #94a3b8; font-size: 0.9rem; margin: 4px 0 0 0;">Frage ${this.currentTask + 1} von ${this.tasks.length}</p>
</div>
<div style="display: flex; gap: 8px;">
${this.tasks.map((_, i) => `
<button class="ihk-btn ${i === this.currentTask ? 'ihk-btn-primary' : 'ihk-btn-secondary'}" style="padding: 4px 10px; font-size: 0.8rem;" onclick="window.bpmnTrainer.switchTask(${i})">
${i + 1}
</button>
`).join("")}
</div>
</div>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; border: 1px solid #334155; margin-bottom: 20px;">
<h4 style="color: #facc15; margin: 0 0 8px 0; font-size: 1.05rem;">${t.title}</h4>
<p style="color: #cbd5e1; font-size: 0.92rem; line-height: 1.6; margin: 0 0 12px 0;">
${t.scenario}
</p>
<strong style="color: #38bdf8; font-size: 0.95rem;">${t.question}</strong>
</div>
<div style="display: flex; flex-direction: column; gap: 10px; margin-bottom: 20px;">
${t.options.map((opt, i) => `
<div id="bpmn-opt-${i}" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 14px 16px; cursor: pointer; transition: all 0.2s;" onclick="window.bpmnTrainer.selectOption(${i})">
<label style="cursor: pointer; display: flex; align-items: center; gap: 12px; color: #f8fafc; font-size: 0.92rem;">
<input type="radio" name="bpmn-radio" value="${i}" style="transform: scale(1.2);">
<span>${opt.text}</span>
</label>
</div>
`).join("")}
</div>
<div style="display: flex; gap: 10px;">
<button class="ihk-btn ihk-btn-success" id="btn-check-bpmn">✓ Antwort prüfen</button>
<button class="ihk-btn ihk-btn-secondary" id="btn-next-bpmn" ${this.currentTask === this.tasks.length - 1 ? 'disabled' : ''}>Nächste Aufgabe →</button>
</div>
<div id="bpmn-feedback" class="ihk-result-box" style="margin-top: 16px;"></div>
</div>
`;
document.getElementById("btn-check-bpmn").addEventListener("click", () => this.check());
document.getElementById("btn-next-bpmn").addEventListener("click", () => {
if (this.currentTask < this.tasks.length - 1) {
this.switchTask(this.currentTask + 1);
}
});
}
selectOption(index) {
const radios = document.getElementsByName("bpmn-radio");
if (radios[index]) radios[index].checked = true;
}
switchTask(index) {
this.currentTask = index;
this.render();
}
check() {
const t = this.tasks[this.currentTask];
const radios = document.getElementsByName("bpmn-radio");
let selected = -1;
for (let i = 0; i < radios.length; i++) {
if (radios[i].checked) {
selected = i;
break;
}
}
const box = document.getElementById("bpmn-feedback");
box.style.display = "block";
if (selected === -1) {
box.innerHTML = `<span style="color: #facc15;">⚠️ Bitte wählen Sie eine Antwort aus.</span>`;
return;
}
const chosen = t.options[selected];
t.options.forEach((opt, idx) => {
const card = document.getElementById(`bpmn-opt-${idx}`);
if (opt.correct) {
card.style.borderColor = "#22c55e";
card.style.background = "rgba(34, 197, 94, 0.15)";
} else if (idx === selected) {
card.style.borderColor = "#ef4444";
card.style.background = "rgba(239, 68, 68, 0.15)";
}
});
if (chosen.correct) {
box.innerHTML = `
<div style="border-left: 4px solid #22c55e; padding-left: 12px; color: #4ade80;">
<strong>🎉 Ausgezeichnet!</strong><br>${chosen.hint}
</div>
`;
} else {
box.innerHTML = `
<div style="border-left: 4px solid #ef4444; padding-left: 12px; color: #f87171;">
<strong>❌ Nicht ganz:</strong><br>${chosen.hint}
</div>
`;
}
}
}
document.addEventListener("DOMContentLoaded", () => {
if (document.getElementById("bpmn-trainer-container")) {
window.bpmnTrainer = new BpmnTrainer("bpmn-trainer-container");
}
});

View file

@ -592,11 +592,11 @@ window.IHK_QUESTION_BANK = [
"id": "ap1_lf5_001", "id": "ap1_lf5_001",
"exam": "AP1", "exam": "AP1",
"lernfeld": "LF 5", "lernfeld": "LF 5",
"topic": "Struktogramm Schleifentypen nach DIN 66261", "topic": "UML-Aktivitätsdiagramm & Pseudocode Schleifenlogik",
"scenario": "Zur Programmierung eines Algorithmus werden Schleifenstrukturen entworfen.", "scenario": "Für einen automatisierten Backup-Prozess soll die Kontrolllogik modelliert werden: Es wird geprüft, ob ausreichend Speicherplatz frei ist. Wenn ja, werden Dateien kopiert und eine Erfolgsmeldung gesendet. Wenn nein, wird ein Fehler protokolliert und der Vorgang abgebrochen.",
"question": "Vergleichen Sie eine kopfgesteuerte Schleife (WHILE) mit einer fußgesteuerten Schleife (DO-WHILE) hinsichtlich Ausführungslogik und Mindestanzahl von Durchläufen und skizzieren Sie die Darstellung nach Nassi-Shneiderman.", "question": "Vergleichen Sie die Modellierung von Kontrollstrukturen im UML-Aktivitätsdiagramm (Entscheidungsknoten / Raute, Guards) mit strukturiertem Pseudocode (WENN-DANN-SONST) und erläutern Sie die Funktion von Fork- und Join-Knoten (Synchronisationsbalken) bei parallelen Abläufen.",
"points": 6, "points": 6,
"solution": "Kopfgesteuerte Schleife (abweisend): Die Bedingung wird VOR jedem Schleifendurchlauf geprüft. Ist die Bedingung von Beginn an falsch, wird der Rumpf 0-mal ausgeführt. Nassi-Shneiderman: Oberer horizontaler Balken mit Bedingung, der den Schleifenkörper links und unten umschließt. (3 Pkt.)\nFußgesteuerte Schleife (nicht abweisend): Die Bedingung wird NACH jedem Schleifendurchlauf am Fuß geprüft. Der Rumpf wird mindestens 1-mal garantiert ausgeführt. Nassi-Shneiderman: Unterer horizontaler Balken mit Bedingung, der den Schleifenkörper links und oben umschließt. (3 Pkt.)", "solution": "Entscheidungsknoten & Guards: Im UML-Aktivitätsdiagramm stellt eine Raute eine Verzweigung dar; die ausgehenden Kanten tragen Bedingungen in eckigen Klammern [Guards], von denen exakt eine wahr sein muss (äquivalent zu WENN-DANN-SONST im Pseudocode). (3 Pkt.)\nFork- und Join-Knoten: Ein Fork-Knoten (dicker Balken) teilt einen eingehenden Kontrollfluss in mehrere nebenläufig/parallel ausgeführte Pfade auf. Ein Join-Knoten synchronisiert diese parallelen Pfade wieder und lässt den Kontrollfluss erst weiterlaufen, wenn ALLE eingehenden Aktionen abgeschlossen sind. (3 Pkt.)",
"type": "text", "type": "text",
"options": [] "options": []
}, },
@ -688,11 +688,11 @@ window.IHK_QUESTION_BANK = [
"id": "ap1_lf5_009", "id": "ap1_lf5_009",
"exam": "AP1", "exam": "AP1",
"lernfeld": "LF 5", "lernfeld": "LF 5",
"topic": "SQL DDL CREATE TABLE mit Constraints", "topic": "ER-Modellierung Chen vs Krähenfuß-Notation",
"scenario": "Für eine Ticket-Verwaltung soll die Tabelle \"ticket\" per SQL angelegt werden: id (Ganzzahl, Primärschlüssel mit Autoinkrement), titel (Text, max. 100 Zeichen, Pflichtfeld), status (Text, Standardwert \"OFFEN\"), prioritaet (Ganzzahl, Werte nur von 1 bis 5 erlaubt), ersteller_id (Ganzzahl, Fremdschlüssel auf benutzer.id mit Kaskadierung beim Löschen).", "scenario": "Zur Dokumentation eines Kundensystems werden Entity-Relationship-Modelle (ERM) eingesetzt.",
"question": "Schreiben Sie das syntaktisch korrekte SQL-Statement nach ANSI/ISO-Standard.", "question": "Vergleichen Sie die Chen-Notation mit der Krähenfuß-Notation (Martin-Notation) hinsichtlich der Darstellung von Entitäten, Attributen und Kardinalitäten (1:1, 1:n, n:m).",
"points": 10, "points": 8,
"solution": "CREATE TABLE ticket (\n id INTEGER PRIMARY KEY AUTO_INCREMENT,\n titel VARCHAR(100) NOT NULL,\n status VARCHAR(20) DEFAULT 'OFFEN',\n prioritaet INT CHECK (prioritaet BETWEEN 1 AND 5),\n ersteller_id INT,\n FOREIGN KEY (ersteller_id) REFERENCES benutzer(id) ON DELETE CASCADE\n); (10 Pkt. - Abzug bei fehlendem NOT NULL, CHECK, DEFAULT oder FOREIGN KEY)", "solution": "Entitäten: Bei Chen als Rechteck dargestellt; bei Krähenfuß ebenfalls als Rechteck/Tabelle mit getrenntem Kopf für den Entitätsnamen. (2 Pkt.)\nAttribute: Bei Chen als Ellipsen, die mit der Entität verbunden sind (Primärschlüssel unterstrichen); bei Krähenfuß direkt als Zeilen innerhalb des Entitätsrechtecks aufgelistet (PK/FK gekennzeichnet). (3 Pkt.)\nKardinalitäten: Bei Chen über Rauten als Beziehungselemente mit Beschriftung 1, n, m an den Kanten; bei Krähenfuß direkt an den Linienenden über Symbole (Strich = genau eins, Kreis = optional/null, Dreizack/Krähenfuß = viele). (3 Pkt.)",
"type": "text", "type": "text",
"options": [] "options": []
}, },
@ -700,11 +700,11 @@ window.IHK_QUESTION_BANK = [
"id": "ap1_lf5_010", "id": "ap1_lf5_010",
"exam": "AP1", "exam": "AP1",
"lernfeld": "LF 5", "lernfeld": "LF 5",
"topic": "SQL DML Aggregation und GROUP BY mit HAVING", "topic": "Relationales Datenmodell & Referenzielle Integrität",
"scenario": "Gegeben sind die Tabellen kunden (id, name, stadt) und bestellungen (id, kunde_id, betrag, datum).", "scenario": "In einer relationalen Datenbank werden Kundendaten und deren Bestellungen verwaltet.",
"question": "Formulieren Sie eine SQL-Abfrage, die den Kundennamen und die Gesamtsumme aller Bestellungen für jeden Kunden ausgibt, dessen Gesamtbestellwert 10.000 EUR überschreitet. Das Ergebnis soll absteigend nach der Summe sortiert sein.", "question": "Definieren Sie die Begriffe Primärschlüssel, Fremdschlüssel und Referenzielle Integrität und erklären Sie, welche Gefahr droht, wenn die referenzielle Integrität verletzt wird.",
"points": 10, "points": 8,
"solution": "SELECT k.name, SUM(b.betrag) AS gesamtumsatz\nFROM kunden k\nINNER JOIN bestellungen b ON k.id = b.kunde_id\nGROUP BY k.id, k.name\nHAVING SUM(b.betrag) > 10000\nORDER BY gesamtumsatz DESC; (10 Pkt. - Abzug bei WHERE statt HAVING für Aggregatfunktion oder fehlendem GROUP BY)", "solution": "Primärschlüssel (Primary Key): Ein Attribut oder eine minimale Attributkombination, die jeden Datensatz einer Tabelle eindeutig und unveränderlich identifiziert (Darf weder Duplikate noch NULL enthalten). (2 Pkt.)\nFremdschlüssel (Foreign Key): Ein Attribut in einer Relation, das auf den Primärschlüssel einer anderen (oder derselben) Relation verweist und logische Beziehungen herstellt. (2 Pkt.)\nReferenzielle Integrität: Die Integritätsbedingung besagt, dass jeder Fremdschlüsselwert entweder NULL sein muss oder tatsächlich als gültiger Primärschlüsselwert in der referenzierten Elterntabelle existieren muss. (2 Pkt.)\nGefahr bei Verletzung: Entstehung von \"verwaisten Datensätzen\" (Orphan Records), z. B. Bestellungen ohne zugehörigen Kunden, was zu inkonsistenten Datenbeständen und Abstürzen in Auswertungen führt. (2 Pkt.)",
"type": "text", "type": "text",
"options": [] "options": []
}, },
@ -712,23 +712,23 @@ window.IHK_QUESTION_BANK = [
"id": "ap1_lf5_011", "id": "ap1_lf5_011",
"exam": "AP1", "exam": "AP1",
"lernfeld": "LF 5", "lernfeld": "LF 5",
"topic": "SQL JOIN-Typen INNER vs LEFT vs FULL", "topic": "Trace-Tabelle Array-Filterung und Schwellenwert",
"scenario": "In einer Datenbank existieren mitarbeiter (id, name, abt_id) und abteilungen (id, bezeichnung). Einige Mitarbeiter haben keine Abteilung, und einige Abteilungen haben keine Mitarbeiter.", "scenario": "Gegeben ist ein Array messwerte = [18, 24, 12, 31, 20] und folgender Pseudocode:\nGANZZAHL anzahl = 0\nFÜR i VON 0 BIS 4 SCHRITT 1:\n WENN messwerte[i] >= 20 DANN\n anzahl = anzahl + 1\n ENDE_WENN\nENDE_FÜR",
"question": "Erläutern Sie den Unterschied im Abfrageergebnis zwischen INNER JOIN und LEFT OUTER JOIN bezüglich der Ergebniszeilen.", "question": "Führen Sie eine vollständige Trace-Tabelle mit den Spalten: i, messwerte[i], Bedingung (>= 20), anzahl für alle 5 Schleifendurchläufe und geben Sie den Endwert von anzahl an.",
"points": 6, "points": 8,
"solution": "INNER JOIN: Liefert ausschließlich Zeilen zurück, bei denen in beiden Tabellen ein übereinstimmender Wert vorliegt (Schnittmenge). Mitarbeiter ohne Abteilung und Abteilungen ohne Mitarbeiter werden vollständig verworfen. (3 Pkt.)\nLEFT OUTER JOIN (mitarbeiter LEFT JOIN abteilungen): Liefert ALLE Datensätze der linken Tabelle (mitarbeiter), selbst wenn keine Übereinstimmung in abteilungen vorliegt. Die fehlenden Abteilungsspalten werden mit NULL aufgefüllt. (3 Pkt.)", "solution": "Initial: anzahl = 0\nSchritt 1: i=0 -> messwerte[0]=18 -> 18>=20 (falsch) -> anzahl bleibt 0. (1,5 Pkt.)\nSchritt 2: i=1 -> messwerte[1]=24 -> 24>=20 (wahr) -> anzahl = 0 + 1 = 1. (1,5 Pkt.)\nSchritt 3: i=2 -> messwerte[2]=12 -> 12>=20 (falsch) -> anzahl bleibt 1. (1,5 Pkt.)\nSchritt 4: i=3 -> messwerte[3]=31 -> 31>=20 (wahr) -> anzahl = 1 + 1 = 2. (1,5 Pkt.)\nSchritt 5: i=4 -> messwerte[4]=20 -> 20>=20 (wahr) -> anzahl = 2 + 1 = 3. (1,5 Pkt.)\nEnde: Schleife beendet, Endwert anzahl = 3. (0,5 Pkt.)",
"type": "text", "type": "calc",
"options": [] "options": []
}, },
{ {
"id": "ap1_lf5_012", "id": "ap1_lf5_012",
"exam": "AP1", "exam": "AP1",
"lernfeld": "LF 5", "lernfeld": "LF 5",
"topic": "SQL Transaktionen ACID-Eigenschaften", "topic": "Transaktionskonzept & ACID-Eigenschaften",
"scenario": "Bei einer Banküberweisung von 500 EUR von Konto A auf Konto B wird ein Transaktionsblock ausgeführt.", "scenario": "Bei der Erfassung eines Kundenauftrags müssen Kundendaten, Bestellkopf und fünf Bestellpositionen zeitgleich in der Datenbank gespeichert werden.",
"question": "Nennen und erläutern Sie die vier ACID-Eigenschaften und beschreiben Sie, was passiert, wenn nach dem Abbuchen von Konto A das Datenbanksystem abstürzt.", "question": "Nennen und erläutern Sie die vier ACID-Eigenschaften und beschreiben Sie, warum ein automatisches Rollback erforderlich ist, wenn das Speichern der vierten Bestellposition fehlschlägt.",
"points": 8, "points": 8,
"solution": "Atomarität (Atomicity): Alles-oder-Nichts-Prinzip. Eine Transaktion wird entweder ganz oder gar nicht ausgeführt. (2 Pkt.)\nKonsistenz (Consistency): Nach Abschluss der Transaktion befindet sich die Datenbank in einem gültigen, integren Zustand. (2 Pkt.)\nIsolation: Gleichzeitige Transaktionen beeinflussen sich nicht gegenseitig. (1 Pkt.)\nDauerhaftigkeit (Durability): Erfolgreich mit COMMIT bestätigte Änderungen bleiben dauerhaft im Speicher erhalten. (1 Pkt.)\nAbsturzfolge: Da die Buchung nicht durch COMMIT bestätigt wurde, greift beim Neustart ein automatisches Rollback (Undo-Logging). Die Abbuchung auf Konto A wird rückgängig gemacht. (2 Pkt.)", "solution": "Atomarität (Atomicity): Alles-oder-Nichts-Prinzip. Eine Transaktion wird entweder vollständig oder gar nicht in der Datenbank festgeschrieben. (2 Pkt.)\nKonsistenz (Consistency): Vor Beginn und nach Abschluss einer Transaktion befindet sich die Datenbank in einem konsistenten, widerspruchsfreien Zustand. (2 Pkt.)\nIsolation: Parallele Transaktionen dürfen sich nicht gegenseitig beeinflussen, als liefen sie isoliert nacheinander ab. (1 Pkt.)\nDauerhaftigkeit (Durability): Nach erfolgreichem Transaktionsabschluss (Commit) sind die Daten dauerhaft und vor Systemabstürzen geschützt gespeichert. (1 Pkt.)\nBedarf für Rollback: Schlägt die vierte Position fehl, verhindert das Rollback eine unvollständige Bestellung (Kopf ohne alle Positionen), indem alle bereits geschriebenen Teilschritte rückgängig gemacht werden. (2 Pkt.)",
"type": "text", "type": "text",
"options": [] "options": []
}, },
@ -864,6 +864,138 @@ window.IHK_QUESTION_BANK = [
"type": "text", "type": "text",
"options": [] "options": []
}, },
{
"id": "ap1_bpmn_001",
"exam": "AP1",
"lernfeld": "LF 1",
"topic": "BPMN 2.0 Gateways (Exklusiv XOR, Parallel AND, Inklusiv OR)",
"scenario": "In einem IT-Service-Helpdesk wird die Bearbeitung eingehender Störungsmeldungen als BPMN 2.0 Geschäftsprozess modelliert.",
"question": "Erläutern Sie die Funktionsweise und grafischen Symbole der drei BPMN-Gateways: Exklusives Gateway (XOR), Paralleles Gateway (AND) und Inklusives Gateway (OR) beim Verzweigen (Diverging) und Zusammenführen (Converging).",
"points": 8,
"solution": "Exklusives Gateway (XOR, Raute mit X oder leer): Genau ein einziger ausgehender Pfad wird gewählt, dessen Bedingung zutrifft. Beim Zusammenführen wartet es nicht, sondern leitet jedes eintreffende Token sofort weiter. (3 Pkt.)\nParalleles Gateway (AND, Raute mit Pluszeichen +): Alle ausgehenden Pfade werden gleichzeitig/nebenläufig aktiviert (Fork). Beim Zusammenführen (Join) wartet das Gateway, bis auf ALLEN eingehenden Pfaden ein Token eingetroffen ist, bevor der Prozess fortgesetzt wird. (3 Pkt.)\nInklusives Gateway (OR, Raute mit Kreis O): Ein oder mehrere Pfade werden gewählt, deren Bedingungen wahr sind. Beim Zusammenführen synchronisiert es alle tatsächlich aktiven eingehenden Pfade. (2 Pkt.)",
"type": "text",
"options": []
},
{
"id": "ap1_bpmn_002",
"exam": "AP1",
"lernfeld": "LF 1",
"topic": "BPMN 2.0 Pools, Lanes und Flussregeln",
"scenario": "Zur Abbildung eines Bestell- und Freigabeprozesses für Neugeräte zwischen Kunde, IT-Einkauf und Buchhaltung wird ein BPMN-Diagramm erstellt.",
"question": "Unterscheiden Sie Pools und Swimlanes (Bahnen) und erläutern Sie die Regeln bezüglich Sequenzfluss (Sequence Flow) und Nachrichtenfluss (Message Flow).",
"points": 6,
"solution": "Pool: Repräsentiert eine eigenständige Organisationseinheit, ein externes Unternehmen oder einen eigenständigen Teilnehmer/Prozess (Black Box oder White Box). (2 Pkt.)\nLane: Unterteilt einen Pool in interne Rollen, Abteilungen oder Systeme (z. B. IT-Einkauf, Buchhaltung). (1 Pkt.)\nFlussregeln: Ein Sequenzfluss (durchgezogener Pfeil) verbindet Aktivitäten innerhalb DENSELBEN Pools und darf niemals Pool-Grenzen überschreiten. Ein Nachrichtenfluss (gestrichelte Linie mit offenem Pfeil und Kreis am Start) stellt die asynchrone Kommunikation ZWISCHEN zwei unterschiedlichen Pools dar. (3 Pkt.)",
"type": "text",
"options": []
},
{
"id": "ap1_epk_001",
"exam": "AP1",
"lernfeld": "LF 1",
"topic": "Ereignisgesteuerte Prozesskette (EPK) Modellierungsregeln",
"scenario": "Ein Onboarding-Prozess für neue Mitarbeiter wird als Ereignisgesteuerte Prozesskette (EPK) dokumentiert.",
"question": "Nennen Sie die drei Grundelemente einer EPK mit ihren geometrischen Symbolen und erläutern Sie zwei fundamentale Syntaxregeln für die Verknüpfung von Ereignissen und Funktionen.",
"points": 8,
"solution": "Grundelemente:\n1. Ereignis: Sechseck (Hexagon). Beschreibt einen eingetretenen Zustand (Auslöser/Ergebnis, z. B. \"Mitarbeitervertrag unterzeichnet\"). (2 Pkt.)\n2. Funktion: Rechteck mit abgerundeten Ecken. Beschreibt eine auszuführende Transformation/Aktivität im Infinitiv (z. B. \"Benutzerkonto im AD anlegen\"). (2 Pkt.)\n3. Logischer Konnektor: Kreis mit Symbol (UND, ODER, XOR) zur Verzweigung/Zusammenführung. (1 Pkt.)\nZwei Syntaxregeln:\n- Alternierungsregel: Ereignisse und Funktionen müssen sich im Ablauf immer strikt abwechseln (niemals Ereignis direkt auf Ereignis oder Funktion direkt auf Funktion ohne Konnektor). (1,5 Pkt.)\n- Konnektorenregel: Ein Ereignis hat keine Entscheidungskraft; nach einem einzelnen Ereignis darf daher niemals ein ODER- oder XOR-Konnektor verzweigen (nur UND ist nach Einzelereignis zulässig). (1,5 Pkt.)",
"type": "text",
"options": []
},
{
"id": "ap1_ki_001",
"exam": "AP1",
"lernfeld": "LF 1",
"topic": "Künstliche Intelligenz im First-Level-Support & Tickettriage",
"scenario": "Ein IT-Service-Desk plant den Einsatz eines KI-Systems (Large Language Model / NLP) zur automatisierten Entgegennahme und Priorisierung von Störungstickets.",
"question": "Nennen Sie drei konkrete Aufgaben, die das KI-System im First-Level-Support übernehmen kann, und erläutern Sie eine zentrale Herausforderung (Risiko) beim automatisierten Ticket-Dispatching.",
"points": 6,
"solution": "Drei Aufgaben:\n1. Automatische Klassifizierung & Triage: Analysieren des Freitextes und Zuweisen der richtigen Fehlerkategorie und Priorität (Prio 1-4). (1,5 Pkt.)\n2. Lösungsvorschläge & Self-Service: Automatischer Abgleich mit der Knowledge Base (FAQ) und Bereitstellung von Standard-Lösungsschritten für den Anwender (z. B. Kennwort-Reset). (1,5 Pkt.)\n3. Routing & Zuweisung: Gezielte Weiterleitung an das zuständige Fach-Supportteam (Second Level). (1 Pkt.)\nHerausforderung / Risiko: Fehlklassifikation (False Positives / Negatives) bei Sarkasmus, unpräziser Sprache oder kombinierten Problemen; ein kritischer Netzwerkausfall könnte fälschlich als Prio 4 eingestuft werden und SLA-Fristen verletzen. (2 Pkt.)",
"type": "text",
"options": []
},
{
"id": "ap1_ki_002",
"exam": "AP1",
"lernfeld": "LF 4",
"topic": "KI-Software am Arbeitsplatz & Datenschutz (DSGVO)",
"scenario": "Mitarbeiter möchten öffentlich zugängliche Cloud-KI-Dienste (z. B. ChatGPT) zur Analyse von Server-Logdateien und Programmcode am Arbeitsplatz einsetzen.",
"question": "Erläutern Sie zwei datenschutzrechtliche Risiken nach DSGVO und formulieren Sie zwei verbindliche Unternehmensrichtlinien für den zulässigen KI-Einsatz.",
"points": 6,
"solution": "Zwei Risiken:\n1. Unzulässige Drittlandübermittlung & Auftragsverarbeitung: Logdateien enthalten oft personenbezogene Daten (IP-Adressen, Benutzernamen). Werden diese ohne Auftragsverarbeitungsvertrag (AVV nach Art. 28 DSGVO) an US-Cloudanbieter übertragen, liegt ein schwerer Datenschutzverstoß vor. (2 Pkt.)\n2. Verlust von Geschäftsgeheimnissen: Öffentliche KIs können eingegebene Prompts und vertraulichen Source Code zum Weitertrainieren zukünftiger Modelle verwenden. (1 Pkt.)\nZwei Richtlinien:\n1. Striktes Verbot der Eingabe personenbezogener Daten (PII), Passwörter, API-Keys oder interner Geschäftsgeheimnisse in nicht freigegebene öffentliche KIs (Anonymisierungspflicht). (1,5 Pkt.)\n2. Vier-Augen-Prinzip & menschliche Letztverantwortung: Von KI generierter Quellcode oder Skripte müssen vor Produktivbetrieb immer zwingend durch IT-Fachpersonal auf Sicherheit und Korrektheit geprüft werden (kein unbesehenes Copy-Paste). (1,5 Pkt.)",
"type": "text",
"options": []
},
{
"id": "ap1_praefix_001",
"exam": "AP1",
"lernfeld": "LF 2",
"topic": "Binärpräfixe (IEC) vs. Dezimalpräfixe (SI) bei Speichermedien",
"scenario": "Ein Festplattenhersteller deklariert eine NVMe-SSD mit einer Speicherkapazität von exakt 4 TB (Terabyte). Das Betriebssystem zeigt nach der Formatierung jedoch eine Kapazität in GiB (Gibibyte) bzw. TiB (Tebibyte) an.",
"question": "Berechnen Sie die Kapazität der Festplatte in Byte auf Basis der Herstellerangabe (SI-Präfix), rechnen Sie diese exakt in GiB und TiB (IEC-Präfixe) um und ermitteln Sie die prozentuale scheinbare Differenz.",
"points": 8,
"solution": "1. Herstellerangabe in Byte (Dezimal / SI, Basis 10):\n 4 TB = 4 * 10^12 Byte = 4.000.000.000.000 Byte. (2 Pkt.)\n2. Umrechnung in GiB und TiB (Binär / IEC, Basis 2):\n 1 GiB = 1.024^3 Byte = 1.073.741.824 Byte.\n Kapazität in GiB = 4.000.000.000.000 / 1.073.741.824 ≈ 3.725,29 GiB. (2 Pkt.)\n 1 TiB = 1.024^4 Byte = 1.099.511.627.776 Byte.\n Kapazität in TiB = 4.000.000.000.000 / 1.099.511.627.776 ≈ 3,638 TiB. (2 Pkt.)\n3. Prozentuale scheinbare Differenz:\n (4,000 - 3,638) / 4,000 = 0,362 / 4,000 = 9,05 % (bzw. bezogen auf 4 TiB fehlen ca. 9,1 %). (2 Pkt.)",
"type": "calc",
"options": []
},
{
"id": "ap1_praefix_002",
"exam": "AP1",
"lernfeld": "LF 3",
"topic": "Datenübertragungsrate (Mbit/s) vs. Dateigröße (GiB)",
"scenario": "Über eine Glasfaser-Internetanbindung mit einer nutzbaren Download-Bandbreite von 250 Mbit/s soll ein virtuelles Festplatten-Image mit einer Dateigröße von 45 GiB heruntergeladen werden. Durch TCP/IP- und Protokoll-Header entsteht ein Overhead von 8 %.",
"question": "Berechnen Sie die reine Übertragungszeit in Minuten und Sekunden.",
"points": 8,
"solution": "1. Umrechnung Dateigröße von GiB in Byte und Bit:\n 45 GiB = 45 * 1.024^3 Byte = 45 * 1.073.741.824 Byte = 48.318.382.080 Byte. (2 Pkt.)\n In Bit: 48.318.382.080 * 8 = 386.547.056.640 Bit. (1 Pkt.)\n2. Berücksichtigung des Protokoll-Overheads (8 %):\n Gesamte zu übertragende Bitmenge = 386.547.056.640 * 1,08 = 417.470.821.171 Bit. (2 Pkt.)\n3. Übertragungsrate in Bit/s (SI-Präfix bei Netzwerk!):\n 250 Mbit/s = 250 * 10^6 Bit/s = 250.000.000 Bit/s. (1 Pkt.)\n4. Download-Dauer:\n Zeit = 417.470.821.171 / 250.000.000 ≈ 1.669,88 Sekunden. (1 Pkt.)\n In Minuten: 1.669,88 / 60 ≈ 27 Minuten und 50 Sekunden (bzw. 27,83 Min.). (1 Pkt.)",
"type": "calc",
"options": []
},
{
"id": "ap1_beleg_001",
"exam": "AP1",
"lernfeld": "LF 1",
"topic": "Kaufmännische Rechnung PrintTop GmbH (Rabatt, Skonto, MwSt.)",
"scenario": "Die Meier IT-Solutions bestellt bei der PrintTop GmbH 10 Netzwerkdrucker zu einem Listenpreis von je 650,00 EUR netto. Die PrintTop GmbH gewährt 8 % Mengenrabatt. Bei Zahlung innerhalb von 14 Tagen werden 2 % Skonto eingeräumt. Die Frachtkosten betragen pauschal 70,00 EUR netto. Es gilt der reguläre Mehrwertsteuersatz von 19 %.",
"question": "Erstellen Sie das vollständige kaufmännische Prüfungsschema nach ZPA-Belegstandard und berechnen Sie: 1. Gesamter Listenpreis, 2. Rabattbetrag, 3. Bareinkaufspreis vor Fracht, 4. Netto-Rechnungsbetrag, 5. Skontobetrag, 6. Überweisungsbetrag bei fristgerechter Zahlung.",
"points": 10,
"solution": "1. Listenpreis gesamt (netto): 10 * 650,00 EUR = 6.500,00 EUR. (1 Pkt.)\n2. - 8 % Liefererrabatt: 6.500,00 * 0,08 = 520,00 EUR. (1,5 Pkt.)\n3. = Zieleinkaufspreis: 6.500,00 - 520,00 = 5.980,00 EUR. (1,5 Pkt.)\n4. + Frachtkosten (netto): 5.980,00 + 70,00 = 6.050,00 EUR (Rechnungsbetrag Netto). (1,5 Pkt.)\n5. + 19 % Umsatzsteuer: 6.050,00 * 0,19 = 1.149,50 EUR -> Rechnungsbetrag Brutto: 7.199,50 EUR. (1,5 Pkt.)\n6. - 2 % Skonto (auf skontofähigen Betrag 5.980 EUR Warenwert bzw. Bruttowarenwert 7.116,20 EUR):\n Skonto auf Bruttorechnung (7.199,50 EUR * 0,02) = 143,99 EUR (oder warenwertbezogen 119,60 EUR netto = 142,32 EUR brutto). (1,5 Pkt.)\n7. Überweisungsbetrag (Zahlbetrag): 7.199,50 EUR - 143,99 EUR = 7.055,51 EUR. (1,5 Pkt.)",
"type": "calc",
"options": []
},
{
"id": "ap1_beleg_002",
"exam": "AP1",
"lernfeld": "LF 1",
"topic": "Lieferungsverzug und Verzugszinsen nach BGB (§ 288 BGB)",
"scenario": "Die Systemhaus Nord GmbH hat eine fällige Rechnung eines gewerblichen Kunden (B2B) über 12.000,00 EUR brutto. Das Zahlungsziel war der 15. März. Nach Eintritt des Verzugs zahlt der Kunde die Gesamtsumme erst nach 45 Tagen Verzug. Der Basiszinssatz der Deutschen Bundesbank beträgt zum Stichtag 3,62 %.",
"question": "Erläutern Sie die gesetzlichen Voraussetzungen für den Verzugseintritt bei Entgeltforderungen im B2B-Bereich (§ 286 BGB), berechnen Sie den gesetzlichen Verzugszinssatz nach § 288 Abs. 2 BGB und ermitteln Sie die geschuldeten Verzugszinsen sowie die gesetzliche Verzugspauschale (§ 288 Abs. 5 BGB).",
"points": 8,
"solution": "1. Verzugseintritt im B2B-Geschäft (§ 286 Abs. 3 BGB): Gerät spätestens 30 Tage nach Fälligkeit und Zugang einer Rechnung automatisch in Verzug, ohne dass es einer gesonderten Mahnung bedarf. (2 Pkt.)\n2. Gesetzlicher Verzugszinssatz (§ 288 Abs. 2 BGB für Rechtsgeschäfte ohne Verbraucherbeteiligung):\n Basiszinssatz + 9 Prozentpunkte = 3,62 % + 9,00 % = 12,62 % p. a. (2 Pkt.)\n3. Berechnung der Verzugszinsen für 45 Tage (kaufmännische Zinsformel Z = (K * p * t) / (100 * 360)):\n Zinsen = (12.000 EUR * 12,62 * 45) / 36.000 = 6.814.800 / 36.000 = 189,30 EUR. (2 Pkt.)\n4. Gesetzliche Mahn- und Verzugspauschale nach § 288 Abs. 5 BGB: Gesetzlicher Anspruch auf eine Pauschale von 40,00 EUR bei B2B-Zahlungsverzug. (2 Pkt.)",
"type": "calc",
"options": []
},
{
"id": "ap1_netzplan_001",
"exam": "AP1",
"lernfeld": "LF 1",
"topic": "Netzplantechnik Vorwärts- und Rückwärtsrechnung",
"scenario": "Gegeben ist ein Projektausschnitt mit folgenden Vorgängen (Dauer D in Tagen):\n- Vorgang A: Server beschaffen (D=4, kein Vorgänger)\n- Vorgang B: Betriebssystem installieren (D=3, Vorgänger A)\n- Vorgang C: Verkabelung prüfen (D=2, kein Vorgänger)\n- Vorgang D: Datenbank einrichten (D=5, Vorgänger B und C)\nProjektstart ist an Tag 0.",
"question": "Berechnen Sie für alle Vorgänge (A, B, C, D) den Frühesten Anfangszeitpunkt (FAZ), den Frühesten Endzeitpunkt (FEZ), den Spätesten Anfangszeitpunkt (SAZ) und den Spätesten Endzeitpunkt (SEZ) und geben Sie die minimale Projektdauer an.",
"points": 10,
"solution": "Vorwärtsrechnung (FAZ + Dauer = FEZ):\n- A: FAZ = 0, FEZ = 0 + 4 = 4. (1,5 Pkt.)\n- B: Vorgänger A -> FAZ = 4, FEZ = 4 + 3 = 7. (1,5 Pkt.)\n- C: Kein Vorgänger -> FAZ = 0, FEZ = 0 + 2 = 2. (1,5 Pkt.)\n- D: Vorgänger B (FEZ 7) und C (FEZ 2) -> FAZ = MAX(7, 2) = 7, FEZ = 7 + 5 = 12. (1,5 Pkt.)\nProjektdauer: 12 Tage. (1 Pkt.)\nRückwärtsrechnung (SEZ - Dauer = SAZ):\n- D: SEZ = 12, SAZ = 12 - 5 = 7. (1 Pkt.)\n- B: Nachfolger D -> SEZ = 7, SAZ = 7 - 3 = 4. (1 Pkt.)\n- C: Nachfolger D -> SEZ = 7, SAZ = 7 - 2 = 5. (1 Pkt.)\n- A: Nachfolger B -> SEZ = 4, SAZ = 4 - 4 = 0. (1 Pkt.)",
"type": "calc",
"options": []
},
{
"id": "ap1_netzplan_002",
"exam": "AP1",
"lernfeld": "LF 1",
"topic": "Kritischer Pfad und Pufferzeiten (GP vs. FP)",
"scenario": "Bezugnehmend auf den Netzplan aus Vorgang A, B, C und D mit Projektdauer 12 Tage.",
"question": "Definieren Sie Gesamtpuffer (GP) und freien Puffer (FP) mit ihren mathematischen Formeln, berechnen Sie GP und FP für Vorgang C und identifizieren Sie den kritischen Pfad des Projekts.",
"points": 8,
"solution": "Definitionen & Formeln:\n- Gesamtpuffer (GP = SAZ - FAZ bzw. SEZ - FEZ): Die Zeitspanne, um die ein Vorgang maximal verschoben werden darf, ohne den gesamten Projektendtermin zu gefährden. (2 Pkt.)\n- Freier Puffer (FP = FAZ_Nachfolger - FEZ_aktuell): Die Zeitspanne, um die ein Vorgang maximal verschoben werden darf, ohne den frühesten Anfangszeitpunkt des direkten Nachfolgers zu beeinflussen. (2 Pkt.)\nBerechnung für Vorgang C (FAZ=0, FEZ=2, SAZ=5, SEZ=7, Nachfolger D mit FAZ=7):\n- GP(C) = 5 - 0 = 5 Tage (oder 7 - 2 = 5 Tage). (1,5 Pkt.)\n- FP(C) = FAZ(D) - FEZ(C) = 7 - 2 = 5 Tage. (1,5 Pkt.)\nKritischer Pfad: Die Kette von Vorgängen, bei denen der Gesamtpuffer 0 beträgt: Start -> A (GP=0) -> B (GP=0) -> D (GP=0) -> Ende (Dauer 12 Tage). (1 Pkt.)",
"type": "calc",
"options": []
},
{ {
"id": "ap2_lf9_001", "id": "ap2_lf9_001",
"exam": "AP2_T1", "exam": "AP2_T1",
@ -984,6 +1116,30 @@ window.IHK_QUESTION_BANK = [
"type": "text", "type": "text",
"options": [] "options": []
}, },
{
"id": "ap2_net_001",
"exam": "AP2_T1",
"lernfeld": "LF 9",
"topic": "Normierte Netzwerkplan-Symbole nach VRT Network Equipment",
"scenario": "In einem IHK-Prüfungsszenario soll ein Unternehmensnetzwerk nach dem offiziellen VRT-Symbolstandard der ZPA Nord-West dokumentiert werden.",
"question": "Erläutern Sie die visuellen Unterscheidungsmerkmale und Funktionen der genormten VRT-Symbole für: 1. Layer-2-Switch, 2. Layer-3-Switch, 3. Router mit NAT/PAT, 4. Firewall (Stateful Inspection / NGFW) und 5. Access Point.",
"points": 8,
"solution": "1. Layer-2-Switch: Flacher Quader mit 4 gegensätzlichen Pfeilen auf der Oberseite (horizontale Vermittlung auf Layer 2 / MAC). (1,5 Pkt.)\n2. Layer-3-Switch: Quader mit kreuzförmigen Pfeilen nach innen und außen (kombiniert L2-Switching mit hardwarebasiertem L3-Routing). (1,5 Pkt.)\n3. Router: Zylinder (Trommel) mit vier Pfeilen (zwei hinein, zwei heraus) bzw. mit NAT/PAT-Kennzeichnung; verbindet autonome IP-Netze auf Layer 3. (1,5 Pkt.)\n4. Firewall: Quader mit Ziegelsteinmauer-Muster; trennt Sicherheitszonen (LAN, DMZ, WAN) und filtert Pakete zustandsbasiert oder auf Applikationsebene. (2 Pkt.)\n5. Access Point: Kleines Gehäuse mit Antennensymbolen / Funkwellen; bridged Funkzellen (IEEE 802.11) ins kabelgebundene Ethernet (802.3). (1,5 Pkt.)",
"type": "text",
"options": []
},
{
"id": "ap2_net_002",
"exam": "AP2_T1",
"lernfeld": "LF 9",
"topic": "Redundante Netzwerkinfrastruktur mit VRRP & LACP",
"scenario": "Für eine hochverfügbare Rechenzentrumsanbindung werden zwei Layer-3-Switches als redundantes Standard-Gateway für Clients eingerichtet. Gleichzeitig werden Server über mehrere Netzwerkkarten redundant angebunden.",
"question": "Erklären Sie das Zusammenspiel von Virtual Router Redundancy Protocol (VRRP) für die Gateway-Redundanz und Link Aggregation Control Protocol (LACP nach 802.3ad) für die Serveranbindung.",
"points": 8,
"solution": "VRRP Funktionsweise: Beide L3-Switches teilen sich eine gemeinsame virtuelle IP-Adresse (VIP) und virtuelle MAC-Adresse. Ein Switch ist Master und beantwortet ARP-Requests für die VIP. Fällt der Master aus, übernimmt der Backup-Switch innerhalb von Sekundenbruchteilen die VIP nahtlos (Keepalive-Multicasts bleiben aus), ohne dass Clients umkonfiguriert werden müssen. (4 Pkt.)\nLACP (802.3ad): Bündelt mehrere physische Netzwerkkabel zu einem einzigen logischen Link (Trunk / NIC-Teaming). Erhöht die aggregierte Bandbreite und bietet automatische Link-Redundanz (fällt ein Kabel aus, läuft der Traffic unterbrechungsfrei über die verbleibenden Ports weiter). (4 Pkt.)",
"type": "text",
"options": []
},
{ {
"id": "ap2_lf11_001", "id": "ap2_lf11_001",
"exam": "AP2_T1", "exam": "AP2_T1",
@ -1128,6 +1284,102 @@ window.IHK_QUESTION_BANK = [
"type": "text", "type": "text",
"options": [] "options": []
}, },
{
"id": "ap2_sql_001",
"exam": "AP2_T2",
"lernfeld": "LF 10",
"topic": "SQL DDL CREATE TABLE mit Constraints",
"scenario": "Für eine Ticket-Verwaltung soll die Tabelle \"ticket\" per SQL angelegt werden: id (Ganzzahl, Primärschlüssel mit Autoinkrement), titel (Text, max. 100 Zeichen, Pflichtfeld), status (Text, Standardwert \"OFFEN\"), prioritaet (Ganzzahl, Werte nur von 1 bis 5 erlaubt), ersteller_id (Ganzzahl, Fremdschlüssel auf benutzer.id mit Kaskadierung beim Löschen).",
"question": "Schreiben Sie das syntaktisch korrekte SQL-Statement nach ANSI/ISO-Standard.",
"points": 10,
"solution": "CREATE TABLE ticket (\n id INTEGER PRIMARY KEY AUTO_INCREMENT,\n titel VARCHAR(100) NOT NULL,\n status VARCHAR(20) DEFAULT 'OFFEN',\n prioritaet INT CHECK (prioritaet BETWEEN 1 AND 5),\n ersteller_id INT,\n FOREIGN KEY (ersteller_id) REFERENCES benutzer(id) ON DELETE CASCADE\n); (10 Pkt. - Abzug bei fehlendem NOT NULL, CHECK, DEFAULT oder FOREIGN KEY)",
"type": "text",
"options": []
},
{
"id": "ap2_sql_002",
"exam": "AP2_T2",
"lernfeld": "LF 10",
"topic": "SQL DML Aggregation und GROUP BY mit HAVING",
"scenario": "Gegeben sind die Tabellen kunden (id, name, stadt) und bestellungen (id, kunde_id, betrag, datum).",
"question": "Formulieren Sie eine SQL-Abfrage, die den Kundennamen und die Gesamtsumme aller Bestellungen für jeden Kunden ausgibt, dessen Gesamtbestellwert 10.000 EUR überschreitet. Das Ergebnis soll absteigend nach der Summe sortiert sein.",
"points": 10,
"solution": "SELECT k.name, SUM(b.betrag) AS gesamtumsatz\nFROM kunden k\nINNER JOIN bestellungen b ON k.id = b.kunde_id\nGROUP BY k.id, k.name\nHAVING SUM(b.betrag) > 10000\nORDER BY gesamtumsatz DESC; (10 Pkt. - Abzug bei WHERE statt HAVING für Aggregatfunktion oder fehlendem GROUP BY)",
"type": "text",
"options": []
},
{
"id": "ap2_sql_003",
"exam": "AP2_T2",
"lernfeld": "LF 10",
"topic": "SQL JOIN-Typen INNER vs LEFT vs FULL",
"scenario": "In einer Datenbank existieren mitarbeiter (id, name, abt_id) und abteilungen (id, bezeichnung). Einige Mitarbeiter haben keine Abteilung, und einige Abteilungen haben keine Mitarbeiter.",
"question": "Erläutern Sie den Unterschied im Abfrageergebnis zwischen INNER JOIN und LEFT OUTER JOIN bezüglich der Ergebniszeilen.",
"points": 6,
"solution": "INNER JOIN: Liefert ausschließlich Zeilen zurück, bei denen in beiden Tabellen ein übereinstimmender Wert vorliegt (Schnittmenge). Mitarbeiter ohne Abteilung und Abteilungen ohne Mitarbeiter werden vollständig verworfen. (3 Pkt.)\nLEFT OUTER JOIN (mitarbeiter LEFT JOIN abteilungen): Liefert ALLE Datensätze der linken Tabelle (mitarbeiter), selbst wenn keine Übereinstimmung in abteilungen vorliegt. Die fehlenden Abteilungsspalten werden mit NULL aufgefüllt. (3 Pkt.)",
"type": "text",
"options": []
},
{
"id": "ap2_sql_004",
"exam": "AP2_T2",
"lernfeld": "LF 10",
"topic": "SQL Transaktionen ACID-Eigenschaften",
"scenario": "Bei einer Banküberweisung von 500 EUR von Konto A auf Konto B wird ein Transaktionsblock ausgeführt.",
"question": "Nennen und erläutern Sie die vier ACID-Eigenschaften und beschreiben Sie, was passiert, wenn nach dem Abbuchen von Konto A das Datenbanksystem abstürzt.",
"points": 8,
"solution": "Atomarität (Atomicity): Alles-oder-Nichts-Prinzip. Eine Transaktion wird entweder ganz oder gar nicht ausgeführt. (2 Pkt.)\nKonsistenz (Consistency): Nach Abschluss der Transaktion befindet sich die Datenbank in einem gültigen, integren Zustand. (2 Pkt.)\nIsolation: Gleichzeitige Transaktionen beeinflussen sich nicht gegenseitig. (1 Pkt.)\nDauerhaftigkeit (Durability): Erfolgreich mit COMMIT bestätigte Änderungen bleiben dauerhaft im Speicher erhalten. (1 Pkt.)\nAbsturzfolge: Da die Buchung nicht durch COMMIT bestätigt wurde, greift beim Neustart ein automatisches Rollback (Undo-Logging). Die Abbuchung auf Konto A wird rückgängig gemacht. (2 Pkt.)",
"type": "text",
"options": []
},
{
"id": "ap2_sql_005",
"exam": "AP2_T2",
"lernfeld": "LF 10",
"topic": "SQL Subqueries mit IN und EXISTS",
"scenario": "Gegeben sind die Tabellen kunden (id, name, land) und bestellungen (id, kunde_id, summe).",
"question": "Formulieren Sie zwei SQL-Abfragen, die alle Kundennamen ausgeben, die mindestens eine Bestellung getätigt haben: Einmal unter Verwendung einer Subquery mit IN und einmal mit EXISTS.",
"points": 8,
"solution": "Variante 1 (IN):\nSELECT name FROM kunden WHERE id IN (SELECT kunde_id FROM bestellungen); (4 Pkt.)\nVariante 2 (EXISTS / Korrelierte Unterabfrage):\nSELECT k.name FROM kunden k WHERE EXISTS (SELECT 1 FROM bestellungen b WHERE b.kunde_id = k.id); (4 Pkt.)",
"type": "text",
"options": []
},
{
"id": "ap2_sql_006",
"exam": "AP2_T2",
"lernfeld": "LF 10",
"topic": "SQL Window Functions ROW_NUMBER & RANK",
"scenario": "In einer Vertriebsdatenbank sollen die Top-3-Umsätze jedes Verkäufers ermittelt werden.",
"question": "Erläutern Sie die Funktionsweise von SQL Window Functions gegenüber GROUP BY und erklären Sie die Syntax von ROW_NUMBER() OVER (PARTITION BY ... ORDER BY ...).",
"points": 8,
"solution": "Unterschied zu GROUP BY: GROUP BY fasst Zeilen zusammen und reduziert die Ergebnismenge auf eine einzige Zeile pro Gruppe. Eine Window Function führt Berechnungen über eine definierte Zeilenmenge (das Fenster / Window) durch, behält jedoch die individuelle Identität jeder einzelnen Zeile bei. (4 Pkt.)\nSyntax-Erklärung:\n- ROW_NUMBER(): Vergibt eine fortlaufende Zeilennummer (1, 2, 3...).\n- PARTITION BY spalte: Teilt den Datensatz in logische Untergruppen (z. B. pro Verkäufer).\n- ORDER BY spalte DESC: Bestimmt die Sortierreihenfolge innerhalb jeder Partition (z. B. höchster Umsatz zuerst). (4 Pkt.)",
"type": "text",
"options": []
},
{
"id": "ap2_sql_007",
"exam": "AP2_T2",
"lernfeld": "LF 10",
"topic": "SQL Datums- und Zeitfunktionen (DATEDIFF & DATEADD)",
"scenario": "In einem Support-System (Tabelle tickets mit id, erstelldatum, schliessdatum) soll die Bearbeitungsdauer analysiert werden.",
"question": "Formulieren Sie eine SQL-Abfrage nach ZPA-Standard, die für alle im laufenden Jahr geschlossenen Tickets die Ticket-ID und die Bearbeitungsdauer in Tagen berechnet (unter Verwendung von DATEDIFF) und nur Tickets anzeigt, deren Bearbeitung länger als 14 Tage gedauert hat.",
"points": 8,
"solution": "SELECT id, DATEDIFF(day, erstelldatum, schliessdatum) AS bearbeitungsdauer_tage\nFROM tickets\nWHERE schliessdatum IS NOT NULL\n AND DATEDIFF(day, erstelldatum, schliessdatum) > 14\nORDER BY bearbeitungsdauer_tage DESC; (8 Pkt. - Volle Punktzahl auch bei SQL-Dialekt-Varianten wie DATEDIFF(schliessdatum, erstelldatum) oder DATE_PART)",
"type": "text",
"options": []
},
{
"id": "ap2_sql_008",
"exam": "AP2_T2",
"lernfeld": "LF 10",
"topic": "Statistische SQL-Funktionen (STDDEV, VARIANCE, CORR)",
"scenario": "Im Rahmen einer Performance-Analyse von Server-Antwortzeiten (Tabelle server_metrics mit server_id, response_time_ms, cpu_load) werden statistische Kennzahlen benötigt.",
"question": "Erläutern Sie die Aufgaben und mathematische Bedeutung der SQL-Aggregatfunktionen STDDEV(), VARIANCE() und CORR() und beschreiben Sie einen Anwendungsfall zur Erkennung von Lastanomalien.",
"points": 6,
"solution": "VARIANCE(): Berechnet die statistische Varianz (mittlere quadratische Abweichung vom Mittelwert) der Messwerte. (2 Pkt.)\nSTDDEV(): Berechnet die Standardabweichung (Quadratwurzel der Varianz) als Maß für die Streuung um den Mittelwert. Anwendungsfall: Überschreitet eine Antwortzeit den Bereich Mittelwert + 3*STDDEV (3-Sigma-Regel), liegt eine signifikante Performance-Anomalie vor. (2 Pkt.)\nCORR(spalte1, spalte2): Berechnet den Pearson-Korrelationskoeffizienten (-1 bis +1) zwischen zwei Variablen, um festzustellen, ob hohe Antwortzeiten direkt linear mit hoher CPU-Last korrelieren. (2 Pkt.)",
"type": "text",
"options": []
},
{ {
"id": "ap2_lf12_001", "id": "ap2_lf12_001",
"exam": "AP2_T2", "exam": "AP2_T2",
@ -1552,11 +1804,11 @@ window.IHK_QUESTION_BANK = [
"id": "ap1_lf5_014", "id": "ap1_lf5_014",
"exam": "AP1", "exam": "AP1",
"lernfeld": "LF 5", "lernfeld": "LF 5",
"topic": "SQL Subqueries mit IN und EXISTS", "topic": "Transformation ERM in Relationales Schema (1:n und n:m)",
"scenario": "Gegeben sind die Tabellen kunden (id, name, land) und bestellungen (id, kunde_id, summe).", "scenario": "Ein ER-Modell enthält die Entitäten \"Abteilung\" und \"Mitarbeiter\" (1:n) sowie \"Mitarbeiter\" und \"Projekt\" (n:m).",
"question": "Formulieren Sie zwei SQL-Abfragen, die alle Kundennamen ausgeben, die mindestens eine Bestellung getätigt haben: Einmal unter Verwendung einer Subquery mit IN und einmal mit EXISTS.", "question": "Beschreiben Sie die formalen Regeln zur Überführung einer 1:n-Beziehung und einer n:m-Beziehung in ein relationales Tabellenschema (Primär-/Fremdschlüssel-Platzierung).",
"points": 8, "points": 8,
"solution": "Variante 1 (IN):\nSELECT name FROM kunden WHERE id IN (SELECT kunde_id FROM bestellungen); (4 Pkt.)\nVariante 2 (EXISTS / Korrelierte Unterabfrage):\nSELECT k.name FROM kunden k WHERE EXISTS (SELECT 1 FROM bestellungen b WHERE b.kunde_id = k.id); (4 Pkt.)", "solution": "Überführung 1:n (1 Abteilung hat n Mitarbeiter):\nDer Primärschlüssel der 1-Seite (abteilung_id) wird als Fremdschlüssel (FK) in die Relation der n-Seite (Mitarbeiter) aufgenommen. Eine eigene Zwischentabelle ist nicht erforderlich. (4 Pkt.)\nÜberführung n:m (Mitarbeiter arbeitet in n Projekten):\nEs wird zwingend eine eigenständige Verknüpfungstabelle (z. B. mitarbeiter_projekt) angelegt. Diese enthält die Primärschlüssel beider beteiligter Tabellen (mitarbeiter_id und projekt_id) als Fremdschlüssel. Beide Fremdschlüssel bilden gemeinsam den zusammengesetzten Primärschlüssel der Zwischentabelle. (4 Pkt.)",
"type": "text", "type": "text",
"options": [] "options": []
}, },
@ -1564,11 +1816,11 @@ window.IHK_QUESTION_BANK = [
"id": "ap1_lf5_015", "id": "ap1_lf5_015",
"exam": "AP1", "exam": "AP1",
"lernfeld": "LF 5", "lernfeld": "LF 5",
"topic": "SQL Window Functions ROW_NUMBER", "topic": "Datenvalidierung & Konsistenzprüfung im Erfassungsdialog",
"scenario": "In einer Vertriebsdatenbank sollen die Top-3-Umsätze jedes Verkäufers ermittelt werden.", "scenario": "In einer Eingabemaske für Kundenstammdaten sollen fehlerhafte Eingaben frühzeitig abgefangen werden.",
"question": "Erläutern Sie die Funktionsweise von SQL Window Functions gegenüber GROUP BY und erklären Sie die Syntax von ROW_NUMBER() OVER (PARTITION BY ... ORDER BY ...).", "question": "Nennen und erläutern Sie vier Methoden der serverseitigen bzw. anwendungsseitigen Datenvalidierung (z. B. Typ-, Wertebereichs-, Plausibilitäts- und Pflichtfeldprüfung) anhand konkreter Beispiele.",
"points": 8, "points": 8,
"solution": "Unterschied zu GROUP BY: GROUP BY fasst Zeilen zusammen und reduziert die Ergebnismenge auf eine einzige Zeile pro Gruppe. Eine Window Function führt Berechnungen über eine definierte Zeilenmenge (das Fenster / Window) durch, behält jedoch die individuelle Identität jeder einzelnen Zeile bei. (4 Pkt.)\nSyntax-Erklärung:\n- ROW_NUMBER(): Vergibt eine fortlaufende Zeilennummer (1, 2, 3...).\n- PARTITION BY spalte: Teilt den Datensatz in logische Untergruppen (z. B. pro Verkäufer).\n- ORDER BY spalte DESC: Bestimmt die Sortierreihenfolge innerhalb jeder Partition (z. B. höchster Umsatz zuerst). (4 Pkt.)", "solution": "1. Pflichtfeldprüfung (Nullwertprüfung): Stellt sicher, dass zwingend notwendige Daten (z. B. Nachname, E-Mail) nicht leer übermittelt werden. (2 Pkt.)\n2. Datentypprüfung: Überprüft, ob der eingegebene Wert dem erwarteten Datentyp entspricht (z. B. Geburtstag als valides Datum YYYY-MM-DD, Kundennummer als Ganzzahl). (2 Pkt.)\n3. Wertebereichsprüfung (Range Check): Kontrolliert, ob ein numerischer Wert innerhalb zulässiger Grenzwerte liegt (z. B. Alter zwischen 18 und 120 Jahren). (2 Pkt.)\n4. Format- und Plausibilitätsprüfung: Prüfung auf bestimmte Muster mittels Regex (z. B. gültige E-Mail-Syntax @..., deutsche Postleitzahl genau 5 Ziffern) oder semantische Zusammenhänge (z. B. Vertragsende darf nicht vor Vertragsbeginn liegen). (2 Pkt.)",
"type": "text", "type": "text",
"options": [] "options": []
}, },

View file

@ -591,11 +591,11 @@
"id": "ap1_lf5_001", "id": "ap1_lf5_001",
"exam": "AP1", "exam": "AP1",
"lernfeld": "LF 5", "lernfeld": "LF 5",
"topic": "Struktogramm Schleifentypen nach DIN 66261", "topic": "UML-Aktivitätsdiagramm & Pseudocode Schleifenlogik",
"scenario": "Zur Programmierung eines Algorithmus werden Schleifenstrukturen entworfen.", "scenario": "Für einen automatisierten Backup-Prozess soll die Kontrolllogik modelliert werden: Es wird geprüft, ob ausreichend Speicherplatz frei ist. Wenn ja, werden Dateien kopiert und eine Erfolgsmeldung gesendet. Wenn nein, wird ein Fehler protokolliert und der Vorgang abgebrochen.",
"question": "Vergleichen Sie eine kopfgesteuerte Schleife (WHILE) mit einer fußgesteuerten Schleife (DO-WHILE) hinsichtlich Ausführungslogik und Mindestanzahl von Durchläufen und skizzieren Sie die Darstellung nach Nassi-Shneiderman.", "question": "Vergleichen Sie die Modellierung von Kontrollstrukturen im UML-Aktivitätsdiagramm (Entscheidungsknoten / Raute, Guards) mit strukturiertem Pseudocode (WENN-DANN-SONST) und erläutern Sie die Funktion von Fork- und Join-Knoten (Synchronisationsbalken) bei parallelen Abläufen.",
"points": 6, "points": 6,
"solution": "Kopfgesteuerte Schleife (abweisend): Die Bedingung wird VOR jedem Schleifendurchlauf geprüft. Ist die Bedingung von Beginn an falsch, wird der Rumpf 0-mal ausgeführt. Nassi-Shneiderman: Oberer horizontaler Balken mit Bedingung, der den Schleifenkörper links und unten umschließt. (3 Pkt.)\nFußgesteuerte Schleife (nicht abweisend): Die Bedingung wird NACH jedem Schleifendurchlauf am Fuß geprüft. Der Rumpf wird mindestens 1-mal garantiert ausgeführt. Nassi-Shneiderman: Unterer horizontaler Balken mit Bedingung, der den Schleifenkörper links und oben umschließt. (3 Pkt.)", "solution": "Entscheidungsknoten & Guards: Im UML-Aktivitätsdiagramm stellt eine Raute eine Verzweigung dar; die ausgehenden Kanten tragen Bedingungen in eckigen Klammern [Guards], von denen exakt eine wahr sein muss (äquivalent zu WENN-DANN-SONST im Pseudocode). (3 Pkt.)\nFork- und Join-Knoten: Ein Fork-Knoten (dicker Balken) teilt einen eingehenden Kontrollfluss in mehrere nebenläufig/parallel ausgeführte Pfade auf. Ein Join-Knoten synchronisiert diese parallelen Pfade wieder und lässt den Kontrollfluss erst weiterlaufen, wenn ALLE eingehenden Aktionen abgeschlossen sind. (3 Pkt.)",
"type": "text", "type": "text",
"options": [] "options": []
}, },
@ -687,11 +687,11 @@
"id": "ap1_lf5_009", "id": "ap1_lf5_009",
"exam": "AP1", "exam": "AP1",
"lernfeld": "LF 5", "lernfeld": "LF 5",
"topic": "SQL DDL CREATE TABLE mit Constraints", "topic": "ER-Modellierung Chen vs Krähenfuß-Notation",
"scenario": "Für eine Ticket-Verwaltung soll die Tabelle \"ticket\" per SQL angelegt werden: id (Ganzzahl, Primärschlüssel mit Autoinkrement), titel (Text, max. 100 Zeichen, Pflichtfeld), status (Text, Standardwert \"OFFEN\"), prioritaet (Ganzzahl, Werte nur von 1 bis 5 erlaubt), ersteller_id (Ganzzahl, Fremdschlüssel auf benutzer.id mit Kaskadierung beim Löschen).", "scenario": "Zur Dokumentation eines Kundensystems werden Entity-Relationship-Modelle (ERM) eingesetzt.",
"question": "Schreiben Sie das syntaktisch korrekte SQL-Statement nach ANSI/ISO-Standard.", "question": "Vergleichen Sie die Chen-Notation mit der Krähenfuß-Notation (Martin-Notation) hinsichtlich der Darstellung von Entitäten, Attributen und Kardinalitäten (1:1, 1:n, n:m).",
"points": 10, "points": 8,
"solution": "CREATE TABLE ticket (\n id INTEGER PRIMARY KEY AUTO_INCREMENT,\n titel VARCHAR(100) NOT NULL,\n status VARCHAR(20) DEFAULT 'OFFEN',\n prioritaet INT CHECK (prioritaet BETWEEN 1 AND 5),\n ersteller_id INT,\n FOREIGN KEY (ersteller_id) REFERENCES benutzer(id) ON DELETE CASCADE\n); (10 Pkt. - Abzug bei fehlendem NOT NULL, CHECK, DEFAULT oder FOREIGN KEY)", "solution": "Entitäten: Bei Chen als Rechteck dargestellt; bei Krähenfuß ebenfalls als Rechteck/Tabelle mit getrenntem Kopf für den Entitätsnamen. (2 Pkt.)\nAttribute: Bei Chen als Ellipsen, die mit der Entität verbunden sind (Primärschlüssel unterstrichen); bei Krähenfuß direkt als Zeilen innerhalb des Entitätsrechtecks aufgelistet (PK/FK gekennzeichnet). (3 Pkt.)\nKardinalitäten: Bei Chen über Rauten als Beziehungselemente mit Beschriftung 1, n, m an den Kanten; bei Krähenfuß direkt an den Linienenden über Symbole (Strich = genau eins, Kreis = optional/null, Dreizack/Krähenfuß = viele). (3 Pkt.)",
"type": "text", "type": "text",
"options": [] "options": []
}, },
@ -699,11 +699,11 @@
"id": "ap1_lf5_010", "id": "ap1_lf5_010",
"exam": "AP1", "exam": "AP1",
"lernfeld": "LF 5", "lernfeld": "LF 5",
"topic": "SQL DML Aggregation und GROUP BY mit HAVING", "topic": "Relationales Datenmodell & Referenzielle Integrität",
"scenario": "Gegeben sind die Tabellen kunden (id, name, stadt) und bestellungen (id, kunde_id, betrag, datum).", "scenario": "In einer relationalen Datenbank werden Kundendaten und deren Bestellungen verwaltet.",
"question": "Formulieren Sie eine SQL-Abfrage, die den Kundennamen und die Gesamtsumme aller Bestellungen für jeden Kunden ausgibt, dessen Gesamtbestellwert 10.000 EUR überschreitet. Das Ergebnis soll absteigend nach der Summe sortiert sein.", "question": "Definieren Sie die Begriffe Primärschlüssel, Fremdschlüssel und Referenzielle Integrität und erklären Sie, welche Gefahr droht, wenn die referenzielle Integrität verletzt wird.",
"points": 10, "points": 8,
"solution": "SELECT k.name, SUM(b.betrag) AS gesamtumsatz\nFROM kunden k\nINNER JOIN bestellungen b ON k.id = b.kunde_id\nGROUP BY k.id, k.name\nHAVING SUM(b.betrag) > 10000\nORDER BY gesamtumsatz DESC; (10 Pkt. - Abzug bei WHERE statt HAVING für Aggregatfunktion oder fehlendem GROUP BY)", "solution": "Primärschlüssel (Primary Key): Ein Attribut oder eine minimale Attributkombination, die jeden Datensatz einer Tabelle eindeutig und unveränderlich identifiziert (Darf weder Duplikate noch NULL enthalten). (2 Pkt.)\nFremdschlüssel (Foreign Key): Ein Attribut in einer Relation, das auf den Primärschlüssel einer anderen (oder derselben) Relation verweist und logische Beziehungen herstellt. (2 Pkt.)\nReferenzielle Integrität: Die Integritätsbedingung besagt, dass jeder Fremdschlüsselwert entweder NULL sein muss oder tatsächlich als gültiger Primärschlüsselwert in der referenzierten Elterntabelle existieren muss. (2 Pkt.)\nGefahr bei Verletzung: Entstehung von \"verwaisten Datensätzen\" (Orphan Records), z. B. Bestellungen ohne zugehörigen Kunden, was zu inkonsistenten Datenbeständen und Abstürzen in Auswertungen führt. (2 Pkt.)",
"type": "text", "type": "text",
"options": [] "options": []
}, },
@ -711,23 +711,23 @@
"id": "ap1_lf5_011", "id": "ap1_lf5_011",
"exam": "AP1", "exam": "AP1",
"lernfeld": "LF 5", "lernfeld": "LF 5",
"topic": "SQL JOIN-Typen INNER vs LEFT vs FULL", "topic": "Trace-Tabelle Array-Filterung und Schwellenwert",
"scenario": "In einer Datenbank existieren mitarbeiter (id, name, abt_id) und abteilungen (id, bezeichnung). Einige Mitarbeiter haben keine Abteilung, und einige Abteilungen haben keine Mitarbeiter.", "scenario": "Gegeben ist ein Array messwerte = [18, 24, 12, 31, 20] und folgender Pseudocode:\nGANZZAHL anzahl = 0\nFÜR i VON 0 BIS 4 SCHRITT 1:\n WENN messwerte[i] >= 20 DANN\n anzahl = anzahl + 1\n ENDE_WENN\nENDE_FÜR",
"question": "Erläutern Sie den Unterschied im Abfrageergebnis zwischen INNER JOIN und LEFT OUTER JOIN bezüglich der Ergebniszeilen.", "question": "Führen Sie eine vollständige Trace-Tabelle mit den Spalten: i, messwerte[i], Bedingung (>= 20), anzahl für alle 5 Schleifendurchläufe und geben Sie den Endwert von anzahl an.",
"points": 6, "points": 8,
"solution": "INNER JOIN: Liefert ausschließlich Zeilen zurück, bei denen in beiden Tabellen ein übereinstimmender Wert vorliegt (Schnittmenge). Mitarbeiter ohne Abteilung und Abteilungen ohne Mitarbeiter werden vollständig verworfen. (3 Pkt.)\nLEFT OUTER JOIN (mitarbeiter LEFT JOIN abteilungen): Liefert ALLE Datensätze der linken Tabelle (mitarbeiter), selbst wenn keine Übereinstimmung in abteilungen vorliegt. Die fehlenden Abteilungsspalten werden mit NULL aufgefüllt. (3 Pkt.)", "solution": "Initial: anzahl = 0\nSchritt 1: i=0 -> messwerte[0]=18 -> 18>=20 (falsch) -> anzahl bleibt 0. (1,5 Pkt.)\nSchritt 2: i=1 -> messwerte[1]=24 -> 24>=20 (wahr) -> anzahl = 0 + 1 = 1. (1,5 Pkt.)\nSchritt 3: i=2 -> messwerte[2]=12 -> 12>=20 (falsch) -> anzahl bleibt 1. (1,5 Pkt.)\nSchritt 4: i=3 -> messwerte[3]=31 -> 31>=20 (wahr) -> anzahl = 1 + 1 = 2. (1,5 Pkt.)\nSchritt 5: i=4 -> messwerte[4]=20 -> 20>=20 (wahr) -> anzahl = 2 + 1 = 3. (1,5 Pkt.)\nEnde: Schleife beendet, Endwert anzahl = 3. (0,5 Pkt.)",
"type": "text", "type": "calc",
"options": [] "options": []
}, },
{ {
"id": "ap1_lf5_012", "id": "ap1_lf5_012",
"exam": "AP1", "exam": "AP1",
"lernfeld": "LF 5", "lernfeld": "LF 5",
"topic": "SQL Transaktionen ACID-Eigenschaften", "topic": "Transaktionskonzept & ACID-Eigenschaften",
"scenario": "Bei einer Banküberweisung von 500 EUR von Konto A auf Konto B wird ein Transaktionsblock ausgeführt.", "scenario": "Bei der Erfassung eines Kundenauftrags müssen Kundendaten, Bestellkopf und fünf Bestellpositionen zeitgleich in der Datenbank gespeichert werden.",
"question": "Nennen und erläutern Sie die vier ACID-Eigenschaften und beschreiben Sie, was passiert, wenn nach dem Abbuchen von Konto A das Datenbanksystem abstürzt.", "question": "Nennen und erläutern Sie die vier ACID-Eigenschaften und beschreiben Sie, warum ein automatisches Rollback erforderlich ist, wenn das Speichern der vierten Bestellposition fehlschlägt.",
"points": 8, "points": 8,
"solution": "Atomarität (Atomicity): Alles-oder-Nichts-Prinzip. Eine Transaktion wird entweder ganz oder gar nicht ausgeführt. (2 Pkt.)\nKonsistenz (Consistency): Nach Abschluss der Transaktion befindet sich die Datenbank in einem gültigen, integren Zustand. (2 Pkt.)\nIsolation: Gleichzeitige Transaktionen beeinflussen sich nicht gegenseitig. (1 Pkt.)\nDauerhaftigkeit (Durability): Erfolgreich mit COMMIT bestätigte Änderungen bleiben dauerhaft im Speicher erhalten. (1 Pkt.)\nAbsturzfolge: Da die Buchung nicht durch COMMIT bestätigt wurde, greift beim Neustart ein automatisches Rollback (Undo-Logging). Die Abbuchung auf Konto A wird rückgängig gemacht. (2 Pkt.)", "solution": "Atomarität (Atomicity): Alles-oder-Nichts-Prinzip. Eine Transaktion wird entweder vollständig oder gar nicht in der Datenbank festgeschrieben. (2 Pkt.)\nKonsistenz (Consistency): Vor Beginn und nach Abschluss einer Transaktion befindet sich die Datenbank in einem konsistenten, widerspruchsfreien Zustand. (2 Pkt.)\nIsolation: Parallele Transaktionen dürfen sich nicht gegenseitig beeinflussen, als liefen sie isoliert nacheinander ab. (1 Pkt.)\nDauerhaftigkeit (Durability): Nach erfolgreichem Transaktionsabschluss (Commit) sind die Daten dauerhaft und vor Systemabstürzen geschützt gespeichert. (1 Pkt.)\nBedarf für Rollback: Schlägt die vierte Position fehl, verhindert das Rollback eine unvollständige Bestellung (Kopf ohne alle Positionen), indem alle bereits geschriebenen Teilschritte rückgängig gemacht werden. (2 Pkt.)",
"type": "text", "type": "text",
"options": [] "options": []
}, },
@ -863,6 +863,138 @@
"type": "text", "type": "text",
"options": [] "options": []
}, },
{
"id": "ap1_bpmn_001",
"exam": "AP1",
"lernfeld": "LF 1",
"topic": "BPMN 2.0 Gateways (Exklusiv XOR, Parallel AND, Inklusiv OR)",
"scenario": "In einem IT-Service-Helpdesk wird die Bearbeitung eingehender Störungsmeldungen als BPMN 2.0 Geschäftsprozess modelliert.",
"question": "Erläutern Sie die Funktionsweise und grafischen Symbole der drei BPMN-Gateways: Exklusives Gateway (XOR), Paralleles Gateway (AND) und Inklusives Gateway (OR) beim Verzweigen (Diverging) und Zusammenführen (Converging).",
"points": 8,
"solution": "Exklusives Gateway (XOR, Raute mit X oder leer): Genau ein einziger ausgehender Pfad wird gewählt, dessen Bedingung zutrifft. Beim Zusammenführen wartet es nicht, sondern leitet jedes eintreffende Token sofort weiter. (3 Pkt.)\nParalleles Gateway (AND, Raute mit Pluszeichen +): Alle ausgehenden Pfade werden gleichzeitig/nebenläufig aktiviert (Fork). Beim Zusammenführen (Join) wartet das Gateway, bis auf ALLEN eingehenden Pfaden ein Token eingetroffen ist, bevor der Prozess fortgesetzt wird. (3 Pkt.)\nInklusives Gateway (OR, Raute mit Kreis O): Ein oder mehrere Pfade werden gewählt, deren Bedingungen wahr sind. Beim Zusammenführen synchronisiert es alle tatsächlich aktiven eingehenden Pfade. (2 Pkt.)",
"type": "text",
"options": []
},
{
"id": "ap1_bpmn_002",
"exam": "AP1",
"lernfeld": "LF 1",
"topic": "BPMN 2.0 Pools, Lanes und Flussregeln",
"scenario": "Zur Abbildung eines Bestell- und Freigabeprozesses für Neugeräte zwischen Kunde, IT-Einkauf und Buchhaltung wird ein BPMN-Diagramm erstellt.",
"question": "Unterscheiden Sie Pools und Swimlanes (Bahnen) und erläutern Sie die Regeln bezüglich Sequenzfluss (Sequence Flow) und Nachrichtenfluss (Message Flow).",
"points": 6,
"solution": "Pool: Repräsentiert eine eigenständige Organisationseinheit, ein externes Unternehmen oder einen eigenständigen Teilnehmer/Prozess (Black Box oder White Box). (2 Pkt.)\nLane: Unterteilt einen Pool in interne Rollen, Abteilungen oder Systeme (z. B. IT-Einkauf, Buchhaltung). (1 Pkt.)\nFlussregeln: Ein Sequenzfluss (durchgezogener Pfeil) verbindet Aktivitäten innerhalb DENSELBEN Pools und darf niemals Pool-Grenzen überschreiten. Ein Nachrichtenfluss (gestrichelte Linie mit offenem Pfeil und Kreis am Start) stellt die asynchrone Kommunikation ZWISCHEN zwei unterschiedlichen Pools dar. (3 Pkt.)",
"type": "text",
"options": []
},
{
"id": "ap1_epk_001",
"exam": "AP1",
"lernfeld": "LF 1",
"topic": "Ereignisgesteuerte Prozesskette (EPK) Modellierungsregeln",
"scenario": "Ein Onboarding-Prozess für neue Mitarbeiter wird als Ereignisgesteuerte Prozesskette (EPK) dokumentiert.",
"question": "Nennen Sie die drei Grundelemente einer EPK mit ihren geometrischen Symbolen und erläutern Sie zwei fundamentale Syntaxregeln für die Verknüpfung von Ereignissen und Funktionen.",
"points": 8,
"solution": "Grundelemente:\n1. Ereignis: Sechseck (Hexagon). Beschreibt einen eingetretenen Zustand (Auslöser/Ergebnis, z. B. \"Mitarbeitervertrag unterzeichnet\"). (2 Pkt.)\n2. Funktion: Rechteck mit abgerundeten Ecken. Beschreibt eine auszuführende Transformation/Aktivität im Infinitiv (z. B. \"Benutzerkonto im AD anlegen\"). (2 Pkt.)\n3. Logischer Konnektor: Kreis mit Symbol (UND, ODER, XOR) zur Verzweigung/Zusammenführung. (1 Pkt.)\nZwei Syntaxregeln:\n- Alternierungsregel: Ereignisse und Funktionen müssen sich im Ablauf immer strikt abwechseln (niemals Ereignis direkt auf Ereignis oder Funktion direkt auf Funktion ohne Konnektor). (1,5 Pkt.)\n- Konnektorenregel: Ein Ereignis hat keine Entscheidungskraft; nach einem einzelnen Ereignis darf daher niemals ein ODER- oder XOR-Konnektor verzweigen (nur UND ist nach Einzelereignis zulässig). (1,5 Pkt.)",
"type": "text",
"options": []
},
{
"id": "ap1_ki_001",
"exam": "AP1",
"lernfeld": "LF 1",
"topic": "Künstliche Intelligenz im First-Level-Support & Tickettriage",
"scenario": "Ein IT-Service-Desk plant den Einsatz eines KI-Systems (Large Language Model / NLP) zur automatisierten Entgegennahme und Priorisierung von Störungstickets.",
"question": "Nennen Sie drei konkrete Aufgaben, die das KI-System im First-Level-Support übernehmen kann, und erläutern Sie eine zentrale Herausforderung (Risiko) beim automatisierten Ticket-Dispatching.",
"points": 6,
"solution": "Drei Aufgaben:\n1. Automatische Klassifizierung & Triage: Analysieren des Freitextes und Zuweisen der richtigen Fehlerkategorie und Priorität (Prio 1-4). (1,5 Pkt.)\n2. Lösungsvorschläge & Self-Service: Automatischer Abgleich mit der Knowledge Base (FAQ) und Bereitstellung von Standard-Lösungsschritten für den Anwender (z. B. Kennwort-Reset). (1,5 Pkt.)\n3. Routing & Zuweisung: Gezielte Weiterleitung an das zuständige Fach-Supportteam (Second Level). (1 Pkt.)\nHerausforderung / Risiko: Fehlklassifikation (False Positives / Negatives) bei Sarkasmus, unpräziser Sprache oder kombinierten Problemen; ein kritischer Netzwerkausfall könnte fälschlich als Prio 4 eingestuft werden und SLA-Fristen verletzen. (2 Pkt.)",
"type": "text",
"options": []
},
{
"id": "ap1_ki_002",
"exam": "AP1",
"lernfeld": "LF 4",
"topic": "KI-Software am Arbeitsplatz & Datenschutz (DSGVO)",
"scenario": "Mitarbeiter möchten öffentlich zugängliche Cloud-KI-Dienste (z. B. ChatGPT) zur Analyse von Server-Logdateien und Programmcode am Arbeitsplatz einsetzen.",
"question": "Erläutern Sie zwei datenschutzrechtliche Risiken nach DSGVO und formulieren Sie zwei verbindliche Unternehmensrichtlinien für den zulässigen KI-Einsatz.",
"points": 6,
"solution": "Zwei Risiken:\n1. Unzulässige Drittlandübermittlung & Auftragsverarbeitung: Logdateien enthalten oft personenbezogene Daten (IP-Adressen, Benutzernamen). Werden diese ohne Auftragsverarbeitungsvertrag (AVV nach Art. 28 DSGVO) an US-Cloudanbieter übertragen, liegt ein schwerer Datenschutzverstoß vor. (2 Pkt.)\n2. Verlust von Geschäftsgeheimnissen: Öffentliche KIs können eingegebene Prompts und vertraulichen Source Code zum Weitertrainieren zukünftiger Modelle verwenden. (1 Pkt.)\nZwei Richtlinien:\n1. Striktes Verbot der Eingabe personenbezogener Daten (PII), Passwörter, API-Keys oder interner Geschäftsgeheimnisse in nicht freigegebene öffentliche KIs (Anonymisierungspflicht). (1,5 Pkt.)\n2. Vier-Augen-Prinzip & menschliche Letztverantwortung: Von KI generierter Quellcode oder Skripte müssen vor Produktivbetrieb immer zwingend durch IT-Fachpersonal auf Sicherheit und Korrektheit geprüft werden (kein unbesehenes Copy-Paste). (1,5 Pkt.)",
"type": "text",
"options": []
},
{
"id": "ap1_praefix_001",
"exam": "AP1",
"lernfeld": "LF 2",
"topic": "Binärpräfixe (IEC) vs. Dezimalpräfixe (SI) bei Speichermedien",
"scenario": "Ein Festplattenhersteller deklariert eine NVMe-SSD mit einer Speicherkapazität von exakt 4 TB (Terabyte). Das Betriebssystem zeigt nach der Formatierung jedoch eine Kapazität in GiB (Gibibyte) bzw. TiB (Tebibyte) an.",
"question": "Berechnen Sie die Kapazität der Festplatte in Byte auf Basis der Herstellerangabe (SI-Präfix), rechnen Sie diese exakt in GiB und TiB (IEC-Präfixe) um und ermitteln Sie die prozentuale scheinbare Differenz.",
"points": 8,
"solution": "1. Herstellerangabe in Byte (Dezimal / SI, Basis 10):\n 4 TB = 4 * 10^12 Byte = 4.000.000.000.000 Byte. (2 Pkt.)\n2. Umrechnung in GiB und TiB (Binär / IEC, Basis 2):\n 1 GiB = 1.024^3 Byte = 1.073.741.824 Byte.\n Kapazität in GiB = 4.000.000.000.000 / 1.073.741.824 ≈ 3.725,29 GiB. (2 Pkt.)\n 1 TiB = 1.024^4 Byte = 1.099.511.627.776 Byte.\n Kapazität in TiB = 4.000.000.000.000 / 1.099.511.627.776 ≈ 3,638 TiB. (2 Pkt.)\n3. Prozentuale scheinbare Differenz:\n (4,000 - 3,638) / 4,000 = 0,362 / 4,000 = 9,05 % (bzw. bezogen auf 4 TiB fehlen ca. 9,1 %). (2 Pkt.)",
"type": "calc",
"options": []
},
{
"id": "ap1_praefix_002",
"exam": "AP1",
"lernfeld": "LF 3",
"topic": "Datenübertragungsrate (Mbit/s) vs. Dateigröße (GiB)",
"scenario": "Über eine Glasfaser-Internetanbindung mit einer nutzbaren Download-Bandbreite von 250 Mbit/s soll ein virtuelles Festplatten-Image mit einer Dateigröße von 45 GiB heruntergeladen werden. Durch TCP/IP- und Protokoll-Header entsteht ein Overhead von 8 %.",
"question": "Berechnen Sie die reine Übertragungszeit in Minuten und Sekunden.",
"points": 8,
"solution": "1. Umrechnung Dateigröße von GiB in Byte und Bit:\n 45 GiB = 45 * 1.024^3 Byte = 45 * 1.073.741.824 Byte = 48.318.382.080 Byte. (2 Pkt.)\n In Bit: 48.318.382.080 * 8 = 386.547.056.640 Bit. (1 Pkt.)\n2. Berücksichtigung des Protokoll-Overheads (8 %):\n Gesamte zu übertragende Bitmenge = 386.547.056.640 * 1,08 = 417.470.821.171 Bit. (2 Pkt.)\n3. Übertragungsrate in Bit/s (SI-Präfix bei Netzwerk!):\n 250 Mbit/s = 250 * 10^6 Bit/s = 250.000.000 Bit/s. (1 Pkt.)\n4. Download-Dauer:\n Zeit = 417.470.821.171 / 250.000.000 ≈ 1.669,88 Sekunden. (1 Pkt.)\n In Minuten: 1.669,88 / 60 ≈ 27 Minuten und 50 Sekunden (bzw. 27,83 Min.). (1 Pkt.)",
"type": "calc",
"options": []
},
{
"id": "ap1_beleg_001",
"exam": "AP1",
"lernfeld": "LF 1",
"topic": "Kaufmännische Rechnung PrintTop GmbH (Rabatt, Skonto, MwSt.)",
"scenario": "Die Meier IT-Solutions bestellt bei der PrintTop GmbH 10 Netzwerkdrucker zu einem Listenpreis von je 650,00 EUR netto. Die PrintTop GmbH gewährt 8 % Mengenrabatt. Bei Zahlung innerhalb von 14 Tagen werden 2 % Skonto eingeräumt. Die Frachtkosten betragen pauschal 70,00 EUR netto. Es gilt der reguläre Mehrwertsteuersatz von 19 %.",
"question": "Erstellen Sie das vollständige kaufmännische Prüfungsschema nach ZPA-Belegstandard und berechnen Sie: 1. Gesamter Listenpreis, 2. Rabattbetrag, 3. Bareinkaufspreis vor Fracht, 4. Netto-Rechnungsbetrag, 5. Skontobetrag, 6. Überweisungsbetrag bei fristgerechter Zahlung.",
"points": 10,
"solution": "1. Listenpreis gesamt (netto): 10 * 650,00 EUR = 6.500,00 EUR. (1 Pkt.)\n2. - 8 % Liefererrabatt: 6.500,00 * 0,08 = 520,00 EUR. (1,5 Pkt.)\n3. = Zieleinkaufspreis: 6.500,00 - 520,00 = 5.980,00 EUR. (1,5 Pkt.)\n4. + Frachtkosten (netto): 5.980,00 + 70,00 = 6.050,00 EUR (Rechnungsbetrag Netto). (1,5 Pkt.)\n5. + 19 % Umsatzsteuer: 6.050,00 * 0,19 = 1.149,50 EUR -> Rechnungsbetrag Brutto: 7.199,50 EUR. (1,5 Pkt.)\n6. - 2 % Skonto (auf skontofähigen Betrag 5.980 EUR Warenwert bzw. Bruttowarenwert 7.116,20 EUR):\n Skonto auf Bruttorechnung (7.199,50 EUR * 0,02) = 143,99 EUR (oder warenwertbezogen 119,60 EUR netto = 142,32 EUR brutto). (1,5 Pkt.)\n7. Überweisungsbetrag (Zahlbetrag): 7.199,50 EUR - 143,99 EUR = 7.055,51 EUR. (1,5 Pkt.)",
"type": "calc",
"options": []
},
{
"id": "ap1_beleg_002",
"exam": "AP1",
"lernfeld": "LF 1",
"topic": "Lieferungsverzug und Verzugszinsen nach BGB (§ 288 BGB)",
"scenario": "Die Systemhaus Nord GmbH hat eine fällige Rechnung eines gewerblichen Kunden (B2B) über 12.000,00 EUR brutto. Das Zahlungsziel war der 15. März. Nach Eintritt des Verzugs zahlt der Kunde die Gesamtsumme erst nach 45 Tagen Verzug. Der Basiszinssatz der Deutschen Bundesbank beträgt zum Stichtag 3,62 %.",
"question": "Erläutern Sie die gesetzlichen Voraussetzungen für den Verzugseintritt bei Entgeltforderungen im B2B-Bereich (§ 286 BGB), berechnen Sie den gesetzlichen Verzugszinssatz nach § 288 Abs. 2 BGB und ermitteln Sie die geschuldeten Verzugszinsen sowie die gesetzliche Verzugspauschale (§ 288 Abs. 5 BGB).",
"points": 8,
"solution": "1. Verzugseintritt im B2B-Geschäft (§ 286 Abs. 3 BGB): Gerät spätestens 30 Tage nach Fälligkeit und Zugang einer Rechnung automatisch in Verzug, ohne dass es einer gesonderten Mahnung bedarf. (2 Pkt.)\n2. Gesetzlicher Verzugszinssatz (§ 288 Abs. 2 BGB für Rechtsgeschäfte ohne Verbraucherbeteiligung):\n Basiszinssatz + 9 Prozentpunkte = 3,62 % + 9,00 % = 12,62 % p. a. (2 Pkt.)\n3. Berechnung der Verzugszinsen für 45 Tage (kaufmännische Zinsformel Z = (K * p * t) / (100 * 360)):\n Zinsen = (12.000 EUR * 12,62 * 45) / 36.000 = 6.814.800 / 36.000 = 189,30 EUR. (2 Pkt.)\n4. Gesetzliche Mahn- und Verzugspauschale nach § 288 Abs. 5 BGB: Gesetzlicher Anspruch auf eine Pauschale von 40,00 EUR bei B2B-Zahlungsverzug. (2 Pkt.)",
"type": "calc",
"options": []
},
{
"id": "ap1_netzplan_001",
"exam": "AP1",
"lernfeld": "LF 1",
"topic": "Netzplantechnik Vorwärts- und Rückwärtsrechnung",
"scenario": "Gegeben ist ein Projektausschnitt mit folgenden Vorgängen (Dauer D in Tagen):\n- Vorgang A: Server beschaffen (D=4, kein Vorgänger)\n- Vorgang B: Betriebssystem installieren (D=3, Vorgänger A)\n- Vorgang C: Verkabelung prüfen (D=2, kein Vorgänger)\n- Vorgang D: Datenbank einrichten (D=5, Vorgänger B und C)\nProjektstart ist an Tag 0.",
"question": "Berechnen Sie für alle Vorgänge (A, B, C, D) den Frühesten Anfangszeitpunkt (FAZ), den Frühesten Endzeitpunkt (FEZ), den Spätesten Anfangszeitpunkt (SAZ) und den Spätesten Endzeitpunkt (SEZ) und geben Sie die minimale Projektdauer an.",
"points": 10,
"solution": "Vorwärtsrechnung (FAZ + Dauer = FEZ):\n- A: FAZ = 0, FEZ = 0 + 4 = 4. (1,5 Pkt.)\n- B: Vorgänger A -> FAZ = 4, FEZ = 4 + 3 = 7. (1,5 Pkt.)\n- C: Kein Vorgänger -> FAZ = 0, FEZ = 0 + 2 = 2. (1,5 Pkt.)\n- D: Vorgänger B (FEZ 7) und C (FEZ 2) -> FAZ = MAX(7, 2) = 7, FEZ = 7 + 5 = 12. (1,5 Pkt.)\nProjektdauer: 12 Tage. (1 Pkt.)\nRückwärtsrechnung (SEZ - Dauer = SAZ):\n- D: SEZ = 12, SAZ = 12 - 5 = 7. (1 Pkt.)\n- B: Nachfolger D -> SEZ = 7, SAZ = 7 - 3 = 4. (1 Pkt.)\n- C: Nachfolger D -> SEZ = 7, SAZ = 7 - 2 = 5. (1 Pkt.)\n- A: Nachfolger B -> SEZ = 4, SAZ = 4 - 4 = 0. (1 Pkt.)",
"type": "calc",
"options": []
},
{
"id": "ap1_netzplan_002",
"exam": "AP1",
"lernfeld": "LF 1",
"topic": "Kritischer Pfad und Pufferzeiten (GP vs. FP)",
"scenario": "Bezugnehmend auf den Netzplan aus Vorgang A, B, C und D mit Projektdauer 12 Tage.",
"question": "Definieren Sie Gesamtpuffer (GP) und freien Puffer (FP) mit ihren mathematischen Formeln, berechnen Sie GP und FP für Vorgang C und identifizieren Sie den kritischen Pfad des Projekts.",
"points": 8,
"solution": "Definitionen & Formeln:\n- Gesamtpuffer (GP = SAZ - FAZ bzw. SEZ - FEZ): Die Zeitspanne, um die ein Vorgang maximal verschoben werden darf, ohne den gesamten Projektendtermin zu gefährden. (2 Pkt.)\n- Freier Puffer (FP = FAZ_Nachfolger - FEZ_aktuell): Die Zeitspanne, um die ein Vorgang maximal verschoben werden darf, ohne den frühesten Anfangszeitpunkt des direkten Nachfolgers zu beeinflussen. (2 Pkt.)\nBerechnung für Vorgang C (FAZ=0, FEZ=2, SAZ=5, SEZ=7, Nachfolger D mit FAZ=7):\n- GP(C) = 5 - 0 = 5 Tage (oder 7 - 2 = 5 Tage). (1,5 Pkt.)\n- FP(C) = FAZ(D) - FEZ(C) = 7 - 2 = 5 Tage. (1,5 Pkt.)\nKritischer Pfad: Die Kette von Vorgängen, bei denen der Gesamtpuffer 0 beträgt: Start -> A (GP=0) -> B (GP=0) -> D (GP=0) -> Ende (Dauer 12 Tage). (1 Pkt.)",
"type": "calc",
"options": []
},
{ {
"id": "ap2_lf9_001", "id": "ap2_lf9_001",
"exam": "AP2_T1", "exam": "AP2_T1",
@ -983,6 +1115,30 @@
"type": "text", "type": "text",
"options": [] "options": []
}, },
{
"id": "ap2_net_001",
"exam": "AP2_T1",
"lernfeld": "LF 9",
"topic": "Normierte Netzwerkplan-Symbole nach VRT Network Equipment",
"scenario": "In einem IHK-Prüfungsszenario soll ein Unternehmensnetzwerk nach dem offiziellen VRT-Symbolstandard der ZPA Nord-West dokumentiert werden.",
"question": "Erläutern Sie die visuellen Unterscheidungsmerkmale und Funktionen der genormten VRT-Symbole für: 1. Layer-2-Switch, 2. Layer-3-Switch, 3. Router mit NAT/PAT, 4. Firewall (Stateful Inspection / NGFW) und 5. Access Point.",
"points": 8,
"solution": "1. Layer-2-Switch: Flacher Quader mit 4 gegensätzlichen Pfeilen auf der Oberseite (horizontale Vermittlung auf Layer 2 / MAC). (1,5 Pkt.)\n2. Layer-3-Switch: Quader mit kreuzförmigen Pfeilen nach innen und außen (kombiniert L2-Switching mit hardwarebasiertem L3-Routing). (1,5 Pkt.)\n3. Router: Zylinder (Trommel) mit vier Pfeilen (zwei hinein, zwei heraus) bzw. mit NAT/PAT-Kennzeichnung; verbindet autonome IP-Netze auf Layer 3. (1,5 Pkt.)\n4. Firewall: Quader mit Ziegelsteinmauer-Muster; trennt Sicherheitszonen (LAN, DMZ, WAN) und filtert Pakete zustandsbasiert oder auf Applikationsebene. (2 Pkt.)\n5. Access Point: Kleines Gehäuse mit Antennensymbolen / Funkwellen; bridged Funkzellen (IEEE 802.11) ins kabelgebundene Ethernet (802.3). (1,5 Pkt.)",
"type": "text",
"options": []
},
{
"id": "ap2_net_002",
"exam": "AP2_T1",
"lernfeld": "LF 9",
"topic": "Redundante Netzwerkinfrastruktur mit VRRP & LACP",
"scenario": "Für eine hochverfügbare Rechenzentrumsanbindung werden zwei Layer-3-Switches als redundantes Standard-Gateway für Clients eingerichtet. Gleichzeitig werden Server über mehrere Netzwerkkarten redundant angebunden.",
"question": "Erklären Sie das Zusammenspiel von Virtual Router Redundancy Protocol (VRRP) für die Gateway-Redundanz und Link Aggregation Control Protocol (LACP nach 802.3ad) für die Serveranbindung.",
"points": 8,
"solution": "VRRP Funktionsweise: Beide L3-Switches teilen sich eine gemeinsame virtuelle IP-Adresse (VIP) und virtuelle MAC-Adresse. Ein Switch ist Master und beantwortet ARP-Requests für die VIP. Fällt der Master aus, übernimmt der Backup-Switch innerhalb von Sekundenbruchteilen die VIP nahtlos (Keepalive-Multicasts bleiben aus), ohne dass Clients umkonfiguriert werden müssen. (4 Pkt.)\nLACP (802.3ad): Bündelt mehrere physische Netzwerkkabel zu einem einzigen logischen Link (Trunk / NIC-Teaming). Erhöht die aggregierte Bandbreite und bietet automatische Link-Redundanz (fällt ein Kabel aus, läuft der Traffic unterbrechungsfrei über die verbleibenden Ports weiter). (4 Pkt.)",
"type": "text",
"options": []
},
{ {
"id": "ap2_lf11_001", "id": "ap2_lf11_001",
"exam": "AP2_T1", "exam": "AP2_T1",
@ -1127,6 +1283,102 @@
"type": "text", "type": "text",
"options": [] "options": []
}, },
{
"id": "ap2_sql_001",
"exam": "AP2_T2",
"lernfeld": "LF 10",
"topic": "SQL DDL CREATE TABLE mit Constraints",
"scenario": "Für eine Ticket-Verwaltung soll die Tabelle \"ticket\" per SQL angelegt werden: id (Ganzzahl, Primärschlüssel mit Autoinkrement), titel (Text, max. 100 Zeichen, Pflichtfeld), status (Text, Standardwert \"OFFEN\"), prioritaet (Ganzzahl, Werte nur von 1 bis 5 erlaubt), ersteller_id (Ganzzahl, Fremdschlüssel auf benutzer.id mit Kaskadierung beim Löschen).",
"question": "Schreiben Sie das syntaktisch korrekte SQL-Statement nach ANSI/ISO-Standard.",
"points": 10,
"solution": "CREATE TABLE ticket (\n id INTEGER PRIMARY KEY AUTO_INCREMENT,\n titel VARCHAR(100) NOT NULL,\n status VARCHAR(20) DEFAULT 'OFFEN',\n prioritaet INT CHECK (prioritaet BETWEEN 1 AND 5),\n ersteller_id INT,\n FOREIGN KEY (ersteller_id) REFERENCES benutzer(id) ON DELETE CASCADE\n); (10 Pkt. - Abzug bei fehlendem NOT NULL, CHECK, DEFAULT oder FOREIGN KEY)",
"type": "text",
"options": []
},
{
"id": "ap2_sql_002",
"exam": "AP2_T2",
"lernfeld": "LF 10",
"topic": "SQL DML Aggregation und GROUP BY mit HAVING",
"scenario": "Gegeben sind die Tabellen kunden (id, name, stadt) und bestellungen (id, kunde_id, betrag, datum).",
"question": "Formulieren Sie eine SQL-Abfrage, die den Kundennamen und die Gesamtsumme aller Bestellungen für jeden Kunden ausgibt, dessen Gesamtbestellwert 10.000 EUR überschreitet. Das Ergebnis soll absteigend nach der Summe sortiert sein.",
"points": 10,
"solution": "SELECT k.name, SUM(b.betrag) AS gesamtumsatz\nFROM kunden k\nINNER JOIN bestellungen b ON k.id = b.kunde_id\nGROUP BY k.id, k.name\nHAVING SUM(b.betrag) > 10000\nORDER BY gesamtumsatz DESC; (10 Pkt. - Abzug bei WHERE statt HAVING für Aggregatfunktion oder fehlendem GROUP BY)",
"type": "text",
"options": []
},
{
"id": "ap2_sql_003",
"exam": "AP2_T2",
"lernfeld": "LF 10",
"topic": "SQL JOIN-Typen INNER vs LEFT vs FULL",
"scenario": "In einer Datenbank existieren mitarbeiter (id, name, abt_id) und abteilungen (id, bezeichnung). Einige Mitarbeiter haben keine Abteilung, und einige Abteilungen haben keine Mitarbeiter.",
"question": "Erläutern Sie den Unterschied im Abfrageergebnis zwischen INNER JOIN und LEFT OUTER JOIN bezüglich der Ergebniszeilen.",
"points": 6,
"solution": "INNER JOIN: Liefert ausschließlich Zeilen zurück, bei denen in beiden Tabellen ein übereinstimmender Wert vorliegt (Schnittmenge). Mitarbeiter ohne Abteilung und Abteilungen ohne Mitarbeiter werden vollständig verworfen. (3 Pkt.)\nLEFT OUTER JOIN (mitarbeiter LEFT JOIN abteilungen): Liefert ALLE Datensätze der linken Tabelle (mitarbeiter), selbst wenn keine Übereinstimmung in abteilungen vorliegt. Die fehlenden Abteilungsspalten werden mit NULL aufgefüllt. (3 Pkt.)",
"type": "text",
"options": []
},
{
"id": "ap2_sql_004",
"exam": "AP2_T2",
"lernfeld": "LF 10",
"topic": "SQL Transaktionen ACID-Eigenschaften",
"scenario": "Bei einer Banküberweisung von 500 EUR von Konto A auf Konto B wird ein Transaktionsblock ausgeführt.",
"question": "Nennen und erläutern Sie die vier ACID-Eigenschaften und beschreiben Sie, was passiert, wenn nach dem Abbuchen von Konto A das Datenbanksystem abstürzt.",
"points": 8,
"solution": "Atomarität (Atomicity): Alles-oder-Nichts-Prinzip. Eine Transaktion wird entweder ganz oder gar nicht ausgeführt. (2 Pkt.)\nKonsistenz (Consistency): Nach Abschluss der Transaktion befindet sich die Datenbank in einem gültigen, integren Zustand. (2 Pkt.)\nIsolation: Gleichzeitige Transaktionen beeinflussen sich nicht gegenseitig. (1 Pkt.)\nDauerhaftigkeit (Durability): Erfolgreich mit COMMIT bestätigte Änderungen bleiben dauerhaft im Speicher erhalten. (1 Pkt.)\nAbsturzfolge: Da die Buchung nicht durch COMMIT bestätigt wurde, greift beim Neustart ein automatisches Rollback (Undo-Logging). Die Abbuchung auf Konto A wird rückgängig gemacht. (2 Pkt.)",
"type": "text",
"options": []
},
{
"id": "ap2_sql_005",
"exam": "AP2_T2",
"lernfeld": "LF 10",
"topic": "SQL Subqueries mit IN und EXISTS",
"scenario": "Gegeben sind die Tabellen kunden (id, name, land) und bestellungen (id, kunde_id, summe).",
"question": "Formulieren Sie zwei SQL-Abfragen, die alle Kundennamen ausgeben, die mindestens eine Bestellung getätigt haben: Einmal unter Verwendung einer Subquery mit IN und einmal mit EXISTS.",
"points": 8,
"solution": "Variante 1 (IN):\nSELECT name FROM kunden WHERE id IN (SELECT kunde_id FROM bestellungen); (4 Pkt.)\nVariante 2 (EXISTS / Korrelierte Unterabfrage):\nSELECT k.name FROM kunden k WHERE EXISTS (SELECT 1 FROM bestellungen b WHERE b.kunde_id = k.id); (4 Pkt.)",
"type": "text",
"options": []
},
{
"id": "ap2_sql_006",
"exam": "AP2_T2",
"lernfeld": "LF 10",
"topic": "SQL Window Functions ROW_NUMBER & RANK",
"scenario": "In einer Vertriebsdatenbank sollen die Top-3-Umsätze jedes Verkäufers ermittelt werden.",
"question": "Erläutern Sie die Funktionsweise von SQL Window Functions gegenüber GROUP BY und erklären Sie die Syntax von ROW_NUMBER() OVER (PARTITION BY ... ORDER BY ...).",
"points": 8,
"solution": "Unterschied zu GROUP BY: GROUP BY fasst Zeilen zusammen und reduziert die Ergebnismenge auf eine einzige Zeile pro Gruppe. Eine Window Function führt Berechnungen über eine definierte Zeilenmenge (das Fenster / Window) durch, behält jedoch die individuelle Identität jeder einzelnen Zeile bei. (4 Pkt.)\nSyntax-Erklärung:\n- ROW_NUMBER(): Vergibt eine fortlaufende Zeilennummer (1, 2, 3...).\n- PARTITION BY spalte: Teilt den Datensatz in logische Untergruppen (z. B. pro Verkäufer).\n- ORDER BY spalte DESC: Bestimmt die Sortierreihenfolge innerhalb jeder Partition (z. B. höchster Umsatz zuerst). (4 Pkt.)",
"type": "text",
"options": []
},
{
"id": "ap2_sql_007",
"exam": "AP2_T2",
"lernfeld": "LF 10",
"topic": "SQL Datums- und Zeitfunktionen (DATEDIFF & DATEADD)",
"scenario": "In einem Support-System (Tabelle tickets mit id, erstelldatum, schliessdatum) soll die Bearbeitungsdauer analysiert werden.",
"question": "Formulieren Sie eine SQL-Abfrage nach ZPA-Standard, die für alle im laufenden Jahr geschlossenen Tickets die Ticket-ID und die Bearbeitungsdauer in Tagen berechnet (unter Verwendung von DATEDIFF) und nur Tickets anzeigt, deren Bearbeitung länger als 14 Tage gedauert hat.",
"points": 8,
"solution": "SELECT id, DATEDIFF(day, erstelldatum, schliessdatum) AS bearbeitungsdauer_tage\nFROM tickets\nWHERE schliessdatum IS NOT NULL\n AND DATEDIFF(day, erstelldatum, schliessdatum) > 14\nORDER BY bearbeitungsdauer_tage DESC; (8 Pkt. - Volle Punktzahl auch bei SQL-Dialekt-Varianten wie DATEDIFF(schliessdatum, erstelldatum) oder DATE_PART)",
"type": "text",
"options": []
},
{
"id": "ap2_sql_008",
"exam": "AP2_T2",
"lernfeld": "LF 10",
"topic": "Statistische SQL-Funktionen (STDDEV, VARIANCE, CORR)",
"scenario": "Im Rahmen einer Performance-Analyse von Server-Antwortzeiten (Tabelle server_metrics mit server_id, response_time_ms, cpu_load) werden statistische Kennzahlen benötigt.",
"question": "Erläutern Sie die Aufgaben und mathematische Bedeutung der SQL-Aggregatfunktionen STDDEV(), VARIANCE() und CORR() und beschreiben Sie einen Anwendungsfall zur Erkennung von Lastanomalien.",
"points": 6,
"solution": "VARIANCE(): Berechnet die statistische Varianz (mittlere quadratische Abweichung vom Mittelwert) der Messwerte. (2 Pkt.)\nSTDDEV(): Berechnet die Standardabweichung (Quadratwurzel der Varianz) als Maß für die Streuung um den Mittelwert. Anwendungsfall: Überschreitet eine Antwortzeit den Bereich Mittelwert + 3*STDDEV (3-Sigma-Regel), liegt eine signifikante Performance-Anomalie vor. (2 Pkt.)\nCORR(spalte1, spalte2): Berechnet den Pearson-Korrelationskoeffizienten (-1 bis +1) zwischen zwei Variablen, um festzustellen, ob hohe Antwortzeiten direkt linear mit hoher CPU-Last korrelieren. (2 Pkt.)",
"type": "text",
"options": []
},
{ {
"id": "ap2_lf12_001", "id": "ap2_lf12_001",
"exam": "AP2_T2", "exam": "AP2_T2",
@ -1551,11 +1803,11 @@
"id": "ap1_lf5_014", "id": "ap1_lf5_014",
"exam": "AP1", "exam": "AP1",
"lernfeld": "LF 5", "lernfeld": "LF 5",
"topic": "SQL Subqueries mit IN und EXISTS", "topic": "Transformation ERM in Relationales Schema (1:n und n:m)",
"scenario": "Gegeben sind die Tabellen kunden (id, name, land) und bestellungen (id, kunde_id, summe).", "scenario": "Ein ER-Modell enthält die Entitäten \"Abteilung\" und \"Mitarbeiter\" (1:n) sowie \"Mitarbeiter\" und \"Projekt\" (n:m).",
"question": "Formulieren Sie zwei SQL-Abfragen, die alle Kundennamen ausgeben, die mindestens eine Bestellung getätigt haben: Einmal unter Verwendung einer Subquery mit IN und einmal mit EXISTS.", "question": "Beschreiben Sie die formalen Regeln zur Überführung einer 1:n-Beziehung und einer n:m-Beziehung in ein relationales Tabellenschema (Primär-/Fremdschlüssel-Platzierung).",
"points": 8, "points": 8,
"solution": "Variante 1 (IN):\nSELECT name FROM kunden WHERE id IN (SELECT kunde_id FROM bestellungen); (4 Pkt.)\nVariante 2 (EXISTS / Korrelierte Unterabfrage):\nSELECT k.name FROM kunden k WHERE EXISTS (SELECT 1 FROM bestellungen b WHERE b.kunde_id = k.id); (4 Pkt.)", "solution": "Überführung 1:n (1 Abteilung hat n Mitarbeiter):\nDer Primärschlüssel der 1-Seite (abteilung_id) wird als Fremdschlüssel (FK) in die Relation der n-Seite (Mitarbeiter) aufgenommen. Eine eigene Zwischentabelle ist nicht erforderlich. (4 Pkt.)\nÜberführung n:m (Mitarbeiter arbeitet in n Projekten):\nEs wird zwingend eine eigenständige Verknüpfungstabelle (z. B. mitarbeiter_projekt) angelegt. Diese enthält die Primärschlüssel beider beteiligter Tabellen (mitarbeiter_id und projekt_id) als Fremdschlüssel. Beide Fremdschlüssel bilden gemeinsam den zusammengesetzten Primärschlüssel der Zwischentabelle. (4 Pkt.)",
"type": "text", "type": "text",
"options": [] "options": []
}, },
@ -1563,11 +1815,11 @@
"id": "ap1_lf5_015", "id": "ap1_lf5_015",
"exam": "AP1", "exam": "AP1",
"lernfeld": "LF 5", "lernfeld": "LF 5",
"topic": "SQL Window Functions ROW_NUMBER", "topic": "Datenvalidierung & Konsistenzprüfung im Erfassungsdialog",
"scenario": "In einer Vertriebsdatenbank sollen die Top-3-Umsätze jedes Verkäufers ermittelt werden.", "scenario": "In einer Eingabemaske für Kundenstammdaten sollen fehlerhafte Eingaben frühzeitig abgefangen werden.",
"question": "Erläutern Sie die Funktionsweise von SQL Window Functions gegenüber GROUP BY und erklären Sie die Syntax von ROW_NUMBER() OVER (PARTITION BY ... ORDER BY ...).", "question": "Nennen und erläutern Sie vier Methoden der serverseitigen bzw. anwendungsseitigen Datenvalidierung (z. B. Typ-, Wertebereichs-, Plausibilitäts- und Pflichtfeldprüfung) anhand konkreter Beispiele.",
"points": 8, "points": 8,
"solution": "Unterschied zu GROUP BY: GROUP BY fasst Zeilen zusammen und reduziert die Ergebnismenge auf eine einzige Zeile pro Gruppe. Eine Window Function führt Berechnungen über eine definierte Zeilenmenge (das Fenster / Window) durch, behält jedoch die individuelle Identität jeder einzelnen Zeile bei. (4 Pkt.)\nSyntax-Erklärung:\n- ROW_NUMBER(): Vergibt eine fortlaufende Zeilennummer (1, 2, 3...).\n- PARTITION BY spalte: Teilt den Datensatz in logische Untergruppen (z. B. pro Verkäufer).\n- ORDER BY spalte DESC: Bestimmt die Sortierreihenfolge innerhalb jeder Partition (z. B. höchster Umsatz zuerst). (4 Pkt.)", "solution": "1. Pflichtfeldprüfung (Nullwertprüfung): Stellt sicher, dass zwingend notwendige Daten (z. B. Nachname, E-Mail) nicht leer übermittelt werden. (2 Pkt.)\n2. Datentypprüfung: Überprüft, ob der eingegebene Wert dem erwarteten Datentyp entspricht (z. B. Geburtstag als valides Datum YYYY-MM-DD, Kundennummer als Ganzzahl). (2 Pkt.)\n3. Wertebereichsprüfung (Range Check): Kontrolliert, ob ein numerischer Wert innerhalb zulässiger Grenzwerte liegt (z. B. Alter zwischen 18 und 120 Jahren). (2 Pkt.)\n4. Format- und Plausibilitätsprüfung: Prüfung auf bestimmte Muster mittels Regex (z. B. gültige E-Mail-Syntax @..., deutsche Postleitzahl genau 5 Ziffern) oder semantische Zusammenhänge (z. B. Vertragsende darf nicht vor Vertragsbeginn liegen). (2 Pkt.)",
"type": "text", "type": "text",
"options": [] "options": []
}, },

View file

@ -112,18 +112,34 @@
transform: scale(0.98); transform: scale(0.98);
} }
.ihk-btn-success { .ihk-btn-primary {
background: #16a34a; background: #0284c7;
color: white !important;
text-decoration: none;
} }
.ihk-btn-success:hover { .ihk-btn-primary:hover {
background: #15803d; background: #0369a1;
color: white !important;
} }
.ihk-btn-secondary { .ihk-btn-secondary {
background: #475569; background: #475569;
color: white !important;
text-decoration: none;
} }
.ihk-btn-secondary:hover { .ihk-btn-secondary:hover {
background: #334155; background: #334155;
color: white !important;
}
.ihk-btn-success {
background: #16a34a;
color: white !important;
text-decoration: none;
}
.ihk-btn-success:hover {
background: #15803d;
color: white !important;
} }
.ihk-result-box { .ihk-result-box {

View file

@ -0,0 +1,248 @@
/**
* 📅 IHK NETZPLAN-TRAINER (DIN 69900) 📅
* =====================================
* Interaktiver Trainer zur Berechnung von:
* - Vorwärtsrechnung: FAZ (Frühester Anfangszeitpunkt) & FEZ (Frühester Endzeitpunkt)
* - Rückwärtsrechnung: SAZ (Spätester Anfangszeitpunkt) & SEZ (Spätester Endzeitpunkt)
* - Pufferzeiten: GP (Gesamtpuffer = SAZ - FAZ) & FP (Freier Puffer = min(FAZ_Nachfolger) - FEZ)
* - Kritischer Pfad (Vorgänge mit GP = 0)
*/
class NetzplanTrainer {
constructor(containerId) {
this.container = document.getElementById(containerId);
this.scenarioIndex = 0;
this.scenarios = [
{
title: "Szenario 1: Rollout eines neuen Firmennetzwerks (PrintTop GmbH)",
nodes: [
{ id: "A", name: "Anforderungsanalyse", d: 3, preds: [], faz: 0, fez: 3, saz: 0, sez: 3, gp: 0, fp: 0 },
{ id: "B", name: "Hardware-Beschaffung", d: 5, preds: ["A"], faz: 3, fez: 8, saz: 3, sez: 8, gp: 0, fp: 0 },
{ id: "C", name: "Kabelverlegung (Cat 7)", d: 4, preds: ["A"], faz: 3, fez: 7, saz: 4, sez: 8, gp: 1, fp: 1 },
{ id: "D", name: "Switch-/Router-Konfiguration", d: 4, preds: ["B"], faz: 8, fez: 12, saz: 8, sez: 12, gp: 0, fp: 0 },
{ id: "E", name: "Patchfeld & Dosen auflegen", d: 3, preds: ["C"], faz: 7, fez: 10, saz: 9, sez: 12, gp: 2, fp: 2 },
{ id: "F", name: "End-to-End Funktionstest", d: 2, preds: ["D", "E"], faz: 12, fez: 14, saz: 12, sez: 14, gp: 0, fp: 0 },
{ id: "G", name: "Übergabe & Abnahme", d: 1, preds: ["F"], faz: 14, fez: 15, saz: 14, sez: 15, gp: 0, fp: 0 }
],
criticalPath: ["A", "B", "D", "F", "G"]
},
{
title: "Szenario 2: Migration auf Microsoft Active Directory",
nodes: [
{ id: "A", name: "Ist-Aufnahme AD DS", d: 2, preds: [], faz: 0, fez: 2, saz: 0, sez: 2, gp: 0, fp: 0 },
{ id: "B", name: "OU-Struktur & GPO-Design", d: 4, preds: ["A"], faz: 2, fez: 6, saz: 2, sez: 6, gp: 0, fp: 0 },
{ id: "C", name: "Bereitstellung DC-Hardware", d: 3, preds: ["A"], faz: 2, fez: 5, saz: 3, sez: 6, gp: 1, fp: 1 },
{ id: "D", name: "Benutzerdaten CSV-Export", d: 2, preds: ["A"], faz: 2, fez: 4, saz: 6, sez: 8, gp: 4, fp: 4 },
{ id: "E", name: "Installation Domain Controller", d: 2, preds: ["B", "C"], faz: 6, fez: 8, saz: 6, sez: 8, gp: 0, fp: 0 },
{ id: "F", name: "PowerShell Massenimport", d: 3, preds: ["D", "E"], faz: 8, fez: 11, saz: 8, sez: 11, gp: 0, fp: 0 },
{ id: "G", name: "Client-Domain-Join & Tests", d: 2, preds: ["F"], faz: 11, fez: 13, saz: 11, sez: 13, gp: 0, fp: 0 }
],
criticalPath: ["A", "B", "E", "F", "G"]
}
];
this.init();
}
init() {
if (!this.container) return;
this.render();
}
render() {
const sc = this.scenarios[this.scenarioIndex];
this.container.innerHTML = `
<div class="ihk-tool-card" style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px;">
<div class="ihk-tool-header" style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px;">
<div>
<h3 style="color: #38bdf8; margin: 0; font-size: 1.3rem;">📊 DIN 69900 Netzplantechnik Trainer</h3>
<p style="color: #94a3b8; font-size: 0.9rem; margin: 4px 0 0 0;">${sc.title}</p>
</div>
<div style="display: flex; gap: 8px;">
<button class="ihk-btn ihk-btn-secondary" id="np-prev-scenario" style="padding: 6px 12px; font-size: 0.85rem;">← Szenario 1</button>
<button class="ihk-btn ihk-btn-secondary" id="np-next-scenario" style="padding: 6px 12px; font-size: 0.85rem;">Szenario 2 →</button>
</div>
</div>
<div style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 16px; margin-bottom: 20px;">
<p style="color: #cbd5e1; font-size: 0.9rem; margin: 0 0 10px 0;">
<strong>Aufgabe:</strong> Berechnen Sie für jeden Vorgang die Zeitpunkte der <em>Vorwärtsrechnung</em> (FAZ, FEZ), der <em>Rückwärtsrechnung</em> (SAZ, SEZ) sowie den <em>Gesamtpuffer (GP)</em> und <em>Freien Puffer (FP)</em>. Identifizieren Sie anschließend alle Vorgänge auf dem <strong>Kritischen Pfad</strong>.
</p>
<div style="display: flex; gap: 16px; flex-wrap: wrap; font-size: 0.82rem; color: #94a3b8;">
<span>ℹ️ <code>FEZ = FAZ + D</code></span>
<span>ℹ️ <code>FAZ = max(FEZ aller Vorgänger)</code></span>
<span>ℹ️ <code>SAZ = SEZ - D</code></span>
<span>ℹ️ <code>SEZ = min(SAZ aller Nachfolger)</code></span>
<span>ℹ️ <code>GP = SAZ - FAZ = SEZ - FEZ</code></span>
<span>ℹ️ <code>FP = min(FAZ Nachfolger) - FEZ</code></span>
</div>
</div>
<!-- Interaktive Tabelle -->
<div style="overflow-x: auto; margin-bottom: 20px;">
<table class="ihk-table" style="width: 100%; border-collapse: collapse; font-size: 0.85rem; text-align: center;">
<thead>
<tr style="background: #0f172a; color: #38bdf8;">
<th style="padding: 10px; border: 1px solid #334155;">ID</th>
<th style="padding: 10px; border: 1px solid #334155; text-align: left;">Vorgang</th>
<th style="padding: 10px; border: 1px solid #334155;">Dauer (D)</th>
<th style="padding: 10px; border: 1px solid #334155;">Vorgänger</th>
<th style="padding: 10px; border: 1px solid #334155; background: #1e3a8a; color: #93c5fd;">FAZ</th>
<th style="padding: 10px; border: 1px solid #334155; background: #1e3a8a; color: #93c5fd;">FEZ</th>
<th style="padding: 10px; border: 1px solid #334155; background: #701a75; color: #f0abfc;">SAZ</th>
<th style="padding: 10px; border: 1px solid #334155; background: #701a75; color: #f0abfc;">SEZ</th>
<th style="padding: 10px; border: 1px solid #334155; color: #facc15;">GP</th>
<th style="padding: 10px; border: 1px solid #334155; color: #facc15;">FP</th>
<th style="padding: 10px; border: 1px solid #334155; color: #f87171;">Kritisch?</th>
</tr>
</thead>
<tbody>
${sc.nodes.map(n => `
<tr id="row-node-${n.id}" style="border: 1px solid #334155;">
<td style="padding: 8px; font-weight: bold; color: #38bdf8;">${n.id}</td>
<td style="padding: 8px; text-align: left; color: #f8fafc;">${n.name}</td>
<td style="padding: 8px; font-weight: 600;">${n.d}</td>
<td style="padding: 8px; color: #94a3b8;">${n.preds.length > 0 ? n.preds.join(", ") : "-"}</td>
<td style="padding: 6px;"><input type="number" id="in-faz-${n.id}" class="ihk-input" style="width: 55px; text-align: center; padding: 4px;" min="0"></td>
<td style="padding: 6px;"><input type="number" id="in-fez-${n.id}" class="ihk-input" style="width: 55px; text-align: center; padding: 4px;" min="0"></td>
<td style="padding: 6px;"><input type="number" id="in-saz-${n.id}" class="ihk-input" style="width: 55px; text-align: center; padding: 4px;" min="0"></td>
<td style="padding: 6px;"><input type="number" id="in-sez-${n.id}" class="ihk-input" style="width: 55px; text-align: center; padding: 4px;" min="0"></td>
<td style="padding: 6px;"><input type="number" id="in-gp-${n.id}" class="ihk-input" style="width: 50px; text-align: center; padding: 4px;" min="0"></td>
<td style="padding: 6px;"><input type="number" id="in-fp-${n.id}" class="ihk-input" style="width: 50px; text-align: center; padding: 4px;" min="0"></td>
<td style="padding: 6px;"><input type="checkbox" id="in-crit-${n.id}" style="transform: scale(1.3); cursor: pointer;"></td>
</tr>
`).join("")}
</tbody>
</table>
</div>
<div style="display: flex; gap: 12px; flex-wrap: wrap;">
<button class="ihk-btn ihk-btn-success" id="np-check-btn">✓ Berechnungen prüfen</button>
<button class="ihk-btn ihk-btn-secondary" id="np-solve-btn">💡 Musterlösung ausfüllen</button>
<button class="ihk-btn ihk-btn-secondary" id="np-reset-btn">Zurücksetzen</button>
</div>
<div id="np-feedback-box" class="ihk-result-box" style="margin-top: 18px;"></div>
</div>
`;
this.attachEvents();
}
attachEvents() {
document.getElementById("np-check-btn").addEventListener("click", () => this.checkAnswers());
document.getElementById("np-solve-btn").addEventListener("click", () => this.solve());
document.getElementById("np-reset-btn").addEventListener("click", () => this.render());
document.getElementById("np-prev-scenario").addEventListener("click", () => {
this.scenarioIndex = 0;
this.render();
});
document.getElementById("np-next-scenario").addEventListener("click", () => {
this.scenarioIndex = 1;
this.render();
});
}
checkAnswers() {
const sc = this.scenarios[this.scenarioIndex];
let correctCount = 0;
let totalFields = sc.nodes.length * 7;
const errors = [];
sc.nodes.forEach(n => {
const row = document.getElementById(`row-node-${n.id}`);
const valFaz = parseInt(document.getElementById(`in-faz-${n.id}`).value, 10);
const valFez = parseInt(document.getElementById(`in-fez-${n.id}`).value, 10);
const valSaz = parseInt(document.getElementById(`in-saz-${n.id}`).value, 10);
const valSez = parseInt(document.getElementById(`in-sez-${n.id}`).value, 10);
const valGp = parseInt(document.getElementById(`in-gp-${n.id}`).value, 10);
const valFp = parseInt(document.getElementById(`in-fp-${n.id}`).value, 10);
const valCrit = document.getElementById(`in-crit-${n.id}`).checked;
const isActuallyCrit = sc.criticalPath.includes(n.id);
let nodeOk = true;
const checkField = (elemId, actual, expected, name) => {
const el = document.getElementById(elemId);
if (actual === expected) {
el.style.border = "1px solid #22c55e";
el.style.background = "#064e3b";
correctCount++;
} else {
el.style.border = "1px solid #ef4444";
el.style.background = "#450a0a";
nodeOk = false;
errors.push(`Vorgang ${n.id} (${n.name}): ${name} sollte ${expected} sein (Eingabe: ${isNaN(actual) ? 'leer' : actual}).`);
}
};
checkField(`in-faz-${n.id}`, valFaz, n.faz, "FAZ");
checkField(`in-fez-${n.id}`, valFez, n.fez, "FEZ");
checkField(`in-saz-${n.id}`, valSaz, n.saz, "SAZ");
checkField(`in-sez-${n.id}`, valSez, n.sez, "SEZ");
checkField(`in-gp-${n.id}`, valGp, n.gp, "GP");
checkField(`in-fp-${n.id}`, valFp, n.fp, "FP");
const critEl = document.getElementById(`in-crit-${n.id}`);
if (valCrit === isActuallyCrit) {
critEl.parentElement.style.background = "#064e3b";
correctCount++;
} else {
critEl.parentElement.style.background = "#450a0a";
nodeOk = false;
errors.push(`Vorgang ${n.id} liegt ${isActuallyCrit ? 'AUF' : 'NICHT auf'} dem kritischen Pfad.`);
}
if (nodeOk) {
row.style.background = "rgba(34, 197, 94, 0.1)";
} else {
row.style.background = "rgba(239, 68, 68, 0.1)";
}
});
const box = document.getElementById("np-feedback-box");
box.style.display = "block";
const percent = Math.round((correctCount / totalFields) * 100);
if (errors.length === 0) {
box.innerHTML = `
<div style="border-left: 4px solid #22c55e; padding-left: 14px;">
<h4 style="color: #4ade80; margin: 0 0 6px 0; font-size: 1.1rem;">🎉 Perfekt! 100% Richtige Netzplanberechnung (${correctCount}/${totalFields} Felder)</h4>
<p style="color: #cbd5e1; margin: 0; line-height: 1.5;">
Gesamtdauer des Projekts: <strong>${sc.nodes[sc.nodes.length - 1].fez} Zeiteinheiten</strong>.<br>
Der kritische Pfad verläuft über: <strong style="color: #f87171;">${sc.criticalPath.join(" → ")}</strong>. Alle Vorgänge hier haben Gesamtpuffer <code>GP = 0</code>.
</p>
</div>
`;
} else {
box.innerHTML = `
<div style="border-left: 4px solid #ef4444; padding-left: 14px;">
<h4 style="color: #f87171; margin: 0 0 6px 0; font-size: 1.1rem;">⚠️ ${errors.length} Fehler gefunden (${percent}% korrekt)</h4>
<ul style="color: #cbd5e1; margin: 8px 0 0 0; padding-left: 20px; font-size: 0.88rem; line-height: 1.6;">
${errors.slice(0, 6).map(e => `<li>${e}</li>`).join("")}
${errors.length > 6 ? `<li>... und ${errors.length - 6} weitere Abweichungen.</li>` : ""}
</ul>
</div>
`;
}
}
solve() {
const sc = this.scenarios[this.scenarioIndex];
sc.nodes.forEach(n => {
document.getElementById(`in-faz-${n.id}`).value = n.faz;
document.getElementById(`in-fez-${n.id}`).value = n.fez;
document.getElementById(`in-saz-${n.id}`).value = n.saz;
document.getElementById(`in-sez-${n.id}`).value = n.sez;
document.getElementById(`in-gp-${n.id}`).value = n.gp;
document.getElementById(`in-fp-${n.id}`).value = n.fp;
document.getElementById(`in-crit-${n.id}`).checked = sc.criticalPath.includes(n.id);
});
this.checkAnswers();
}
}
document.addEventListener("DOMContentLoaded", () => {
if (document.getElementById("netzplan-trainer-container")) {
window.netzplanTrainer = new NetzplanTrainer("netzplan-trainer-container");
}
});

View file

@ -0,0 +1,225 @@
/**
* ⚡ IHK BINÄRPRÄFIX- & TRANSFERZEIT-DRILL (IEC 60027-2) ⚡
* ======================================================
* Interaktiver Drill für:
* 1. Binärpräfixe (KiB, MiB, GiB, TiB) vs. Dezimalpräfixe (kB, MB, GB, TB)
* 2. Berechnen der tatsächlichen Speicherkapazität (Herstellerangabe vs. Betriebssystem)
* 3. Übertragungszeit-Berechnung t = Datenmenge / Datenrate mit Einheitenkonvertierung
*/
class PrefixConverter {
constructor(containerId) {
this.container = document.getElementById(containerId);
this.init();
}
init() {
if (!this.container) return;
this.render();
}
render() {
this.container.innerHTML = `
<div class="ihk-tool-card" style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin-bottom: 24px;">
<div class="ihk-tool-header" style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 20px;">
<div>
<h3 style="color: #38bdf8; margin: 0; font-size: 1.3rem;">⚡ IEC-Binärpräfixe & Transferzeit Drill-Master</h3>
<p style="color: #94a3b8; font-size: 0.9rem; margin: 4px 0 0 0;">Strikte ZPA 2. Auflage Normierung (KiB, MiB, GiB, TiB)</p>
</div>
<div>
<span class="ihk-badge ihk-badge-warning">ZPA Pflichtstoff</span>
</div>
</div>
<div style="display: flex; gap: 10px; margin-bottom: 20px; border-bottom: 1px solid #334155; padding-bottom: 12px;">
<button id="pfx-tab-drill" class="ihk-btn ihk-btn-primary" style="padding: 6px 14px; font-size: 0.85rem;">💾 Festplatten-Kapazität (SI vs. IEC)</button>
<button id="pfx-tab-time" class="ihk-btn ihk-btn-secondary" style="padding: 6px 14px; font-size: 0.85rem;">⏱️ Datentransferzeit-Rechner</button>
</div>
<!-- Ansicht 1: Festplattenkapazität -->
<div id="pfx-view-drill">
<div style="background: #0f172a; padding: 16px; border-radius: 8px; border: 1px solid #334155; margin-bottom: 18px;">
<p style="color: #cbd5e1; font-size: 0.92rem; margin: 0; line-height: 1.6;">
Festplattenhersteller verkaufen Speicher nach <strong>Dezimalpräfixen (SI: 10er-Potenzen)</strong>.<br>
Betriebssysteme (Windows, Linux) verwalten Speicher jedoch in <strong>Binärpräfixen (IEC: 2er-Potenzen)</strong>.<br>
<em>1 TB (Hersteller) = 1.000.000.000.000 Byte. 1 TiB (IEC) = 1.024⁴ = 1.099.511.627.776 Byte.</em>
</p>
</div>
<div style="display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 16px; margin-bottom: 20px;">
<div class="ihk-input-group">
<label>Herstellerangabe (Dezimal):</label>
<input type="number" id="pfx-disk-val" class="ihk-input" value="2" min="1" max="100">
</div>
<div class="ihk-input-group">
<label>Einheit:</label>
<select id="pfx-disk-unit" class="ihk-select">
<option value="GB">GB (10⁹ Byte)</option>
<option value="TB" selected>TB (10¹² Byte)</option>
</select>
</div>
</div>
<button class="ihk-btn ihk-btn-success" id="btn-calc-pfx">🧮 Echte Kapazität in GiB / TiB berechnen</button>
<div id="pfx-disk-result" style="margin-top: 18px; background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 18px; display: none;"></div>
</div>
<!-- Ansicht 2: Datentransferzeit -->
<div id="pfx-view-time" style="display: none;">
<div style="background: #0f172a; padding: 16px; border-radius: 8px; border: 1px solid #334155; margin-bottom: 18px;">
<p style="color: #cbd5e1; font-size: 0.92rem; margin: 0; line-height: 1.6;">
<strong>IHK-Klassiker:</strong> Übertragungszeit berechnen unter Berücksichtigung von Byte $\rightarrow$ Bit (Faktor 8) und Protokoll-Overhead!
</p>
</div>
<div style="display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 16px; margin-bottom: 20px;">
<div class="ihk-input-group">
<label>Datenmenge:</label>
<input type="number" id="pfx-data-amount" class="ihk-input" value="50" min="1">
</div>
<div class="ihk-input-group">
<label>Datenmengen-Einheit:</label>
<select id="pfx-data-unit" class="ihk-select">
<option value="MiB">MiB (1.024² Byte)</option>
<option value="GiB" selected>GiB (1.024³ Byte)</option>
<option value="TiB">TiB (1.024⁴ Byte)</option>
</select>
</div>
<div class="ihk-input-group">
<label>Netzwerk-Bandbreite:</label>
<input type="number" id="pfx-net-speed" class="ihk-input" value="100" min="1">
</div>
<div class="ihk-input-group">
<label>Bandbreiten-Einheit:</label>
<select id="pfx-speed-unit" class="ihk-select">
<option value="Mbit">Mbit/s (10⁶ Bit/s)</option>
<option value="Gbit">Gbit/s (10⁹ Bit/s)</option>
</select>
</div>
</div>
<div class="ihk-input-group" style="margin-bottom: 20px;">
<label>Protokoll-Overhead (z. B. TCP/IP, Verschlüsselung):</label>
<select id="pfx-overhead" class="ihk-select">
<option value="0">0 % (Theoretisches Maximum)</option>
<option value="5">5 % (Typischer TCP/IP Overhead)</option>
<option value="10" selected>10 % (Realistischer Netzwerk-Overhead)</option>
</select>
</div>
<button class="ihk-btn ihk-btn-success" id="btn-calc-time">⏱️ Übertragungsdauer berechnen</button>
<div id="pfx-time-result" style="margin-top: 18px; background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 18px; display: none;"></div>
</div>
</div>
`;
this.attachEvents();
}
attachEvents() {
const tabDrill = document.getElementById("pfx-tab-drill");
const tabTime = document.getElementById("pfx-tab-time");
const viewDrill = document.getElementById("pfx-view-drill");
const viewTime = document.getElementById("pfx-view-time");
tabDrill.addEventListener("click", () => {
tabDrill.className = "ihk-btn ihk-btn-primary";
tabTime.className = "ihk-btn ihk-btn-secondary";
viewDrill.style.display = "block";
viewTime.style.display = "none";
});
tabTime.addEventListener("click", () => {
tabTime.className = "ihk-btn ihk-btn-primary";
tabDrill.className = "ihk-btn ihk-btn-secondary";
viewTime.style.display = "block";
viewDrill.style.display = "none";
});
document.getElementById("btn-calc-pfx").addEventListener("click", () => this.calcCapacity());
document.getElementById("btn-calc-time").addEventListener("click", () => this.calcTime());
}
calcCapacity() {
const val = parseFloat(document.getElementById("pfx-disk-val").value) || 0;
const unit = document.getElementById("pfx-disk-unit").value;
const resBox = document.getElementById("pfx-disk-result");
resBox.style.display = "block";
let bytes = 0;
if (unit === "GB") bytes = val * 1e9;
if (unit === "TB") bytes = val * 1e12;
const gib = bytes / Math.pow(1024, 3);
const tib = bytes / Math.pow(1024, 4);
const diffPct = (1 - (gib / (unit === "TB" ? val * 1024 : val))) * 100;
resBox.innerHTML = `
<table style="width: 100%; border-collapse: collapse; color: #cbd5e1; font-size: 0.92rem;">
<tr><td style="padding: 6px 0;">Hersteller-Angabe:</td><td style="text-align: right; font-weight: bold; color: #f8fafc;">${val} ${unit} = ${bytes.toLocaleString()} Byte</td></tr>
<tr><td style="padding: 6px 0;">Nutzbare Kapazität in GiB (IEC):</td><td style="text-align: right; font-weight: bold; color: #38bdf8;">${gib.toFixed(2)} GiB</td></tr>
<tr><td style="padding: 6px 0;">Nutzbare Kapazität in TiB (IEC):</td><td style="text-align: right; font-weight: bold; color: #38bdf8;">${tib.toFixed(3)} TiB</td></tr>
<tr style="border-top: 1px solid #334155;"><td style="padding: 8px 0; color: #facc15;">Scheinbarer Verlust durch Präfix-Unterschied:</td><td style="text-align: right; color: #facc15; font-weight: bold;">ca. ${unit === 'TB' ? '9,09 %' : '6,87 %'}</td></tr>
</table>
<div style="margin-top: 12px; font-size: 0.85rem; color: #94a3b8;">
💡 <em>IHK-Prüfungsbegründung: Das Betriebssystem rechnet mit der Basis 1.024 (${unit === 'TB' ? '1.024⁴' : '1.024³'}). Es handelt sich um keinen physischen Datenverlust, sondern eine Diskrepanz zwischen SI- und IEC-Standard.</em>
</div>
`;
}
calcTime() {
const amount = parseFloat(document.getElementById("pfx-data-amount").value) || 0;
const unit = document.getElementById("pfx-data-unit").value;
const speed = parseFloat(document.getElementById("pfx-net-speed").value) || 0;
const speedUnit = document.getElementById("pfx-speed-unit").value;
const overheadPct = parseFloat(document.getElementById("pfx-overhead").value) || 0;
let bytes = 0;
if (unit === "MiB") bytes = amount * Math.pow(1024, 2);
if (unit === "GiB") bytes = amount * Math.pow(1024, 3);
if (unit === "TiB") bytes = amount * Math.pow(1024, 4);
let totalBits = bytes * 8 * (1 + overheadPct / 100);
let bitsPerSec = 0;
if (speedUnit === "Mbit") bitsPerSec = speed * 1e6;
if (speedUnit === "Gbit") bitsPerSec = speed * 1e9;
const seconds = totalBits / bitsPerSec;
const minutes = seconds / 60;
const hours = minutes / 60;
const resBox = document.getElementById("pfx-time-result");
resBox.style.display = "block";
let timeString = "";
if (hours >= 1) {
const h = Math.floor(hours);
const m = Math.floor((hours - h) * 60);
const s = Math.round(seconds % 60);
timeString = `${h} Stunden, ${m} Minuten, ${s} Sekunden`;
} else if (minutes >= 1) {
const m = Math.floor(minutes);
const s = Math.round(seconds % 60);
timeString = `${m} Minuten, ${s} Sekunden`;
} else {
timeString = `${seconds.toFixed(1)} Sekunden`;
}
resBox.innerHTML = `
<table style="width: 100%; border-collapse: collapse; color: #cbd5e1; font-size: 0.92rem;">
<tr><td style="padding: 6px 0;">Datenmenge (inkl. ${overheadPct}% Overhead):</td><td style="text-align: right; font-weight: bold; color: #f8fafc;">${(totalBits / 8 / 1024 / 1024).toFixed(1)} MiB (${(totalBits / 1e6).toFixed(0)} Mbit)</td></tr>
<tr><td style="padding: 6px 0;">Nettoreichweite Übertragung:</td><td style="text-align: right; font-weight: bold; color: #38bdf8;">${speed} ${speedUnit}/s</td></tr>
<tr style="border-top: 2px solid #22c55e;"><td style="padding: 10px 0; font-size: 1.05rem; font-weight: bold; color: #4ade80;">Berechnete Übertragungsdauer (t):</td><td style="text-align: right; font-size: 1.05rem; font-weight: bold; color: #4ade80;">${timeString} (${seconds.toFixed(1)} s)</td></tr>
</table>
`;
}
}
document.addEventListener("DOMContentLoaded", () => {
if (document.getElementById("prefix-converter-container")) {
window.prefixConverter = new PrefixConverter("prefix-converter-container");
}
});

View file

@ -10,7 +10,7 @@
<body class="bg-slate-900 text-slate-100 font-sans p-6"> <body class="bg-slate-900 text-slate-100 font-sans p-6">
<div class="container mx-auto max-w-4xl"> <div class="container mx-auto max-w-4xl">
<div class="flex justify-between items-center mb-6"> <div class="flex justify-between items-center mb-6">
<a href="../../../dashboard.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zum Dashboard</a> <a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary text-sm">← Zurück zum Dashboard</a>
<span class="ihk-badge ihk-badge-success">Lernfeld 1</span> <span class="ihk-badge ihk-badge-success">Lernfeld 1</span>
</div> </div>
@ -59,6 +59,18 @@
<li><strong>SLA (Service Level Agreement):</strong> Verbindliche Vereinbarung zwischen Kunde und IT-Dienstleister über Reaktionszeit, Wiederherstellungszeit und Verfügbarkeit (z. B. 99,9 %).</li> <li><strong>SLA (Service Level Agreement):</strong> Verbindliche Vereinbarung zwischen Kunde und IT-Dienstleister über Reaktionszeit, Wiederherstellungszeit und Verfügbarkeit (z. B. 99,9 %).</li>
</ul> </ul>
<h3 style="color: #cbd5e1; margin-top: 20px;">🤖 4. Künstliche Intelligenz (KI) im First-Level-Support (ZPA 2. Auflage)</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<p style="color: #cbd5e1; line-height: 1.6; margin-bottom: 8px;">
Der offizielle Prüfungskatalog verankert den Einsatz von KI-Systemen (Large Language Models, NLP) am Arbeitsplatz und im IT-Support:
</p>
<ul style="color: #cbd5e1; line-height: 1.8; margin: 0; padding-left: 20px;">
<li><strong>Automatisierte Tickettriage & Klassifikation:</strong> Das KI-Modell analysiert Freitextmeldungen von Anwendern, ordnet automatisch die passende Service-Kategorie zu und setzt die Priorität (Prio 1–4).</li>
<li><strong>Knowledge-Base Matching & Self-Service:</strong> Vorschlag passender Lösungsartikel (FAQ) für den Anwender oder First-Level-Agenten vor Eskalation an den Second Level.</li>
<li><strong>Risiken & Grenzen:</strong> Halluzinationen (erfundene Lösungswege), Fehlklassifikation bei sarkastischer Sprache oder kombinierten Störungen; DSGVO-Pflicht zur Datenanonymisierung vor Übergabe an Cloud-Modelle.</li>
</ul>
</div>
</div> </div>
<!-- Interaktives Tool falls vorhanden --> <!-- Interaktives Tool falls vorhanden -->
@ -289,11 +301,37 @@ Qualitative Kriterien: 1. Know-how-Aufbau und Datensicherheit im eigenen Haus; 2
</div> </div>
</details> </details>
</div> </div>
<div class="ihk-exam-task" data-title="Künstliche Intelligenz im First-Level-Support & Tickettriage" data-points="6" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Künstliche Intelligenz im First-Level-Support & Tickettriage (Neu 2025)</strong>
<span class="ihk-badge ihk-badge-success">6 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Ein IT-Service-Desk plant den Einsatz eines KI-Systems (Large Language Model / NLP) zur automatisierten Entgegennahme und Priorisierung von Störungstickets.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Nennen Sie drei konkrete Aufgaben, die das KI-System im First-Level-Support übernehmen kann, und erläutern Sie eine zentrale Herausforderung (Risiko) beim automatisierten Ticket-Dispatching.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Drei Aufgaben:
1. Automatische Klassifizierung & Triage: Analysieren des Freitextes und Zuweisen der richtigen Fehlerkategorie und Priorität (Prio 1-4). (1,5 Pkt.)
2. Lösungsvorschläge & Self-Service: Automatischer Abgleich mit der Knowledge Base (FAQ) und Bereitstellung von Standard-Lösungsschritten für den Anwender (z. B. Kennwort-Reset). (1,5 Pkt.)
3. Routing & Zuweisung: Gezielte Weiterleitung an das zuständige Fach-Supportteam (Second Level). (1 Pkt.)
Herausforderung / Risiko: Fehlklassifikation (False Positives / Negatives) bei Sarkasmus, unpräziser Sprache oder kombinierten Problemen; ein kritischer Netzwerkausfall könnte fälschlich als Prio 4 eingestuft werden und SLA-Fristen verletzen. (2 Pkt.)
</div>
</details>
</div>
</div></div> </div></div>
<!-- Footer Navigation -->
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center"> <div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
<span></span> <a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary font-semibold">← Dashboard</a>
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a> <a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary">🏠 Kursübersicht</a>
<a href="../02_lf2_arbeitsplaetze_ausstatten/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a> <a href="../02_lf2_arbeitsplaetze_ausstatten/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
</div> </div>
</div> </div>

View file

@ -10,7 +10,7 @@
<body class="bg-slate-900 text-slate-100 font-sans p-6"> <body class="bg-slate-900 text-slate-100 font-sans p-6">
<div class="container mx-auto max-w-4xl"> <div class="container mx-auto max-w-4xl">
<div class="flex justify-between items-center mb-6"> <div class="flex justify-between items-center mb-6">
<a href="../../../dashboard.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zum Dashboard</a> <a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary text-sm">← Zurück zum Dashboard</a>
<span class="ihk-badge ihk-badge-success">Lernfeld 2</span> <span class="ihk-badge ihk-badge-success">Lernfeld 2</span>
</div> </div>
@ -49,6 +49,36 @@
Total Cost of Ownership (TCO) unterscheidet <strong>CapEx</strong> (einmalige Investitionsausgaben für Anschaffung) und <strong>OpEx</strong> (laufende Betriebskosten für Strom, Wartung, Lizenzen). Die Nutzwertanalyse gewichtet qualitative und quantitative Kriterien zur objektiven Angebotsauswahl. Total Cost of Ownership (TCO) unterscheidet <strong>CapEx</strong> (einmalige Investitionsausgaben für Anschaffung) und <strong>OpEx</strong> (laufende Betriebskosten für Strom, Wartung, Lizenzen). Die Nutzwertanalyse gewichtet qualitative und quantitative Kriterien zur objektiven Angebotsauswahl.
</p> </p>
<h3 style="color: #cbd5e1; margin-top: 20px;">🖥️ 4. Moderne Display-Technologien & ArbStättV-Anforderungen</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<ul style="color: #cbd5e1; line-height: 1.8; margin: 0; padding-left: 20px;">
<li><strong>IPS (In-Plane Switching):</strong> Exzellente Blickwinkelstabilität (178°), hohe Farbtreue (sRGB/AdobeRGB). Ideal für Büroarbeitsplätze, Grafiker und CAD.</li>
<li><strong>VA (Vertical Alignment):</strong> Hoher statischer Kontrast (3000:1), sattes Schwarz, aber leichte Blickwinkelabhängigkeit und Schlierenbildung bei schnellen Bewegungen.</li>
<li><strong>OLED:</strong> Selbstleuchtende Pixel, perfekter Schwarzwert und unendlicher Kontrast, extrem schnelle Reaktionszeiten. Nachteil: Risiko von Burn-In bei statischen Office-Elementen und höherer Stromverbrauch bei hellem Hintergrund.</li>
<li><strong>Bildschirmarbeitsplatzbrille (§ 6 ArbStättV / ArbMedVV):</strong> Reicht eine normale Sehhilfe nicht aus, um den Nahbereich von 50–70 cm scharf zu stellen, hat der Beschäftigte Anspruch auf Kostenübernahme einer speziellen Bildschirmbrille durch den Arbeitgeber.</li>
</ul>
</div>
<h3 style="color: #cbd5e1; margin-top: 20px;">📏 5. Pflichtkriterium ZPA: Strikte Unterscheidung Binär- vs. Dezimalpräfixe</h3>
<div style="background: #0f172a; border-left: 4px solid #f59e0b; padding: 16px; border-radius: 8px; margin: 12px 0;">
<p style="color: #fcd34d; font-weight: bold; margin-top: 0;">⚠️ Strenger IHK-Bewertungsmaßstab (ZPA 2. Auflage):</p>
<p style="color: #cbd5e1; line-height: 1.6; margin-bottom: 8px;">
Bei Aufgaben zu Speichergrößen und Dateivolumina <strong>müssen zwingend Binärpräfixe (IEC)</strong> verwendet werden. Die Verwendung von Dezimalpräfixen (SI) bei Datenspeichern führt zu Punktabzug!
</p>
<table class="ihk-table" style="margin-top: 10px;">
<thead>
<tr><th>Präfix-Typ</th><th>Norm</th><th>Basis</th><th>Einheiten</th><th>Anwendungsbereich</th></tr>
</thead>
<tbody>
<tr><td><strong>Binärpräfixe</strong></td><td>IEC 60027-2</td><td>$2^{10} = 1.024$</td><td>KiB, MiB, GiB, TiB, PiB</td><td><strong>Ausschließlich Datenmengen & Speicher</strong> (RAM, SSD, HDD, Dateien)</td></tr>
<tr><td><strong>Dezimalpräfixe</strong></td><td>SI-System</td><td>$10^3 = 1.000$</td><td>kB, MB, GB, TB, PB</td><td><strong>Nur physikalische Größen</strong> (Takt in Hz, Übertragungsrate in Bit/s, Watt)</td></tr>
</tbody>
</table>
<p style="color: #94a3b8; font-size: 0.85rem; margin-top: 8px;">
Beispiel: $1\text{ GiB} = 1.024^3\text{ Byte} = 1.073.741.824\text{ Byte}$, während $1\text{ GB} = 10^9\text{ Byte} = 1.000.000.000\text{ Byte}$ (Abweichung von ca. $7,37\,\%$!).
</p>
</div>
</div> </div>
<!-- Interaktives Tool falls vorhanden --> <!-- Interaktives Tool falls vorhanden -->
@ -65,6 +95,11 @@
</div> </div>
<!-- Interaktives Tool: prefix_converter.js -->
<div id="prefix-converter-container" style="margin-bottom: 24px;"></div>
<script src="../../../assets/ihk_tools/prefix_converter.js"></script>
<!-- Fragenpool --> <!-- Fragenpool -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin: 32px 0;"> <div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin: 32px 0;">
@ -406,11 +441,40 @@ Burn-In-Risiko: IPS hat kein Burn-In; bei OLED besteht bei statischen Office-Ele
</div> </div>
</details> </details>
</div> </div>
<div class="ihk-exam-task" data-title="Binärpräfixe (IEC) vs. Dezimalpräfixe (SI) bei Speichermedien" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Binärpräfixe (IEC) vs. Dezimalpräfixe (SI) bei Speichermedien (Neu 2025)</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Ein Festplattenhersteller deklariert eine NVMe-SSD mit einer Speicherkapazität von exakt 4 TB (Terabyte). Das Betriebssystem zeigt nach der Formatierung jedoch eine Kapazität in GiB (Gibibyte) bzw. TiB (Tebibyte) an.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Berechnen Sie die Kapazität der Festplatte in Byte auf Basis der Herstellerangabe (SI-Präfix), rechnen Sie diese exakt in GiB und TiB (IEC-Präfixe) um und ermitteln Sie die prozentuale scheinbare Differenz.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung mit Rechenweg formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
1. Herstellerangabe in Byte (Dezimal / SI, Basis 10):
4 TB = 4 * 10^12 Byte = 4.000.000.000.000 Byte. (2 Pkt.)
2. Umrechnung in GiB und TiB (Binär / IEC, Basis 2):
1 GiB = 1.024^3 Byte = 1.073.741.824 Byte.
Kapazität in GiB = 4.000.000.000.000 / 1.073.741.824 ≈ 3.725,29 GiB. (2 Pkt.)
1 TiB = 1.024^4 Byte = 1.099.511.627.776 Byte.
Kapazität in TiB = 4.000.000.000.000 / 1.099.511.627.776 ≈ 3,638 TiB. (2 Pkt.)
3. Prozentuale scheinbare Differenz:
(4,000 - 3,638) / 4,000 = 0,362 / 4,000 = 9,05 % (bzw. bezogen auf 4 TiB fehlen ca. 9,1 %). (2 Pkt.)
</div>
</details>
</div>
</div></div> </div></div>
<!-- Footer Navigation -->
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center"> <div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
<a href="../01_lf1_unternehmen_und_arbeitsplatz/index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Vorheriges Modul</a> <a href="../01_lf1_unternehmen_und_arbeitsplatz/index.html" class="ihk-btn ihk-btn-secondary font-semibold">← Vorheriges Modul</a>
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a> <a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary">🏠 Kursübersicht</a>
<a href="../03_lf3_clients_in_netzwerke_einbinden/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a> <a href="../03_lf3_clients_in_netzwerke_einbinden/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
</div> </div>
</div> </div>

View file

@ -10,7 +10,7 @@
<body class="bg-slate-900 text-slate-100 font-sans p-6"> <body class="bg-slate-900 text-slate-100 font-sans p-6">
<div class="container mx-auto max-w-4xl"> <div class="container mx-auto max-w-4xl">
<div class="flex justify-between items-center mb-6"> <div class="flex justify-between items-center mb-6">
<a href="../../../dashboard.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zum Dashboard</a> <a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary text-sm">← Zurück zum Dashboard</a>
<span class="ihk-badge ihk-badge-success">Lernfeld 3</span> <span class="ihk-badge ihk-badge-success">Lernfeld 3</span>
</div> </div>
@ -497,11 +497,41 @@ RRSIG (Resource Record Signature): Enthält die kryptografische Signatur über e
</div> </div>
</details> </details>
</div> </div>
<div class="ihk-exam-task" data-title="Datenübertragungsrate (Mbit/s) vs. Dateigröße (GiB)" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Datenübertragungsrate (Mbit/s) vs. Dateigröße (GiB) (Neu 2025)</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Über eine Glasfaser-Internetanbindung mit einer nutzbaren Download-Bandbreite von 250 Mbit/s soll ein virtuelles Festplatten-Image mit einer Dateigröße von 45 GiB heruntergeladen werden. Durch TCP/IP- und Protokoll-Header entsteht ein Overhead von 8 %.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Berechnen Sie die reine Übertragungszeit in Minuten und Sekunden.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung mit Rechenweg formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
1. Umrechnung Dateigröße von GiB in Byte und Bit:
45 GiB = 45 * 1.024^3 Byte = 45 * 1.073.741.824 Byte = 48.318.382.080 Byte. (2 Pkt.)
In Bit: 48.318.382.080 * 8 = 386.547.056.640 Bit. (1 Pkt.)
2. Berücksichtigung des Protokoll-Overheads (8 %):
Gesamte zu übertragende Bitmenge = 386.547.056.640 * 1,08 = 417.470.821.171 Bit. (2 Pkt.)
3. Übertragungsrate in Bit/s (SI-Präfix bei Netzwerk!):
250 Mbit/s = 250 * 10^6 Bit/s = 250.000.000 Bit/s. (1 Pkt.)
4. Download-Dauer:
Zeit = 417.470.821.171 / 250.000.000 ≈ 1.669,88 Sekunden. (1 Pkt.)
In Minuten: 1.669,88 / 60 ≈ 27 Minuten und 50 Sekunden (bzw. 27,83 Min.). (1 Pkt.)
</div>
</details>
</div>
</div></div> </div></div>
<!-- Footer Navigation -->
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center"> <div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
<a href="../02_lf2_arbeitsplaetze_ausstatten/index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Vorheriges Modul</a> <a href="../02_lf2_arbeitsplaetze_ausstatten/index.html" class="ihk-btn ihk-btn-secondary font-semibold">← Vorheriges Modul</a>
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a> <a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary">🏠 Kursübersicht</a>
<a href="../04_lf4_schutzbedarfsanalyse_und_cybersicherheit/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a> <a href="../04_lf4_schutzbedarfsanalyse_und_cybersicherheit/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
</div> </div>
</div> </div>

View file

@ -10,7 +10,7 @@
<body class="bg-slate-900 text-slate-100 font-sans p-6"> <body class="bg-slate-900 text-slate-100 font-sans p-6">
<div class="container mx-auto max-w-4xl"> <div class="container mx-auto max-w-4xl">
<div class="flex justify-between items-center mb-6"> <div class="flex justify-between items-center mb-6">
<a href="../../../dashboard.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zum Dashboard</a> <a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary text-sm">← Zurück zum Dashboard</a>
<span class="ihk-badge ihk-badge-success">Lernfeld 4</span> <span class="ihk-badge ihk-badge-success">Lernfeld 4</span>
</div> </div>
@ -462,12 +462,39 @@ Drei Säulen: 1. Identitätsbasierte Zugriffskontrolle (starke MFA, Kontextprüf
</div> </div>
</details> </details>
</div> </div>
<div class="ihk-exam-task" data-title="KI-Software am Arbeitsplatz & Datenschutz (DSGVO)" data-points="6" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">KI-Software am Arbeitsplatz & Datenschutz (DSGVO) (Neu 2025)</strong>
<span class="ihk-badge ihk-badge-success">6 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Mitarbeiter möchten öffentlich zugängliche Cloud-KI-Dienste (z. B. ChatGPT) zur Analyse von Server-Logdateien und Programmcode am Arbeitsplatz einsetzen.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erläutern Sie zwei datenschutzrechtliche Risiken nach DSGVO und formulieren Sie zwei verbindliche Unternehmensrichtlinien für den zulässigen KI-Einsatz.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Zwei Risiken:
1. Unzulässige Drittlandübermittlung & Auftragsverarbeitung: Logdateien enthalten oft personenbezogene Daten (IP-Adressen, Benutzernamen). Werden diese ohne Auftragsverarbeitungsvertrag (AVV nach Art. 28 DSGVO) an US-Cloudanbieter übertragen, liegt ein schwerer Datenschutzverstoß vor. (2 Pkt.)
2. Verlust von Geschäftsgeheimnissen: Öffentliche KIs können eingegebene Prompts und vertraulichen Source Code zum Weitertrainieren zukünftiger Modelle verwenden. (1 Pkt.)
Zwei Richtlinien:
1. Striktes Verbot der Eingabe personenbezogener Daten (PII), Passwörter, API-Keys oder interner Geschäftsgeheimnisse in nicht freigegebene öffentliche KIs (Anonymisierungspflicht). (1,5 Pkt.)
2. Vier-Augen-Prinzip & menschliche Letztverantwortung: Von KI generierter Quellcode oder Skripte müssen vor Produktivbetrieb immer zwingend durch IT-Fachpersonal auf Sicherheit und Korrektheit geprüft werden (kein unbesehenes Copy-Paste). (1,5 Pkt.)
</div>
</details>
</div>
</div></div> </div></div>
<!-- Footer Navigation -->
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center"> <div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
<a href="../03_lf3_clients_in_netzwerke_einbinden/index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Vorheriges Modul</a> <a href="../03_lf3_clients_in_netzwerke_einbinden/index.html" class="ihk-btn ihk-btn-secondary font-semibold">← Vorheriges Modul</a>
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a> <a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary">🏠 Kursübersicht</a>
<a href="../05_lf5_software_zur_datenverwaltung/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a> <a href="../05_prozessmodellierung_bpmn_und_epk/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
</div> </div>
</div> </div>
<script src="../../../assets/courses_manifest.js"></script> <script src="../../../assets/courses_manifest.js"></script>

View file

@ -10,7 +10,7 @@
<body class="bg-slate-900 text-slate-100 font-sans p-6"> <body class="bg-slate-900 text-slate-100 font-sans p-6">
<div class="container mx-auto max-w-4xl"> <div class="container mx-auto max-w-4xl">
<div class="flex justify-between items-center mb-6"> <div class="flex justify-between items-center mb-6">
<a href="../../../dashboard.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zum Dashboard</a> <a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary text-sm">← Zurück zum Dashboard</a>
<span class="ihk-badge ihk-badge-success">Lernfeld 5</span> <span class="ihk-badge ihk-badge-success">Lernfeld 5</span>
</div> </div>

View file

@ -0,0 +1,11 @@
# AP1 Modul 05: Prozessmodellierung mit BPMN 2.0 & EPK (LF 1 & LF 6)
**Prüfungsbereich:** Lernfeld 1 & Lernfeld 6 (Offizieller ZPA-Anhang 2. Auflage)
Geschäftsprozesse nach IHK-Standard visualisieren:
- **BPMN 2.0:** Start-, Zwischen- und End-Events, Aktivitäten, Gateways (XOR, AND, OR), Pools, Lanes, Sequenzfluss und Nachrichtenfluss.
- **Ereignisgesteuerte Prozessketten (EPK):** Ereignisse (Zustände), Funktionen (Aktivitäten), logische Operatoren (UND, ODER, XOR) und fundamentale Modellierungsregeln.
## Kerninhalte & Themen
- Offizielle ZPA-Modellierungsstandards (Katalog 2. Auflage, S. 39–40).
- Authentische Prüfungsfragen mit offiziellem Erwartungshorizont.

View file

@ -0,0 +1,271 @@
<!DOCTYPE html>
<html lang="de">
<head>
<link rel="icon" type="image/svg+xml" href="../../../assets/favicon.svg">
<meta charset="UTF-8">
<title>AP1 Modul 05: Prozessmodellierung mit BPMN 2.0 & EPK (LF 1/6)</title>
<link rel="stylesheet" href="../../../assets/style.css">
<link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css">
</head>
<body class="bg-slate-900 text-slate-100 font-sans p-6">
<div class="container mx-auto max-w-4xl">
<div class="flex justify-between items-center mb-6">
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary text-sm">← Zurück zum Dashboard</a>
<span class="ihk-badge ihk-badge-success">ZPA 2. Auflage Standard</span>
</div>
<h1 class="text-3xl font-extrabold text-sky-400 mb-2">AP1 Modul 05: Prozessmodellierung mit BPMN 2.0 & EPK</h1>
<p class="text-slate-300 text-lg leading-relaxed mb-6">Offizielle ZPA-Anhänge (S. 39–40): BPMN 2.0 Gateways (XOR, AND, OR), Pools & Lanes, Sequenz- vs. Nachrichtenfluss sowie Ereignisgesteuerte Prozessketten (EPK).</p>
<!-- Fachtheorie & Wissen -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin-bottom: 24px;">
<h2 style="color: #38bdf8; margin-top: 0;">📊 Geschäftsprozessmodellierung nach IHK-Standard</h2>
<p style="color: #cbd5e1; line-height: 1.6;">
Mit der 2. Auflage des ZPA-Prüfungskatalogs sind <strong>BPMN 2.0</strong> und <strong>Ereignisgesteuerte Prozessketten (EPK)</strong> feste, verbindliche Anhänge für die IHK-Abschlussprüfungen. Veraltete Programmablaufpläne (PAP) und DIN 66261 Struktogramme wurden gestrichen.
</p>
<h3 style="color: #cbd5e1; margin-top: 24px;">1. BPMN 2.0 (Business Process Model and Notation)</h3>
<p style="color: #cbd5e1; line-height: 1.6;">
BPMN 2.0 ist der weltweite Standard zur Modellierung betrieblicher Geschäftsprozesse. Die ZPA Nord-West definiert folgende Kernelemente (Katalog S. 39):
</p>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<table class="ihk-table">
<thead>
<tr><th>Element</th><th>Grafisches Symbol</th><th>Bedeutung & IHK-Regeln</th></tr>
</thead>
<tbody>
<tr>
<td><strong>Start-Ereignis</strong></td>
<td>Dünner grüner/schwarzer Kreis ◯</td>
<td>Löst den Prozess aus (z. B. "Störungsmeldung eingegangen"). Hat nur ausgehende Sequenzflüsse.</td>
</tr>
<tr>
<td><strong>Zwischen-Ereignis</strong></td>
<td>Doppelter Kreis ⊚</td>
<td>Tritt während des Prozesses ein (z. B. Timer/Wartezeit, Nachricht empfangen).</td>
</tr>
<tr>
<td><strong>End-Ereignis</strong></td>
<td>Dicker schwarzer/roter Kreis ⬤</td>
<td>Beendet den Prozesspfad (z. B. "Ticket erfolgreich geschlossen").</td>
</tr>
<tr>
<td><strong>Aktivität / Task</strong></td>
<td>Rechteck mit abgerundeten Ecken ▢</td>
<td>Einzelschritt einer Arbeit (Aktion im Infinitiv, z. B. "Server neustarten", "Kunde benachrichtigen").</td>
</tr>
<tr>
<td><strong>Exklusives Gateway (XOR)</strong></td>
<td>Raute mit X (oder leer) ╳</td>
<td><strong>Entweder-oder:</strong> Genau ein ausgehender Pfad wird gewählt. Beim Zusammenführen leitet es jedes eintreffende Token sofort weiter (kein Warten).</td>
</tr>
<tr>
<td><strong>Paralleles Gateway (AND)</strong></td>
<td>Raute mit Pluszeichen ➕</td>
<td><strong>Parallelität:</strong> Alle ausgehenden Pfade starten gleichzeitig (Fork). Beim Zusammenführen (Join) wird gewartet, bis <em>alle</em> Zweige fertig sind.</td>
</tr>
<tr>
<td><strong>Inklusives Gateway (OR)</strong></td>
<td>Raute mit Kreis ◯</td>
<td><strong>Ein oder mehrere Pfade:</strong> Alle Pfade mit wahrer Bedingung werden aktiviert und beim Join wieder synchronisiert.</td>
</tr>
</tbody>
</table>
</div>
<h4 style="color: #38bdf8; margin-top: 20px;">Pools, Lanes & Flussregeln:</h4>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<ul style="color: #cbd5e1; line-height: 1.8; margin: 0; padding-left: 20px;">
<li><strong>Pool (Teilnehmer):</strong> Repräsentiert eine eigenständige juristische Person, ein Partnerunternehmen oder ein autonomes System (z. B. "Kunde" oder "Systemhaus").</li>
<li><strong>Lane (Schwimmbahn):</strong> Unterteilt einen Pool intern in Verantwortungsbereiche oder Abteilungen (z. B. "First-Level-Support", "Netzwerktechnik", "Einkauf").</li>
<li><strong>Sequenzfluss (durchgezogener Pfeil ──►):</strong> Verbindet Aktivitäten innerhalb <em>desselben</em> Pools. ⚠️ <strong>Strikte IHK-Regel: Ein Sequenzfluss darf niemals Pool-Grenzen überschreiten!</strong></li>
<li><strong>Nachrichtenfluss (gestrichelte Linie mit Kreis & offenem Pfeil ⭘┄┄▷):</strong> Zeigt den asynchronen Informationsaustausch <em>zwischen zwei unterschiedlichen Pools</em> (z. B. E-Mail, API-Call).</li>
</ul>
</div>
<h3 style="color: #cbd5e1; margin-top: 28px;">2. Ereignisgesteuerte Prozessketten (EPK)</h3>
<p style="color: #cbd5e1; line-height: 1.6;">
Die EPK (ZPA Anhang S. 40) visualisiert Geschäftsprozesse durch die strikte zeitlich-logische Abfolge von Zuständen und Aktivitäten:
</p>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<table class="ihk-table">
<thead>
<tr><th>Element</th><th>Geometrie</th><th>Inhalt / Formulierung</th></tr>
</thead>
<tbody>
<tr>
<td><strong>Ereignis</strong></td>
<td>Sechseck (Hexagon) ⬡</td>
<td>Beschreibt einen <strong>Zustand</strong> (Partizip Perfekt: "Bestellung eingegangen", "Rechnung freigegeben"). Ein Ereignis trifft keine Entscheidungen!</td>
</tr>
<tr>
<td><strong>Funktion</strong></td>
<td>Abgerundetes Rechteck ▢</td>
<td>Beschreibt eine <strong>Transformation / Tätigkeit</strong> (Infinitiv: "Bonität prüfen", "Paket versenden").</td>
</tr>
<tr>
<td><strong>Konnektoren</strong></td>
<td>Kreis mit Symbol ⊕, ∨, ∧</td>
<td>Logische Verknüpfung: <strong>UND (∧)</strong>, <strong>ODER (∨)</strong>, <strong>XOR (⊕)</strong>.</td>
</tr>
</tbody>
</table>
</div>
<div style="background: #0f172a; border-left: 4px solid #38bdf8; padding: 16px; border-radius: 8px; margin: 12px 0;">
<p style="color: #38bdf8; font-weight: bold; margin-top: 0;">📌 Die zwei goldenen EPK-Modellierungsregeln:</p>
<ol style="color: #cbd5e1; line-height: 1.8; margin: 0; padding-left: 20px;">
<li><strong>Alternierungsregel:</strong> Ereignisse und Funktionen müssen sich im Prozessverlauf immer abwechseln (Ereignis → Funktion → Ereignis → ...). Es dürfen niemals zwei Ereignisse oder zwei Funktionen direkt hintereinander folgen.</li>
<li><strong>Konnektorenregel:</strong> Nach einem einzelnen Ereignis darf <em>niemals</em> ein ODER- oder XOR-Konnektor verzweigen, da Ereignisse passiv sind und keine eigene Entscheidungskraft besitzen. Entscheidungen werden stets von einer vorangehenden Funktion gefällt.</li>
</ol>
</div>
</div>
<!-- Interaktiver BPMN / EPK Referenz-Viewer -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin: 24px 0;">
<h3 style="color: #38bdf8; margin-top: 0; display: flex; align-items: center; gap: 10px;">
<span>🔍</span> BPMN 2.0 & EPK Referenzmuster (IT-Support Prozess)
</h3>
<p style="color: #94a3b8; font-size: 0.9rem;">
Typisches IHK-Prüfungsszenario: Ticket-Eingang, automatisierte KI-Klassifizierung und Eskalation.
</p>
<div style="background: #0b1329; border: 1px solid #1e293b; border-radius: 8px; padding: 20px; font-family: monospace; font-size: 0.85rem; color: #7dd3fc; line-height: 1.8; overflow-x: auto;">
+---------------------------------------------------------------------------------------------------------+
| POOL: IT-Systemhaus Kundensupport |
| +-----------------+-----------------------------------------------------------------------------------+ |
| | First-Level | [◯ Start: Störung gemeldet] | |
| | Support | │ | |
| | (mit KI-Triage) | ▼ | |
| | | [▢ Ticket durch KI vorqualifizieren] ──► {╳ Prio-Check (XOR)} | |
| | | │ │ | |
| | | Standard (Prio 3-4) Kritisch (Prio 1-2) | |
| | | │ │ | |
| | | ▼ ▼ | |
| | | [▢ FAQ an Kunden] │ | |
| +-----------------+----------------------------------------------│----------------│-------------------+ |
| | Second-Level | │ ▼ | |
| | Support | │ [▢ Techniker alarmieren] | |
| | (Netzwerk & HA) | │ │ | |
| | | ▼ ▼ | |
| | | {➕ Zusammenführung (AND)} | |
| | | │ | |
| | | ▼ | |
| | | [▢ Abschlussbericht senden] | |
| | | │ | |
| | | ▼ | |
| | | [⬤ End: Störung behoben] | |
| +-----------------+-----------------------------------------------------------------------------------+ |
+---------------------------------------------------------------------------------------------------------+
</div>
</div>
<!-- Authentische IHK-Prüfungsaufgaben -->
<!-- Interaktives Tool: bpmn_trainer.js -->
<div id="bpmn-trainer-container" style="margin-bottom: 24px;"></div>
<script src="../../../assets/ihk_tools/bpmn_trainer.js"></script>
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin: 32px 0;">
<h2 style="color: #38bdf8; margin-top: 0; font-size: 1.4rem; display: flex; align-items: center; gap: 10px;">
<span>📝</span> Authentische IHK-Prüfungsaufgaben zu Prozessmodellierung
</h2>
<p style="color: #94a3b8; font-size: 0.9rem; margin-bottom: 20px;">
Offizielle Prüfungsaufgaben nach dem neuen ZPA-Raster (Katalog 2. Auflage, S. 39–40). Bearbeiten Sie die Aufgaben und prüfen Sie Ihren Lösungsweg:
</p>
<div style="display: flex; flex-direction: column; gap: 20px;">
<!-- Aufgabe 1: Gateways -->
<div class="ihk-exam-task" data-title="BPMN 2.0 Gateways" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">BPMN 2.0 Gateways (Exklusiv XOR, Parallel AND, Inklusiv OR)</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
In einem IT-Service-Helpdesk wird die Bearbeitung eingehender Störungsmeldungen als BPMN 2.0 Geschäftsprozess modelliert.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erläutern Sie die Funktionsweise und grafischen Symbole der drei BPMN-Gateways: Exklusives Gateway (XOR), Paralleles Gateway (AND) und Inklusives Gateway (OR) beim Verzweigen (Diverging) und Zusammenführen (Converging).
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Exklusives Gateway (XOR, Raute mit X oder leer): Genau ein einziger ausgehender Pfad wird gewählt, dessen Bedingung zutrifft. Beim Zusammenführen wartet es nicht, sondern leitet jedes eintreffende Token sofort weiter. (3 Pkt.)
Paralleles Gateway (AND, Raute mit Pluszeichen +): Alle ausgehenden Pfade werden gleichzeitig/nebenläufig aktiviert (Fork). Beim Zusammenführen (Join) wartet das Gateway, bis auf ALLEN eingehenden Pfaden ein Token eingetroffen ist, bevor der Prozess fortgesetzt wird. (3 Pkt.)
Inklusives Gateway (OR, Raute mit Kreis O): Ein oder mehrere Pfade werden gewählt, deren Bedingungen wahr sind. Beim Zusammenführen synchronisiert es alle tatsächlich aktiven eingehenden Pfade. (2 Pkt.)
</div>
</details>
</div>
<!-- Aufgabe 2: Pools & Lanes -->
<div class="ihk-exam-task" data-title="BPMN 2.0 Pools & Lanes" data-points="6" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">BPMN 2.0 Pools, Lanes und Flussregeln</strong>
<span class="ihk-badge ihk-badge-success">6 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Zur Abbildung eines Bestell- und Freigabeprozesses für Neugeräte zwischen Kunde, IT-Einkauf und Buchhaltung wird ein BPMN-Diagramm erstellt.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Unterscheiden Sie Pools und Swimlanes (Bahnen) und erläutern Sie die Regeln bezüglich Sequenzfluss (Sequence Flow) und Nachrichtenfluss (Message Flow).
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Pool: Repräsentiert eine eigenständige Organisationseinheit, ein externes Unternehmen oder einen eigenständigen Teilnehmer/Prozess (Black Box oder White Box). (2 Pkt.)
Lane: Unterteilt einen Pool in interne Rollen, Abteilungen oder Systeme (z. B. IT-Einkauf, Buchhaltung). (1 Pkt.)
Flussregeln: Ein Sequenzfluss (durchgezogener Pfeil) verbindet Aktivitäten innerhalb DENSELBEN Pools und darf niemals Pool-Grenzen überschreiten. Ein Nachrichtenfluss (gestrichelte Linie mit offenem Pfeil und Kreis am Start) stellt die asynchrone Kommunikation ZWISCHEN zwei unterschiedlichen Pools dar. (3 Pkt.)
</div>
</details>
</div>
<!-- Aufgabe 3: EPK -->
<div class="ihk-exam-task" data-title="EPK Modellierungsregeln" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Ereignisgesteuerte Prozesskette (EPK) Modellierungsregeln</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Ein Onboarding-Prozess für neue Mitarbeiter wird als Ereignisgesteuerte Prozesskette (EPK) dokumentiert.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Nennen Sie die drei Grundelemente einer EPK mit ihren geometrischen Symbolen und erläutern Sie zwei fundamentale Syntaxregeln für die Verknüpfung von Ereignissen und Funktionen.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Grundelemente:
1. Ereignis: Sechseck (Hexagon). Beschreibt einen eingetretenen Zustand (Auslöser/Ergebnis, z. B. "Mitarbeitervertrag unterzeichnet"). (2 Pkt.)
2. Funktion: Rechteck mit abgerundeten Ecken. Beschreibt eine auszuführende Transformation/Aktivität im Infinitiv (z. B. "Benutzerkonto im AD anlegen"). (2 Pkt.)
3. Logischer Konnektor: Kreis mit Symbol (UND, ODER, XOR) zur Verzweigung/Zusammenführung. (1 Pkt.)
Zwei Syntaxregeln:
- Alternierungsregel: Ereignisse und Funktionen müssen sich im Ablauf immer strikt abwechseln (niemals Ereignis direkt auf Ereignis oder Funktion direkt auf Funktion ohne Konnektor). (1,5 Pkt.)
- Konnektorenregel: Ein Ereignis hat keine Entscheidungskraft; nach einem einzelnen Ereignis darf daher niemals ein ODER- oder XOR-Konnektor verzweigen (nur UND ist nach Einzelereignis zulässig). (1,5 Pkt.)
</div>
</details>
</div>
</div>
</div>
<!-- Footer Navigation -->
<!-- Footer Navigation -->
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
<a href="../04_lf4_schutzbedarfsanalyse_und_cybersicherheit/index.html" class="ihk-btn ihk-btn-secondary font-semibold">← Vorheriges Modul</a>
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary">🏠 Kursübersicht</a>
<a href="../06_lf5_software_und_anwendungsentwicklung/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
</div>
</div>
<script src="../../../assets/courses_manifest.js"></script>
<script src="../../../assets/course_sidebar.js"></script>
</body>
</html>

View file

@ -0,0 +1,9 @@
# AP1 Modul 06: Software- & Anwendungsentwicklung (LF 5)
**Prüfungsbereich:** Lernfeld 5: Software zur Datenverwaltung anpassen
Grundlagen der Softwareentwicklung und Algorithmen nach IHK-Standard:
- **UML-Modellierung:** Anwendungsfalldiagramme (Use Case), Klassendiagramme (Sichtbarkeiten, Assoziation, Aggregation, Komposition, Vererbung), Aktivitätsdiagramme (Guards, Verzweigungen, Fork/Join) und Sequenzdiagramme.
- **Strukturierter Pseudocode:** Kontrollstrukturen, Ein-/Ausgabe, Iterationen und Schleifenabbruchbedingungen. (Hinweis: DIN 66261 Struktogramme und PAPs sind seit der 2. Auflage gestrichen!).
- **Zeilenweise Trace-Tabellen:** Schrittweise Nachverfolgung von Variablenzuständen, Division mit Rest (`DIV` und `MOD`) und Feldzugriffe.
- **Interaktiver Trace-Tabellen-Trainer:** Live-Übungsumgebung zur direkten Verifikation von Algorithmen.

View file

@ -0,0 +1,295 @@
<!DOCTYPE html>
<html lang="de">
<head>
<link rel="icon" type="image/svg+xml" href="../../../assets/favicon.svg">
<meta charset="UTF-8">
<title>AP1 Modul 06: Software- & Anwendungsentwicklung (LF 5)</title>
<link rel="stylesheet" href="../../../assets/style.css">
<link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css">
</head>
<body class="bg-slate-900 text-slate-100 font-sans p-6">
<div class="container mx-auto max-w-4xl">
<div class="flex justify-between items-center mb-6">
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary text-sm">← Zurück zum Dashboard</a>
<span class="ihk-badge ihk-badge-success">Lernfeld 5</span>
</div>
<h1 class="text-3xl font-extrabold text-sky-400 mb-2">AP1 Modul 06: Software- & Anwendungsentwicklung</h1>
<p class="text-slate-300 text-lg leading-relaxed mb-6">UML-Modellierung (Use Case, Klassen, Aktivität, Sequenz), Pseudocode-Logik & zeilenweise Trace-Tabellen nach ZPA 2. Auflage (kein PAP/Struktogramm mehr!).</p>
<!-- Fachtheorie & Wissen -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin-bottom: 24px;">
<h2 style="color: #38bdf8; margin-top: 0;">💻 LF 5: Algorithmen, UML & Strukturierter Pseudocode</h2>
<p style="color: #cbd5e1; line-height: 1.6;">
Im Lernfeld 5 wird das algorithmische Grundverständnis für die Softwareentwicklung geprüft.
<br><strong style="color: #fcd34d;">⚠️ Wichtiger Reformhinweis (ZPA 2. Auflage):</strong>
Veraltete Nassi-Shneiderman Struktogramme (DIN 66261) und Programmablaufpläne (PAP) wurden aus den IHK-Prüfungen gestrichen. Algorithmen werden nun ausschließlich über <strong>strukturierten Pseudocode</strong> und <strong>UML-Aktivitätsdiagramme</strong> dargestellt!
</p>
<h3 style="color: #cbd5e1; margin-top: 24px;">1. Trace-Tabellen & Schleifenlogik</h3>
<p style="color: #cbd5e1; line-height: 1.6;">
In IHK-Prüfungen müssen Variablenwerte schrittweise für jeden Schleifendurchlauf exakt tabelliert werden. Typische Grundoperationen:
</p>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<ul style="color: #cbd5e1; line-height: 1.8; margin: 0; padding-left: 20px;">
<li><strong>Ganzzahldivision (DIV bzw. //):</strong> Schneidet Nachkommastellen ab (z. B. <code>384 DIV 10 = 38</code>).</li>
<li><strong>Modulo / Restwert (MOD bzw. %):</strong> Liefert den Rest einer Division (z. B. <code>384 MOD 10 = 4</code>). Ideal zur Zifferntrennung oder zur Prüfung auf gerade/ungerade Zahlen.</li>
<li><strong>Kopfgesteuerte Schleife (WHILE):</strong> Prüft die Bedingung vor dem Rumpf (kann 0-mal ausgeführt werden).</li>
<li><strong>Fußgesteuerte Schleife (DO-WHILE):</strong> Prüft am Fuß (wird mindestens 1-mal garantiert durchlaufen).</li>
</ul>
</div>
<h3 style="color: #cbd5e1; margin-top: 24px;">2. UML-Diagramme nach OMG-Standard</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<table class="ihk-table">
<thead>
<tr><th>Diagramm-Typ</th><th>Fokus</th><th>Wesentliche Symbole & Regeln</th></tr>
</thead>
<tbody>
<tr>
<td><strong>Klassendiagramm</strong></td>
<td>Statische Struktur</td>
<td>Dreiteiliger Kasten (Name, Attribute, Methoden). Sichtbarkeiten: <code>+</code> public, <code>-</code> private, <code>#</code> protected, <code>~</code> package.</td>
</tr>
<tr>
<td><strong>Aktivitätsdiagramm</strong></td>
<td>Dynamischer Kontrollfluss</td>
<td>Startknoten ⬤, Aktionen [Abgerundet], Entscheidungsknoten/Raute ⬦ mit [Guards], Fork/Join-Balken ❚ zur Parallelisierung, Endknoten ⨂.</td>
</tr>
<tr>
<td><strong>Sequenzdiagramm</strong></td>
<td>Zeitliche Interaktion</td>
<td>Lebenslinien (gestrichelt), Aktivierungsbalken, synchrone Aufrufe (ausgefüllte Pfeilspitze ──►), asynchrone Signale (offener Pfeil ──▷), Antworten (gestrichelt ┄┄►).</td>
</tr>
<tr>
<td><strong>Use-Case-Diagramm</strong></td>
<td>Funktionale Anforderungen</td>
<td>Akteure (Strichmännchen), Anwendungsfälle (Ellipsen), <code>&lt;&lt;include&gt;&gt;</code> (verpflichtender Teilschritt), <code>&lt;&lt;extend&gt;&gt;</code> (optionale Erweiterung).</td>
</tr>
</tbody>
</table>
</div>
<h4 style="color: #38bdf8; margin-top: 18px;">UML-Klassenbeziehungen im Detail:</h4>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<ul style="color: #cbd5e1; line-height: 1.8; margin: 0; padding-left: 20px;">
<li><strong>Generalisierung / Vererbung:</strong> Geschlossene Dreiecksspitze zur Oberklasse (<code>Subklasse ──▷ Superklasse</code>).</li>
<li><strong>Assoziation:</strong> Einfache Linie (optional mit Navigationspfeil). Zwei Klassen kennen sich.</li>
<li><strong>Aggregation:</strong> Teil-Ganzes-Beziehung mit <em>leerer Raute</em> am Ganzen (<code>◇──</code>). Das Teil kann auch ohne das Ganze existieren (z. B. Raum in Gebäude).</li>
<li><strong>Komposition:</strong> Strenge existenzielle Abhängigkeit mit <em>ausgefüllter Raute</em> am Ganzen (<code>◆──</code>). Wird das Ganze zerstört, sterben auch alle Teile (z. B. Rechnungsposition in Rechnung).</li>
</ul>
</div>
</div>
<!-- Interaktiver Trace-Tabellen-Trainer -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin: 24px 0;">
<h3 style="color: #38bdf8; margin-top: 0; display: flex; align-items: center; gap: 10px;">
<span>🔍</span> Interaktiver Trace-Tabellen-Trainer
</h3>
<p style="color: #94a3b8; font-size: 0.9rem;">
Vollziehen Sie den Quersummen-Algorithmus schrittweise nach und tragen Sie die Werte in die Trace-Tabelle ein:
</p>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; font-family: monospace; font-size: 0.9rem; color: #38bdf8; margin-bottom: 16px;">
GANZZAHL zahl = 384<br>
GANZZAHL quersumme = 0<br>
SOLANGE zahl &gt; 0 WIEDERHOLE:<br>
&nbsp;&nbsp;&nbsp;&nbsp;quersumme = quersumme + (zahl MOD 10)<br>
&nbsp;&nbsp;&nbsp;&nbsp;zahl = zahl DIV 10<br>
ENDE_SOLANGE
</div>
<table class="ihk-table" id="trace-interactive-table">
<thead>
<tr>
<th>Durchlauf</th>
<th>zahl (Start)</th>
<th>zahl MOD 10</th>
<th>quersumme</th>
<th>zahl DIV 10</th>
<th>Bedingung (zahl &gt; 0)</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>Initial</strong></td>
<td>384</td>
<td>-</td>
<td>0</td>
<td>-</td>
<td>wahr (384 &gt; 0)</td>
</tr>
<tr>
<td><strong>1. Durchlauf</strong></td>
<td><input type="text" class="ihk-input" style="padding:4px; width:70px;" value="384"></td>
<td><input type="text" class="ihk-input" style="padding:4px; width:70px;" placeholder="?"></td>
<td><input type="text" class="ihk-input" style="padding:4px; width:70px;" placeholder="?"></td>
<td><input type="text" class="ihk-input" style="padding:4px; width:70px;" placeholder="?"></td>
<td><input type="text" class="ihk-input" style="padding:4px; width:90px;" placeholder="wahr/falsch"></td>
</tr>
<tr>
<td><strong>2. Durchlauf</strong></td>
<td><input type="text" class="ihk-input" style="padding:4px; width:70px;" placeholder="?"></td>
<td><input type="text" class="ihk-input" style="padding:4px; width:70px;" placeholder="?"></td>
<td><input type="text" class="ihk-input" style="padding:4px; width:70px;" placeholder="?"></td>
<td><input type="text" class="ihk-input" style="padding:4px; width:70px;" placeholder="?"></td>
<td><input type="text" class="ihk-input" style="padding:4px; width:90px;" placeholder="wahr/falsch"></td>
</tr>
<tr>
<td><strong>3. Durchlauf</strong></td>
<td><input type="text" class="ihk-input" style="padding:4px; width:70px;" placeholder="?"></td>
<td><input type="text" class="ihk-input" style="padding:4px; width:70px;" placeholder="?"></td>
<td><input type="text" class="ihk-input" style="padding:4px; width:70px;" placeholder="?"></td>
<td><input type="text" class="ihk-input" style="padding:4px; width:70px;" placeholder="?"></td>
<td><input type="text" class="ihk-input" style="padding:4px; width:90px;" placeholder="wahr/falsch"></td>
</tr>
</tbody>
</table>
<button class="ihk-btn ihk-btn-primary" style="margin-top: 12px;" onclick="document.getElementById('trace-sol-preview').style.display='block';">Musterlösung einblenden</button>
<div id="trace-sol-preview" style="display:none; margin-top: 12px; padding: 12px; background: #0f172a; border-left: 4px solid #4ade80; border-radius: 6px; color: #cbd5e1; font-size: 0.9rem;">
<strong>Ergebnis:</strong> Durchlauf 1: 4, 4, 38, wahr | Durchlauf 2: 38, 8, 12, 3, wahr | Durchlauf 3: 3, 3, 15, 0, falsch (Abbruch). Endwert quersumme = 15.
</div>
</div>
<!-- Authentische IHK-Prüfungsaufgaben -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin: 32px 0;">
<h2 style="color: #38bdf8; margin-top: 0; font-size: 1.4rem; display: flex; align-items: center; gap: 10px;">
<span>📝</span> Authentische IHK-Prüfungsaufgaben zu Lernfeld 5
</h2>
<p style="color: #94a3b8; font-size: 0.9rem; margin-bottom: 20px;">
Offizielle Prüfungsaufgaben nach dem neuen ZPA-Raster (Pseudocode, Trace-Tabellen und UML).
</p>
<div style="display: flex; flex-direction: column; gap: 20px;">
<!-- Aufgabe 1: UML Aktivitätsdiagramm & Pseudocode -->
<div class="ihk-exam-task" data-title="UML-Aktivitätsdiagramm & Pseudocode" data-points="6" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">UML-Aktivitätsdiagramm & Pseudocode Schleifenlogik (Neu 2025)</strong>
<span class="ihk-badge ihk-badge-success">6 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Für einen automatisierten Backup-Prozess soll die Kontrolllogik modelliert werden: Es wird geprüft, ob ausreichend Speicherplatz frei ist. Wenn ja, werden Dateien kopiert und eine Erfolgsmeldung gesendet. Wenn nein, wird ein Fehler protokolliert und der Vorgang abgebrochen.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Vergleichen Sie die Modellierung von Kontrollstrukturen im UML-Aktivitätsdiagramm (Entscheidungsknoten / Raute, Guards) mit strukturiertem Pseudocode (WENN-DANN-SONST) und erläutern Sie die Funktion von Fork- und Join-Knoten (Synchronisationsbalken) bei parallelen Abläufen.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Entscheidungsknoten & Guards: Im UML-Aktivitätsdiagramm stellt eine Raute eine Verzweigung dar; die ausgehenden Kanten tragen Bedingungen in eckigen Klammern [Guards], von denen exakt eine wahr sein muss (äquivalent zu WENN-DANN-SONST im Pseudocode). (3 Pkt.)
Fork- und Join-Knoten: Ein Fork-Knoten (dicker Balken) teilt einen eingehenden Kontrollfluss in mehrere nebenläufig/parallel ausgeführte Pfade auf. Ein Join-Knoten synchronisiert diese parallelen Pfade wieder und lässt den Kontrollfluss erst weiterlaufen, wenn ALLE eingehenden Aktionen abgeschlossen sind. (3 Pkt.)
</div>
</details>
</div>
<!-- Aufgabe 2: Quersumme Trace -->
<div class="ihk-exam-task" data-title="Trace-Tabelle Quersumme" data-points="10" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Trace-Tabelle Quersumme Algorithmus</strong>
<span class="ihk-badge ihk-badge-success">10 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Gegeben ist folgender Pseudocode zur Berechnung der Quersumme einer Zahl:<br>
GANZZAHL zahl = 384 | GANZZAHL quersumme = 0<br>
SOLANGE zahl &gt; 0 WIEDERHOLE:<br>
&nbsp;&nbsp;&nbsp;&nbsp;quersumme = quersumme + (zahl MOD 10)<br>
&nbsp;&nbsp;&nbsp;&nbsp;zahl = zahl DIV 10<br>
ENDE_SOLANGE
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erstellen Sie eine vollständige Trace-Tabelle für alle Schleifendurchläufe mit den Spalten: Durchlauf, zahl, (zahl MOD 10), quersumme, (zahl DIV 10) und Bedingung (zahl &gt; 0).
</p>
<textarea class="ihk-input" rows="4" placeholder="Durchlauf 1: ... | Durchlauf 2: ..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Initial: zahl=384, quersumme=0
Durchlauf 1: zahl=384 -> 384>0 (wahr) -> MOD 10 = 4 -> quersumme = 0 + 4 = 4 -> zahl = 384 DIV 10 = 38. (3 Pkt.)
Durchlauf 2: zahl=38 -> 38>0 (wahr) -> MOD 10 = 8 -> quersumme = 4 + 8 = 12 -> zahl = 38 DIV 10 = 3. (3 Pkt.)
Durchlauf 3: zahl=3 -> 3>0 (wahr) -> MOD 10 = 3 -> quersumme = 12 + 3 = 15 -> zahl = 3 DIV 10 = 0. (3 Pkt.)
Ende: zahl=0 -> 0>0 (falsch) -> Schleifenabbruch. Endergebnis quersumme = 15. (1 Pkt.)
</div>
</details>
</div>
<!-- Aufgabe 3: Lineare Suche -->
<div class="ihk-exam-task" data-title="Trace-Tabelle Lineare Suche" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Trace-Tabelle Lineare Suche</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Gegeben ist das Array werte = [14, 27, 42, 55, 68] und gesucht = 42.<br>
GANZZAHL pos = -1<br>
FÜR i VON 0 BIS 4 SCHRITT 1:<br>
&nbsp;&nbsp;&nbsp;&nbsp;WENN werte[i] == gesucht DANN<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pos = i<br>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;VERLASSE_SCHLEIFE<br>
&nbsp;&nbsp;&nbsp;&nbsp;ENDE_WENN<br>
ENDE_FÜR
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Führen Sie die Trace-Tabelle bis zum Schleifenabbruch und geben Sie den Endwert von pos und die Anzahl der Vergleiche an.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Trace-Tabelle..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Initial: pos = -1
Durchlauf 0: i=0, werte[0]=14, 14==42 (falsch)
Durchlauf 1: i=1, werte[1]=27, 27==42 (falsch)
Durchlauf 2: i=2, werte[2]=42, 42==42 (wahr) -> pos = 2, Schleife wird sofort verlassen. (5 Pkt.)
Endwert pos = 2; Anzahl Vergleiche = 3. (3 Pkt.)
</div>
</details>
</div>
<!-- Aufgabe 4: Klassendiagramm -->
<div class="ihk-exam-task" data-title="UML-Klassendiagramm" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">UML-Klassendiagramm Sichtbarkeiten und Syntax</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Für ein Ticketsystem soll eine Klasse Ticket entworfen werden.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erläutern Sie die vier Sichtbarkeitsmodifikatoren (+, -, #, ~) nach UML-Standard und geben Sie die korrekte UML-Syntax für ein privates Attribut id (Ganzzahl) und eine öffentliche Methode schliessen(bemerkung: Text) an.
</p>
<textarea class="ihk-input" rows="3" placeholder="Sichtbarkeiten & Syntax..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Sichtbarkeiten:
+ (public): Öffentlich, von allen Klassen aus sichtbar und aufrufbar. (1 Pkt.)
- (private): Nur innerhalb der eigenen Klasse sichtbar. (1 Pkt.)
# (protected): Nur innerhalb der eigenen Klasse und deren abgeleiteten Subklassen sichtbar. (1 Pkt.)
~ (package): Nur innerhalb desselben Pakets sichtbar. (1 Pkt.)
UML-Syntax:
Attribut: - id: Integer (2 Pkt.)
Methode: + schliessen(bemerkung: String): Boolean (bzw. void) (2 Pkt.)
</div>
</details>
</div>
</div>
</div>
<!-- Footer Navigation -->
<!-- Footer Navigation -->
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
<a href="../05_prozessmodellierung_bpmn_und_epk/index.html" class="ihk-btn ihk-btn-secondary font-semibold">← Vorheriges Modul</a>
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary">🏠 Kursübersicht</a>
<a href="../07_lf6_serviceanfragen_und_itsm/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
</div>
</div>
<script src="../../../assets/courses_manifest.js"></script>
<script src="../../../assets/course_sidebar.js"></script>
</body>
</html>

View file

@ -10,7 +10,7 @@
<body class="bg-slate-900 text-slate-100 font-sans p-6"> <body class="bg-slate-900 text-slate-100 font-sans p-6">
<div class="container mx-auto max-w-4xl"> <div class="container mx-auto max-w-4xl">
<div class="flex justify-between items-center mb-6"> <div class="flex justify-between items-center mb-6">
<a href="../../../dashboard.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zum Dashboard</a> <a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary text-sm">← Zurück zum Dashboard</a>
<span class="ihk-badge ihk-badge-success">Lernfeld 6</span> <span class="ihk-badge ihk-badge-success">Lernfeld 6</span>
</div> </div>

View file

@ -0,0 +1,10 @@
# AP1 Modul 07: Serviceanfragen & IT-Servicemanagement (LF 6)
**Prüfungsbereich:** Lernfeld 6: Serviceanfragen bearbeiten
IT-Servicemanagement nach ITIL 4 & Support-Organisation:
- **Ticket-Lebenszyklus:** Erfassung, Kategorisierung, Priorisierung (Dringlichkeit x Auswirkung), Zuweisung, Dokumentation und Review.
- **Support-Ebenen & Eskalation:** First-, Second- und Third-Level-Support; funktionale vs. hierarchische Eskalation.
- **SLA-Management:** Reaktionszeiten, Wiederherstellungszeiten, Verfügbarkeitsvereinbarungen und Vertragsstrafen.
- **KVP & Problem-Management:** Deming-Kreis (PDCA), Ursachenanalyse (Root Cause Analysis) und Known Error Database (KEDB).
- **KI-Unterstützung im Service:** Automatisierte Triage, Chatbots und semantische Knowledge-Base-Suchen.

View file

@ -0,0 +1,190 @@
<!DOCTYPE html>
<html lang="de">
<head>
<link rel="icon" type="image/svg+xml" href="../../../assets/favicon.svg">
<meta charset="UTF-8">
<title>AP1 Modul 07: Serviceanfragen & IT-Servicemanagement (LF 6)</title>
<link rel="stylesheet" href="../../../assets/style.css">
<link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css">
</head>
<body class="bg-slate-900 text-slate-100 font-sans p-6">
<div class="container mx-auto max-w-4xl">
<div class="flex justify-between items-center mb-6">
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary text-sm">← Zurück zum Dashboard</a>
<span class="ihk-badge ihk-badge-success">Lernfeld 6</span>
</div>
<h1 class="text-3xl font-extrabold text-sky-400 mb-2">AP1 Modul 07: Serviceanfragen & IT-Servicemanagement</h1>
<p class="text-slate-300 text-lg leading-relaxed mb-6">ITIL 4 Praxis: Ticketlebenszyklus, Priorisierungsmatrix, funktionale vs. hierarchische Eskalation, Service Level Agreements (SLA) & KVP.</p>
<!-- Fachtheorie & Wissen -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin-bottom: 24px;">
<h2 style="color: #38bdf8; margin-top: 0;">🎧 LF 6: Serviceanfragen bearbeiten & ITSM</h2>
<p style="color: #cbd5e1; line-height: 1.6;">
Lernfeld 6 steht im Zeichen des kundenorientierten IT-Supports. Der offizielle ZPA-Katalog fordert fundierte Kenntnisse der Support-Prozesse, Eskalationsmechanismen und SLA-Einhaltung.
</p>
<h3 style="color: #cbd5e1; margin-top: 24px;">1. Support-Ebenen & Eskalationsarten</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<table class="ihk-table">
<thead>
<tr><th>Support-Level</th><th>Zuständigkeit</th><th>Typische Aufgaben</th></tr>
</thead>
<tbody>
<tr>
<td><strong>First-Level-Support</strong> (User Helpdesk)</td>
<td>Zentraler Single Point of Contact (SPOC) für alle Anwender.</td>
<td>Ticketannahme, Erstqualifikation, Kennwort-Reset, Standardarbeitsanweisungen (SOPs), FAQ-Lösungen.</td>
</tr>
<tr>
<td><strong>Second-Level-Support</strong> (Fachspezialisten)</td>
<td>Erfahrene System- & Netzwerk-Administratoren.</td>
<td>Tiefgehende Fehlerdiagnose vor Ort oder per Fernwartung, Server- & Netzwerkprobleme, Konfigurationsänderungen.</td>
</tr>
<tr>
<td><strong>Third-Level-Support</strong> (Experten / Hersteller)</td>
<td>Software-Entwickler, Systemarchitekten oder externe Lieferanten.</td>
<td>Behebung von Software-Bugs (Patches), Hardware-Austausch durch Herstellergarantie, tiefes Code-Debugging.</td>
</tr>
</tbody>
</table>
</div>
<h4 style="color: #38bdf8; margin-top: 18px;">Eskalationsarten im Vergleich:</h4>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<ul style="color: #cbd5e1; line-height: 1.8; margin: 0; padding-left: 20px;">
<li><strong>Funktionale Eskalation (Horizontal):</strong> Weiterleitung des Tickets an die nächsthöhere Fachebene (z. B. vom First-Level zum Netzwerk-Team des Second-Levels), weil tiefergehendes Spezialwissen benötigt wird.</li>
<li><strong>Hierarchische Eskalation (Vertikal):</strong> Einbindung der Führungsebene (z. B. Teamleiter, IT-Leiter), wenn Fristen (SLAs) zu reißen drohen, Budgetfreigaben nötig sind oder gravierende Konflikte mit Kunden entstehen.</li>
</ul>
</div>
<h3 style="color: #cbd5e1; margin-top: 24px;">2. Ticket-Priorisierungsmatrix nach ITIL</h3>
<p style="color: #cbd5e1; line-height: 1.6;">
Die Priorität eines Tickets wird objektiv aus <strong>Auswirkung (Impact)</strong> und <strong>Dringlichkeit (Urgency)</strong> berechnet:
<br><code>Priorität = Auswirkung × Dringlichkeit</code>
</p>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<table class="ihk-table">
<thead>
<tr><th>Auswirkung \ Dringlichkeit</th><th>Hoch (Kritisch für Betrieb)</th><th>Mittel (Arbeit beeinträchtigt)</th><th>Niedrig (Unkritisch)</th></tr>
</thead>
<tbody>
<tr><td><strong>Hoch</strong> (Gesamtes Unternehmen betroffen)</td><td style="color: #ef4444; font-weight:bold;">Prio 1 (Notfall / Critical)</td><td style="color: #f59e0b; font-weight:bold;">Prio 2 (Hoch)</td><td style="color: #38bdf8;">Prio 3 (Mittel)</td></tr>
<tr><td><strong>Mittel</strong> (Eine Abteilung betroffen)</td><td style="color: #f59e0b; font-weight:bold;">Prio 2 (Hoch)</td><td style="color: #38bdf8;">Prio 3 (Mittel)</td><td style="color: #94a3b8;">Prio 4 (Niedrig)</td></tr>
<tr><td><strong>Niedrig</strong> (Einzelner Mitarbeiter)</td><td style="color: #38bdf8;">Prio 3 (Mittel)</td><td style="color: #94a3b8;">Prio 4 (Niedrig)</td><td style="color: #94a3b8;">Prio 4 (Niedrig)</td></tr>
</tbody>
</table>
</div>
<h3 style="color: #cbd5e1; margin-top: 24px;">3. Service Level Agreements (SLAs) & Kennzahlen</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<ul style="color: #cbd5e1; line-height: 1.8; margin: 0; padding-left: 20px;">
<li><strong>Reaktionszeit (Response Time):</strong> Zeitspanne vom Ticketeingang bis zur ersten qualifizierten Rückmeldung eines Supportmitarbeiters (z. B. innerhalb von 15 Minuten bei Prio 1).</li>
<li><strong>Wiederherstellungszeit (Recovery Time / MTTR):</strong> Zeitspanne bis zur vollständigen Beseitigung der Störung oder Bereitstellung eines funktionierenden Workarounds.</li>
<li><strong>Servicezeitfenster:</strong> Definition, wann Support geleistet wird (z. B. <code>8/5</code> = Mo–Fr 8–17 Uhr vs. <code>24/7</code> = rund um die Uhr). Zeiten außerhalb des Fensters pausieren die SLA-Uhr!</li>
<li><strong>First-Time-Fix-Rate (FTFR):</strong> Prozentualer Anteil der Tickets, die direkt beim Erstkontakt im First-Level gelöst werden (Ziel: &gt; 70 %).</li>
</ul>
</div>
</div>
<!-- Authentische IHK-Prüfungsaufgaben -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin: 32px 0;">
<h2 style="color: #38bdf8; margin-top: 0; font-size: 1.4rem; display: flex; align-items: center; gap: 10px;">
<span>📝</span> Authentische IHK-Prüfungsaufgaben zu Lernfeld 6
</h2>
<p style="color: #94a3b8; font-size: 0.9rem; margin-bottom: 20px;">
Praxisorientierte Aufgaben nach ZPA-Muster zu Incident-, Problem- und SLA-Management.
</p>
<div style="display: flex; flex-direction: column; gap: 20px;">
<!-- Aufgabe 1: Incident vs Problem -->
<div class="ihk-exam-task" data-title="Incident vs Problem Management" data-points="6" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Incident Management vs. Problem Management nach ITIL</strong>
<span class="ihk-badge ihk-badge-success">6 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Im Unternehmen stürzt der zentrale Druckerserver jeden Dienstagvormittag reproduzierbar ab. Der First-Level-Support startet den Dienst jedes Mal neu.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Unterscheiden Sie die Ziele und Aufgaben von Incident Management und Problem Management anhand dieses Szenarios.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Incident Management: Ziel ist die schnellstmögliche Wiederherstellung des regulären Betriebs für die Anwender (kurzfristige Symptombehebung / Workaround). Maßnahme: Dienst-Neustart durch den First-Level-Support. (3 Pkt.)
Problem Management: Ziel ist die Identifikation der zugrundeliegenden Ursache (Root Cause Analysis) und deren dauerhafte Beseitigung, um wiederkehrende Incidents präventiv zu verhindern. Maßnahme: Analyse der Crash-Dumps, Fehlerbehebung im Druckertreiber, Eintrag in die Known Error Database (KEDB). (3 Pkt.)
</div>
</details>
</div>
<!-- Aufgabe 2: Eskalation -->
<div class="ihk-exam-task" data-title="Eskalationsarten" data-points="6" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Funktionale vs. Hierarchische Eskalation</strong>
<span class="ihk-badge ihk-badge-success">6 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Ein Mitarbeiter des First-Level-Supports kann eine komplexe Störung im VPN-Gateway nach 30 Minuten nicht lösen. Zudem droht in 15 Minuten die vertraglich vereinbarte maximale Reaktionszeit gegenüber einem VIP-Kunden zu verstreichen.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erläutern Sie, welche Eskalationsschritte (funktional und hierarchisch) in dieser Situation eingeleitet werden müssen.
</p>
<textarea class="ihk-input" rows="3" placeholder="Eskalationsschritte..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Funktionale Eskalation: Das Ticket wird sofort an das spezialisierte Netzwerk-Team (Second-Level-Support) übergeben, da die fachliche Lösungskompetenz des First-Levels überschritten ist. (3 Pkt.)
Hierarchische Eskalation: Der Support-Teamleiter oder Service Manager wird informiert, da die vertraglich garantierte SLA-Frist unmittelbar vor der Verletzung steht und Management-Entscheidungen (z. B. Zuweisung zusätzlicher Ressourcen, Information der Kundenführung) erforderlich sind. (3 Pkt.)
</div>
</details>
</div>
<!-- Aufgabe 3: SLA Berechnung -->
<div class="ihk-exam-task" data-title="SLA Berechnung & Servicefenster" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">SLA-Fristenberechnung bei Servicefenster 8/5</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Ein Supportvertrag vereinbart ein Servicezeitfenster von Montag bis Freitag jeweils 08:00 bis 17:00 Uhr (9 Stunden pro Tag). Für Prio-2-Tickets gilt eine garantierte Wiederherstellungszeit von 6 Stunden. Ein Ticket geht am Freitag um 15:30 Uhr ein.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Ermitteln Sie den exakten Zeitpunkt (Wochentag und Uhrzeit), an dem die vereinbarte Wiederherstellungszeit spätestens abläuft.
</p>
<textarea class="ihk-input" rows="3" placeholder="Berechnung des Endzeitpunkts..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
1. Verbleibende Servicezeit am Freitag:
Von 15:30 bis 17:00 Uhr vergehen 1,5 Stunden (1 Stunde 30 Minuten). (3 Pkt.)
2. Verbleibendes Restbudget:
6,0 Stunden - 1,5 Stunden = 4,5 Stunden (4 Stunden 30 Minuten). (2 Pkt.)
3. Wochenende:
Samstag und Sonntag liegen außerhalb des vereinbarten Servicefensters (SLA-Uhr pausiert). (1 Pkt.)
4. Fortsetzung am Montag:
Beginn am Montag um 08:00 Uhr. 08:00 Uhr + 4,5 Stunden = 12:30 Uhr. (2 Pkt.)
Ablaufzeitpunkt: Montag, 12:30 Uhr.
</div>
</details>
</div>
</div>
</div>
<!-- Footer Navigation -->
<!-- Footer Navigation -->
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
<a href="../06_lf5_software_und_anwendungsentwicklung/index.html" class="ihk-btn ihk-btn-secondary font-semibold">← Vorheriges Modul</a>
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary">🏠 Kursübersicht</a>
<a href="../08_belegsaetze_und_kaufmaennische_rechnung/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
</div>
</div>
<script src="../../../assets/courses_manifest.js"></script>
<script src="../../../assets/course_sidebar.js"></script>
</body>
</html>

View file

@ -10,7 +10,7 @@
<body class="bg-slate-900 text-slate-100 font-sans p-6"> <body class="bg-slate-900 text-slate-100 font-sans p-6">
<div class="container mx-auto max-w-4xl"> <div class="container mx-auto max-w-4xl">
<div class="flex justify-between items-center mb-6"> <div class="flex justify-between items-center mb-6">
<a href="../../../dashboard.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zum Dashboard</a> <a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary text-sm">← Zurück zum Dashboard</a>
<span class="ihk-badge ihk-badge-success">Lernfeld 7</span> <span class="ihk-badge ihk-badge-success">Lernfeld 7</span>
</div> </div>

View file

@ -0,0 +1,9 @@
# AP1 Modul 08: Belegsätze & Kaufmännische Rechnung (LF 1 & LF 2)
**Prüfungsbereich:** Lernfeld 1 & Lernfeld 2 (Offizieller ZPA-Standard PrintTop GmbH)
Kaufmännische Berechnungen und Belegprüfung nach IHK-Standard:
- **Einheitliche Rechnungsbelege:** Analyse originalgetreuer Belege nach dem Muster der *PrintTop GmbH* (Katalog 2. Auflage, S. 49).
- **Bezugspreiskalkulation:** Listeneinkaufspreis, Liefererrabatt, Zieleinkaufspreis, Liefererskonto, Bareinkaufspreis, Bezugskosten und Umsatzsteuer (19 %).
- **Vertragsstörungen & Verzug:** Zahlungsverzug nach BGB (§ 286), gesetzliche Verzugszinsen (§ 288 BGB mit 9 Prozentpunkten über Basiszinssatz bei B2B) und 40-EUR-Verzugspauschale.
- **Mängelrüge beim Handelskauf:** Wareneingangsprüfung und Rügefristen nach § 377 HGB (offene, versteckte und arglistige Mängel).

View file

@ -0,0 +1,246 @@
<!DOCTYPE html>
<html lang="de">
<head>
<link rel="icon" type="image/svg+xml" href="../../../assets/favicon.svg">
<meta charset="UTF-8">
<title>AP1 Modul 08: Belegsätze & Kaufmännische Rechnung (LF 1/2)</title>
<link rel="stylesheet" href="../../../assets/style.css">
<link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css">
</head>
<body class="bg-slate-900 text-slate-100 font-sans p-6">
<div class="container mx-auto max-w-4xl">
<div class="flex justify-between items-center mb-6">
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary text-sm">← Zurück zum Dashboard</a>
<span class="ihk-badge ihk-badge-success">ZPA 2. Auflage Standard</span>
</div>
<h1 class="text-3xl font-extrabold text-sky-400 mb-2">AP1 Modul 08: Belegsätze & Kaufmännische Rechnung</h1>
<p class="text-slate-300 text-lg leading-relaxed mb-6">Offizieller ZPA-Standard (Musterbeleg PrintTop GmbH): Bezugskalkulation (Rabatt, Skonto, Fracht, MwSt.), Zahlungsverzug & Verzugszinsen (§ 288 BGB).</p>
<!-- Fachtheorie & Wissen -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin-bottom: 24px;">
<h2 style="color: #38bdf8; margin-top: 0;">🧾 Kaufmännische Belegprüfung & Kalkulation</h2>
<p style="color: #cbd5e1; line-height: 1.6;">
In der IHK-Abschlussprüfung werden kaufmännische Geschäftsvorfälle anhand standardisierter Belegsätze (Lieferscheine, Rechnungen, Mahnungen) geprüft. Im Prüfungskatalog (2. Auflage, S. 49) dient die <strong>PrintTop GmbH</strong> als offizielles Referenzmuster.
</p>
<h3 style="color: #cbd5e1; margin-top: 24px;">1. Das Vorwärtskalkulationsschema (Bezugspreis)</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<table class="ihk-table">
<thead>
<tr><th>Rechenschritt</th><th>Bezeichnung</th><th>Erläuterung & Formel</th></tr>
</thead>
<tbody>
<tr><td>&nbsp;</td><td><strong>Listeneinkaufspreis (LEP)</strong></td><td>Katalog- oder Angebotspreis des Lieferanten (netto)</td></tr>
<tr><td>-</td><td>Liefererrabatt</td><td>Mengen- oder Sonderrabatt in % (vom LEP)</td></tr>
<tr><td>=</td><td><strong>Zieleinkaufspreis (ZEP)</strong></td><td>LEP abzüglich Rabatt</td></tr>
<tr><td>-</td><td>Liefererskonto</td><td>Skonto in % (vom ZEP bei vorzeitiger Zahlung)</td></tr>
<tr><td>=</td><td><strong>Bareinkaufspreis (BEP)</strong></td><td>Tatsächlich gezahlter Warenwert</td></tr>
<tr><td>+</td><td>Bezugskosten</td><td>Transport, Fracht, Verpackung, Rollgeld, Transportversicherung</td></tr>
<tr><td>=</td><td><strong>Bezugspreis / Einstandspreis</strong></td><td>Gesamte Anschaffungskosten (netto) bis ins eigene Lager</td></tr>
<tr><td>+</td><td>19 % Umsatzsteuer (MwSt.)</td><td>Gesetzliche Mehrwertsteuer auf den Rechnungsbetrag</td></tr>
<tr><td>=</td><td><strong>Rechnungsbetrag (brutto)</strong></td><td>Endbetrag der Rechnung inklusive Mehrwertsteuer</td></tr>
</tbody>
</table>
</div>
<h3 style="color: #cbd5e1; margin-top: 24px;">2. Zahlungsverzug & Verzugszinsen nach BGB (§ 286 / § 288)</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<ul style="color: #cbd5e1; line-height: 1.8; margin: 0; padding-left: 20px;">
<li><strong>Automatischer Verzugseintritt (§ 286 Abs. 3 BGB):</strong> Bei Entgeltforderungen gerät der Schuldner spätestens 30 Tage nach Fälligkeit und Erhalt einer Rechnung automatisch in Verzug, ohne dass eine Mahnung erforderlich ist (gilt uneingeschränkt im B2B-Geschäft).</li>
<li><strong>Gesetzlicher Verzugszinssatz (§ 288 BGB):</strong>
<ul>
<li><strong>B2B (Geschäfte zwischen Unternehmen):</strong> <strong>Basiszinssatz + 9 Prozentpunkte</strong> (§ 288 Abs. 2 BGB).</li>
<li><strong>B2C (Unter Beteiligung eines Verbrauchers):</strong> <strong>Basiszinssatz + 5 Prozentpunkte</strong> (§ 288 Abs. 1 BGB).</li>
</ul>
</li>
<li><strong>Gesetzliche Verzugspauschale (§ 288 Abs. 5 BGB):</strong> Gläubiger haben im B2B-Bereich bei Zahlungsverzug Anspruch auf eine pauschale Entschädigung von <strong>40,00 EUR</strong> für Mahn- und Betreibungskosten.</li>
<li><strong>Kaufmännische Zinsformel:</strong><br>
<code style="color: #38bdf8; font-size: 1rem;">Zinsen = (Kapital × Zinssatz in % × Tage) / (100 × 360)</code>
</li>
</ul>
</div>
<h3 style="color: #cbd5e1; margin-top: 24px;">3. Mängelrüge beim Handelskauf (§ 377 HGB)</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<table class="ihk-table">
<thead>
<tr><th>Mangelart</th><th>Erkennbarkeit</th><th>Rügefrist (B2B nach § 377 HGB)</th><th>Rechtsfolge bei Versäumnis</th></tr>
</thead>
<tbody>
<tr>
<td><strong>Offener Mangel</strong></td>
<td>Sofort bei Wareneingangsprüfung erkennbar (z. B. Glasbruch, Falschlieferung).</td>
<td><strong>Unverzüglich</strong> (ohne schuldhaftes Zögern, i. d. R. 1-2 Werktage).</td>
<td>Ware gilt als genehmigt; alle Mängelrechte erlöschen!</td>
</tr>
<tr>
<td><strong>Versteckter Mangel</strong></td>
<td>Erst bei Inbetriebnahme oder im Betrieb erkennbar (z. B. defekter RAM nach Stresstest).</td>
<td><strong>Unverzüglich nach Entdeckung</strong> (innerhalb der 2-jährigen Verjährungsfrist).</td>
<td>Bei fristgerechter Rüge: Nacherfüllung, Rücktritt oder Minderung (§ 437 BGB).</td>
</tr>
<tr>
<td><strong>Arglistig verschwiegener Mangel</strong></td>
<td>Verkäufer wusste vom Mangel und verschwieg ihn vorsätzlich.</td>
<td>Reguläre Verjährungsfrist: <strong>3 Jahre</strong> zum Jahresende (§ 195 BGB).</td>
<td>Schadensersatz und Anfechtung wegen arglistiger Täuschung (§ 123 BGB).</td>
</tr>
</tbody>
</table>
</div>
</div>
<!-- Visuelles Belegmuster nach ZPA (PrintTop GmbH) -->
<div style="background: #ffffff; color: #0f172a; border-radius: 8px; padding: 24px; margin: 24px 0; font-family: 'Segoe UI', Arial, sans-serif; box-shadow: 0 10px 25px rgba(0,0,0,0.5);">
<div style="display: flex; justify-content: space-between; border-bottom: 2px solid #0284c7; padding-bottom: 12px; margin-bottom: 16px;">
<div>
<h2 style="margin: 0; color: #0284c7; font-size: 1.5rem;">PrintTop GmbH</h2>
<div style="font-size: 0.8rem; color: #64748b;">Druck- und Serversysteme | Industriestraße 42, 48153 Münster</div>
</div>
<div style="text-align: right; font-size: 0.85rem; color: #334155;">
<strong>RECHNUNG Nr. RE-2026-8841</strong><br>
Datum: 15. März 2026<br>
Kunden-Nr.: KD-99201
</div>
</div>
<div style="margin-bottom: 16px; font-size: 0.85rem; line-height: 1.4;">
<strong>Empfänger:</strong><br>
Meier IT-Solutions GmbH<br>
Technologiepark 12, 48149 Münster
</div>
<table style="width: 100%; border-collapse: collapse; font-size: 0.85rem; margin-bottom: 16px;">
<thead>
<tr style="background: #f1f5f9; border-bottom: 1px solid #cbd5e1; text-align: left;">
<th style="padding: 6px;">Pos.</th>
<th style="padding: 6px;">Bezeichnung</th>
<th style="padding: 6px; text-align: center;">Menge</th>
<th style="padding: 6px; text-align: right;">Einzelpreis (netto)</th>
<th style="padding: 6px; text-align: right;">Gesamt (netto)</th>
</tr>
</thead>
<tbody>
<tr style="border-bottom: 1px solid #e2e8f0;">
<td style="padding: 6px;">01</td>
<td style="padding: 6px;">Enterprise Netzwerk-Multifunktionsdrucker PT-8500DN</td>
<td style="padding: 6px; text-align: center;">10 Stk.</td>
<td style="padding: 6px; text-align: right;">650,00 EUR</td>
<td style="padding: 6px; text-align: right;">6.500,00 EUR</td>
</tr>
<tr style="border-bottom: 1px solid #e2e8f0;">
<td style="padding: 6px;" colspan="4">Nachlass: 8,0 % Mengenrabatt</td>
<td style="padding: 6px; text-align: right; color: #dc2626;">- 520,00 EUR</td>
</tr>
<tr style="border-bottom: 1px solid #e2e8f0;">
<td style="padding: 6px;" colspan="4">Fracht- und Logistikpauschale</td>
<td style="padding: 6px; text-align: right;">+ 70,00 EUR</td>
</tr>
<tr style="border-bottom: 1px solid #94a3b8; font-weight: bold;">
<td style="padding: 8px;" colspan="4">Rechnungsbetrag Netto:</td>
<td style="padding: 8px; text-align: right;">6.050,00 EUR</td>
</tr>
<tr>
<td style="padding: 6px;" colspan="4">zzgl. 19,0 % Mehrwertsteuer:</td>
<td style="padding: 6px; text-align: right;">1.149,50 EUR</td>
</tr>
<tr style="font-size: 1rem; font-weight: bold; background: #f8fafc; border-top: 2px solid #0284c7;">
<td style="padding: 8px;" colspan="4">Zahlbetrag Brutto:</td>
<td style="padding: 8px; text-align: right; color: #0284c7;">7.199,50 EUR</td>
</tr>
</tbody>
</table>
<div style="background: #f8fafc; border-left: 4px solid #0284c7; padding: 10px 14px; font-size: 0.8rem; color: #334155;">
<strong>Zahlungsbedingungen:</strong> Zahlbar innerhalb von 14 Tagen unter Abzug von 2,0 % Skonto (bis zum 29.03.2026) oder bis zum 14.04.2026 rein netto ohne Abzug.
</div>
</div>
<!-- Authentische IHK-Prüfungsaufgaben -->
<!-- Interaktives Tool: beleg_kalkulator.js -->
<div id="beleg-kalkulator-container" style="margin-bottom: 24px;"></div>
<script src="../../../assets/ihk_tools/beleg_kalkulator.js"></script>
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin: 32px 0;">
<h2 style="color: #38bdf8; margin-top: 0; font-size: 1.4rem; display: flex; align-items: center; gap: 10px;">
<span>📝</span> Authentische IHK-Prüfungsaufgaben zu Belegen & Kaufmännischer Rechnung
</h2>
<p style="color: #94a3b8; font-size: 0.9rem; margin-bottom: 20px;">
Offizielle Berechnungsaufgaben nach den ZPA-Prüfungsbelegen.
</p>
<div style="display: flex; flex-direction: column; gap: 20px;">
<!-- Aufgabe 1: Rechnungsprüfung PrintTop -->
<div class="ihk-exam-task" data-title="Kaufmännische Rechnung PrintTop GmbH" data-points="10" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Kaufmännische Rechnung PrintTop GmbH (Rabatt, Skonto, MwSt.)</strong>
<span class="ihk-badge ihk-badge-success">10 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Bezugnehmend auf obigen Originalbeleg der PrintTop GmbH (10 Drucker à 650 EUR, 8 % Rabatt, 2 % Skonto, 70 EUR Fracht, 19 % MwSt.).
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erstellen Sie das vollständige kaufmännische Prüfungsschema nach ZPA-Belegstandard und berechnen Sie: 1. Gesamter Listenpreis, 2. Rabattbetrag, 3. Bareinkaufspreis vor Fracht, 4. Netto-Rechnungsbetrag, 5. Skontobetrag, 6. Überweisungsbetrag bei fristgerechter Zahlung.
</p>
<textarea class="ihk-input" rows="4" placeholder="Schrittweise Berechnung..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
1. Listenpreis gesamt (netto): 10 * 650,00 EUR = 6.500,00 EUR. (1 Pkt.)
2. - 8 % Liefererrabatt: 6.500,00 * 0,08 = 520,00 EUR. (1,5 Pkt.)
3. = Zieleinkaufspreis: 6.500,00 - 520,00 = 5.980,00 EUR. (1,5 Pkt.)
4. + Frachtkosten (netto): 5.980,00 + 70,00 = 6.050,00 EUR (Rechnungsbetrag Netto). (1,5 Pkt.)
5. + 19 % Umsatzsteuer: 6.050,00 * 0,19 = 1.149,50 EUR -> Rechnungsbetrag Brutto: 7.199,50 EUR. (1,5 Pkt.)
6. - 2 % Skonto (auf skontofähigen Betrag 5.980 EUR Warenwert bzw. Bruttowarenwert 7.116,20 EUR):
Skonto auf Bruttorechnung (7.199,50 EUR * 0,02) = 143,99 EUR (oder warenwertbezogen 119,60 EUR netto = 142,32 EUR brutto). (1,5 Pkt.)
7. Überweisungsbetrag (Zahlbetrag): 7.199,50 EUR - 143,99 EUR = 7.055,51 EUR. (1,5 Pkt.)
</div>
</details>
</div>
<!-- Aufgabe 2: Verzugszinsen -->
<div class="ihk-exam-task" data-title="Lieferungsverzug & Verzugszinsen" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Lieferungsverzug und Verzugszinsen nach BGB (§ 288 BGB)</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Die Systemhaus Nord GmbH hat eine fällige Rechnung eines gewerblichen Kunden (B2B) über 12.000,00 EUR brutto. Das Zahlungsziel war der 15. März. Nach Eintritt des Verzugs zahlt der Kunde die Gesamtsumme erst nach 45 Tagen Verzug. Der Basiszinssatz der Deutschen Bundesbank beträgt zum Stichtag 3,62 %.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erläutern Sie die gesetzlichen Voraussetzungen für den Verzugseintritt bei Entgeltforderungen im B2B-Bereich (§ 286 BGB), berechnen Sie den gesetzlichen Verzugszinssatz nach § 288 Abs. 2 BGB und ermitteln Sie die geschuldeten Verzugszinsen sowie die gesetzliche Verzugspauschale (§ 288 Abs. 5 BGB).
</p>
<textarea class="ihk-input" rows="4" placeholder="Berechnung Verzugszinsen & Pauschale..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
1. Verzugseintritt im B2B-Geschäft (§ 286 Abs. 3 BGB): Gerät spätestens 30 Tage nach Fälligkeit und Zugang einer Rechnung automatisch in Verzug, ohne dass es einer gesonderten Mahnung bedarf. (2 Pkt.)
2. Gesetzlicher Verzugszinssatz (§ 288 Abs. 2 BGB für Rechtsgeschäfte ohne Verbraucherbeteiligung):
Basiszinssatz + 9 Prozentpunkte = 3,62 % + 9,00 % = 12,62 % p. a. (2 Pkt.)
3. Berechnung der Verzugszinsen für 45 Tage (kaufmännische Zinsformel Z = (K * p * t) / (100 * 360)):
Zinsen = (12.000 EUR * 12,62 * 45) / 36.000 = 6.814.800 / 36.000 = 189,30 EUR. (2 Pkt.)
4. Gesetzliche Mahn- und Verzugspauschale nach § 288 Abs. 5 BGB: Gesetzlicher Anspruch auf eine Pauschale von 40,00 EUR bei B2B-Zahlungsverzug. (2 Pkt.)
</div>
</details>
</div>
</div>
</div>
<!-- Footer Navigation -->
<!-- Footer Navigation -->
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
<a href="../07_lf6_serviceanfragen_und_itsm/index.html" class="ihk-btn ihk-btn-secondary font-semibold">← Vorheriges Modul</a>
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary">🏠 Kursübersicht</a>
<a href="../09_netzplantechnik_und_projektmanagement/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
</div>
</div>
<script src="../../../assets/courses_manifest.js"></script>
<script src="../../../assets/course_sidebar.js"></script>
</body>
</html>

View file

@ -10,7 +10,7 @@
<body class="bg-slate-900 text-slate-100 font-sans p-6"> <body class="bg-slate-900 text-slate-100 font-sans p-6">
<div class="container mx-auto max-w-4xl"> <div class="container mx-auto max-w-4xl">
<div class="flex justify-between items-center mb-6"> <div class="flex justify-between items-center mb-6">
<a href="../../../dashboard.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zum Dashboard</a> <a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary text-sm">← Zurück zum Dashboard</a>
<span class="ihk-badge ihk-badge-success">Lernfeld 8</span> <span class="ihk-badge ihk-badge-success">Lernfeld 8</span>
</div> </div>

View file

@ -0,0 +1,10 @@
# AP1 Modul 09: Netzplantechnik & Projektmanagement (LF 1)
**Prüfungsbereich:** Lernfeld 1 (Offizieller ZPA-Anhang DIN 69900, S. 41)
Projektplanung und Ablaufsteuerung mit Netzplantechnik:
- **Vorgangsknoten-Architektur:** Vorgangsnummer, Vorgangsbezeichnung, Dauer (D), FAZ, FEZ, SAZ, SEZ, GP und FP.
- **Vorwärtsrechnung:** Ermittlung des frühesten Projektendes ($FEZ = FAZ + D$, Maximum an Zusammenführungen).
- **Rückwärtsrechnung:** Ermittlung der spätesten Termine ($SAZ = SEZ - D$, Minimum an Verzweigungen).
- **Pufferzeiten-Kalkulation:** Gesamtpuffer ($GP = SAZ - FAZ$) und freier Puffer ($FP = FAZ_{Nachfolger} - FEZ$).
- **Kritischer Pfad:** Identifikation zeitkritischer Vorgänge ohne Puffer ($GP = 0$) und Risiko-Controlling.

View file

@ -0,0 +1,224 @@
<!DOCTYPE html>
<html lang="de">
<head>
<link rel="icon" type="image/svg+xml" href="../../../assets/favicon.svg">
<meta charset="UTF-8">
<title>AP1 Modul 09: Netzplantechnik & Projektmanagement (LF 1)</title>
<link rel="stylesheet" href="../../../assets/style.css">
<link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css">
</head>
<body class="bg-slate-900 text-slate-100 font-sans p-6">
<div class="container mx-auto max-w-4xl">
<div class="flex justify-between items-center mb-6">
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary text-sm">← Zurück zum Dashboard</a>
<span class="ihk-badge ihk-badge-success">ZPA 2. Auflage Standard</span>
</div>
<h1 class="text-3xl font-extrabold text-sky-400 mb-2">AP1 Modul 09: Netzplantechnik & Projektmanagement</h1>
<p class="text-slate-300 text-lg leading-relaxed mb-6">Offizieller ZPA-Anhang (S. 41): DIN 69900 Vorgangsknoten, Vorwärts- & Rückwärtsrechnung, Gesamtpuffer (GP), freier Puffer (FP) & Kritischer Pfad.</p>
<!-- Fachtheorie & Wissen -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin-bottom: 24px;">
<h2 style="color: #38bdf8; margin-top: 0;">📅 Netzplantechnik nach DIN 69900</h2>
<p style="color: #cbd5e1; line-height: 1.6;">
Die Netzplantechnik (Katalog 2. Auflage, S. 41) dient der logischen und zeitlichen Planung komplexer IT-Projekte. Sie ermöglicht die Bestimmung der Gesamtdauer und identifiziert Terminpuffer sowie den kritischen Weg.
</p>
<h3 style="color: #cbd5e1; margin-top: 24px;">1. Der offizielle ZPA-Vorgangsknoten (DIN 69900)</h3>
<p style="color: #cbd5e1; line-height: 1.6;">
In der Prüfung besteht jeder Vorgang aus folgendem genormten 7-teiligen Kasten:
</p>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 16px 0; max-width: 440px; margin-left: auto; margin-right: auto;">
<table style="width: 100%; border-collapse: collapse; text-align: center; border: 2px solid #38bdf8; font-family: monospace; font-size: 0.9rem;">
<tr style="border-bottom: 1px solid #38bdf8; background: #1e293b;">
<td style="width: 30%; border-right: 1px solid #38bdf8; padding: 6px;">Nr. (z. B. A)</td>
<td style="padding: 6px;" colspan="2"><strong>Vorgangsbezeichnung</strong></td>
</tr>
<tr style="border-bottom: 1px solid #38bdf8; background: #0f172a;">
<td style="border-right: 1px solid #38bdf8; padding: 6px;" colspan="3"><strong>Dauer (D) in Tagen</strong></td>
</tr>
<tr style="border-bottom: 1px solid #38bdf8; background: #1e293b;">
<td style="width: 33%; border-right: 1px solid #38bdf8; padding: 6px; color: #4ade80;">FAZ</td>
<td style="width: 34%; border-right: 1px solid #38bdf8; padding: 6px;">&nbsp;</td>
<td style="width: 33%; padding: 6px; color: #4ade80;">FEZ</td>
</tr>
<tr style="border-bottom: 1px solid #38bdf8; background: #1e293b;">
<td style="border-right: 1px solid #38bdf8; padding: 6px; color: #f87171;">SAZ</td>
<td style="border-right: 1px solid #38bdf8; padding: 6px;">&nbsp;</td>
<td style="padding: 6px; color: #f87171;">SEZ</td>
</tr>
<tr style="background: #0f172a;">
<td style="border-right: 1px solid #38bdf8; padding: 6px; color: #fbbf24;">GP</td>
<td style="border-right: 1px solid #38bdf8; padding: 6px;">&nbsp;</td>
<td style="padding: 6px; color: #38bdf8;">FP</td>
</tr>
</table>
</div>
<h3 style="color: #cbd5e1; margin-top: 24px;">2. Die Rechenregeln im Detail</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<h4 style="color: #4ade80; margin-top: 0;">A. Vorwärtsrechnung (von links nach rechts):</h4>
<ul style="color: #cbd5e1; line-height: 1.8; margin: 0; padding-left: 20px;">
<li>Erster Vorgang: <code>FAZ = 0</code></li>
<li>Endzeitpunkt berechnen: <code>FEZ = FAZ + Dauer</code></li>
<li><strong>Zusammenführung:</strong> Laufen mehrere Vorgänger in einen Vorgang ein, gilt: <code>FAZ = MAX(alle eingehenden FEZ)</code>. Der Vorgang kann erst starten, wenn der <em>letzte</em> Vorgänger fertig ist.</li>
</ul>
<h4 style="color: #f87171; margin-top: 16px;">B. Rückwärtsrechnung (von rechts nach links):</h4>
<ul style="color: #cbd5e1; line-height: 1.8; margin: 0; padding-left: 20px;">
<li>Letzter Vorgang: <code>SEZ = FEZ</code> (Projektendtermin wird übernommen)</li>
<li>Anfangszeitpunkt berechnen: <code>SAZ = SEZ - Dauer</code></li>
<li><strong>Verzweigung:</strong> Gehen von einem Vorgang mehrere Nachfolger aus, gilt: <code>SEZ = MIN(alle nachfolgenden SAZ)</code>. Der Vorgang muss fertig sein, bevor der <em>früheste</em> Nachfolger starten muss.</li>
</ul>
<h4 style="color: #fbbf24; margin-top: 16px;">C. Pufferzeiten-Berechnung:</h4>
<ul style="color: #cbd5e1; line-height: 1.8; margin: 0; padding-left: 20px;">
<li><strong>Gesamtpuffer (GP):</strong> Zeitspanne, um die ein Vorgang maximal verschoben werden darf, ohne das <em>Gesamtprojektende</em> zu verzögern.<br>
<code>GP = SAZ - FAZ = SEZ - FEZ</code>
</li>
<li><strong>Freier Puffer (FP):</strong> Zeitspanne, um die ein Vorgang maximal verschoben werden darf, ohne den <em>frühesten Start des Nachfolgers</em> zu gefährden.<br>
<code>FP = MIN(FAZ aller Nachfolger) - FEZ</code>
</li>
</ul>
<h4 style="color: #ef4444; margin-top: 16px;">D. Der Kritische Pfad (Critical Path):</h4>
<p style="color: #cbd5e1; line-height: 1.6; margin: 0;">
Die Kette aller Vorgänge vom Projektstart bis zum Projektende, bei denen der <strong>Gesamtpuffer GP = 0</strong> (und FP = 0) ist.
<br>⚠️ <em>Jede Verzögerung bei einem Vorgang auf dem kritischen Pfad verlängert unmittelbar die Projektdauer!</em>
</p>
</div>
</div>
<!-- Interaktiver Netzplan Trainer -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin: 24px 0;">
<h3 style="color: #38bdf8; margin-top: 0; display: flex; align-items: center; gap: 10px;">
<span>🖩</span> Interaktiver Netzplan-Trainer (Beispielprojekt)
</h3>
<p style="color: #94a3b8; font-size: 0.9rem;">
Berechnen Sie FAZ, FEZ, SAZ, SEZ und Pufferzeiten für folgendes Server-Migrationsprojekt:
</p>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin-bottom: 16px; font-family: monospace; font-size: 0.85rem; color: #cbd5e1; line-height: 1.6;">
- Vorgang A: Server beschaffen (Dauer = 4 Tage, Vorgänger: keine)<br>
- Vorgang B: Betriebssystem installieren (Dauer = 3 Tage, Vorgänger: A)<br>
- Vorgang C: Verkabelung prüfen (Dauer = 2 Tage, Vorgänger: keine)<br>
- Vorgang D: Datenbank einrichten (Dauer = 5 Tage, Vorgänger: B und C)
</div>
<table class="ihk-table">
<thead>
<tr><th>Vorgang</th><th>Dauer</th><th>FAZ</th><th>FEZ</th><th>SAZ</th><th>SEZ</th><th>GP</th><th>FP</th><th>Kritisch?</th></tr>
</thead>
<tbody>
<tr><td><strong>A: Beschaffung</strong></td><td>4</td><td>0</td><td>4</td><td>0</td><td>4</td><td>0</td><td>0</td><td style="color:#ef4444; font-weight:bold;">JA</td></tr>
<tr><td><strong>B: OS-Installation</strong></td><td>3</td><td>4</td><td>7</td><td>4</td><td>7</td><td>0</td><td>0</td><td style="color:#ef4444; font-weight:bold;">JA</td></tr>
<tr><td><strong>C: Verkabelung</strong></td><td>2</td><td>0</td><td>2</td><td>5</td><td>7</td><td style="color:#fbbf24; font-weight:bold;">5</td><td style="color:#38bdf8; font-weight:bold;">5</td><td style="color:#94a3b8;">NEIN</td></tr>
<tr><td><strong>D: Datenbank</strong></td><td>5</td><td>7</td><td>12</td><td>7</td><td>12</td><td>0</td><td>0</td><td style="color:#ef4444; font-weight:bold;">JA</td></tr>
</tbody>
</table>
<div style="margin-top: 14px; padding: 12px; background: #0f172a; border-left: 4px solid #ef4444; border-radius: 6px; color: #cbd5e1; font-size: 0.9rem;">
<strong>Kritischer Weg:</strong> Start ──► A ──► B ──► D ──► Ende (Mindestprojektdauer: <strong>12 Tage</strong>). Vorgang C hat 5 Tage Puffer.
</div>
</div>
<!-- Authentische IHK-Prüfungsaufgaben -->
<!-- Interaktives Tool: netzplan_trainer.js -->
<div id="netzplan-trainer-container" style="margin-bottom: 24px;"></div>
<script src="../../../assets/ihk_tools/netzplan_trainer.js"></script>
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin: 32px 0;">
<h2 style="color: #38bdf8; margin-top: 0; font-size: 1.4rem; display: flex; align-items: center; gap: 10px;">
<span>📝</span> Authentische IHK-Prüfungsaufgaben zu Netzplantechnik
</h2>
<p style="color: #94a3b8; font-size: 0.9rem; margin-bottom: 20px;">
Aufgaben nach DIN 69900 und offiziellem ZPA-Bewertungsschema.
</p>
<div style="display: flex; flex-direction: column; gap: 20px;">
<!-- Aufgabe 1: Vorwärts- und Rückwärtsrechnung -->
<div class="ihk-exam-task" data-title="Netzplantechnik Vorwärts- & Rückwärtsrechnung" data-points="10" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Netzplantechnik Vorwärts- und Rückwärtsrechnung</strong>
<span class="ihk-badge ihk-badge-success">10 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Gegeben ist ein Projektausschnitt mit folgenden Vorgängen (Dauer D in Tagen):<br>
- Vorgang A: Server beschaffen (D=4, kein Vorgänger)<br>
- Vorgang B: Betriebssystem installieren (D=3, Vorgänger A)<br>
- Vorgang C: Verkabelung prüfen (D=2, kein Vorgänger)<br>
- Vorgang D: Datenbank einrichten (D=5, Vorgänger B und C)<br>
Projektstart ist an Tag 0.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Berechnen Sie für alle Vorgänge (A, B, C, D) den Frühesten Anfangszeitpunkt (FAZ), den Frühesten Endzeitpunkt (FEZ), den Spätesten Anfangszeitpunkt (SAZ) und den Spätesten Endzeitpunkt (SEZ) und geben Sie die minimale Projektdauer an.
</p>
<textarea class="ihk-input" rows="4" placeholder="FAZ/FEZ und SAZ/SEZ tabellieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Vorwärtsrechnung (FAZ + Dauer = FEZ):
- A: FAZ = 0, FEZ = 0 + 4 = 4. (1,5 Pkt.)
- B: Vorgänger A -> FAZ = 4, FEZ = 4 + 3 = 7. (1,5 Pkt.)
- C: Kein Vorgänger -> FAZ = 0, FEZ = 0 + 2 = 2. (1,5 Pkt.)
- D: Vorgänger B (FEZ 7) und C (FEZ 2) -> FAZ = MAX(7, 2) = 7, FEZ = 7 + 5 = 12. (1,5 Pkt.)
Projektdauer: 12 Tage. (1 Pkt.)
Rückwärtsrechnung (SEZ - Dauer = SAZ):
- D: SEZ = 12, SAZ = 12 - 5 = 7. (1 Pkt.)
- B: Nachfolger D -> SEZ = 7, SAZ = 7 - 3 = 4. (1 Pkt.)
- C: Nachfolger D -> SEZ = 7, SAZ = 7 - 2 = 5. (1 Pkt.)
- A: Nachfolger B -> SEZ = 4, SAZ = 4 - 4 = 0. (1 Pkt.)
</div>
</details>
</div>
<!-- Aufgabe 2: Kritischer Pfad & Puffer -->
<div class="ihk-exam-task" data-title="Kritischer Pfad & Pufferzeiten" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Kritischer Pfad und Pufferzeiten (GP vs. FP)</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Bezugnehmend auf den berechneten Netzplan mit den Vorgängen A, B, C und D.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Definieren Sie Gesamtpuffer (GP) und freien Puffer (FP) mit ihren mathematischen Formeln, berechnen Sie GP und FP für Vorgang C und identifizieren Sie den kritischen Pfad des Projekts.
</p>
<textarea class="ihk-input" rows="4" placeholder="Definitionen, Formeln und Berechnung..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Definitionen & Formeln:
- Gesamtpuffer (GP = SAZ - FAZ bzw. SEZ - FEZ): Die Zeitspanne, um die ein Vorgang maximal verschoben werden darf, ohne den gesamten Projektendtermin zu gefährden. (2 Pkt.)
- Freier Puffer (FP = FAZ_Nachfolger - FEZ_aktuell): Die Zeitspanne, um die ein Vorgang maximal verschoben werden darf, ohne den frühesten Anfangszeitpunkt des direkten Nachfolgers zu beeinflussen. (2 Pkt.)
Berechnung für Vorgang C (FAZ=0, FEZ=2, SAZ=5, SEZ=7, Nachfolger D mit FAZ=7):
- GP(C) = 5 - 0 = 5 Tage (oder 7 - 2 = 5 Tage). (1,5 Pkt.)
- FP(C) = FAZ(D) - FEZ(C) = 7 - 2 = 5 Tage. (1,5 Pkt.)
Kritischer Pfad: Die Kette von Vorgängen, bei denen der Gesamtpuffer 0 beträgt: Start -> A (GP=0) -> B (GP=0) -> D (GP=0) -> Ende (Dauer 12 Tage). (1 Pkt.)
</div>
</details>
</div>
</div>
</div>
<!-- Footer Navigation -->
<!-- Footer Navigation -->
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
<a href="../08_belegsaetze_und_kaufmaennische_rechnung/index.html" class="ihk-btn ihk-btn-secondary font-semibold">← Vorheriges Modul</a>
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary">🏠 Kursübersicht</a>
<a href="../10_relationales_datenmodell_und_erm/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
</div>
</div>
<script src="../../../assets/courses_manifest.js"></script>
<script src="../../../assets/course_sidebar.js"></script>
</body>
</html>

View file

@ -10,7 +10,7 @@
<body class="bg-slate-900 text-slate-100 font-sans p-6"> <body class="bg-slate-900 text-slate-100 font-sans p-6">
<div class="container mx-auto max-w-4xl"> <div class="container mx-auto max-w-4xl">
<div class="flex justify-between items-center mb-6"> <div class="flex justify-between items-center mb-6">
<a href="../../../dashboard.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zum Dashboard</a> <a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary text-sm">← Zurück zum Dashboard</a>
<span class="ihk-badge ihk-badge-success">IHK AP1 Prüfungstraining</span> <span class="ihk-badge ihk-badge-success">IHK AP1 Prüfungstraining</span>
</div> </div>

View file

@ -0,0 +1,10 @@
# AP1 Modul 10: Relationales Datenmodell & ERM (LF 5)
**Prüfungsbereich:** Lernfeld 5: Software zur Datenverwaltung anpassen (ZPA 2. Auflage)
Konzeptioneller und logischer Datenbankentwurf ohne SQL:
- **Reformhinweis (ZPA 2. Auflage S. 5):** SQL-Abfragen wurden aus der AP1 gestrichen und sind ausschließlich Prüfungsstoff in der AP2! In AP1 werden rein konzeptionelle ER-Modelle und das relationale Schema geprüft.
- **Entity-Relationship-Modellierung (ERM):** Chen-Notation vs. Krähenfuß-Notation (Martin-Notation), Entitätstypen, Attribute und Kardinalitäten ($1:1$, $1:n$, $n:m$).
- **Transformation ins Relationenmodell:** Fremdschlüsselplatzierung bei $1:n$, Auflösung von $n:m$-Beziehungen über Verknüpfungstabellen mit zusammengesetztem Primärschlüssel.
- **Normalisierungstheorie:** 1. Normalform (Atomarität), 2. Normalform (volle funktionale Abhängigkeit) und 3. Normalform (Transitivitätsfreiheit).
- **Integritätsregeln & Datenvalidierung:** Referenzielle Integrität, Pflichtfelder, Wertebereiche und Plausibilitätsprüfungen.

View file

@ -0,0 +1,216 @@
<!DOCTYPE html>
<html lang="de">
<head>
<link rel="icon" type="image/svg+xml" href="../../../assets/favicon.svg">
<meta charset="UTF-8">
<title>AP1 Modul 10: Relationales Datenmodell & ERM (LF 5)</title>
<link rel="stylesheet" href="../../../assets/style.css">
<link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css">
</head>
<body class="bg-slate-900 text-slate-100 font-sans p-6">
<div class="container mx-auto max-w-4xl">
<div class="flex justify-between items-center mb-6">
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary text-sm">← Zurück zum Dashboard</a>
<span class="ihk-badge ihk-badge-success">ZPA 2. Auflage Standard</span>
</div>
<h1 class="text-3xl font-extrabold text-sky-400 mb-2">AP1 Modul 10: Relationales Datenmodell & ERM</h1>
<p class="text-slate-300 text-lg leading-relaxed mb-6">Konzeptioneller Datenbankentwurf: Chen- & Krähenfuß-Notation, Kardinalitäten, Normalisierung (1NF–3NF), Primär-/Fremdschlüssel & referenzielle Integrität (ohne SQL!).</p>
<!-- Fachtheorie & Wissen -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin-bottom: 24px;">
<div style="background: #0f172a; border-left: 4px solid #f59e0b; padding: 16px; border-radius: 8px; margin-bottom: 20px;">
<h3 style="color: #fcd34d; margin-top: 0; display: flex; align-items: center; gap: 8px;">
<span>⚠️</span> Wichtiger ZPA-Reformhinweis (Katalog 2. Auflage, S. 5):
</h3>
<p style="color: #cbd5e1; line-height: 1.6; margin: 0;">
<strong>SQL-Abfragen wurden aus Teil 1 (AP1) komplett gestrichen!</strong> Laut offizieller Vorbemerkung der ZPA Nord-West ist SQL nun <em>ausschließlich</em> Gegenstand von Teil 2 (AP2). In der AP1 sind im Datenbankbereich lediglich <strong>einfache ER-Modelle</strong>, <strong>Normalisierung</strong> und das <strong>relationale Tabellenschema</strong> prüfungsrelevant.
</p>
</div>
<h2 style="color: #38bdf8; margin-top: 0;">🗂️ 1. Entity-Relationship-Modellierung (ERM)</h2>
<p style="color: #cbd5e1; line-height: 1.6;">
Das ER-Modell beschreibt die konzeptionelle Struktur einer Datenbank unabhängig vom konkreten Datenbank-Managementsystem (DBMS).
</p>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<table class="ihk-table">
<thead>
<tr><th>Konzept</th><th>Chen-Notation</th><th>Krähenfuß-Notation (Martin)</th></tr>
</thead>
<tbody>
<tr>
<td><strong>Entitätstyp</strong></td>
<td>Rechteck (z. B. <code>[Kunde]</code>)</td>
<td>Rechteckige Tabelle mit getrennter Kopfzeile für den Namen</td>
</tr>
<tr>
<td><strong>Attribute</strong></td>
<td>Ovale/Ellipsen, die an die Entität angebunden sind (PK ist <u>unterstrichen</u>)</td>
<td>Direkt als Textzeilen innerhalb des Kastenblocks (gekennzeichnet mit PK / FK)</td>
</tr>
<tr>
<td><strong>Beziehung</strong></td>
<td>Raute mit Verbindungslinien (z. B. <code>[Kunde] ──◇ kauft ── [Artikel]</code>)</td>
<td>Linie direkt zwischen den Tabellenkästen mit Symbolen an den Enden</td>
</tr>
<tr>
<td><strong>Kardinalitäten</strong></td>
<td>Beschriftung an den Linien: <code>1</code>, <code>n</code>, <code>m</code></td>
<td>Grafische Symbole: Strich (|) = eins, Kreis (O) = null/optional, Dreizack (Ψ) = viele</td>
</tr>
</tbody>
</table>
</div>
<h3 style="color: #cbd5e1; margin-top: 24px;">2. Transformationsregeln: ERM in Relationales Schema</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<ul style="color: #cbd5e1; line-height: 1.8; margin: 0; padding-left: 20px;">
<li><strong>1:1-Beziehung:</strong> Der Primärschlüssel einer der beiden Tabellen wird als Fremdschlüssel (mit UNIQUE-Bedingung) in die andere Tabelle übernommen.</li>
<li><strong>1:n-Beziehung (Standard):</strong> Der Primärschlüssel der 1-Seite (Elterntabelle) wandert als <strong>Fremdschlüssel (FK)</strong> in die Tabelle der n-Seite (Kindtabelle). <em>Es wird keine Zwischentabelle benötigt!</em></li>
<li><strong>n:m-Beziehung (Viele-zu-Viele):</strong> Kann im relationalen Modell nicht direkt abgebildet werden! Es muss zwingend eine <strong>Verknüpfungstabelle (Zwischentabelle)</strong> angelegt werden. Diese enthält die Primärschlüssel beider Ursprungstabellen als Fremdschlüssel, die gemeinsam den zusammengesetzten Primärschlüssel bilden, sowie eventuelle Beziehungsattribute (z. B. <code>arbeitsstunden</code> oder <code>menge</code>).</li>
</ul>
</div>
<h3 style="color: #cbd5e1; margin-top: 24px;">3. Normalisierung (1NF bis 3NF)</h3>
<p style="color: #cbd5e1; line-height: 1.6;">
Die Normalisierung verhindert Datenredundanzen und Anomalien (Einfüge-, Änderungs- und Löschanomalien):
</p>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<ol style="color: #cbd5e1; line-height: 1.8; margin: 0; padding-left: 20px;">
<li><strong>1. Normalform (1NF) - Atomarität:</strong> Jedes Attribut enthält nur elementare, unteilbare Werte (keine Listen, Kommagetrennte Strings oder Wiederholgruppen wie <code>telefon1, telefon2</code>).</li>
<li><strong>2. Normalform (2NF) - Voll funktionale Abhängigkeit:</strong> Die Tabelle ist in 1NF und jedes Nichtschlüssel-Attribut hängt voll funktional vom <em>gesamten</em> Primärschlüssel ab (relevant bei zusammengesetzten Primärschlüsseln!). Attribute, die nur von einem Teil des Schlüssels abhängen, werden in eine eigene Tabelle ausgelagert.</li>
<li><strong>3. Normalform (3NF) - Keine transitiven Abhängigkeiten:</strong> Die Tabelle ist in 2NF und kein Nichtschlüssel-Attribut hängt von einem anderen Nichtschlüssel-Attribut ab. Typisches Beispiel: Die Spalte <code>Ort</code> hängt von der <code>PLZ</code> ab und muss in eine separate Relation <code>plz_orte(plz, ort)</code> ausgelagert werden.</li>
</ol>
</div>
<h3 style="color: #cbd5e1; margin-top: 24px;">4. Referenzielle Integrität & Datenvalidierung</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<ul style="color: #cbd5e1; line-height: 1.8; margin: 0; padding-left: 20px;">
<li><strong>Referenzielle Integrität:</strong> Stellt sicher, dass jeder Fremdschlüsselwert tatsächlich auf einen existierenden Primärschlüssel der Elterntabelle verweist (Verhinderung verwaister Datensätze). Optionen beim Löschen/Ändern: <em>CASCADE</em> (automatisches Weiterlöschen) oder <em>RESTRICT</em> (Löschen wird verboten, solange abhängige Daten existieren).</li>
<li><strong>Validierungsmethoden:</strong> Pflichtfeldprüfung (NOT NULL), Wertebereichsprüfung (Range Check z. B. Alter 18–67), Formatprüfung (Regex für E-Mail, IBAN) und Plausibilitätsprüfungen.</li>
</ul>
</div>
</div>
<!-- Authentische IHK-Prüfungsaufgaben -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin: 32px 0;">
<h2 style="color: #38bdf8; margin-top: 0; font-size: 1.4rem; display: flex; align-items: center; gap: 10px;">
<span>📝</span> Authentische IHK-Prüfungsaufgaben zu Datenmodellen & ERM
</h2>
<p style="color: #94a3b8; font-size: 0.9rem; margin-bottom: 20px;">
Aufgaben nach ZPA-Standard: Normalisierung, Kardinalitäten und relationale Integrität (ohne SQL).
</p>
<div style="display: flex; flex-direction: column; gap: 20px;">
<!-- Aufgabe 1: Normalisierung -->
<div class="ihk-exam-task" data-title="Normalisierung 1NF bis 3NF" data-points="12" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Datenbank Normalisierung 1NF bis 3NF</strong>
<span class="ihk-badge ihk-badge-success">12 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Gegeben ist eine unnormalisierte Bestelltabelle: bestellung (bestell_nr, datum, kunden_name, kunden_plz, kunden_ort, artikel_liste, preise).
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Definieren Sie die 1., 2. und 3. Normalform und überführen Sie das Schema schrittweise in die 3. Normalform.
</p>
<textarea class="ihk-input" rows="4" placeholder="Definitionen und Tabellenstrukturen 1NF, 2NF, 3NF..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
1. Normalform (1NF): Alle Attribute sind atomar (jede Zelle enthält nur einen elementaren Wert; keine Wiederholgruppen). Tabelle aufteilen in Bestelldaten und einzelne Bestellpositionen (artikel_liste/preise auflösen). (4 Pkt.)
2. Normalform (2NF): Das Schema ist in 1NF und jedes Nichtschlüssel-Attribut ist vom gesamten Primärschlüssel voll funktional abhängig (keine Abhängigkeit von Teilen eines zusammengesetzten Schlüssels). Trennung von Bestellpositionen und Artikelstammdaten. (4 Pkt.)
3. Normalform (3NF): Das Schema ist in 2NF und es existieren keine transitiven Abhängigkeiten zwischen Nichtschlüssel-Attributen (Nichtschlüssel bestimmen keine anderen Nichtschlüssel). Auslagerung von Ort über die PLZ (kunden_name -> kunden_plz -> kunden_ort auflösen). (4 Pkt.)
</div>
</details>
</div>
<!-- Aufgabe 2: ERM Kardinalitäten n:m -->
<div class="ihk-exam-task" data-title="ER-Modellierung Kardinalitäten" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">ER-Modellierung Kardinalitäten & n:m-Auflösung</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Modellieren Sie die Beziehung zwischen "Projekt" und "Mitarbeiter": Ein Projekt kann von mehreren Mitarbeitern bearbeitet werden; ein Mitarbeiter kann in mehreren Projekten mitarbeiten. Zu jeder Mitarbeit wird die Anzahl der investierten Arbeitsstunden erfasst.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Geben Sie den Beziehungstyp (Kardinalität) an und erklären Sie, wie diese Beziehung in einem relationalen Datenbankschema aufgelöst wird.
</p>
<textarea class="ihk-input" rows="3" placeholder="Kardinalität und Zwischentabelle beschreiben..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Kardinalität: n:m-Beziehung (Many-to-Many). (2 Pkt.)
Auflösung im relationalen Schema: Eine n:m-Beziehung kann nicht direkt über Fremdschlüssel in den beiden Haupttabellen abgebildet werden. Es wird eine Zwischentabelle / Verknüpfungstabelle (z. B. projekt_mitarbeiter) benötigt. (3 Pkt.)
Struktur der Zwischentabelle: Enthält als Fremdschlüssel projekt_id und mitarbeiter_id (bilden gemeinsam den zusammengesetzten Primärschlüssel) sowie das Beziehungsattribut arbeitsstunden. (3 Pkt.)
</div>
</details>
</div>
<!-- Aufgabe 3: Chen vs Krähenfuß -->
<div class="ihk-exam-task" data-title="Chen vs Krähenfuß" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">ER-Modellierung Chen vs. Krähenfuß-Notation</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Zur Dokumentation eines Kundensystems werden Entity-Relationship-Modelle (ERM) eingesetzt.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Vergleichen Sie die Chen-Notation mit der Krähenfuß-Notation (Martin-Notation) hinsichtlich der Darstellung von Entitäten, Attributen und Kardinalitäten (1:1, 1:n, n:m).
</p>
<textarea class="ihk-input" rows="3" placeholder="Vergleich der Notationen..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Entitäten: Bei Chen als Rechteck dargestellt; bei Krähenfuß ebenfalls als Rechteck/Tabelle mit getrenntem Kopf für den Entitätsnamen. (2 Pkt.)
Attribute: Bei Chen als Ellipsen, die mit der Entität verbunden sind (Primärschlüssel unterstrichen); bei Krähenfuß direkt als Zeilen innerhalb des Entitätsrechtecks aufgelistet (PK/FK gekennzeichnet). (3 Pkt.)
Kardinalitäten: Bei Chen über Rauten als Beziehungselemente mit Beschriftung 1, n, m an den Kanten; bei Krähenfuß direkt an den Linienenden über Symbole (Strich = genau eins, Kreis = optional/null, Dreizack/Krähenfuß = viele). (3 Pkt.)
</div>
</details>
</div>
<!-- Aufgabe 4: Referenzielle Integrität -->
<div class="ihk-exam-task" data-title="Referenzielle Integrität" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Relationales Datenmodell & Referenzielle Integrität</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
In einer relationalen Datenbank werden Kundendaten und deren Bestellungen verwaltet.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Definieren Sie die Begriffe Primärschlüssel, Fremdschlüssel und Referenzielle Integrität und erklären Sie, welche Gefahr droht, wenn die referenzielle Integrität verletzt wird.
</p>
<textarea class="ihk-input" rows="3" placeholder="Begriffe und Gefahren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Primärschlüssel (Primary Key): Ein Attribut oder eine minimale Attributkombination, die jeden Datensatz einer Tabelle eindeutig und unveränderlich identifiziert (Darf weder Duplikate noch NULL enthalten). (2 Pkt.)
Fremdschlüssel (Foreign Key): Ein Attribut in einer Relation, das auf den Primärschlüssel einer anderen (oder derselben) Relation verweist und logische Beziehungen herstellt. (2 Pkt.)
Referenzielle Integrität: Die Integritätsbedingung besagt, dass jeder Fremdschlüsselwert entweder NULL sein muss oder tatsächlich als gültiger Primärschlüsselwert in der referenzierten Elterntabelle existieren muss. (2 Pkt.)
Gefahr bei Verletzung: Entstehung von "verwaisten Datensätzen" (Orphan Records), z. B. Bestellungen ohne zugehörigen Kunden, was zu inkonsistenten Datenbeständen und Abstürzen in Auswertungen führt. (2 Pkt.)
</div>
</details>
</div>
</div>
</div>
<!-- Footer Navigation -->
<!-- Footer Navigation -->
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
<a href="../09_netzplantechnik_und_projektmanagement/index.html" class="ihk-btn ihk-btn-secondary font-semibold">← Vorheriges Modul</a>
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary">🏠 Kursübersicht</a>
<a href="../11_subnetting_drill_master/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
</div>
</div>
<script src="../../../assets/courses_manifest.js"></script>
<script src="../../../assets/course_sidebar.js"></script>
</body>
</html>

View file

@ -10,7 +10,7 @@
<body class="bg-slate-900 text-slate-100 font-sans p-6"> <body class="bg-slate-900 text-slate-100 font-sans p-6">
<div class="container mx-auto max-w-4xl"> <div class="container mx-auto max-w-4xl">
<div class="flex justify-between items-center mb-6"> <div class="flex justify-between items-center mb-6">
<a href="../../../dashboard.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zum Dashboard</a> <a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary text-sm">← Zurück zum Dashboard</a>
<span class="ihk-badge ihk-badge-success">IHK AP1 Prüfungstraining</span> <span class="ihk-badge ihk-badge-success">IHK AP1 Prüfungstraining</span>
</div> </div>

View file

@ -3,29 +3,31 @@
<head> <head>
<link rel="icon" type="image/svg+xml" href="../../../assets/favicon.svg"> <link rel="icon" type="image/svg+xml" href="../../../assets/favicon.svg">
<meta charset="UTF-8"> <meta charset="UTF-8">
<title>AP1 02: Netzwerk-Basics & Subnetting Drill (LF 3)</title> <title>AP1 Modul 11: Subnetting-Drill & Präfix-Master (LF 3)</title>
<link rel="stylesheet" href="../../../assets/style.css"> <link rel="stylesheet" href="../../../assets/style.css">
<link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css"> <link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css">
</head> </head>
<body class="bg-slate-900 text-slate-100 font-sans p-6"> <body class="bg-slate-900 text-slate-100 font-sans p-6">
<div class="container mx-auto max-w-4xl"> <div class="container mx-auto max-w-4xl">
<div class="flex justify-between items-center mb-6"> <div class="flex justify-between items-center mb-6">
<a href="../../../dashboard.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zum Dashboard</a> <a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary text-sm">← Zurück zum Dashboard</a>
<span class="ihk-badge ihk-badge-success">IHK AP1 Prüfungstraining</span> <span class="ihk-badge ihk-badge-success">Interaktiver Praxis-Drill</span>
</div> </div>
<h1 class="text-3xl font-extrabold text-sky-400 mb-4">AP1 02: Netzwerk-Basics & Subnetting Drill (LF 3)</h1> <h1 class="text-3xl font-extrabold text-sky-400 mb-2">AP1 Modul 11: Subnetting-Drill & Präfix-Master</h1>
<p class="text-slate-300 text-lg leading-relaxed mb-6">Clients in Netzwerke einbinden: OSI-7-Schichtenmodell vs. TCP/IP, IP-Protokollfamilie, IPv4-Subnetting (FLSM & VLSM), Magische Zahl (Schrittweite 256 - Oktettwert), IPv6 Grundlagen (128 Bit, fe80::, 2000::/3), DHCP DORA-Prozess, DNS und Verkabelung (Cat 6a/7, LWL OM4).</p> <p class="text-slate-300 text-lg leading-relaxed mb-6">Intensiv-Training: Endlos-Zufallsgenerator für IPv4-Subnetting (Netzadresse, Broadcast, Hostbereich, Schrittweite) & IEC-Binärpräfixe mit sofortiger Validierung.</p>
<!-- Interaktives IHK Tool falls vorhanden --> <!-- Interaktives Subnetting Tool -->
<div id="subnetting-drill-container"></div><script src="../../../assets/ihk_tools/subnetting_drill.js"></script><script>new SubnettingDrill("subnetting-drill-container");</script> <div id="subnetting-drill-container"></div>
<script src="../../../assets/ihk_tools/subnetting_drill.js"></script>
<!-- Praxis & Prüfungsaufgabe --> <script>new SubnettingDrill("subnetting-drill-container");</script>
<!-- Navigation -->
<!-- Footer Navigation -->
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center"> <div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a> <a href="../10_relationales_datenmodell_und_erm/index.html" class="ihk-btn ihk-btn-secondary font-semibold">← Vorheriges Modul</a>
<a href="#" onclick="window.scrollTo({top: 0, behavior: 'smooth'}); return false;" class="text-sky-400 hover:underline">↑ Nach oben</a> <a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary">🏠 Kursübersicht</a>
<a href="../12_ap1_probepruefung_simulation/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
</div> </div>
</div> </div>
<script src="../../../assets/courses_manifest.js"></script> <script src="../../../assets/courses_manifest.js"></script>

View file

@ -10,7 +10,7 @@
<body class="bg-slate-900 text-slate-100 font-sans p-6"> <body class="bg-slate-900 text-slate-100 font-sans p-6">
<div class="container mx-auto max-w-4xl"> <div class="container mx-auto max-w-4xl">
<div class="flex justify-between items-center mb-6"> <div class="flex justify-between items-center mb-6">
<a href="../../../dashboard.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zum Dashboard</a> <a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary text-sm">← Zurück zum Dashboard</a>
<span class="ihk-badge ihk-badge-success">Offizieller IHK 100-Punkte-Schlüssel</span> <span class="ihk-badge ihk-badge-success">Offizieller IHK 100-Punkte-Schlüssel</span>
</div> </div>
@ -185,8 +185,16 @@ AUSGABE alarm, versuche</pre>
</div> </div>
</div> </div>
<!-- Footer Navigation -->
<!-- Footer Navigation -->
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
<a href="../11_subnetting_drill_master/index.html" class="ihk-btn ihk-btn-secondary font-semibold">← Vorheriges Modul</a>
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary">🏠 Kursübersicht</a>
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-success font-semibold">Abschluss 🏆</a>
</div>
</div> </div>
<script src="../../../assets/courses_manifest.js"></script> <script src="../../../assets/courses_manifest.js"></script>
<script src="../../../assets/course_sidebar.js"></script> <script src="../../../assets/course_sidebar.js"></script>
</body> </body>
</html> </html>

View file

@ -0,0 +1 @@
12_ap1_probepruefung_simulation

View file

@ -1,96 +1,90 @@
{ {
"id": "ihk_ap1", "id": "ihk_ap1",
"title": "IHK AP1 Crashkurs: IT-Arbeitsplatz & Programmierung", "title": "IHK AP1 Prüfungstraining: Einrichten eines IT-gestützten Arbeitsplatzes",
"language": "ihk_ap1", "language": "ihk_ap1",
"icon": "📘", "icon": "📘",
"runner": "none", "runner": "none",
"description": "Lückenlose Vorbereitung auf die IHK-Abschlussprüfung Teil 1. Alle Lernfelder (LF 1 bis LF 8) mit interaktiven Übungen, 150-Fragen-Pool & 90-Minuten Probeprüfung.", "description": "Offizieller Vorbereitungskurs auf die IHK-Abschlussprüfung Teil 1 (Neuordnung nach ZPA-Katalog 2. Auflage). Alle Lernfelder (LF 1 bis LF 6), BPMN 2.0, EPK, PrintTop-Belegrechnung, Netzplantechnik & 171-Fragen-Pool.",
"tracks": [ "tracks": [
{ {
"id": "track_1_it_systeme", "id": "track_1_it_systeme",
"title": "🌱 Lehrpfad 1: Basissysteme & Sicherheit (LF 1–4)", "title": "🌱 Lehrpfad 1: Basissysteme, Hardware & Netzwerke (LF 1–4)",
"description": "Unternehmen & Rolle im Betrieb, Hardware & Ergonomie, Subnetting & Netzwerke, Schutzbedarfsanalyse & DSGVO.", "description": "Unternehmen & BGB-Verträge, Hardware, Ergonomie & IEC-Binärpräfixe, Subnetting & Netzwerke, Schutzbedarfsanalyse & DSGVO.",
"certificateKey": "ihk_ap1_systeme", "certificateKey": "ihk_ap1_systeme",
"chapters": [ "chapters": [
{ {
"folder": "01_lf1_unternehmen_und_arbeitsplatz", "folder": "01_lf1_unternehmen_und_arbeitsplatz",
"title": "LF 1: Unternehmen & Rolle im Betrieb (Organisation, Verträge, ITIL)", "title": "LF 1: Unternehmen & Rolle im Betrieb (Organisation, Verträge, ITIL 4 & KI-Support)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
}, },
{ {
"folder": "02_lf2_arbeitsplaetze_ausstatten", "folder": "02_lf2_arbeitsplaetze_ausstatten",
"title": "LF 2: Arbeitsplätze ausstatten (Hardware, Ergonomie, USV, NWA)", "title": "LF 2: Arbeitsplätze ausstatten (Displays, ArbStättV, USV & IEC-Binärpräfixe)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
}, },
{ {
"folder": "03_lf3_clients_in_netzwerke_einbinden", "folder": "03_lf3_clients_in_netzwerke_einbinden",
"title": "LF 3: Clients in Netzwerke einbinden (Subnetting, IPv6, LWL)", "title": "LF 3: Clients in Netzwerke einbinden (IPv4/IPv6, Subnetting, LWL & Übertragungszeiten)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
}, },
{ {
"folder": "04_lf4_schutzbedarfsanalyse_und_cybersicherheit", "folder": "04_lf4_schutzbedarfsanalyse_und_cybersicherheit",
"title": "LF 4: Schutzbedarfsanalyse & Cyber-Sicherheit (CIA, Backup, TOMs)", "title": "LF 4: Schutzbedarfsanalyse & Cyber-Sicherheit (CIA, Backup, TOM & KI-Datenschutz)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
} }
] ]
}, },
{ {
"id": "track_2_programmierung_und_datenbanken", "id": "track_2_prozesse_software_itsm",
"title": "💻 Lehrpfad 2: Software, CPS & Schnittstellen (LF 5–8)", "title": "⚡ Lehrpfad 2: Prozessmodellierung, Software-Design & ITSM (LF 1, 5, 6)",
"description": "Algorithmen & SQL-Datenbanken, Cyber-physische Systeme, Instandhaltung & Fehlerdiagnose, REST-Schnittstellen.", "description": "BPMN 2.0 Gateways & EPK, UML-Diagramme & Pseudocode (kein PAP/Struktogramm mehr!), IT-Servicemanagement & SLAs.",
"certificateKey": "ihk_ap1_programmierung", "certificateKey": "ihk_ap1_programmierung",
"chapters": [ "chapters": [
{ {
"folder": "05_lf5_software_zur_datenverwaltung", "folder": "05_prozessmodellierung_bpmn_und_epk",
"title": "LF 5: Software zur Datenverwaltung anpassen (Trace, UML, SQL)", "title": "BPMN & EPK: Geschäftsprozessmodellierung nach ZPA-Standard (LF 1/6)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
}, },
{ {
"folder": "06_lf6_cyber_physische_systeme_iot", "folder": "06_lf5_software_und_anwendungsentwicklung",
"title": "LF 6: Das Cyber-Physische System ergänzen (Sensoren, Aktoren, MQTT)", "title": "LF 5: Software- & Anwendungsentwicklung (UML, Pseudocode & Trace-Tabellen)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
}, },
{ {
"folder": "07_lf7_instandhaltung_und_fehlerdiagnose", "folder": "07_lf6_serviceanfragen_und_itsm",
"title": "LF 7: Cyber-Physische Systeme instand halten (Diagnose, ESD, Messen)", "title": "LF 6: Serviceanfragen bearbeiten & ITSM (Tickettriage, SLAs & Eskalation)",
"taskFile": "README.md",
"testFile": "index.html"
},
{
"folder": "08_lf8_datenfluesse_und_schnittstellen",
"title": "LF 8: Datenflüsse optimieren & Schnittstellen anpassen (REST, JSON, JWT)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
} }
] ]
}, },
{ {
"id": "track_3_praxis_drills", "id": "track_3_kaufmaennisches_und_datenmodelle",
"title": "⚡ Lehrpfad 3: Interaktive Praxis-Drills & Labore", "title": "📊 Lehrpfad 3: Kaufmännische Steuerung, Netzplantechnik & Datenmodelle (LF 1, 2, 5)",
"description": "Trace-Tabellen-Trainer mit zeilenweiser Prüfung, Relationales SQL-Labor & Subnetting-Drill Master.", "description": "PrintTop GmbH Rechnungsprüfung, Verzugszinsen § 288 BGB, DIN 69900 Netzplantechnik und relationale ER-Modelle (ohne SQL).",
"certificateKey": "ihk_ap1_prozesse", "certificateKey": "ihk_ap1_prozesse",
"chapters": [ "chapters": [
{ {
"folder": "09_trace_tabellen_trainer", "folder": "08_belegsaetze_und_kaufmaennische_rechnung",
"title": "Drill 1: Interaktiver Trace-Tabellen-Trainer (LF 5)", "title": "LF 1/2: Belegsätze & Kaufmännische Rechnung (PrintTop GmbH, Skonto, Rabatt & Verzug)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
}, },
{ {
"folder": "10_sql_datenbank_labor", "folder": "09_netzplantechnik_und_projektmanagement",
"title": "Drill 2: Relationale Datenbanken & Live-SQL Labor (LF 5)", "title": "LF 1: Netzplantechnik & Projektcontrolling (FAZ/FEZ/SAZ/SEZ, Puffer & Kritischer Pfad)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
}, },
{ {
"folder": "11_subnetting_drill_master", "folder": "10_relationales_datenmodell_und_erm",
"title": "Drill 3: Endlos Subnetting-Drill Generator (LF 3)", "title": "LF 5: Relationales Datenmodell & ERM (Chen/Krähenfuß, Normalisierung 1NF-3NF)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
} }
@ -98,13 +92,19 @@
}, },
{ {
"id": "track_4_probepruefung", "id": "track_4_probepruefung",
"title": "🏆 Lehrpfad 4: Offizielle AP1 Probeprüfung & Notenrechner", "title": "🏆 Lehrpfad 4: Interaktive Praxis-Drills & IHK-Probeprüfung",
"description": "90-Minuten Realtime Prüfungsmodus mit Countdown, 100 Punkten, Zufallsgenerator aus 150 Fragen & Erwartungshorizont.", "description": "Endlos-Subnetting-Drill Generator & authentische 90-Minuten-Prüfungssimulation mit 100-Punkte-Schlüssel.",
"certificateKey": "ihk_ap1_master", "certificateKey": "ihk_ap1_master",
"chapters": [ "chapters": [
{
"folder": "11_subnetting_drill_master",
"title": "Drill: Subnetting- & Präfix-Trainer mit Sofort-Validierung (LF 3)",
"taskFile": "README.md",
"testFile": "index.html"
},
{ {
"folder": "12_ap1_probepruefung_simulation", "folder": "12_ap1_probepruefung_simulation",
"title": "Probeprüfung AP1: 90 Min. Realtime Simulation (100 Pkt.)", "title": "Simulation: IHK AP1 Probeprüfung (90 Min. / 100 Punkte nach ZPA 2. Auflage)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
} }

View file

@ -1,394 +1,17 @@
<!DOCTYPE html> <!DOCTYPE html>
<html lang="de"> <html lang="de">
<head> <head>
<link rel="icon" type="image/svg+xml" href="../../../assets/favicon.svg">
<meta charset="UTF-8"> <meta charset="UTF-8">
<title>AP2 Modul 01: Netzwerke & Dienste bereitstellen (LF 9)</title> <meta http-equiv="refresh" content="0; url=../01_lf9_netzwerkinfrastruktur_und_routing/index.html">
<title>Weiterleitung zum aktualisierten Modul...</title>
<link rel="stylesheet" href="../../../assets/style.css"> <link rel="stylesheet" href="../../../assets/style.css">
<link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css"> <link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css">
</head> </head>
<body class="bg-slate-900 text-slate-100 font-sans p-6"> <body class="bg-slate-900 text-slate-100 p-8 flex items-center justify-center min-h-screen">
<div class="container mx-auto max-w-4xl"> <div class="text-center max-w-lg bg-slate-800 p-8 rounded-xl border border-slate-700">
<div class="flex justify-between items-center mb-6"> <h2 class="text-xl font-bold text-sky-400 mb-4">Modul aktualisiert</h2>
<a href="../../../dashboard.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zum Dashboard</a> <p class="text-slate-300 mb-6">Dieses Modul wurde im Rahmen der ZPA Nord-West 2. Auflage aktualisiert. Sie werden automatisch weitergeleitet...</p>
<span class="ihk-badge ihk-badge-success">Lernfeld 9 (FISI)</span> <a href="../01_lf9_netzwerkinfrastruktur_und_routing/index.html" class="ihk-btn ihk-btn-primary font-semibold">Direkt zum neuen Modul →</a>
</div>
<h1 class="text-3xl font-extrabold text-sky-400 mb-2">AP2 Modul 01: Netzwerke & Dienste bereitstellen (LF 9)</h1>
<p class="text-slate-300 text-lg leading-relaxed mb-6">IEEE 802.1Q VLANs, Router-on-a-Stick, L3-Switching, RSTP 802.1w, LACP 802.3ad, OSPF, BGP, NAT/PAT & Enterprise Firewalls.</p>
<!-- Fachtheorie & Wissen -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin-bottom: 24px;">
<h2 style="color: #f87171; margin-top: 0;">🌐 LF 9: Netzwerke und Dienste bereitstellen (FISI)</h2>
<p style="color: #cbd5e1; line-height: 1.6;">
Lernfeld 9 ist das Kernfach für Systemintegratoren in der AP2: Enterprise-VLANs, Router-on-a-Stick, Layer-3-Switching, Spanning Tree (RSTP 802.1w), Link Aggregation (LACP), dynamisches Routing (OSPF & BGP), VPN-Architekturen und Next-Gen Firewalls.
</p>
<h3 style="color: #cbd5e1; margin-top: 20px;">1. IEEE 802.1Q Frame-Tagging & VLAN-Trunking</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<p style="color: #cbd5e1; line-height: 1.6; margin: 0;">
Das 4-Byte 802.1Q-Tag wird zwischen Source-MAC und Type-Feld eingefügt:<br>
- <strong>TPID (2 Byte):</strong> Fester Hex-Wert <code>0x8100</code>.<br>
- <strong>TCI (2 Byte):</strong> Enthält Prioritätsbits (PCP, 3 Bit), Drop Eligible (DEI, 1 Bit) und <strong>VLAN-ID (VID, 12 Bit)</strong> für 4096 VLANs (0-4095).<br>
- <strong>Trunk-Ports</strong> leiten Frames mehrerer VLANs getaggt weiter. <strong>Access-Ports</strong> sind untagged und weisen Endgeräte fest einem VLAN zu.
</p>
</div>
<h3 style="color: #cbd5e1; margin-top: 20px;">2. Inter-VLAN Routing & Layer-3-Switch SVI</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<ul style="color: #cbd5e1; line-height: 1.8; margin: 0; padding-left: 20px;">
<li><strong>Router-on-a-Stick:</strong> Ein physikalischer Router-Port ist als Trunk konfiguriert und in logische Subinterfaces (z. B. <code>g0/0.10</code>) mit <code>encapsulation dot1Q 10</code> unterteilt. Flaschenhals bei hohem Traffic!</li>
<li><strong>Layer-3-Switch (SVI):</strong> Switched Virtual Interfaces (z. B. <code>interface Vlan10</code>) routen mit Wire-Speed direkt in der Hardware-ASIC ohne externen Router.</li>
</ul>
</div>
<h3 style="color: #cbd5e1; margin-top: 20px;">3. Dynamisches Routing: OSPF & BGP</h3>
<p style="color: #cbd5e1; line-height: 1.6;">
<strong>OSPF (Open Shortest Path First):</strong> Link-State-Protokoll im internen Netzwerk (IGP). Berechnet mit dem Dijkstra-Algorithmus (SPF) den kürzesten Pfad. Metrik: <code>Cost = Referenzbandbreite / Bandbreite</code>.<br>
<strong>BGP (Border Gateway Protocol):</strong> Path-Vector-Protokoll zur Kopplung Autonomer Systeme (EGP) im Internet. Loop-Prävention über das <code>AS-Path</code>-Attribut.
</p>
</div>
<!-- Interaktives Tool falls vorhanden -->
<!-- Fragenpool -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin: 32px 0;">
<h2 style="color: #38bdf8; margin-top: 0; font-size: 1.4rem; display: flex; align-items: center; gap: 10px;">
<span>📝</span> Authentische IHK-Prüfungsaufgaben zu Lernfeld 9 (FISI)
</h2>
<p style="color: #94a3b8; font-size: 0.9rem; margin-bottom: 20px;">
Aus unserem Fragenpool von 150 IHK-Prüfungsfragen nach offiziellem ZPA/AkA-Wortlaut. Bearbeiten Sie die Aufgaben und vergleichen Sie Ihre Antwort mit dem Erwartungshorizont:
</p>
<div style="display: flex; flex-direction: column; gap: 20px;">
<div class="ihk-exam-task" data-title="IEEE 802.1Q Frame-Tagging" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">IEEE 802.1Q Frame-Tagging</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
In einem Firmennetzwerk werden VLANs über Trunk-Verbindungen zwischen Switchen übertragen.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Beschreiben Sie den Aufbau des 4-Byte 802.1Q-VLAN-Tags (TPID, TCI, VID) und unterscheiden Sie Access- und Trunk-Ports.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Aufbau des 802.1Q-Tags (wird hinter Source-MAC eingefügt):
1. TPID (Tag Protocol Identifier): 2 Byte mit dem festen Hex-Wert 0x8100 zur Identifikation des VLAN-Frames. (2 Pkt.)
2. TCI (Tag Control Information): 2 Byte bestehend aus PCP (3 Bit Priorität / CoS), DEI (1 Bit Drop Eligible) und VID (VLAN Identifier, 12 Bit für 4096 VLANs 0-4095). (2 Pkt.)
Access-Port: Gehört genau einem untagged VLAN an. Endgeräte empfangen Standard-Ethernet-Frames ohne Tag. (2 Pkt.)
Trunk-Port (Tagged): Leitet Datenpakete mehrerer VLANs gleichzeitig weiter; jeder Frame erhält das 802.1Q-Tag (ausgenommen das native VLAN). (2 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Inter-VLAN Routing Router-on-a-Stick" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Inter-VLAN Routing Router-on-a-Stick</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Zwei Abteilungen befinden sich in VLAN 10 (192.168.10.0/24) und VLAN 20 (192.168.20.0/24). Ein physischer Router ist über eine einzelne Gigabit-Leitung an den Core-Switch angebunden.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erläutern Sie das Verfahren "Router-on-a-Stick" und geben Sie die wesentlichen Konfigurationsschritte auf dem Router (Subinterfaces, dot1Q) an.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Verfahren: Der Router wickelt das Routing zwischen mehreren VLANs über eine einzige physische Schnittstelle ab, indem diese als Trunk betrieben wird. (2 Pkt.)
Konfigurationsschritte:
1. Physisches Interface aktivieren (no shutdown), keine IP zuweisen. (2 Pkt.)
2. Logische Subinterfaces anlegen (z. B. interface GigabitEthernet0/0.10 und .20). (2 Pkt.)
3. Dem Subinterface das entsprechende VLAN zuweisen (encapsulation dot1Q 10 bzw. 20) und die jeweilige Gateway-IP-Adresse konfigurieren. (2 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Layer-3-Switch SVI Konfiguration" data-points="6" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Layer-3-Switch SVI Konfiguration</strong>
<span class="ihk-badge ihk-badge-success">6 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Zur Entlastung des Routers soll das Routing zwischen zehn VLANs direkt auf einem Layer-3-Core-Switch durchgeführt werden.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erklären Sie den Unterschied zwischen einem Layer-2- und einem Layer-3-Switch und beschreiben Sie die Funktion eines Switched Virtual Interface (SVI).
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Unterschied: Ein Layer-2-Switch leitet Daten nur innerhalb desselben Broadcast-/VLAN-Segments anhand von MAC-Adressen weiter (Hardware-ASIC). Ein Layer-3-Switch verfügt zusätzlich über Routing-Funktionalität (IP-Routing) auf Hardware-Ebene (ASIC wire-speed routing) und kann ohne externen Router zwischen VLANs routen. (3 Pkt.)
SVI (Switched Virtual Interface): Eine logische Layer-3-Schnittstelle auf dem Switch (z. B. interface Vlan10), der eine IP-Adresse zugewiesen wird. Sie fungiert als Default Gateway für alle Hosts in diesem VLAN. (3 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Spanning Tree Protocol RSTP 802.1w" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Spanning Tree Protocol RSTP 802.1w</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Drei Switche sind im Dreieck redundant miteinander verkabelt.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Welche drei gravierenden Netzwerkprobleme treten ohne Spanning Tree auf und wie verhindert Rapid STP (802.1w) Schleifen im Netzwerk?
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Probleme ohne STP:
1. Broadcast Storms: Broadcast-Frames zirkulieren endlos und bringen die Bandbreite zum Einsturz. (1 Pkt.)
2. MAC Table Flapping: Die Switch-Tabellen werden kontinuierlich überschrieben, da derselbe Frame über wechselnde Ports eintrifft. (1 Pkt.)
3. Multiple Frame Transmission: Endgeräte erhalten dieselben Pakete mehrfach. (1 Pkt.)
RSTP-Funktionsweise: Wählt die Root Bridge mit der niedrigsten Bridge-ID (Priorität + MAC). Alle Switche berechnen den kürzesten Pfad zur Root Bridge. Redundante Ports werden in den Zustand "Discarding" (Alternate/Backup Port) versetzt. Bei einem Linkausfall konvergiert RSTP aktiv über Handshake in wenigen hundert Millisekunden. (5 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Link Aggregation LACP 802.3ad" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Link Aggregation LACP 802.3ad</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Zwei Switche werden über vier parallele 1-Gbit/s-Kupferkabel miteinander verbunden.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erläutern Sie die Vorteile von Link Aggregation (LAG / LACP) gegenüber Einzelverbindungen mit Spanning Tree und beschreiben Sie, wie die Lastverteilung erfolgt.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Vorteile:
1. Bandbreitenbündelung: Alle 4 Links werden gleichzeitig aktiv genutzt (kumulierte Bandbreite 4 Gbit/s), während STP sonst 3 Ports blockieren würde. (3 Pkt.)
2. Unterbrechungsfreie Redundanz: Fällt ein Kabel aus, läuft der Datenverkehr nahtlos über die verbleibenden 3 Leitungen weiter. (2 Pkt.)
Lastverteilung: Erfolgt über Hash-Algorithmen (z. B. Quell-/Ziel-IP, Quell-/Ziel-MAC oder TCP-Ports). Alle Pakete eines einzelnen TCP-Streams laufen über denselben physischen Port, um Paket-Out-of-Order-Probleme zu verhindern (keine 4 Gbit/s für einen Einzel-Download). (3 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="OSPF Link-State Routing & Kostenberechnung" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">OSPF Link-State Routing & Kostenberechnung</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
In einem Unternehmensnetzwerk mit mehreren Standorten wird OSPF (Open Shortest Path First) als dynamisches Routing-Protokoll eingesetzt.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erklären Sie das Link-State-Konzept von OSPF und berechnen Sie die OSPF-Metrik für eine 100-Mbit/s- und eine 10-Gbit/s-Leitung bei einer Referenzbandbreite von 100 Gbit/s (100.000 Mbit/s).
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Link-State-Konzept: Jeder Router baut eine vollständige Topologiekarte des gesamten Netzwerks auf (Link-State Database / LSDB) über Link-State Advertisements (LSAs) und berechnet mit dem Dijkstra-Algorithmus (SPF) den kürzesten Pfad. (4 Pkt.)
Metrik-Formel: Cost = Referenzbandbreite / Interfacebandbreite.
100 Mbit/s Leitung: Cost = 100.000 Mbit/s / 100 Mbit/s = 1000. (2 Pkt.)
10 Gbit/s Leitung (10.000 Mbit/s): Cost = 100.000 Mbit/s / 10.000 Mbit/s = 10. (2 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="BGP Autonomous Systems & Peering" data-points="6" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">BGP Autonomous Systems & Peering</strong>
<span class="ihk-badge ihk-badge-success">6 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Ein Unternehmen bindet sein Rechenzentrum über zwei verschiedene Internet-Service-Provider (Multihoming) an.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Definieren Sie den Begriff Autonomes System (AS) und erklären Sie den Unterschied zwischen eBGP und iBGP.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Autonomes System (AS): Eine Sammlung von IP-Netzen unter gemeinsamer administrativer Kontrolle und einheitlicher Routing-Policy, das eine weltweit eindeutige ASN (Autonomous System Number) besitzt. (2 Pkt.)
eBGP (External BGP): Routing-Protokoll zum Austausch von Routing-Informationen ZWISCHEN zwei unterschiedlichen Autonomen Systemen (z. B. Kunde <-> Provider). (2 Pkt.)
iBGP (Internal BGP): Austausch von extern gelernten BGP-Routen INNERHALB desselben Autonomen Systems zwischen den Border-Routern. (2 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="NAT vs PAT (NAPT) Funktionsweise" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">NAT vs PAT (NAPT) Funktionsweise</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Ein Firmennetzwerk mit 250 Clients nutzt private IPv4-Adressen (10.0.0.0/24) und besitzt eine einzige offizielle, öffentliche IPv4-Adresse am Router.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erklären Sie den Unterschied zwischen statischem 1:1-NAT und PAT (Port Address Translation / NAT-Overload) und beschreiben Sie die Rolle der Translation-Table.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Statisches NAT (1:1): Mappt eine private IP dauerhaft und exklusiv auf eine öffentliche IP. Für 250 Hosts wären 250 öffentliche IP-Adressen nötig. (2 Pkt.)
PAT (Port and Address Translation / NAPT): Mappt hunderte interne private IP-Adressen auf eine einzige öffentliche IP-Adresse, indem der Router jedem internen Datenstrom einen eindeutigen Quell-Port (Source Port) zuweist. (3 Pkt.)
Translation Table: Der Router führt eine Übersetzungstabelle (Private IP + Private Port <-> Public IP + Übersetzter Port). Eintreffende Antwortpakete aus dem Internet werden anhand der Ziel-Portnummer identifiziert und wieder an den ursprünglichen internen Client zurückgeroutet. (3 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Site-to-Site VPN IPsec IKEv2 Phasen" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Site-to-Site VPN IPsec IKEv2 Phasen</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Zwei Unternehmensstandorte sollen dauerhaft über ein IPsec-Site-to-Site-VPN verschlüsselt miteinander verbunden werden.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Beschreiben Sie die zwei Phasen des IKEv2-Handshakes (Internet Key Exchange) und unterscheiden Sie die Protokolle AH und ESP.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Phase 1 (IKE_SA_INIT): Aushandeln der Sicherheitsvereinbarungen (Kryptoverfahren, DH-Gruppe) und Erstellen des sicheren, verschlüsselten Tunnels für den weiteren Schlüsselaustausch. (2 Pkt.)
Phase 2 (IKE_AUTH / Child SA): Authentifizierung der Tunnelendpunkte (via Pre-Shared Key oder X.509-Zertifikaten) und Aufbau der eigentlichen IPsec-Sicherheitsassoziationen (SAs) für die Nutzdaten. (2 Pkt.)
AH (Authentication Header): Bietet nur Integrität und Absenderauthentizität, verschlüsselt die Daten NICHT (daher in der Praxis kaum genutzt). (2 Pkt.)
ESP (Encapsulating Security Payload): Bietet Vertraulichkeit (Verschlüsselung mit AES), Integrität und Authentizität. (2 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Stateful Packet Inspection vs Next-Gen Firewall (NGFW)" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Stateful Packet Inspection vs Next-Gen Firewall (NGFW)</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Im Unternehmen soll eine alte Paketfilter-Firewall durch eine Next-Generation-Firewall (NGFW) ersetzt werden.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Vergleichen Sie Stateful Inspection mit Deep Packet Inspection (DPI) einer NGFW und nennen Sie zwei moderne NGFW-Features.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Stateful Packet Inspection (SPI): Überwacht den Verbindungszustand von TCP/UDP-Sitzungen (SYN, ACK, FIN) und Header-Informationen auf Layer 3 und 4 (IPs, Ports). Erkennt keine Anwendungsbedrohungen im Payload. (3 Pkt.)
Deep Packet Inspection (DPI): Untersucht die tatsächlichen Anwendungsnutzdaten auf Layer 7 (Payload), unabhängig vom verwendeten Port (erkennt z. B. BitTorrent über Port 80/443). (3 Pkt.)
Zwei NGFW-Features: 1. Intrusion Prevention System (IPS / Signaturerkennung); 2. SSL/TLS-Inspection (Aufbrechen und Scannen verschlüsselter Datenströme). (2 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="BGP Path Attributes (AS-Path & Local Preference)" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">BGP Path Attributes (AS-Path & Local Preference)</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Ein Internet-Knotenpunkt leitet IP-Präfixe über BGP weiter.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erläutern Sie die Funktionsweise des BGP-Attributs AS-Path zur Loop-Prävention und beschreiben Sie, wie Local Preference zur Beeinflussung des ausgehenden Datenverkehrs genutzt wird.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
AS-Path Loop Prevention: Jeder BGP-Router hängt beim Weiterleiten einer Route seine eigene Autonomous System Number (ASN) an die AS-Path-Liste an. Empfängt ein Router ein Routing-Update, das seine eigene ASN bereits im AS-Path enthält, verwirft er die Route sofort, um Routing-Schleifen im Internet sicher zu verhindern. (4 Pkt.)
Local Preference: Ein lokales Attribut (nur innerhalb des eigenen AS gültig). Der Pfad mit dem HÖCHSTEN Local-Preference-Wert wird bevorzugt gewählt. Administratoren können so steuern, über welchen von mehreren Uplink-Providern der gesamte ausgehende Datenverkehr das eigene Netz verlassen soll. (4 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Quality of Service QoS DiffServ und DSCP" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Quality of Service QoS DiffServ und DSCP</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Über eine WAN-Verbindung werden gleichzeitig IP-Telefonie (VoIP-Sprachdaten) und große Dateidownloads übertragen. Die Sprachqualität leidet unter Aussetzern (Jitter).
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erläutern Sie, wie Quality of Service (QoS) nach dem Differentiated Services Modell (DiffServ) mittels DSCP-Werten im IP-Header (z. B. Expedited Forwarding EF vs Best Effort) das Problem löst.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
DiffServ-Funktionsweise: Im IPv4-Header (TOS-Byte) bzw. IPv6-Header (Traffic Class) werden 6 Bit als Differentiated Services Code Point (DSCP) verwendet, um Datenpakete in Prioritätsklassen einzuteilen. Switche und Router werten diesen Wert aus und reihen Pakete in getrennte Ausgangswarteschlangen (Queues) ein. (4 Pkt.)
Klassen-Zuordnung:
- VoIP: Erhält den DSCP-Wert EF (Expedited Forwarding / DSCP 46) mit Prioritätswarteschlange (Priority Queuing), sodass Sprachpakete immer vor allen anderen Daten ohne Wartezeit weitergeleitet werden (minimiert Latenz und Jitter). (2 Pkt.)
- Dateidownloads: Werden als Best Effort (DSCP 0) oder Assured Forwarding (AF) klassifiziert und bei Leitungsengpässen gedrosselt. (2 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="IPsec NAT-Traversal (NAT-T)" data-points="6" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">IPsec NAT-Traversal (NAT-T)</strong>
<span class="ihk-badge ihk-badge-success">6 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Ein Mitarbeiter verbindet sich aus einem Hotel-WLAN (hinter einem PAT-Router) per IPsec-VPN mit der Firmenzentrale.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erklären Sie, warum Standard-IPsec mit ESP an PAT-Routern scheitert und wie NAT-Traversal (NAT-T auf UDP Port 4500) das Problem löst.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Problem: ESP (IP-Protokoll 50) besitzt keine TCP/UDP-Portnummern. Ein handelsüblicher PAT-Router kann eingehende Antwortpakete daher keinem internen Client zuordnen. Zudem bricht jede Modifikation des IP-Headers durch NAT die kryptografische Integritätsprüfung (AH scheitert immer). (3 Pkt.)
Lösung NAT-T (RFC 3948): Erkennt beim IKE-Handshake ein NAT-Gateway. Das gesamte ESP-Paket wird in ein reguläres UDP-Paket auf Port 4500 gekapselt (UDP Encapsulation). Der PAT-Router kann nun den UDP-Port manipulieren und übersetzen, während die internen ESP-Verschlüsselungsdaten unberührt bleiben. (3 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="VPN-Protokolle WireGuard vs OpenVPN" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">VPN-Protokolle WireGuard vs OpenVPN</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Für mobile Arbeitsplätze wird ein modernes VPN ausgewählt.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Vergleichen Sie WireGuard und OpenVPN bezüglich Architektur (Kernel- vs User-Space), Code-Komplexität, Krypto-Agilität und Roaming-Fähigkeit.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Architektur & Performance: WireGuard läuft direkt im Linux-Kernel-Space; OpenVPN läuft im User-Space und muss jedes Paket über TUN/TAP-Treiber kopieren (höherer Kontextwechsel und CPU-Overhead). WireGuard erzielt deutlich höheren Durchsatz. (2 Pkt.)
Codebasis: WireGuard hat ca. 4.000 Zeilen Code (einfach auditierbar, minimale Angriffsfläche); OpenVPN hat über 100.000 Zeilen Code. (2 Pkt.)
Kryptografie: WireGuard verzichtet bewusst auf Krypto-Agilität und nutzt ein festes, modernes Krypto-Set (ChaCha20, Poly1305, Curve25519); OpenVPN unterstützt OpenSSL mit variablen Chiffren. (2 Pkt.)
Roaming: WireGuard bindet Sitzungen an kryptografische Schlüssel und öffentliche Endpunkte; wechselt ein Laptop von WLAN zu LTE, bleibt der Tunnel ohne Neu-Handshake sofort aktiv. (2 Pkt.)
</div>
</details>
</div>
</div></div>
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
<span></span>
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
<a href="../02_lf10_serverdienste_und_automation/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
</div>
</div> </div>
<script src="../../../assets/courses_manifest.js"></script>
<script src="../../../assets/course_sidebar.js"></script>
</body> </body>
</html> </html>

View file

@ -0,0 +1,9 @@
# AP2 Modul 01: Enterprise Routing & Switching (LF 9)
**Prüfungsbereich:** Lernfeld 9 (FISI)
IEEE 802.1Q VLANs, Router-on-a-Stick, L3-Switching, RSTP 802.1w, LACP 802.3ad, OSPF, BGP, VRRP & Redundanz.
## Relevante Prüfungsthemen nach dem offiziellen ZPA Nord-West Prüfungskatalog (2. Auflage)
- Fundierte Fachtheorie und Praxis-Transfer für Fachinformatiker Systemintegration (FISI).
- Authentische Prüfungsfragen mit offiziellem IHK-Erwartungshorizont und Punkteverteilung.

View file

@ -0,0 +1,257 @@
<!DOCTYPE html>
<html lang="de">
<head>
<link rel="icon" type="image/svg+xml" href="../../../assets/favicon.svg">
<meta charset="UTF-8">
<title>AP2 Modul 01: Enterprise Routing & Switching (LF 9)</title>
<link rel="stylesheet" href="../../../assets/style.css">
<link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css">
</head>
<body class="bg-slate-900 text-slate-100 font-sans p-6">
<div class="container mx-auto max-w-4xl">
<div class="flex justify-between items-center mb-6">
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary text-sm">← Zurück zum Dashboard</a>
<span class="ihk-badge ihk-badge-success">Lernfeld 9 (FISI)</span>
</div>
<h1 class="text-3xl font-extrabold text-sky-400 mb-2">AP2 Modul 01: Enterprise Routing & Switching (LF 9)</h1>
<p class="text-slate-300 text-lg leading-relaxed mb-6">IEEE 802.1Q VLANs, Router-on-a-Stick, L3-Switching, RSTP 802.1w, LACP 802.3ad, OSPF, BGP, VRRP & Redundanz.</p>
<!-- Fachtheorie & Wissen -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin-bottom: 24px;">
<h2 style="color: #38bdf8; margin-top: 0;">🌐 Enterprise Routing, Switching & Redundanz (LF 9)</h2>
<p style="color: #cbd5e1; line-height: 1.6;">
Lernfeld 9 ist das technische Kernfach für Systemintegratoren in der AP2: Enterprise-VLANs, Router-on-a-Stick, Layer-3-Switching, Spanning Tree (RSTP 802.1w), Link Aggregation (LACP), dynamisches Routing (OSPF & BGP) und First Hop Redundancy (VRRP/HSRP).
</p>
<h3 style="color: #cbd5e1; margin-top: 20px;">1. IEEE 802.1Q Frame-Tagging & VLAN-Trunking</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<p style="color: #cbd5e1; line-height: 1.6; margin: 0;">
Das 4-Byte 802.1Q-Tag wird zwischen Source-MAC und EtherType-Feld eingefügt:<br>
- <strong>TPID (2 Byte):</strong> Fester Hex-Wert <code>0x8100</code> zur Kennzeichnung des VLAN-Frames.<br>
- <strong>TCI (2 Byte):</strong> Enthält Prioritätsbits (PCP, 3 Bit), Drop Eligible Indicator (DEI, 1 Bit) und <strong>VLAN-ID (VID, 12 Bit)</strong> für theoretisch 4.096 VLANs (Werte 0 und 4095 reserviert, nutzbar 1–4094).<br>
- <strong>Trunk-Ports (Tagged):</strong> Leiten Frames mehrerer VLANs mit Tag weiter.<br>
- <strong>Access-Ports (Untagged):</strong> Gehören fest genau einem VLAN an; Endgeräte empfangen native Standard-Ethernet-Frames.
</p>
</div>
<h3 style="color: #cbd5e1; margin-top: 20px;">2. Inter-VLAN Routing: Router-on-a-Stick vs. Layer-3-Switch SVI</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<table class="ihk-table">
<thead>
<tr><th>Kriterium</th><th>Router-on-a-Stick (RoaS)</th><th>Layer-3-Switch (SVI)</th></tr>
</thead>
<tbody>
<tr>
<td><strong>Funktionsweise</strong></td>
<td>Ein einzelnes physisches Interface ist als Trunk konfiguriert und in logische Subinterfaces unterteilt (z. B. <code>g0/0.10</code>).</td>
<td>Switched Virtual Interfaces (z. B. <code>interface Vlan 10</code>). Routing erfolgt direkt im Switch-Hardware-ASIC.</td>
</tr>
<tr>
<td><strong>Performance</strong></td>
<td>Flaschenhals: Daten müssen Switch verlassen, über Trunk zum Router und zurück.</td>
<td>Drahtgeschwindigkeit (Wire-Speed Routing) ohne Bandbreiteneinbußen.</td>
</tr>
<tr>
<td><strong>Kosten & Einsatz</strong></td>
<td>Geringere Hardwarekosten, geeignet für kleine Netzwerke.</td>
<td>Höhere Anschaffungskosten, Standard in Enterprise-Core- und Distribution-Layers.</td>
</tr>
</tbody>
</table>
</div>
<h3 style="color: #cbd5e1; margin-top: 20px;">3. Spanning Tree Protocol (RSTP IEEE 802.1w)</h3>
<p style="color: #cbd5e1; line-height: 1.6;">
Verhindert verheerende Loops (Broadcast-Stürme, MAC-Table Thrashing) in vermaschten Layer-2-Topologien:<br>
- <strong>Root Bridge Wahl:</strong> Switch mit der niedrigsten <em>Bridge ID (Priority + System-ID-Extension + MAC-Adresse)</em>. Standard-Priorität: <code>32768</code>.<br>
- <strong>Port-Rollen:</strong> Root Port (RP, bester Pfad zur Root Bridge je Nicht-Root-Switch), Designated Port (DP, bester Port auf jedem Segment), Alternate/Backup Port (blockiert Schleifen).<br>
- <strong>RSTP Port-Zustände:</strong> Discarding (verwirft Daten), Learning (lernt MACs), Forwarding (leitet regulär weiter). Konvergenzzeit unter 1 Sekunde durch Handshake-Mechanismus (Proposal/Agreement).
</p>
<h3 style="color: #cbd5e1; margin-top: 20px;">4. Link Aggregation (LACP IEEE 802.3ad) & First-Hop Redundancy (VRRP)</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<p style="color: #cbd5e1; line-height: 1.6; margin: 0;">
- <strong>LACP (802.3ad):</strong> Bündelt bis zu 8 physische Ethernet-Links zu einem logischen <em>Port-Channel / Trunk</em>. Erhöht Bandbreite und bietet Ausfallsicherheit bei Kabelbruch. Modi: <em>Active</em> (initiiert Verhandlung) und <em>Passive</em>.<br>
- <strong>VRRP (RFC 5798):</strong> Mehrere Router teilen sich eine <strong>virtuelle IP- und MAC-Adresse</strong> (<code>00:00:5E:00:01:XX</code>), die Clients als Standard-Gateway eingetragen haben. Fällt der Master-Router aus, übernimmt der Backup-Router nahtlos.
</p>
</div>
</div>
<!-- Interaktives Tool falls vorhanden -->
<!-- Fragenpool -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin: 32px 0;">
<h2 style="color: #38bdf8; margin-top: 0; font-size: 1.4rem; display: flex; align-items: center; gap: 10px;">
<span>📝</span> Authentische IHK-Prüfungsaufgaben nach ZPA 2. Auflage
</h2>
<p style="color: #94a3b8; font-size: 0.9rem; margin-bottom: 20px;">
Bearbeiten Sie die Aufgaben und vergleichen Sie Ihre Antwort mit dem offiziellen Erwartungshorizont:
</p>
<div style="display: flex; flex-direction: column; gap: 20px;">
<div class="ihk-exam-task" data-title="Redundante Netzwerkinfrastruktur mit VRRP & LACP" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Redundante Netzwerkinfrastruktur mit VRRP & LACP</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Für eine hochverfügbare Rechenzentrumsanbindung werden zwei Layer-3-Switches als redundantes Standard-Gateway für Clients eingerichtet. Gleichzeitig werden Server über mehrere Netzwerkkarten redundant angebunden.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erklären Sie das Zusammenspiel von Virtual Router Redundancy Protocol (VRRP) für die Gateway-Redundanz und Link Aggregation Control Protocol (LACP nach 802.3ad) für die Serveranbindung.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="IEEE 802.1Q Frame-Tagging" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">IEEE 802.1Q Frame-Tagging</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
In einem Firmennetzwerk werden VLANs über Trunk-Verbindungen zwischen Switchen übertragen.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Beschreiben Sie den Aufbau des 4-Byte 802.1Q-VLAN-Tags (TPID, TCI, VID) und unterscheiden Sie Access- und Trunk-Ports.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Inter-VLAN Routing Router-on-a-Stick" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Inter-VLAN Routing Router-on-a-Stick</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Zwei Abteilungen befinden sich in VLAN 10 (192.168.10.0/24) und VLAN 20 (192.168.20.0/24). Ein physischer Router ist über eine einzelne Gigabit-Leitung an den Core-Switch angebunden.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erläutern Sie das Verfahren "Router-on-a-Stick" und geben Sie die wesentlichen Konfigurationsschritte auf dem Router (Subinterfaces, dot1Q) an.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Layer-3-Switch SVI Konfiguration" data-points="6" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Layer-3-Switch SVI Konfiguration</strong>
<span class="ihk-badge ihk-badge-success">6 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Zur Entlastung des Routers soll das Routing zwischen zehn VLANs direkt auf einem Layer-3-Core-Switch durchgeführt werden.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erklären Sie den Unterschied zwischen einem Layer-2- und einem Layer-3-Switch und beschreiben Sie die Funktion eines Switched Virtual Interface (SVI).
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Spanning Tree Protocol RSTP 802.1w" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Spanning Tree Protocol RSTP 802.1w</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Drei Switche sind im Dreieck redundant miteinander verkabelt.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Welche drei gravierenden Netzwerkprobleme treten ohne Spanning Tree auf und wie verhindert Rapid STP (802.1w) Schleifen im Netzwerk?
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Link Aggregation LACP 802.3ad" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Link Aggregation LACP 802.3ad</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Zwei Switche werden über vier parallele 1-Gbit/s-Kupferkabel miteinander verbunden.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erläutern Sie die Vorteile von Link Aggregation (LAG / LACP) gegenüber Einzelverbindungen mit Spanning Tree und beschreiben Sie, wie die Lastverteilung erfolgt.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="OSPF Link-State Routing & Kostenberechnung" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">OSPF Link-State Routing & Kostenberechnung</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
In einem Unternehmensnetzwerk mit mehreren Standorten wird OSPF (Open Shortest Path First) als dynamisches Routing-Protokoll eingesetzt.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erklären Sie das Link-State-Konzept von OSPF und berechnen Sie die OSPF-Metrik für eine 100-Mbit/s- und eine 10-Gbit/s-Leitung bei einer Referenzbandbreite von 100 Gbit/s (100.000 Mbit/s).
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
</div>
</div>
<!-- Footer Navigation mit echten Buttons -->
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary font-semibold">← Dashboard</a>
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary">🏠 Kursübersicht</a>
<a href="../02_vrt_netzwerkplaene_und_infrastruktur/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
</div>
</div>
<script src="../../../assets/courses_manifest.js"></script>
<script src="../../../assets/course_sidebar.js"></script>
</body>
</html>

View file

@ -1,260 +1,17 @@
<!DOCTYPE html> <!DOCTYPE html>
<html lang="de"> <html lang="de">
<head> <head>
<link rel="icon" type="image/svg+xml" href="../../../assets/favicon.svg">
<meta charset="UTF-8"> <meta charset="UTF-8">
<title>AP2 Modul 02: Serverdienste & Automation bereitstellen (LF 10)</title> <meta http-equiv="refresh" content="0; url=../03_lf10_serverdienste_und_identitaeten/index.html">
<title>Weiterleitung zum aktualisierten Modul...</title>
<link rel="stylesheet" href="../../../assets/style.css"> <link rel="stylesheet" href="../../../assets/style.css">
<link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css"> <link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css">
</head> </head>
<body class="bg-slate-900 text-slate-100 font-sans p-6"> <body class="bg-slate-900 text-slate-100 p-8 flex items-center justify-center min-h-screen">
<div class="container mx-auto max-w-4xl"> <div class="text-center max-w-lg bg-slate-800 p-8 rounded-xl border border-slate-700">
<div class="flex justify-between items-center mb-6"> <h2 class="text-xl font-bold text-sky-400 mb-4">Modul aktualisiert</h2>
<a href="../../../dashboard.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zum Dashboard</a> <p class="text-slate-300 mb-6">Dieses Modul wurde im Rahmen der ZPA Nord-West 2. Auflage aktualisiert. Sie werden automatisch weitergeleitet...</p>
<span class="ihk-badge ihk-badge-success">Lernfeld 10 (FISI)</span> <a href="../03_lf10_serverdienste_und_identitaeten/index.html" class="ihk-btn ihk-btn-primary font-semibold">Direkt zum neuen Modul →</a>
</div>
<h1 class="text-3xl font-extrabold text-sky-400 mb-2">AP2 Modul 02: Serverdienste & Automation bereitstellen (LF 10)</h1>
<p class="text-slate-300 text-lg leading-relaxed mb-6">Active Directory DS, 5 FSMO-Rollen, GPO Vererbung (LSDOU), Kerberos 3-Wege-Handshake, PKI X.509, E-Mail-Sicherheit (SPF/DKIM/DMARC) & Ansible.</p>
<!-- Fachtheorie & Wissen -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin-bottom: 24px;">
<h2 style="color: #f87171; margin-top: 0;">🖥️ LF 10: Serverdienste und Speicherlösungen bereitstellen (FISI)</h2>
<p style="color: #cbd5e1; line-height: 1.6;">
Bereitstellung und Absicherung unternehmensweiter Verzeichnisdienste (Active Directory DS), Namensauflösung (DNSSEC), automatische IP-Konfiguration (DHCP Snooping), PKI-Zertifikatsketten und Automatisierung mit Ansible.
</p>
<h3 style="color: #cbd5e1; margin-top: 20px;">1. Active Directory & die 5 FSMO-Rollen</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<ul style="color: #cbd5e1; line-height: 1.8; margin: 0; padding-left: 20px;">
<li><strong>Schemamaster (Forest-wide):</strong> Änderungen an Objektklassen und Attributen des AD.</li>
<li><strong>Domänennamen-Master (Forest-wide):</strong> Hinzufügen und Entfernen von Domänen.</li>
<li><strong>PDC-Emulator (Domain-wide):</strong> Zeitquelle (NTP) der Domäne, sofortige Passwortänderungssynchronisation, Kontosperrungen.</li>
<li><strong>RID-Master (Domain-wide):</strong> Vergibt RID-Pools zur Erzeugung eindeutiger SIDs.</li>
<li><strong>Infrastrukturmaster (Domain-wide):</strong> Verwaltet standortübergreifende Phantom-Objekte.</li>
</ul>
</div>
<h3 style="color: #cbd5e1; margin-top: 20px;">2. Gruppenrichtlinien (GPO) LSDOU-Regel</h3>
<p style="color: #cbd5e1; line-height: 1.6;">
Reihenfolge der Richtlinienauswertung: <strong>Local -> Site -> Domain -> OU</strong>. Untere Ebenen überschreiben obere Einstellungen. Mit <strong>Erzwungen (Enforced)</strong> wird eine Richtlinie ausnahmslos durchgesetzt und überstimmt jede Vererbungsblockade.
</p>
<h3 style="color: #cbd5e1; margin-top: 20px;">3. Infrastruktur-Automatisierung mit Ansible</h3>
<p style="color: #cbd5e1; line-height: 1.6;">
Ansible arbeitet <strong>agentless</strong> über SSH / WinRM und gewährleistet <strong>Idempotenz</strong>: Wiederholte Ausführung eines Playbooks führt immer zum identischen Soll-Zustand, ohne redundante Änderungen auszulösen.
</p>
</div>
<!-- Interaktives Tool falls vorhanden -->
<!-- Fragenpool -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin: 32px 0;">
<h2 style="color: #38bdf8; margin-top: 0; font-size: 1.4rem; display: flex; align-items: center; gap: 10px;">
<span>📝</span> Authentische IHK-Prüfungsaufgaben zu Lernfeld 10 (FISI)
</h2>
<p style="color: #94a3b8; font-size: 0.9rem; margin-bottom: 20px;">
Aus unserem Fragenpool von 150 IHK-Prüfungsfragen nach offiziellem ZPA/AkA-Wortlaut. Bearbeiten Sie die Aufgaben und vergleichen Sie Ihre Antwort mit dem Erwartungshorizont:
</p>
<div style="display: flex; flex-direction: column; gap: 20px;">
<div class="ihk-exam-task" data-title="Active Directory FSMO-Rollen" data-points="10" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Active Directory FSMO-Rollen</strong>
<span class="ihk-badge ihk-badge-success">10 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
In einer Microsoft Active Directory Domain Services (AD DS) Gesamtstruktur existieren fünf FSMO-Rollen (Flexible Single Master Operations).
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Nennen Sie die fünf FSMO-Rollen, unterscheiden Sie zwischen gesamtstrukturweiten und domänenweiten Rollen und erläutern Sie die Aufgaben des PDC-Emulators.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Gesamtstrukturweite Rollen (Forest-wide, genau 1-mal pro Forest):
1. Schemamaster: Zuständig für Änderungen am AD-Datenbankschema. (1,5 Pkt.)
2. Domänennamen-Master: Verwaltet das Hinzufügen und Entfernen von Domänen. (1,5 Pkt.)
Domänenweite Rollen (Domain-wide, 1-mal pro Domäne):
3. RID-Master: Vergibt RID-Pools an Domain Controller zur Erzeugung eindeutiger SIDs. (1,5 Pkt.)
4. Infrastrukturmaster: Aktualisiert standortübergreifende Objektverweise (Phantom-Objekte). (1,5 Pkt.)
5. PDC-Emulator: Haupt-Zeitquelle (NTP-Zeitserver) der Domäne, sofortige Synchronisation von Kennwortänderungen, Verwaltung von Kontosperrungen und Abwärtskompatibilität zu NT4. (4 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Group Policy Objects (GPO) Vererbung LSDOU" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Group Policy Objects (GPO) Vererbung LSDOU</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
In einer Active-Directory-Umgebung werden Gruppenrichtlinien (GPOs) angewendet.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erläutern Sie die Auswertungsreihenfolge von Richtlinien nach der LSDOU-Regel und beschreiben Sie die Auswirkung der Einstellungen "Vererbung deaktivieren" (Block Inheritance) und "Erzwungen" (Enforced).
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
LSDOU-Reihenfolge:
1. Local (Lokal auf dem Clientcomputer)
2. Site (Active Directory Standort)
3. Domain (Domänenebene)
4. OU (Organisationseinheit, von oberer OU zur untergeordneten OU).
Die zuletzt ausgewertete Richtlinie überschreibt bei Konflikten vorherige Einstellungen (OU gewinnt gegen Domäne). (4 Pkt.)
Vererbung deaktivieren: Verhindert, dass übergeordnete Richtlinien an untergeordnete OUs vererbt werden. (2 Pkt.)
Erzwungen (Enforced): Setzt eine Richtlinie ausnahmslos durch; überstimmt Vererbungsblockaden untergeordneter OUs und kann nicht überschrieben werden. (2 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Kerberos-Authentifizierung 3-Wege-Handshake" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Kerberos-Authentifizierung 3-Wege-Handshake</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Active Directory verwendet standardmäßig das Kerberos-Protokoll zur sicheren Benutzerauthentifizierung.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Beschreiben Sie die drei Schritte des Kerberos-Prozesses unter Nennung der Rollen KDC, AS, TGS, TGT und Service-Ticket.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
1. Authentication Service (AS-Exchange): Client sendet Anmeldeanforderung an den Authentication Server des KDC. Der AS prüft die Anmeldedaten und antwortet mit einem TGT (Ticket Granting Ticket), das mit dem geheimen Schlüssel des KDC verschlüsselt ist. (3 Pkt.)
2. Ticket Granting Service (TGS-Exchange): Möchte der Client auf eine Ressource zugreifen, sendet er das TGT an den Ticket Granting Server. Dieser validiert das TGT und stellt ein Service-Ticket für den gewünschten Zielserver aus. (3 Pkt.)
3. Client-to-Server-Exchange: Der Client übergibt das Service-Ticket an den Zielserver. Der Server entschlüsselt das Ticket mit seinem eigenen Computerkonto-Schlüssel und gewährt den Zugriff ohne Passwortübertragung im Netz. (2 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Public Key Infrastructure (PKI) X.509" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Public Key Infrastructure (PKI) X.509</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Ein Unternehmen baut eine zweistufige Public-Key-Infrastruktur (PKI) mit Offline-Root-CA und Online-Sub-CA auf.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Begründen Sie, warum die Root-CA offline betrieben wird, und erklären Sie den Unterschied zwischen einer Sperrliste (CRL) und OCSP.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Offline Root-CA: Die Stammzertifizierungsstelle ist die Vertrauensbasis der gesamten Organisation. Wird ihr privater Schlüssel kompromittiert, ist die gesamte PKI wertlos. Sie wird offline gehalten (abgeschaltet, im Tresor), um sie vor Netzwerkangriffen zu schützen, und signiert nur die Zertifikate der untergeordneten ausstellenden CAs (Sub-CAs). (4 Pkt.)
CRL (Certificate Revocation List): Eine signierte Datei, die periodisch von der CA veröffentlicht wird und alle widerrufenen Zertifikate auflistet. Nachteil: Kann sehr groß werden und ist bis zum nächsten Update zeitlich verzögert. (2 Pkt.)
OCSP (Online Certificate Status Protocol): Ermöglicht eine Echtzeit-Statusabfrage für ein einzelnes konkretes Zertifikat beim OCSP-Responder; extrem bandbreitenschonend und aktuell. (2 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="E-Mail-Sicherheit SPF, DKIM und DMARC" data-points="9" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">E-Mail-Sicherheit SPF, DKIM und DMARC</strong>
<span class="ihk-badge ihk-badge-success">9 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Zur Verhinderung von Spam, Spoofing und Phishing im Namen der eigenen Firmendomäne werden DNS-Einträge konfiguriert.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erläutern Sie die Aufgaben und Funktionsweisen von SPF, DKIM und DMARC.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
SPF (Sender Policy Framework): Ein DNS-TXT-Record, in dem der Domäneninhaber festlegt, welche IP-Adressen und Mailserver berechtigt sind, E-Mails im Namen dieser Domäne zu versenden. Der empfangende Mailserver gleicht die Quell-IP des Absenders damit ab. (3 Pkt.)
DKIM (DomainKeys Identified Mail): Der ausgehende Mailserver signiert Teile des E-Mail-Headers und den Body kryptografisch mit einem privaten Schlüssel. Der Empfänger prüft die Signatur mit dem im DNS publizierten öffentlichen Schlüssel auf Unverfälschtheit. (3 Pkt.)
DMARC (Domain-based Message Authentication): Richtlinie im DNS, die festlegt, wie der empfangende Mailserver verfahren soll, wenn SPF oder DKIM fehlschlagen (z. B. none, quarantine, reject), und fordert aggregierte XML-Sicherheitsberichte an den Domäneninhaber an. (3 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Infrastruktur-Automatisierung mit Ansible" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Infrastruktur-Automatisierung mit Ansible</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Zur Konfiguration von 80 Linux-Servern wird ein Infrastructure-as-Code-Werkzeug eingeführt.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erklären Sie die Begriffe Agentless und Idempotenz im Kontext von Ansible und beschreiben Sie den Aufbau eines Playbooks.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Agentless: Auf den Zielsystemen muss kein spezieller Hintergrunddienst (Agent) installiert werden; Ansible steuert die Server direkt über Standardprotokolle wie SSH (Linux) oder WinRM (Windows) an und benötigt lediglich Python auf den Zielhosts. (3 Pkt.)
Idempotenz: Ein Playbook kann beliebig oft ausgeführt werden und führt immer zum identischen Soll-Zustand. Befindet sich ein Server bereits im gewünschten Zustand (z. B. Paket ist bereits installiert), führt Ansible keine Änderungen aus ("ok" statt "changed"). (3 Pkt.)
Aufbau eines Playbooks: In YAML-Syntax verfasste Datei, die Plays enthält. Jedes Play definiert Ziel-Hosts, Variablen und eine geordnete Liste von Tasks, die vorgefertigte Module (z. B. apt, copy, systemd) aufrufen. (2 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="DHCP Snooping und Dynamic ARP Inspection (DAI)" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">DHCP Snooping und Dynamic ARP Inspection (DAI)</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Zur Härtung der Switch-Ports gegen Man-in-the-Middle-Angriffe werden Sicherheitsfeatures aktiviert.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Beschreiben Sie die Funktionsweise von DHCP Snooping (Trusted vs Untrusted Ports) und erklären Sie, wie Dynamic ARP Inspection (DAI) basierend auf der Snooping-Binding-Database Angriffe abwehrt.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
DHCP Snooping: Teilt Switchports in vertrauenswürdig (Trusted) und unvertrauenswürdig (Untrusted) ein. Ports zu DHCP-Servern werden als Trusted konfiguriert; Ports zu Clients als Untrusted. Sendet ein Client auf einem Untrusted Port DHCP-Server-Antworten (DHCPOFFER/ACK, Rogue DHCP), blockiert der Switch den Port sofort. Der Switch protokolliert zugewiesene IPs, MACs und Ports in der DHCP Snooping Binding Database. (4 Pkt.)
Dynamic ARP Inspection (DAI): Verhindert ARP-Spoofing/Poisoning. Der Switch fängt jeden ARP-Reply auf Untrusted Ports ab und vergleicht, ob die Zuordnung von IP- und Quell-MAC-Adresse mit der DHCP Snooping Binding Database übereinstimmt. Weicht die MAC ab (gefälschter ARP-Frame), wird das Paket gedroppt und der Angreifer isoliert. (4 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Linux Systemd Service Unit Konfiguration" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Linux Systemd Service Unit Konfiguration</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Ein Python-Daemon für ein Monitoring-Tool soll unter Linux automatisch beim Booten gestartet und bei Absturz neu gestartet werden.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Beschreiben Sie die drei Hauptabschnitte einer Systemd-Service-Unit ([Unit], [Service], [Install]) und nennen Sie die Direktiven für Ausführungsbefehl, automatischen Neustart und Start-Ziel.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Abschnitte & Direktiven:
1. [Unit]: Metadaten und Abhängigkeiten. Direktive: Description=Mein Monitoring Dienst; After=network.target (Startet erst, wenn Netzwerk bereit ist). (2 Pkt.)
2. [Service]: Ausführungskonfiguration. Direktiven: ExecStart=/usr/bin/python3 /opt/monitor/app.py (Startbefehl); Restart=always (Automatischer Neustart bei Crash); RestartSec=5s; User=monitoruser. (4 Pkt.)
3. [Install]: Aktivierungsziel für systemctl enable. Direktive: WantedBy=multi-user.target (Dienst startet im regulären Mehrbenutzer-Modus). (2 Pkt.)
</div>
</details>
</div>
</div></div>
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
<a href="../01_lf9_netzwerke_und_dienste/index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Vorheriges Modul</a>
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
<a href="../03_lf11_speicher_und_hochverfuegbarkeit/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
</div>
</div> </div>
<script src="../../../assets/courses_manifest.js"></script>
<script src="../../../assets/course_sidebar.js"></script>
</body> </body>
</html> </html>

View file

@ -0,0 +1,9 @@
# AP2 Modul 02: Normierte Netzwerkpläne (VRT) & Verkabelung (LF 9)
**Prüfungsbereich:** ZPA Anhang S. 42
Offizielle ZPA-Symbole nach VRT Network Equipment, DIN EN 50173 100m-Längenregel & Glasfasertechnik.
## Relevante Prüfungsthemen nach dem offiziellen ZPA Nord-West Prüfungskatalog (2. Auflage)
- Fundierte Fachtheorie und Praxis-Transfer für Fachinformatiker Systemintegration (FISI).
- Authentische Prüfungsfragen mit offiziellem IHK-Erwartungshorizont und Punkteverteilung.

View file

@ -0,0 +1,204 @@
<!DOCTYPE html>
<html lang="de">
<head>
<link rel="icon" type="image/svg+xml" href="../../../assets/favicon.svg">
<meta charset="UTF-8">
<title>AP2 Modul 02: Normierte Netzwerkpläne (VRT) & Verkabelung (LF 9)</title>
<link rel="stylesheet" href="../../../assets/style.css">
<link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css">
</head>
<body class="bg-slate-900 text-slate-100 font-sans p-6">
<div class="container mx-auto max-w-4xl">
<div class="flex justify-between items-center mb-6">
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary text-sm">← Zurück zum Dashboard</a>
<span class="ihk-badge ihk-badge-success">ZPA Anhang S. 42</span>
</div>
<h1 class="text-3xl font-extrabold text-sky-400 mb-2">AP2 Modul 02: Normierte Netzwerkpläne (VRT) & Verkabelung (LF 9)</h1>
<p class="text-slate-300 text-lg leading-relaxed mb-6">Offizielle ZPA-Symbole nach VRT Network Equipment, DIN EN 50173 100m-Längenregel & Glasfasertechnik.</p>
<!-- Fachtheorie & Wissen -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin-bottom: 24px;">
<h2 style="color: #38bdf8; margin-top: 0;">📐 Normierte Netzwerkpläne (VRT) & Strukturierte Verkabelung (LF 9)</h2>
<p style="color: #cbd5e1; line-height: 1.6;">
Die 2. Auflage des ZPA Nord-West Prüfungskatalogs (Anhang S. 42) fordert verbindlich die Anwendung der <strong>offiziellen VRT-Netzwerksymbole</strong> sowie fundierte Kenntnisse der <strong>strukturierten Verkabelung nach DIN EN 50173</strong> und moderner Glasfasertechnologien.
</p>
<h3 style="color: #cbd5e1; margin-top: 20px;">1. Normierte VRT-Netzwerksymbole nach ZPA-Katalog (Anhang S. 42)</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<table class="ihk-table">
<thead>
<tr><th>Netzwerk-Komponente</th><th>Symbol / Darstellung</th><th>IHK-Definition & OSI-Schicht</th></tr>
</thead>
<tbody>
<tr>
<td><strong>Layer-2-Switch</strong></td>
<td>Rechteck mit 4 horizontalen entgegengesetzten Pfeilen [ ⇄ ⇄ ]</td>
<td>Schaltet Frames auf Layer 2 (Data Link Layer) anhand der MAC-Adresstabelle (CAM-Table). Trennt Kollisionsdomänen, bildet eine Broadcast-Domäne.</td>
</tr>
<tr>
<td><strong>Layer-3-Switch</strong></td>
<td>Kreis oder Rechteck mit Schaltsymbol & Kreuzpfeilen</td>
<td>Kombiniert L2-Switching mit hardwarebasiertem L3-Routing (SVI) bei Wire-Speed. Trennt Kollisions- und Broadcast-Domänen.</td>
</tr>
<tr>
<td><strong>Router</strong></td>
<td>Zylinder / Kreis mit 4 kreuzförmigen Pfeilen (2 rein, 2 raus)</td>
<td>Verbindet disjunkte IP-Netzwerke auf Layer 3 (Network Layer). Führt Pfadentscheidungen durch, trennt Broadcastdomänen und betreibt NAT/PAT.</td>
</tr>
<tr>
<td><strong>Firewall (Stateful / NGFW)</strong></td>
<td>Mauer / Ziegelwand-Symbol mit Schild</td>
<td>Filtert Netzwerkverkehr. Stateful Inspection überwacht Sitzungszustände (TCP Flags, SYN/ACK). Next-Gen Firewalls (NGFW) führen Deep Packet Inspection (DPI) und App-ID auf Layer 7 durch.</td>
</tr>
<tr>
<td><strong>Access Point (WLAN)</strong></td>
<td>Kleine Basisstation mit Funkwellen 📶</td>
<td>Bridge zwischen IEEE 802.3 (Ethernet) und IEEE 802.11 (WLAN). Verwaltet SSIDs, VLAN-Mapping und 802.1X/WPA3 Authentifizierung.</td>
</tr>
<tr>
<td><strong>SOHO-Kombigerät</strong></td>
<td>Kombi-Box (Router + Switch + AP + DSL/Kabel-Modem)</td>
<td>Typisches All-in-One-Gerät für Heim- und Kleinbüros (z. B. FRITZ!Box). Nicht für ausfallsichere Enterprise-Topologien geeignet.</td>
</tr>
</tbody>
</table>
</div>
<h3 style="color: #cbd5e1; margin-top: 20px;">2. Strukturierte Verkabelung nach DIN EN 50173 & ISO/IEC 11801</h3>
<p style="color: #cbd5e1; line-height: 1.6;">
Die strukturierte Verkabelung gliedert das Unternehmensnetzwerk in drei standardisierte Hierarchieebenen:
</p>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<ul style="color: #cbd5e1; line-height: 1.8; margin: 0; padding-left: 20px;">
<li><strong>1. Primärbereich (Campus-/Geländeverkabelung):</strong> Verbindet mehrere Gebäude auf einem Liegenschaftsgelände (Standort-Verteiler SV zu Gebäude-Verteiler GV). Medium: Glasfaser (LWL Singlemode OS2), max. 1.500–2.000 m.</li>
<li><strong>2. Sekundärbereich (Steigbereich / Backbone im Gebäude):</strong> Verbindet den Gebäude-Verteiler (GV) mit den Etagen-Verteilern (EV) in den Stockwerken. Medium: LWL Multimode (OM4/OM5) oder Cat 7 Kupfer, max. 500 m.</li>
<li><strong>3. Tertiärbereich (Etagenverkabelung zum Arbeitsplatz):</strong> Verbindet den Etagenverteiler (EV / Patchpanel) mit den Anschlussdosen (TA) am Arbeitsplatz.<br>
<span style="color: #facc15; font-weight: bold;">⚠️ Striktes IHK-Längenlimit:</span> Max. <strong>90 m starres Verlegekabel</strong> (Permanent Link) + max. <strong>10 m flexible Patchkabel</strong> (Arbeitsplatz + Rangierfeld) = <strong>max. 100 m Gesamt-Übertragungsstrecke (Channel Link)!</strong></li>
</ul>
</div>
<h3 style="color: #cbd5e1; margin-top: 20px;">3. Glasfasertechnik: Singlemode (OS2) vs. Multimode (OM4/OM5)</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<table class="ihk-table">
<thead>
<tr><th>Eigenschaft</th><th>Singlemode-Faser (OS2)</th><th>Multimode-Faser (OM4 / OM5)</th></tr>
</thead>
<tbody>
<tr>
<td><strong>Kerndurchmesser</strong></td>
<td>Extrem dünn: ca. <strong>9 µm</strong> (Mantel 125 µm)</td>
<td>Dicker: ca. <strong>50 µm</strong> (Mantel 125 µm)</td>
</tr>
<tr>
<td><strong>Lichtquelle & Wellenlänge</strong></td>
<td>Halbleiterlaser (1310 nm / 1550 nm)</td>
<td>VCSEL oder LED (850 nm / 1300 nm)</td>
</tr>
<tr>
<td><strong>Dispersion & Reichweite</strong></td>
<td>Nur ein Lichtmodus breitet sich axial aus. Keine Modendispersion! Reichweiten: <strong>10 bis 40+ km</strong>.</td>
<td>Viele Lichtmodi reflektieren zickzack im Kern. Modendispersion begrenzt Reichweite auf <strong>300–550 m</strong> bei 10/40 Gbps.</td>
</tr>
<tr>
<td><strong>Messverfahren (OTDR)</strong></td>
<td colspan="2">Das <em>Optical Time Domain Reflectometer (OTDR)</em> sendet Lichtimpulse ein und misst die Rückstreuung (Rayleigh-Streuung) sowie Reflexionen (Fresnel-Reflexion) an Steckern, Spleißen und Faserbrüchen mit metergenauer Lokalisierung.</td>
</tr>
</tbody>
</table>
</div>
</div>
<!-- Interaktives Tool falls vorhanden -->
<!-- Fragenpool -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin: 32px 0;">
<h2 style="color: #38bdf8; margin-top: 0; font-size: 1.4rem; display: flex; align-items: center; gap: 10px;">
<span>📝</span> Authentische IHK-Prüfungsaufgaben nach ZPA 2. Auflage
</h2>
<p style="color: #94a3b8; font-size: 0.9rem; margin-bottom: 20px;">
Bearbeiten Sie die Aufgaben und vergleichen Sie Ihre Antwort mit dem offiziellen Erwartungshorizont:
</p>
<div style="display: flex; flex-direction: column; gap: 20px;">
<div class="ihk-exam-task" data-title="Normierte Netzwerkplan-Symbole nach VRT Network Equipment" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Normierte Netzwerkplan-Symbole nach VRT Network Equipment</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
In einem IHK-Prüfungsszenario soll ein Unternehmensnetzwerk nach dem offiziellen VRT-Symbolstandard der ZPA Nord-West dokumentiert werden.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erläutern Sie die visuellen Unterscheidungsmerkmale und Funktionen der genormten VRT-Symbole für: 1. Layer-2-Switch, 2. Layer-3-Switch, 3. Router mit NAT/PAT, 4. Firewall (Stateful Inspection / NGFW) und 5. Access Point.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Site-to-Site VPN IPsec IKEv2 Phasen" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Site-to-Site VPN IPsec IKEv2 Phasen</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Zwei Unternehmensstandorte sollen dauerhaft über ein IPsec-Site-to-Site-VPN verschlüsselt miteinander verbunden werden.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Beschreiben Sie die zwei Phasen des IKEv2-Handshakes (Internet Key Exchange) und unterscheiden Sie die Protokolle AH und ESP.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Stateful Packet Inspection vs Next-Gen Firewall (NGFW)" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Stateful Packet Inspection vs Next-Gen Firewall (NGFW)</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Im Unternehmen soll eine alte Paketfilter-Firewall durch eine Next-Generation-Firewall (NGFW) ersetzt werden.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Vergleichen Sie Stateful Inspection mit Deep Packet Inspection (DPI) einer NGFW und nennen Sie zwei moderne NGFW-Features.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
</div>
</div>
<!-- Footer Navigation mit echten Buttons -->
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
<a href="../01_lf9_netzwerkinfrastruktur_und_routing/index.html" class="ihk-btn ihk-btn-secondary font-semibold">← Vorheriges Modul</a>
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary">🏠 Kursübersicht</a>
<a href="../03_lf10_serverdienste_und_identitaeten/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
</div>
</div>
<script src="../../../assets/courses_manifest.js"></script>
<script src="../../../assets/course_sidebar.js"></script>
</body>
</html>

View file

@ -0,0 +1,9 @@
# AP2 Modul 03: Serverdienste, Active Directory & Identitäten (LF 10)
**Prüfungsbereich:** Lernfeld 10 (FISI)
AD DS Topologie, FSMO-Rollen, AGDLP-Prinzip, GPO-Vererbung (LSDOU), Kerberos 3-Wege-Handshake & PKI.
## Relevante Prüfungsthemen nach dem offiziellen ZPA Nord-West Prüfungskatalog (2. Auflage)
- Fundierte Fachtheorie und Praxis-Transfer für Fachinformatiker Systemintegration (FISI).
- Authentische Prüfungsfragen mit offiziellem IHK-Erwartungshorizont und Punkteverteilung.

View file

@ -0,0 +1,215 @@
<!DOCTYPE html>
<html lang="de">
<head>
<link rel="icon" type="image/svg+xml" href="../../../assets/favicon.svg">
<meta charset="UTF-8">
<title>AP2 Modul 03: Serverdienste, Active Directory & Identitäten (LF 10)</title>
<link rel="stylesheet" href="../../../assets/style.css">
<link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css">
</head>
<body class="bg-slate-900 text-slate-100 font-sans p-6">
<div class="container mx-auto max-w-4xl">
<div class="flex justify-between items-center mb-6">
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary text-sm">← Zurück zum Dashboard</a>
<span class="ihk-badge ihk-badge-success">Lernfeld 10 (FISI)</span>
</div>
<h1 class="text-3xl font-extrabold text-sky-400 mb-2">AP2 Modul 03: Serverdienste, Active Directory & Identitäten (LF 10)</h1>
<p class="text-slate-300 text-lg leading-relaxed mb-6">AD DS Topologie, FSMO-Rollen, AGDLP-Prinzip, GPO-Vererbung (LSDOU), Kerberos 3-Wege-Handshake & PKI.</p>
<!-- Fachtheorie & Wissen -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin-bottom: 24px;">
<h2 style="color: #38bdf8; margin-top: 0;">🏢 Serverdienste, Active Directory & Identity Management (LF 10)</h2>
<p style="color: #cbd5e1; line-height: 1.6;">
Lernfeld 10 umfasst die Konzeption und Bereitstellung zentraler Verzeichnis- und Identitätsdienste: Active Directory Domain Services (AD DS), die FSMO-Rollen, das Berechtigungsdesign nach AGDLP, Gruppenrichtlinien (GPOs), Kerberos-Authentifizierung und Public Key Infrastructure (PKI).
</p>
<h3 style="color: #cbd5e1; margin-top: 20px;">1. Die 5 FSMO-Rollen (Flexible Single Master Operation)</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<table class="ihk-table">
<thead>
<tr><th>FSMO-Rolle</th><th>Geltungsbereich</th><th>Aufgabe & Bedeutung</th></tr>
</thead>
<tbody>
<tr>
<td><strong>Schema Master</strong></td>
<td>1x pro Gesamtstruktur (Forest)</td>
<td>Steuert Änderungen an den Definitionen von Objektklassen und Attributen des Active Directory.</td>
</tr>
<tr>
<td><strong>Domain Naming Master</strong></td>
<td>1x pro Gesamtstruktur (Forest)</td>
<td>Verwaltet das Hinzufügen oder Entfernen von Domänen und Anwendungspartitionen in der Gesamtstruktur.</td>
</tr>
<tr>
<td><strong>PDC Emulator</strong></td>
<td>1x pro Domäne</td>
<td>Zentraler Zeitgeber (NTP) für alle Clients/Server, bevorzugtes Ziel für Passwortänderungen und Sperrungen, verarbeitet ältere NT4-Anfragen.</td>
</tr>
<tr>
<td><strong>RID Pool Master</strong></td>
<td>1x pro Domäne</td>
<td>Vergibt relative Identifier-Blöcke (RIDs) an alle DCs der Domäne zur Generierung weltweit eindeutiger SIDs für neue Objekte.</td>
</tr>
<tr>
<td><strong>Infrastructure Master</strong></td>
<td>1x pro Domäne</td>
<td>Verwaltet domänenübergreifende Referenzen (Phantome) und aktualisiert Gruppenmitgliedschaften fremder Domänen.</td>
</tr>
</tbody>
</table>
</div>
<h3 style="color: #cbd5e1; margin-top: 20px;">2. Das AGDLP-Prinzip zur sauberen Rechtevergabe</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<p style="color: #cbd5e1; line-height: 1.6; margin: 0;">
Standard nach Microsoft und IHK: Niemals Benutzer direkt berechtigen!<br>
- <strong>A (Account):</strong> Benutzerkonto (z. B. <code>max.mustermann</code>).<br>
- <strong>G (Global Group):</strong> Fasst Benutzer nach betrieblicher Funktion zusammen (z. B. <code>GG_Buchhaltung</code>).<br>
- <strong>DL (Domain Local Group):</strong> Repräsentiert die Berechtigung auf eine konkrete Ressource (z. B. <code>DL_Share_Rechnungen_Modify</code>).<br>
- <strong>P (Permissions):</strong> Zugriffsrechte (NTFS-ACLs: Lesen, Ändern, Vollzugriff), die ausschließlich der Domain Local Group zugewiesen werden.
</p>
</div>
<h3 style="color: #cbd5e1; margin-top: 20px;">3. GPO-Verarbeitung (LSDOU) & Kerberos-Handshake</h3>
<p style="color: #cbd5e1; line-height: 1.6;">
- <strong>LSDOU-Reihenfolge:</strong> 1. Local Policy $ ightarrow$ 2. Site Policy $ ightarrow$ 3. Domain Policy $ ightarrow$ 4. OU Policy (untergeordnete OUs überschreiben übergeordnete). Ausnahmen: <em>Enforced (Erzwungen)</em> bricht Blockierungen.<br>
- <strong>Kerberos Authentifizierung (Port 88):</strong> 1. Client sendet <em>AS-REQ</em> an KDC und erhält <em>TGT (Ticket Granting Ticket)</em>; 2. Client sendet <em>TGS-REQ</em> mit TGT und erhält <em>Service Ticket</em>; 3. Client weist sich mit Service Ticket beim Zielserver aus (<em>AP-REQ</em>). Kein Passwort wird je über das Netz übertragen!
</p>
</div>
<!-- Interaktives Tool falls vorhanden -->
<!-- Fragenpool -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin: 32px 0;">
<h2 style="color: #38bdf8; margin-top: 0; font-size: 1.4rem; display: flex; align-items: center; gap: 10px;">
<span>📝</span> Authentische IHK-Prüfungsaufgaben nach ZPA 2. Auflage
</h2>
<p style="color: #94a3b8; font-size: 0.9rem; margin-bottom: 20px;">
Bearbeiten Sie die Aufgaben und vergleichen Sie Ihre Antwort mit dem offiziellen Erwartungshorizont:
</p>
<div style="display: flex; flex-direction: column; gap: 20px;">
<div class="ihk-exam-task" data-title="Active Directory FSMO-Rollen" data-points="10" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Active Directory FSMO-Rollen</strong>
<span class="ihk-badge ihk-badge-success">10 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
In einer Microsoft Active Directory Domain Services (AD DS) Gesamtstruktur existieren fünf FSMO-Rollen (Flexible Single Master Operations).
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Nennen Sie die fünf FSMO-Rollen, unterscheiden Sie zwischen gesamtstrukturweiten und domänenweiten Rollen und erläutern Sie die Aufgaben des PDC-Emulators.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Group Policy Objects (GPO) Vererbung LSDOU" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Group Policy Objects (GPO) Vererbung LSDOU</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
In einer Active-Directory-Umgebung werden Gruppenrichtlinien (GPOs) angewendet.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erläutern Sie die Auswertungsreihenfolge von Richtlinien nach der LSDOU-Regel und beschreiben Sie die Auswirkung der Einstellungen "Vererbung deaktivieren" (Block Inheritance) und "Erzwungen" (Enforced).
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Kerberos-Authentifizierung 3-Wege-Handshake" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Kerberos-Authentifizierung 3-Wege-Handshake</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Active Directory verwendet standardmäßig das Kerberos-Protokoll zur sicheren Benutzerauthentifizierung.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Beschreiben Sie die drei Schritte des Kerberos-Prozesses unter Nennung der Rollen KDC, AS, TGS, TGT und Service-Ticket.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Public Key Infrastructure (PKI) X.509" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Public Key Infrastructure (PKI) X.509</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Ein Unternehmen baut eine zweistufige Public-Key-Infrastruktur (PKI) mit Offline-Root-CA und Online-Sub-CA auf.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Begründen Sie, warum die Root-CA offline betrieben wird, und erklären Sie den Unterschied zwischen einer Sperrliste (CRL) und OCSP.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="E-Mail-Sicherheit SPF, DKIM und DMARC" data-points="9" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">E-Mail-Sicherheit SPF, DKIM und DMARC</strong>
<span class="ihk-badge ihk-badge-success">9 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Zur Verhinderung von Spam, Spoofing und Phishing im Namen der eigenen Firmendomäne werden DNS-Einträge konfiguriert.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erläutern Sie die Aufgaben und Funktionsweisen von SPF, DKIM und DMARC.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
</div>
</div>
<!-- Footer Navigation mit echten Buttons -->
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
<a href="../02_vrt_netzwerkplaene_und_infrastruktur/index.html" class="ihk-btn ihk-btn-secondary font-semibold">← Vorheriges Modul</a>
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary">🏠 Kursübersicht</a>
<a href="../04_systemautomation_powershell_bash_python/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
</div>
</div>
<script src="../../../assets/courses_manifest.js"></script>
<script src="../../../assets/course_sidebar.js"></script>
</body>
</html>

View file

@ -1,285 +1,17 @@
<!DOCTYPE html> <!DOCTYPE html>
<html lang="de"> <html lang="de">
<head> <head>
<link rel="icon" type="image/svg+xml" href="../../../assets/favicon.svg">
<meta charset="UTF-8"> <meta charset="UTF-8">
<title>AP2 Modul 03: Speicher & Hochverfügbarkeit (LF 11)</title> <meta http-equiv="refresh" content="0; url=../05_lf11_speicher_und_hochverfuegbarkeit/index.html">
<title>Weiterleitung zum aktualisierten Modul...</title>
<link rel="stylesheet" href="../../../assets/style.css"> <link rel="stylesheet" href="../../../assets/style.css">
<link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css"> <link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css">
</head> </head>
<body class="bg-slate-900 text-slate-100 font-sans p-6"> <body class="bg-slate-900 text-slate-100 p-8 flex items-center justify-center min-h-screen">
<div class="container mx-auto max-w-4xl"> <div class="text-center max-w-lg bg-slate-800 p-8 rounded-xl border border-slate-700">
<div class="flex justify-between items-center mb-6"> <h2 class="text-xl font-bold text-sky-400 mb-4">Modul aktualisiert</h2>
<a href="../../../dashboard.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zum Dashboard</a> <p class="text-slate-300 mb-6">Dieses Modul wurde im Rahmen der ZPA Nord-West 2. Auflage aktualisiert. Sie werden automatisch weitergeleitet...</p>
<span class="ihk-badge ihk-badge-success">Lernfeld 11 (FISI)</span> <a href="../05_lf11_speicher_und_hochverfuegbarkeit/index.html" class="ihk-btn ihk-btn-primary font-semibold">Direkt zum neuen Modul →</a>
</div>
<h1 class="text-3xl font-extrabold text-sky-400 mb-2">AP2 Modul 03: Speicher & Hochverfügbarkeit (LF 11)</h1>
<p class="text-slate-300 text-lg leading-relaxed mb-6">RAID 0/1/5/6/10 Nutzkapazität, URE-Risiko, SAN (Fibre Channel vs. iSCSI), ZFS Copy-on-Write, HA-Cluster, Split-Brain & STONITH.</p>
<!-- Fachtheorie & Wissen -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin-bottom: 24px;">
<h2 style="color: #f87171; margin-top: 0;">💾 LF 11: Speicher- und Hochverfügbarkeitssysteme implementieren (FISI)</h2>
<p style="color: #cbd5e1; line-height: 1.6;">
Hardware- & Software-RAID, Storage Area Networks (Fibre Channel vs. iSCSI), Enterprise-Dateisysteme (ZFS), Hochverfügbarkeits-Cluster, Quorum, STONITH und Disaster Recovery.
</p>
<h3 style="color: #cbd5e1; margin-top: 20px;">1. RAID-Level im direkten IHK-Vergleich</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<table class="ihk-table">
<thead><tr><th>RAID</th><th>Min. Platten</th><th>Nutzbare Kapazität</th><th>Ausfallsicherheit</th><th>Besonderheit / IHK-Falle</th></tr></thead>
<tbody>
<tr><td>RAID 0</td><td>2</td><td>N * Plattenkapazität</td><td>0 Platten (Keine Redundanz!)</td><td>Reines Striping, hoher Speed, Totalverlust bei 1 Plattendefekt</td></tr>
<tr><td>RAID 1</td><td>2</td><td>50 % (1 Platte)</td><td>1 Platte</td><td>Reine Spiegelung (Mirroring), einfache Wiederherstellung</td></tr>
<tr><td>RAID 5</td><td>3</td><td>(N - 1) * Kapazität</td><td>1 Platte</td><td>Block-Striping mit verteilter Parität. URE-Gefahr beim Rebuild!</td></tr>
<tr><td>RAID 6</td><td>4</td><td>(N - 2) * Kapazität</td><td>2 Platten zeitgleich</td><td>Doppelte verteilte Parität. Standard für Platten ab 4 TB!</td></tr>
<tr><td>RAID 10</td><td>4 (gerade)</td><td>(N / 2) * Kapazität</td><td>1 bis N/2 Platten</td><td>Stripe of Mirrors. Hohe I/O-Leistung für Datenbanken.</td></tr>
</tbody>
</table>
</div>
<h3 style="color: #cbd5e1; margin-top: 20px;">2. Hochverfügbarkeits-Cluster: Split-Brain & STONITH</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<p style="color: #cbd5e1; line-height: 1.6; margin: 0;">
Bricht das Heartbeat-Netzwerk ab, droht das <strong>Split-Brain-Syndrom</strong>: Beide Knoten beanspruchen die Ressourcen für sich und beschreiben gleichzeitig dieselben Datenträger (Datenkorruption!).<br>
- <strong>Quorum:</strong> Dienste dürfen nur weitergeführt werden, wenn der Clusterteil über mehr als 50 % aller Stimmen verfügt (z. B. 3 Knoten oder Witness-Server).<br>
- <strong>STONITH (Shoot The Other Node In The Head):</strong> Fencing-Methode, bei der ein unklarer Knoten hardwareseitig über IPMI/schaltbare Steckdose sofort stromlos geschaltet wird.
</p>
</div>
</div>
<!-- Interaktives Tool falls vorhanden -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin: 24px 0;">
<h3 style="color: #38bdf8; margin-top: 0; display: flex; align-items: center; gap: 10px;">
<span>💽</span> Interaktiver RAID-Simulator & URE-Risikorechner
</h3>
<p style="color: #94a3b8; font-size: 0.9rem;">
Simulieren Sie Festplattenausfälle in RAID 0, 1, 5, 6 und 10 mit Hot-Spare-Umschaltung und URE-Risikoanalyse:
</p>
<div id="raid-sim-container"></div>
<script src="../../../assets/ihk_tools/raid_simulator.js"></script>
</div>
<!-- Fragenpool -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin: 32px 0;">
<h2 style="color: #38bdf8; margin-top: 0; font-size: 1.4rem; display: flex; align-items: center; gap: 10px;">
<span>📝</span> Authentische IHK-Prüfungsaufgaben zu Lernfeld 11 (FISI)
</h2>
<p style="color: #94a3b8; font-size: 0.9rem; margin-bottom: 20px;">
Aus unserem Fragenpool von 150 IHK-Prüfungsfragen nach offiziellem ZPA/AkA-Wortlaut. Bearbeiten Sie die Aufgaben und vergleichen Sie Ihre Antwort mit dem Erwartungshorizont:
</p>
<div style="display: flex; flex-direction: column; gap: 20px;">
<div class="ihk-exam-task" data-title="RAID 5 vs RAID 6 Nutzkapazität und URE" data-points="10" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">RAID 5 vs RAID 6 Nutzkapazität und URE</strong>
<span class="ihk-badge ihk-badge-success">10 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Ein Storage-Server wird mit 8 Enterprise-Festplatten zu je 10 TB Bruttokapazität bestückt.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Berechnen Sie die nutzbare Speicherkapazität für RAID 5 und RAID 6 und begründen Sie die Empfehlung von RAID 6 bei großen Festplatten anhand des URE-Risikos (Unrecoverable Read Error).
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
RAID 5 Nutzkapazität: (N - 1) * Kapazität = (8 - 1) * 10 TB = 70 TB (1 Paritätsplatte). (2 Pkt.)
RAID 6 Nutzkapazität: (N - 2) * Kapazität = (8 - 2) * 10 TB = 60 TB (2 Paritätsplatten). (2 Pkt.)
URE-Risiko: Enterprise-SATA-Platten weisen eine URE-Fehlerrate von ca. 1 Bit pro 10^14 bis 10^15 gelesenen Bits auf. Beim tagelangen Rebuild eines RAID 5 nach Plattenausfall müssen zig Terabyte Daten lückenlos fehlerfrei gelesen werden. Tritt dabei ein einzelner Lesefehler auf, bricht der Rebuild ab -> Totalverlust des gesamten Arrays. RAID 6 toleriert durch zweifache Parität den gleichzeitigen Ausfall von zwei Platten und übersteht Lesefehler beim Rebuild unbeschadet. (6 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="RAID 10 Aufbau und Fehlertoleranz" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">RAID 10 Aufbau und Fehlertoleranz</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Ein Datenbankadministrator benötigt maximale I/O-Performance und hohe Ausfallsicherheit und wählt ein RAID 10 aus 8 Festplatten zu je 4 TB.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Beschreiben Sie den Aufbau eines RAID 10 (Stripe of Mirrors) und berechnen Sie die Nutzkapazität sowie die maximale und minimale Anzahl an Festplattenausfällen, die das Array überlebt.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Aufbau: Kombination aus RAID 1 (Spiegelung) und RAID 0 (Striping). Zunächst werden jeweils 2 Festplatten zu einem RAID-1-Spiegelpaar zusammengefasst (4 Paare). Über diese 4 Spiegelpaare wird anschließend ein RAID 0 gestriped. (3 Pkt.)
Nutzbare Kapazität: (N / 2) * Kapazität = (8 / 2) * 4 TB = 16 TB. (2 Pkt.)
Fehlertoleranz:
Minimaler Ausfall: 2 Platten (wenn zufällig beide Platten DENSELBEN RAID-1-Spiegelpaars ausfallen -> Datenverlust). (1,5 Pkt.)
Maximaler Ausfall: Bis zu 4 Platten (sofern aus jedem der vier Spiegelpaare genau eine Platte ausfällt). (1,5 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Speicherarchitekturen DAS vs NAS vs SAN" data-points="9" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Speicherarchitekturen DAS vs NAS vs SAN</strong>
<span class="ihk-badge ihk-badge-success">9 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Für die Unternehmens-IT werden verschiedene Storage-Lösungen verglichen.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Vergleichen Sie DAS, NAS und SAN bezüglich Zugriffsebene (Block vs File), Übertragungsmedien/Protokolle und typischem Einsatzzweck.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
DAS (Direct Attached Storage): Direkt am Server angeschlossener lokaler Speicher (SATA/SAS/NVMe). Block-Level-Zugriff. Nicht teilbar, nur für Einzelserver. (3 Pkt.)
NAS (Network Attached Storage): Eigenständiges Dateisystem im Standard-LAN. File-Level-Zugriff (Datei-Ebene) über SMB/CIFS oder NFS. Ideal für zentrale Dateiablagen und Fileserver. (3 Pkt.)
SAN (Storage Area Network): Dediziertes Hochgeschwindigkeits-Speichernetzwerk. Block-Level-Zugriff (RAW-LUNs erscheinen dem Host wie lokale Datenträger). Übertragung via Fibre Channel (FC) oder iSCSI. Ideal für Virtualisierungs-Cluster und Datenbanken. (3 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="SAN Protokolle Fibre Channel vs iSCSI" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">SAN Protokolle Fibre Channel vs iSCSI</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Zur Anbindung eines VMware-vSphere-Clusters steht die Wahl zwischen Fibre Channel (FC) und iSCSI an.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Vergleichen Sie FC und iSCSI hinsichtlich Hardware-Komponenten, Übertragungsmedium, MTU/Jumbo Frames und Kosten.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Fibre Channel (FC): Benötigt dedizierte FC-Host-Bus-Adapter (HBAs), optische Transceiver und spezialisierte Fibre-Channel-Switche. Verlustfreies Protokoll mit extrem geringen Latenzen und festem Framing; sehr hohe Anschaffungskosten. (4 Pkt.)
iSCSI: Kapselt SCSI-Befehle in Standard-TCP/IP-Pakete über normales Ethernet (10/25 GbE). Kostengünstiger, da Standard-Netzwerkkomponenten genutzt werden können. Erfordert zur Minimierung des Overheads zwingend Jumbo Frames (MTU 9000) und dedizierte/isolierte VLANs. (4 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="High-Availability Cluster Active-Passive vs Active-Active" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">High-Availability Cluster Active-Passive vs Active-Active</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Ein Web- und Datenbanksystem soll hochverfügbar ausgelegt werden.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Unterscheiden Sie ein Active/Passive-Cluster von einem Active/Active-Cluster und erklären Sie das Phänomen des Split-Brain-Syndroms.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Active/Passive (Failover): Node 1 bedient alle Anfragen aktiv. Node 2 befindet sich im Standby und übernimmt die Dienste erst, wenn Node 1 ausfällt. Keine Lastverteilung, aber einfaches Datenmodell. (2 Pkt.)
Active/Active (Load Balancing): Beide Nodes verarbeiten gleichzeitig produktive Anfragen parallel und synchronisieren Daten laufend. Optimale Ressourcenauslastung, erfordert komplexe Cluster-Dateisysteme / verteilte Locks. (2 Pkt.)
Split-Brain-Syndrom: Wenn das interne Kommunikationsnetzwerk (Heartbeat-Netzwerk) zwischen den Clusterknoten abreißt, können die Knoten einander nicht mehr sehen. Jeder Knoten nimmt fälschlicherweise an, der andere sei tot, und übernimmt alle Ressourcen exklusiv. Beide schreiben gleichzeitig auf denselben Shared Storage -> Datenkorruption und Datenverlust. (4 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Quorum und Fencing (STONITH)" data-points="6" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Quorum und Fencing (STONITH)</strong>
<span class="ihk-badge ihk-badge-success">6 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Um Split-Brain in einem 2-Node-Cluster sicher zu verhindern, wird ein Quorum-Mechanismus und STONITH eingerichtet.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erläutern Sie die Funktionsweise von Quorum (Mehrheitsentscheid) und beschreiben Sie das Prinzip von STONITH (Shoot The Other Node In The Head).
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Quorum: Regel, wonach ein Cluster-Teilbereich nur dann Entscheidungen treffen und Dienste weiterführen darf, wenn er über mehr als 50 % aller Cluster-Stimmen verfügt (z. B. 3 Knoten oder 2 Knoten + Witness/Quorum-Server). Bei Netztrennung verliert der isolierte Knoten das Quorum und schaltet sich passiv. (3 Pkt.)
STONITH: Fencing-Methode. Ein gesunder Knoten schaltet einen nicht mehr reagierenden oder unklaren Knoten über eine IPMI/iLO-Schnittstelle oder eine schaltbare Steckdosenleiste (PDU) hardwareseitig hart ab (Strom aus), um unkontrollierte Schreibzugriffe auf den Shared Storage sicher auszuschließen. (3 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="ZFS Dateisystem Copy-on-Write & Prüfsummen" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">ZFS Dateisystem Copy-on-Write & Prüfsummen</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Ein Enterprise-Speicherserver wird unter TrueNAS mit dem Dateisystem ZFS aufgesetzt.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erläutern Sie die Funktionsweise von Copy-on-Write (CoW) in ZFS und beschreiben Sie, wie ZFS "Silent Data Corruption" (Bit-Rot) mithilfe von Prüfsummen und Scrubbing erkennt und repariert.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Copy-on-Write (CoW): ZFS überschreibt geänderte Datenblöcke niemals an derselben Stelle. Stattdessen werden veränderte Daten in neue, freie Blöcke geschrieben. Erst nach erfolgreichem Schreiben wird der Metadatenzeiger im Merkle-Tree atomar auf den neuen Block umgebogen. Verhindert Dateisystem-Inkonsistenzen bei Stromausfall komplett (kein fsck nötig). (4 Pkt.)
Bit-Rot Schutz: ZFS speichert für jeden Datenblock eine kryptografische 256-Bit-Prüfsumme in dessen übergeordnetem Metadaten-Zeiger. Bei jedem Lesevorgang wird die Prüfsumme neu berechnet. Stimmt sie nicht überein, liest ZFS automatisch die korrekten Daten aus der RAID-Z-Parität oder dem Spiegel und repariert den defekten Block auf der Festplatte (Self-Healing). Ein regelmäßiger "Scrub" prüft alle Daten im Hintergrund präventiv. (4 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="LTO-Bandtechnologie und WORM-Speicher" data-points="6" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">LTO-Bandtechnologie und WORM-Speicher</strong>
<span class="ihk-badge ihk-badge-success">6 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Zur Erfüllung gesetzlicher Revisionsanforderungen (GoBD) müssen Buchhaltungsunterlagen unveränderbar auf LTO-Tape archiviert werden.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Definieren Sie das WORM-Prinzip (Write Once, Read Many) und nennen Sie zwei technische Vorteile von Magnetbändern gegenüber Festplatten zur Langzeitarchivierung.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
WORM-Prinzip: Daten können genau einmal auf das Bandlaufwerk geschrieben werden; jegliches nachträgliches Überschreiben, Verändern oder Löschen der Daten auf dem Band ist hardware- oder firmwareseitig dauerhaft gesperrt. (2 Pkt.)
Zwei Vorteile von LTO-Tapes:
1. Haltbarkeit und Zuverlässigkeit: Lagerfähigkeit von bis zu 30 Jahren unter Standardbedingungen ohne Stromzufuhr. (2 Pkt.)
2. Perfekter Air-Gap und Kosteneffizienz: Kassetten können aus der Library entnommen und im Safe gelagert werden (100% Ransomware-Schutz) bei unschlagbar geringen Terabyte-Preisen für kalte Daten. (2 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Synchrone vs Asynchrone Storage-Replikation" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Synchrone vs Asynchrone Storage-Replikation</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Zwei Brandabschnitte eines Rechenzentrums im Abstand von 15 Kilometern sollen gespiegelt werden.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Vergleichen Sie synchrone und asynchrone Speicherreplikation hinsichtlich Bestätigung an das Betriebssystem, Latenzabhängigkeit und RPO.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Synchrone Replikation: Ein Schreibbefehl wird der Anwendung erst dann als erfolgreich quittiert (Write Acknowledged), wenn die Daten sowohl auf dem lokalen als auch auf dem entfernten Storage-System fehlerfrei im Cache/Platte geschrieben wurden. RPO = 0 (garantiert kein Datenverlust). Erfordert extrem geringe Roundtrip-Latenzen (< 5 ms) und teure Dark-Fiber-LWL-Verbindungen; begrenzte Distanz (typisch max. 20-40 km). (4 Pkt.)
Asynchrone Replikation: Der Schreibbefehl wird der Anwendung sofort nach dem Schreiben auf das lokale System quittiert. Die Übertragung an den Remotestandort erfolgt zeitverzögert im Hintergrund. Keine Latenzbeeinträchtigung der Anwendung, unbegrenzte Distanzen möglich. RPO > 0 (Daten der letzten Minuten oder Sekunden können bei Totalausfall verloren gehen). (4 Pkt.)
</div>
</details>
</div>
</div></div>
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
<a href="../02_lf10_serverdienste_und_automation/index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Vorheriges Modul</a>
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
<a href="../04_lf12_virtualisierung_und_cloud/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
</div>
</div> </div>
<script src="../../../assets/courses_manifest.js"></script>
<script src="../../../assets/course_sidebar.js"></script>
</body> </body>
</html> </html>

View file

@ -1,261 +1,17 @@
<!DOCTYPE html> <!DOCTYPE html>
<html lang="de"> <html lang="de">
<head> <head>
<link rel="icon" type="image/svg+xml" href="../../../assets/favicon.svg">
<meta charset="UTF-8"> <meta charset="UTF-8">
<title>AP2 Modul 04: Virtualisierung, Cloud & Automation (LF 12)</title> <meta http-equiv="refresh" content="0; url=../08_lf12_virtualisierung_und_cloud/index.html">
<title>Weiterleitung zum aktualisierten Modul...</title>
<link rel="stylesheet" href="../../../assets/style.css"> <link rel="stylesheet" href="../../../assets/style.css">
<link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css"> <link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css">
</head> </head>
<body class="bg-slate-900 text-slate-100 font-sans p-6"> <body class="bg-slate-900 text-slate-100 p-8 flex items-center justify-center min-h-screen">
<div class="container mx-auto max-w-4xl"> <div class="text-center max-w-lg bg-slate-800 p-8 rounded-xl border border-slate-700">
<div class="flex justify-between items-center mb-6"> <h2 class="text-xl font-bold text-sky-400 mb-4">Modul aktualisiert</h2>
<a href="../../../dashboard.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zum Dashboard</a> <p class="text-slate-300 mb-6">Dieses Modul wurde im Rahmen der ZPA Nord-West 2. Auflage aktualisiert. Sie werden automatisch weitergeleitet...</p>
<span class="ihk-badge ihk-badge-success">Lernfeld 12 (FISI)</span> <a href="../08_lf12_virtualisierung_und_cloud/index.html" class="ihk-btn ihk-btn-primary font-semibold">Direkt zum neuen Modul →</a>
</div>
<h1 class="text-3xl font-extrabold text-sky-400 mb-2">AP2 Modul 04: Virtualisierung, Cloud & Automation (LF 12)</h1>
<p class="text-slate-300 text-lg leading-relaxed mb-6">Hypervisor Typ 1 vs. Typ 2, Docker-Container Namespaces & cgroups, Kubernetes Pods, Cloud IaaS/PaaS/SaaS, Terraform & Prometheus Monitoring.</p>
<!-- Fachtheorie & Wissen -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin-bottom: 24px;">
<h2 style="color: #f87171; margin-top: 0;">☁️ LF 12: Virtualisierung, Cloud und Automatisierung (FISI)</h2>
<p style="color: #cbd5e1; line-height: 1.6;">
Lernfeld 12 behandelt moderne Rechenzentrumsarchitekturen: Typ-1 vs. Typ-2 Hypervisoren, Containerisierung mit Docker, Kubernetes-Cluster, Cloud-Servicemodelle und Observability mit Prometheus/Grafana.
</p>
<h3 style="color: #cbd5e1; margin-top: 20px;">1. Hypervisoren & Container im Vergleich</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<ul style="color: #cbd5e1; line-height: 1.8; margin: 0; padding-left: 20px;">
<li><strong>Typ-1 Hypervisor (Bare-Metal):</strong> Läuft direkt auf der physischen Hardware (z. B. VMware ESXi, Proxmox VE, Hyper-V). Maximale Performance, Enterprise-Standard.</li>
<li><strong>Typ-2 Hypervisor (Hosted):</strong> Läuft als Software auf einem Wirtsbetriebssystem (z. B. VirtualBox). Höherer Ressourcen-Overhead.</li>
<li><strong>Docker-Container:</strong> Teilen sich den Kernel des Host-Betriebssystems über Linux-Kernel-Features (<strong>Namespaces</strong> für Prozesstrennung und <strong>cgroups</strong> für Ressourcenbegrenzung). Start in Millisekunden, minimale Imagegröße.</li>
</ul>
</div>
<h3 style="color: #cbd5e1; margin-top: 20px;">2. Cloud Servicemodelle nach NIST</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<ul style="color: #cbd5e1; line-height: 1.8; margin: 0; padding-left: 20px;">
<li><strong>IaaS (Infrastructure as a Service):</strong> Provider stellt Hardware/VMs und Netze bereit. Kunde verwaltet OS, Patches, Runtimes und Anwendungen.</li>
<li><strong>PaaS (Platform as a Service):</strong> Provider verwaltet OS und Laufzeitumgebung (z. B. Node.js, SQL). Kunde deployt nur Code.</li>
<li><strong>SaaS (Software as a Service):</strong> Vollständige schlüsselfertige Software über Browser (z. B. Microsoft 365).</li>
</ul>
</div>
<h3 style="color: #cbd5e1; margin-top: 20px;">3. Monitoring: Prometheus Pull-Prinzip</h3>
<p style="color: #cbd5e1; line-height: 1.6;">
Prometheus fragt Ziele selbstständig periodisch per HTTP über <code>/metrics</code> ab (Scraping). Metriktypen: <strong>Counter</strong> (nur ansteigend, z. B. HTTP-Requests) und <strong>Gauge</strong> (beliebig steigend/fallend, z. B. CPU-Last, RAM-Verbrauch).
</p>
</div>
<!-- Interaktives Tool falls vorhanden -->
<!-- Fragenpool -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin: 32px 0;">
<h2 style="color: #38bdf8; margin-top: 0; font-size: 1.4rem; display: flex; align-items: center; gap: 10px;">
<span>📝</span> Authentische IHK-Prüfungsaufgaben zu Lernfeld 12 (FISI)
</h2>
<p style="color: #94a3b8; font-size: 0.9rem; margin-bottom: 20px;">
Aus unserem Fragenpool von 150 IHK-Prüfungsfragen nach offiziellem ZPA/AkA-Wortlaut. Bearbeiten Sie die Aufgaben und vergleichen Sie Ihre Antwort mit dem Erwartungshorizont:
</p>
<div style="display: flex; flex-direction: column; gap: 20px;">
<div class="ihk-exam-task" data-title="Hypervisor-Architekturen Typ 1 vs Typ 2" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Hypervisor-Architekturen Typ 1 vs Typ 2</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Für ein IT-Konsolidierungsprojekt werden Virtualisierungslösungen evaluiert.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Vergleichen Sie Typ-1-Hypervisoren (Bare-Metal) und Typ-2-Hypervisoren (Hosted) hinsichtlich Architektur, Performance und Einsatzbereich und nennen Sie jeweils zwei Produktbeispiele.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Typ-1-Hypervisor (Bare-Metal): Wird direkt auf der physischen Server-Hardware ohne zwischengeschaltetes Wirtsbetriebssystem installiert. Bietet höchste I/O-Performance, minimale Latenzen und geringen Ressourcen-Overhead. Einsatz im professionellen Rechenzentrum/Enterprise-Bereich. Beispiele: VMware ESXi, Proxmox VE, Microsoft Hyper-V Server. (4 Pkt.)
Typ-2-Hypervisor (Hosted): Läuft als normale Anwendungssoftware auf einem bestehenden Wirts-Betriebssystem (Windows, macOS, Linux). Deutlich höherer Overhead durch doppelte Treiber- und Kernel-Schichten. Einsatz auf Entwickler-Workstations und Testumgebungen. Beispiele: Oracle VirtualBox, VMware Workstation. (4 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Docker-Container vs Virtuelle Maschinen" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Docker-Container vs Virtuelle Maschinen</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Ein Entwicklerteam möchte monolithische Anwendungen in containerbasierte Microservices zerlegen.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Vergleichen Sie Container und virtuelle Maschinen hinsichtlich Kernel-Architektur, Startzeiten, Speicherplatzbedarf und Isolation.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Architektur & Kernel: Virtuelle Maschinen bringen ein eigenes vollständiges Gast-Betriebssystem samt eigenem Kernel mit. Docker-Container teilen sich den Kernel des Host-Betriebssystems und werden über Linux-Kernel-Features (Namespaces für Trennung von Prozessen/Netzwerk und cgroups für Ressourcenbegrenzung) isoliert. (3 Pkt.)
Startzeit: VM benötigt 30 bis 60 Sekunden (kompletter OS-Bootvorgang); Container startet in wenigen Millisekunden (reiner Prozessstart). (2 Pkt.)
Speicherbedarf: VM benötigt mehrere Gigabyte Festplattenspeicher; Container-Images sind oft nur wenige Megabyte groß. (1,5 Pkt.)
Isolation: VMs bieten stärkere Hardware-Isolation über Hypervisor-Sicherheitsgrenzen; Container teilen sich denselben Kernel (bei Kernel-Exploits höheres Ausbruchsrisiko). (1,5 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Cloud Service Modelle IaaS vs PaaS vs SaaS" data-points="9" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Cloud Service Modelle IaaS vs PaaS vs SaaS</strong>
<span class="ihk-badge ihk-badge-success">9 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Die Unternehmensführung plant die Migration von Diensten in die Cloud.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Definieren Sie die Cloud-Servicemodelle IaaS, PaaS und SaaS nach NIST und erklären Sie das Shared Responsibility Model (Gemeinsame Verantwortlichkeit).
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
IaaS (Infrastructure as a Service): Der Provider stellt virtualisierte Hardware (VMs, Speicher, Netzwerk) bereit. Der Kunde ist verantwortlich für Betriebssystem, Patches, Middleware, Runtimes und Anwendungen. (2 Pkt.)
PaaS (Platform as a Service): Der Provider verwaltet Hardware, Betriebssystem und Laufzeitumgebung (z. B. Python, Node.js, SQL-Engine). Der Kunde kümmert sich nur noch um seinen Anwendungscode und die Daten. (2 Pkt.)
SaaS (Software as a Service): Der Provider betreibt die vollständige schlüsselfertige Software samt Infrastruktur. Der Kunde nutzt die Anwendung nur über Webbrowser/API (z. B. Microsoft 365). (2 Pkt.)
Shared Responsibility Model: Definiert die genaue Grenze der Sicherheitsverantwortung: Der Cloud-Anbieter haftet für die Sicherheit DER Cloud (physische RZs, Hypervisor, Basisinfrastruktur), der Kunde ist verantwortlich für die Sicherheit IN der Cloud (Identitäten, Zugriffskontrollen, Datenverschlüsselung, Patching ab OS-Ebene bei IaaS). (3 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="SNMPv2c vs SNMPv3 Netzwerk-Monitoring" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">SNMPv2c vs SNMPv3 Netzwerk-Monitoring</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Zur Überwachung von 50 Core-Switchen wird ein Zabbix-Monitoring-Server eingerichtet.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Begründen Sie, warum SNMPv2c in modernen Netzen als Sicherheitsrisiko gilt, und erläutern Sie die drei Sicherheitsstufen von SNMPv3 (noAuthNoPriv, authNoPriv, authPriv).
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Sicherheitsrisiko SNMPv2c: Die Authentifizierung erfolgt ausschließlich über einen unverschlüsselten Klartext-String (Community String, z. B. "public"). Jeder Netzwerksniffer kann Passwörter und Konfigurationen mitlesen oder manipulieren. (3 Pkt.)
SNMPv3 Sicherheitsstufen:
1. noAuthNoPriv: Keine Authentifizierung, keine Verschlüsselung (nur User-ID). (1 Pkt.)
2. authNoPriv: Authentifizierung über kryptografische Hashverfahren (HMAC-MD5/SHA), aber unverschlüsselte Nutzdatenübertragung. (2 Pkt.)
3. authPriv: Höchste Sicherheitsstufe: Hash-basierte Authentifizierung UND symmetrische Verschlüsselung der gesamten Nutzdaten via AES/DES. (2 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Hochverfügbarkeits-Berechnung Verfügbarkeit in Prozent" data-points="6" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Hochverfügbarkeits-Berechnung Verfügbarkeit in Prozent</strong>
<span class="ihk-badge ihk-badge-success">6 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
In einem SLA garantiert ein IT-Dienstleister für einen Cloud-Dienst eine Verfügbarkeit von 99,9 % ("Drei Neunen") bezogen auf ein Jahr (365 Tage à 24 Stunden).
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Berechnen Sie die maximal zulässige Ausfallzeit in Stunden und Minuten pro Jahr.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Gesamtdauer eines Jahres in Stunden: 365 Tage * 24 h = 8760 Stunden. (2 Pkt.)
Maximal zulässige Nichtverfügbarkeit in Prozent: 100 % - 99,9 % = 0,1 % = 0,001. (2 Pkt.)
Ausfallzeit in Stunden: 8760 h * 0,001 = 8,76 Stunden.
Umrechnung der Nachkommastelle: 0,76 * 60 Minuten = 45,6 Minuten -> 8 Stunden und 45 Minuten (bzw. 46 Min.). (2 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Kubernetes Architektur Pods und Cluster" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Kubernetes Architektur Pods und Cluster</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Ein Unternehmen betreibt Microservices in einem Kubernetes-Cluster.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erläutern Sie die Aufgaben der Control Plane Komponenten (kube-apiserver, etcd, kube-scheduler) und definieren Sie das Konzept eines Pods.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Control Plane Komponenten:
1. kube-apiserver: Zentrale REST-Schnittstelle des Clusters, über die alle internen und externen Steuerungsbefehle laufen. (2 Pkt.)
2. etcd: Konsistenter, hochverfügbarer Key-Value-Speicher für alle Zustands- und Konfigurationsdaten des Clusters. (2 Pkt.)
3. kube-scheduler: Weist neu erstellten Pods anhand von Ressourcenanforderungen und Richtlinien passende Worker-Nodes zu. (2 Pkt.)
Pod: Die kleinste bereitstellbare Ausführungseinheit in Kubernetes. Ein Pod kapselt einen oder mehrere eng verknüpfte Container, die sich gemeinsamen Speicher (Volumes), Netzwerk-IP und Port-Adressraum teilen. (2 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Infrastructure as Code (IaC) Terraform vs Skripte" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Infrastructure as Code (IaC) Terraform vs Skripte</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Eine Cloud-Infrastruktur soll reproduzierbar und versionsverwaltet über Terraform bereitgestellt werden.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Unterscheiden Sie den deklarativen Ansatz von Terraform vom imperativen Ansatz von Shell-Skripten und erläutern Sie die Funktion der Terraform State-Datei (terraform.tfstate).
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Deklarativ (Terraform): Der Administrator beschreibt im Code nur den gewünschten SOLL-Zustand ("Ich möchte 3 VMs und 1 Load Balancer"). Die Engine ermittelt selbstständig die notwendigen Schritte zur Erreichung des Zustands. (2 Pkt.)
Imperativ (Bash/PowerShell-Skripte): Der Administrator muss jeden einzelnen Befehlsschritt (WIE) sequentiell programmieren und Fehlerzustände manuell abfangen. (2 Pkt.)
State-Datei (terraform.tfstate): Speichert das genaue Abbild der aktuell tatsächlich in der Cloud existierenden Ressourcen und deren Metadaten (IDs, Attribute). Terraform vergleicht bei Ausführung (terraform plan) den Soll-Code mit der State-Datei und der Realität, um minimale, gezielte Deltas zu berechnen. (4 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Prometheus & Grafana Monitoring-Architektur" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Prometheus & Grafana Monitoring-Architektur</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
In einer Kubernetes-Umgebung wird ein Prometheus-Server zur Metrikerfassung aufgebaut.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erklären Sie das Pull-Prinzip von Prometheus gegenüber dem Push-Prinzip, erläutern Sie die Aufgabe von Exportern (z. B. Node Exporter) und definieren Sie die Metriktypen Counter und Gauge.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Pull-Prinzip: Prometheus fragt Ziele (Targets) periodisch selbstständig über HTTP (/metrics-Endpunkt) ab ("Scraping"). Der Server hat die Kontrolle über Abfrageintervall und Systemlast. Beim Push-Prinzip senden Clients unkoordiniert Daten an den Server. (3 Pkt.)
Exporter: Kleine Agenten/Dienste, die spezifische System- oder Anwendungsdaten (z. B. CPU-Last, RAM, Disk-I/O beim Node Exporter) auslesen und in das Prometheus-Textformat konvertieren. (2 Pkt.)
Metriktypen:
- Counter: Monoton ansteigender Zähler, der nur erhöht oder bei Systemneustart auf 0 zurückgesetzt wird (z. B. Anzahl empfangener HTTP-Requests, gesendete Bytes). (1,5 Pkt.)
- Gauge: Ein Wert, der beliebig steigen oder fallen kann (z. B. aktuelle CPU-Auslastung in Prozent, freier Speicherplatz, Temperatur). (1,5 Pkt.)
</div>
</details>
</div>
</div></div>
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
<a href="../03_lf11_speicher_und_hochverfuegbarkeit/index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Vorheriges Modul</a>
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
<a href="../05_wiso_arbeitsrecht_und_wirtschaft/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
</div>
</div> </div>
<script src="../../../assets/courses_manifest.js"></script>
<script src="../../../assets/course_sidebar.js"></script>
</body> </body>
</html> </html>

View file

@ -0,0 +1,9 @@
# AP2 Modul 04: Skriptprogrammierung & Systemautomation (LF 10)
**Prüfungsbereich:** ZPA Katalog S. 22 & 24
PowerShell ActiveDirectory-Modul & CSV-Import, Bash Backup-Skripte, Systemd Units & Ansible Playbooks.
## Relevante Prüfungsthemen nach dem offiziellen ZPA Nord-West Prüfungskatalog (2. Auflage)
- Fundierte Fachtheorie und Praxis-Transfer für Fachinformatiker Systemintegration (FISI).
- Authentische Prüfungsfragen mit offiziellem IHK-Erwartungshorizont und Punkteverteilung.

View file

@ -0,0 +1,173 @@
<!DOCTYPE html>
<html lang="de">
<head>
<link rel="icon" type="image/svg+xml" href="../../../assets/favicon.svg">
<meta charset="UTF-8">
<title>AP2 Modul 04: Skriptprogrammierung & Systemautomation (LF 10)</title>
<link rel="stylesheet" href="../../../assets/style.css">
<link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css">
</head>
<body class="bg-slate-900 text-slate-100 font-sans p-6">
<div class="container mx-auto max-w-4xl">
<div class="flex justify-between items-center mb-6">
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary text-sm">← Zurück zum Dashboard</a>
<span class="ihk-badge ihk-badge-success">ZPA Katalog S. 22 & 24</span>
</div>
<h1 class="text-3xl font-extrabold text-sky-400 mb-2">AP2 Modul 04: Skriptprogrammierung & Systemautomation (LF 10)</h1>
<p class="text-slate-300 text-lg leading-relaxed mb-6">PowerShell ActiveDirectory-Modul & CSV-Import, Bash Backup-Skripte, Systemd Units & Ansible Playbooks.</p>
<!-- Fachtheorie & Wissen -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin-bottom: 24px;">
<h2 style="color: #38bdf8; margin-top: 0;">⚙️ Skriptprogrammierung & Systemautomation (LF 10)</h2>
<p style="color: #cbd5e1; line-height: 1.6;">
Gemäß § 21 Abs. 1 Nr. 4 der Ausbildungsordnung und ZPA-Katalog S. 22/24 müssen Systemintegratoren in der Lage sein, <strong>Programme zur automatisierten Systemverwaltung</strong> in PowerShell, Bash und Python zu erstellen.
</p>
<h3 style="color: #cbd5e1; margin-top: 20px;">1. Microsoft PowerShell: Objektorientierte Pipeline & AD-Automation</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<p style="color: #cbd5e1; line-height: 1.6; margin: 0;">
Im Gegensatz zu traditionellen Text-Pipes übergibt PowerShell echte <strong>.NET-Objekte</strong> mit typisierten Eigenschaften:<br>
</p>
<pre style="background: #1e293b; padding: 12px; border-radius: 6px; color: #38bdf8; overflow-x: auto; margin-top: 8px;">
# Automatisiertes Onboarding aus CSV mit Fehlerbehandlung
$ErrorActionPreference = 'Stop'
try {
$users = Import-Csv -Path "C:\Temp\azubis.csv" -Delimiter ";"
foreach ($u in $users) {
$secPass = ConvertTo-SecureString "Start2025!" -AsPlainText -Force
New-ADUser -Name "$($u.Vorname) $($u.Nachname)" `
-SamAccountName $u.Login `
-UserPrincipalName "$($u.Login)@unternehmen.local" `
-Path "OU=Azubis,OU=Benutzer,DC=unternehmen,DC=local" `
-AccountPassword $secPass `
-Enabled $true
Write-Host "✓ Angelegt: $($u.Login)" -ForegroundColor Green
}
} catch [Exception] {
Write-Error "Kritischer Fehler bei Benutzeranlage: $($_.Exception.Message)"
}
</pre>
</div>
<h3 style="color: #cbd5e1; margin-top: 20px;">2. Linux Bash-Automatisierung & Systemd Service Units</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<p style="color: #cbd5e1; line-height: 1.6; margin: 0;">
- <strong>Robuste Shell-Skripte:</strong> <code>set -euo pipefail</code> (bricht sofort bei unbehandelten Fehlern oder ungesetzten Variablen ab).<br>
- <strong>Systemd Unit-Datei (z. B. <code>/etc/systemd/system/backup.service</code>):</strong>
</p>
<pre style="background: #1e293b; padding: 12px; border-radius: 6px; color: #4ade80; overflow-x: auto; margin-top: 8px;">
[Unit]
Description=Tägliches Backup-Skript für Unternehmensdaten
After=network.target
[Service]
Type=oneshot
ExecStart=/usr/local/bin/backup_rsync.sh
User=root
[Install]
WantedBy=multi-user.target
</pre>
</div>
<h3 style="color: #cbd5e1; margin-top: 20px;">3. Infrastruktur-Automatisierung mit Ansible & IaC</h3>
<p style="color: #cbd5e1; line-height: 1.6;">
- <strong>Ansible:</strong> Agentless über SSH. Deklarative YAML-Playbooks definieren den <em>Soll-Zustand (Idempotenz)</em>.<br>
- <strong>Infrastructure as Code (IaC):</strong> Reproduzierbare Bereitstellung ganzer Serverlandschaften (z. B. mit Terraform oder Cloud-Init) vermeidet manuelle Konfigurationsdrifts.
</p>
</div>
<!-- Interaktives Tool falls vorhanden -->
<!-- Fragenpool -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin: 32px 0;">
<h2 style="color: #38bdf8; margin-top: 0; font-size: 1.4rem; display: flex; align-items: center; gap: 10px;">
<span>📝</span> Authentische IHK-Prüfungsaufgaben nach ZPA 2. Auflage
</h2>
<p style="color: #94a3b8; font-size: 0.9rem; margin-bottom: 20px;">
Bearbeiten Sie die Aufgaben und vergleichen Sie Ihre Antwort mit dem offiziellen Erwartungshorizont:
</p>
<div style="display: flex; flex-direction: column; gap: 20px;">
<div class="ihk-exam-task" data-title="Infrastruktur-Automatisierung mit Ansible" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Infrastruktur-Automatisierung mit Ansible</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Zur Konfiguration von 80 Linux-Servern wird ein Infrastructure-as-Code-Werkzeug eingeführt.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erklären Sie die Begriffe Agentless und Idempotenz im Kontext von Ansible und beschreiben Sie den Aufbau eines Playbooks.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="DHCP Snooping und Dynamic ARP Inspection (DAI)" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">DHCP Snooping und Dynamic ARP Inspection (DAI)</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Zur Härtung der Switch-Ports gegen Man-in-the-Middle-Angriffe werden Sicherheitsfeatures aktiviert.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Beschreiben Sie die Funktionsweise von DHCP Snooping (Trusted vs Untrusted Ports) und erklären Sie, wie Dynamic ARP Inspection (DAI) basierend auf der Snooping-Binding-Database Angriffe abwehrt.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Linux Systemd Service Unit Konfiguration" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Linux Systemd Service Unit Konfiguration</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Ein Python-Daemon für ein Monitoring-Tool soll unter Linux automatisch beim Booten gestartet und bei Absturz neu gestartet werden.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Beschreiben Sie die drei Hauptabschnitte einer Systemd-Service-Unit ([Unit], [Service], [Install]) und nennen Sie die Direktiven für Ausführungsbefehl, automatischen Neustart und Start-Ziel.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
</div>
</div>
<!-- Footer Navigation mit echten Buttons -->
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
<a href="../03_lf10_serverdienste_und_identitaeten/index.html" class="ihk-btn ihk-btn-secondary font-semibold">← Vorheriges Modul</a>
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary">🏠 Kursübersicht</a>
<a href="../05_lf11_speicher_und_hochverfuegbarkeit/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
</div>
</div>
<script src="../../../assets/courses_manifest.js"></script>
<script src="../../../assets/course_sidebar.js"></script>
</body>
</html>

View file

@ -0,0 +1,9 @@
# AP2 Modul 05: Enterprise Storage, RAID & SAN-Architekturen (LF 11)
**Prüfungsbereich:** Lernfeld 11 (FISI)
RAID 0, 1, 5, 6, 10 (exklusiv AP2!), Nutzkapazitäten, URE-Gefahr, DAS/NAS/SAN, iSCSI & ZFS.
## Relevante Prüfungsthemen nach dem offiziellen ZPA Nord-West Prüfungskatalog (2. Auflage)
- Fundierte Fachtheorie und Praxis-Transfer für Fachinformatiker Systemintegration (FISI).
- Authentische Prüfungsfragen mit offiziellem IHK-Erwartungshorizont und Punkteverteilung.

View file

@ -0,0 +1,222 @@
<!DOCTYPE html>
<html lang="de">
<head>
<link rel="icon" type="image/svg+xml" href="../../../assets/favicon.svg">
<meta charset="UTF-8">
<title>AP2 Modul 05: Enterprise Storage, RAID & SAN-Architekturen (LF 11)</title>
<link rel="stylesheet" href="../../../assets/style.css">
<link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css">
</head>
<body class="bg-slate-900 text-slate-100 font-sans p-6">
<div class="container mx-auto max-w-4xl">
<div class="flex justify-between items-center mb-6">
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary text-sm">← Zurück zum Dashboard</a>
<span class="ihk-badge ihk-badge-success">Lernfeld 11 (FISI)</span>
</div>
<h1 class="text-3xl font-extrabold text-sky-400 mb-2">AP2 Modul 05: Enterprise Storage, RAID & SAN-Architekturen (LF 11)</h1>
<p class="text-slate-300 text-lg leading-relaxed mb-6">RAID 0, 1, 5, 6, 10 (exklusiv AP2!), Nutzkapazitäten, URE-Gefahr, DAS/NAS/SAN, iSCSI & ZFS.</p>
<!-- Fachtheorie & Wissen -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin-bottom: 24px;">
<h2 style="color: #38bdf8; margin-top: 0;">💾 Enterprise Storage, RAID & SAN-Architekturen (LF 11)</h2>
<p style="color: #cbd5e1; line-height: 1.6;">
Lernfeld 11 behandelt moderne Enterprise-Speichersysteme. <span style="color: #f87171; font-weight: bold;">Wichtiger ZPA-Hinweis:</span> RAID-Berechnungen wurden in der 2. Auflage vollständig aus AP1 gestrichen und sind nun <strong>exklusiv Bestandteil der AP2</strong>!
</p>
<h3 style="color: #cbd5e1; margin-top: 20px;">1. RAID-Level im direkten IHK-Vergleich</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<table class="ihk-table">
<thead>
<tr><th>RAID-Level</th><th>Min. Disks</th><th>Nutzbare Kapazität</th><th>Fehlertoleranz</th><th>Einsatz & IHK-Bewertung</th></tr>
</thead>
<tbody>
<tr>
<td><strong>RAID 0</strong></td>
<td>2</td>
<td>$N \times K$ (100 %)</td>
<td><strong>0 Platten</strong></td>
<td>Nur Striping, keine Redundanz. Schneller I/O, aber Datenverlust bei 1 Ausfall.</td>
</tr>
<tr>
<td><strong>RAID 1</strong></td>
<td>2</td>
<td>$1 \times K$ (50 %)</td>
<td>1 Platte</td>
<td>Spiegelung. Hohe Lesegeschwindigkeit, ideal für Boot-/OS-Laufwerke.</td>
</tr>
<tr>
<td><strong>RAID 5</strong></td>
<td>3</td>
<td>$(N - 1) \times K$</td>
<td>1 Platte</td>
<td>Block-Striping mit verteilter Parität. Guter Kompromiss aus Kosten & Kapazität.</td>
</tr>
<tr>
<td><strong>RAID 6</strong></td>
<td>4</td>
<td>$(N - 2) \times K$</td>
<td><strong>2 Platten</strong></td>
<td>Verteilte Doppelparität (Reed-Solomon). Unverzichtbar bei HDDs &gt; 4 TB gegen URE-Fehler beim Rebuild!</td>
</tr>
<tr>
<td><strong>RAID 10 (1+0)</strong></td>
<td>4 (gerade)</td>
<td>$\frac{N}{2} \times K$ (50 %)</td>
<td>Bis zu 1 Platte je Mirror-Paar</td>
<td>Stripe of Mirrors. Höchste IOPS-Performance und schnellster Rebuild (keine Paritätsberechnung nötig).</td>
</tr>
</tbody>
</table>
</div>
<h3 style="color: #cbd5e1; margin-top: 20px;">2. Das URE-Problem (Unrecoverable Read Error)</h3>
<p style="color: #cbd5e1; line-height: 1.6;">
Große SATA-Festplatten besitzen typischerweise eine URE-Rate von $10^{14}$ Bit. Das bedeutet: Statistisch tritt alle 12,5 TB gelesener Daten ein nicht lesbarer Sektor auf. Fällt in einem <strong>RAID 5</strong> eine Platte aus, müssen beim Rebuild alle verbleibenden Platten zu 100 % fehlerfrei gelesen werden. Tritt dabei ein URE auf, bricht der Rebuild ab und das gesamte RAID ist verloren! <strong>Lösung:</strong> RAID 6 oder RAID 10.
</p>
<h3 style="color: #cbd5e1; margin-top: 20px;">3. Storage-Netzwerke: DAS vs. NAS vs. SAN</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<p style="color: #cbd5e1; line-height: 1.6; margin: 0;">
- <strong>DAS (Direct Attached Storage):</strong> Intern oder via SAS direkt am Server angeschlossen. Nicht netzwerkfähig.<br>
- <strong>NAS (Network Attached Storage):</strong> Eigenständiges File-Storage-System im LAN. Dateibasiertes Sharing über SMB (Windows) oder NFS (Linux).<br>
- <strong>SAN (Storage Area Network):</strong> Dediziertes Hochgeschwindigkeitsnetz für <strong>blockbasierten Zugriff</strong>. Protokolle: <em>Fibre Channel (FC)</em> über Glasfaser oder <em>iSCSI (Port 3260 TCP)</em> über Ethernet mit IQN-Adressierung und LUN-Masking.
</p>
</div>
</div>
<!-- Interaktives Tool falls vorhanden -->
<div id="raid-simulator-container" style="margin-bottom: 24px;"></div>
<!-- Fragenpool -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin: 32px 0;">
<h2 style="color: #38bdf8; margin-top: 0; font-size: 1.4rem; display: flex; align-items: center; gap: 10px;">
<span>📝</span> Authentische IHK-Prüfungsaufgaben nach ZPA 2. Auflage
</h2>
<p style="color: #94a3b8; font-size: 0.9rem; margin-bottom: 20px;">
Bearbeiten Sie die Aufgaben und vergleichen Sie Ihre Antwort mit dem offiziellen Erwartungshorizont:
</p>
<div style="display: flex; flex-direction: column; gap: 20px;">
<div class="ihk-exam-task" data-title="RAID 5 vs RAID 6 Nutzkapazität und URE" data-points="10" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">RAID 5 vs RAID 6 Nutzkapazität und URE</strong>
<span class="ihk-badge ihk-badge-success">10 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Ein Storage-Server wird mit 8 Enterprise-Festplatten zu je 10 TB Bruttokapazität bestückt.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Berechnen Sie die nutzbare Speicherkapazität für RAID 5 und RAID 6 und begründen Sie die Empfehlung von RAID 6 bei großen Festplatten anhand des URE-Risikos (Unrecoverable Read Error).
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="RAID 10 Aufbau und Fehlertoleranz" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">RAID 10 Aufbau und Fehlertoleranz</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Ein Datenbankadministrator benötigt maximale I/O-Performance und hohe Ausfallsicherheit und wählt ein RAID 10 aus 8 Festplatten zu je 4 TB.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Beschreiben Sie den Aufbau eines RAID 10 (Stripe of Mirrors) und berechnen Sie die Nutzkapazität sowie die maximale und minimale Anzahl an Festplattenausfällen, die das Array überlebt.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Speicherarchitekturen DAS vs NAS vs SAN" data-points="9" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Speicherarchitekturen DAS vs NAS vs SAN</strong>
<span class="ihk-badge ihk-badge-success">9 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Für die Unternehmens-IT werden verschiedene Storage-Lösungen verglichen.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Vergleichen Sie DAS, NAS und SAN bezüglich Zugriffsebene (Block vs File), Übertragungsmedien/Protokolle und typischem Einsatzzweck.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="SAN Protokolle Fibre Channel vs iSCSI" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">SAN Protokolle Fibre Channel vs iSCSI</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Zur Anbindung eines VMware-vSphere-Clusters steht die Wahl zwischen Fibre Channel (FC) und iSCSI an.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Vergleichen Sie FC und iSCSI hinsichtlich Hardware-Komponenten, Übertragungsmedium, MTU/Jumbo Frames und Kosten.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="High-Availability Cluster Active-Passive vs Active-Active" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">High-Availability Cluster Active-Passive vs Active-Active</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Ein Web- und Datenbanksystem soll hochverfügbar ausgelegt werden.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Unterscheiden Sie ein Active/Passive-Cluster von einem Active/Active-Cluster und erklären Sie das Phänomen des Split-Brain-Syndroms.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
</div>
</div>
<!-- Footer Navigation mit echten Buttons -->
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
<a href="../04_systemautomation_powershell_bash_python/index.html" class="ihk-btn ihk-btn-secondary font-semibold">← Vorheriges Modul</a>
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary">🏠 Kursübersicht</a>
<a href="../06_backup_dr_und_hochverfuegbarkeit/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
</div>
</div>
<script src="../../../assets/courses_manifest.js"></script>
<script src="../../../assets/course_sidebar.js"></script>
<script src="../../../assets/ihk_tools/raid_simulator.js"></script>
</body>
</html>

View file

@ -1,504 +1,17 @@
<!DOCTYPE html> <!DOCTYPE html>
<html lang="de"> <html lang="de">
<head> <head>
<link rel="icon" type="image/svg+xml" href="../../../assets/favicon.svg">
<meta charset="UTF-8"> <meta charset="UTF-8">
<title>AP2 Modul 05: Wirtschafts- & Sozialkunde (WiSo)</title> <meta http-equiv="refresh" content="0; url=../09_wiso_arbeitsrecht_und_wirtschaft/index.html">
<title>Weiterleitung zum aktualisierten Modul...</title>
<link rel="stylesheet" href="../../../assets/style.css"> <link rel="stylesheet" href="../../../assets/style.css">
<link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css"> <link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css">
</head> </head>
<body class="bg-slate-900 text-slate-100 font-sans p-6"> <body class="bg-slate-900 text-slate-100 p-8 flex items-center justify-center min-h-screen">
<div class="container mx-auto max-w-4xl"> <div class="text-center max-w-lg bg-slate-800 p-8 rounded-xl border border-slate-700">
<div class="flex justify-between items-center mb-6"> <h2 class="text-xl font-bold text-sky-400 mb-4">Modul aktualisiert</h2>
<a href="../../../dashboard.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zum Dashboard</a> <p class="text-slate-300 mb-6">Dieses Modul wurde im Rahmen der ZPA Nord-West 2. Auflage aktualisiert. Sie werden automatisch weitergeleitet...</p>
<span class="ihk-badge ihk-badge-success">WiSo Prüfungsfach</span> <a href="../09_wiso_arbeitsrecht_und_wirtschaft/index.html" class="ihk-btn ihk-btn-primary font-semibold">Direkt zum neuen Modul →</a>
</div>
<h1 class="text-3xl font-extrabold text-sky-400 mb-2">AP2 Modul 05: Wirtschafts- & Sozialkunde (WiSo)</h1>
<p class="text-slate-300 text-lg leading-relaxed mb-6">Kündigungsfristen (§ 622 BGB), KSchG Klagefrist (3 Wochen), BBiG, BetrVG § 87 Mitbestimmung, 5 Säulen der Sozialversicherung & Rechtsformen GmbH/AG.</p>
<!-- Fachtheorie & Wissen -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin-bottom: 24px;">
<h2 style="color: #facc15; margin-top: 0;">📜 WiSo: Wirtschafts- und Sozialkunde Prüfungs-Fit</h2>
<p style="color: #cbd5e1; line-height: 1.6;">
Wirtschafts- und Sozialkunde ist ein eigenständiges Prüfungsfach in AP2 (60 Minuten, 100 Punkte, 33 % der schriftlichen Fachqualifikation). Es prüft Arbeitsrecht, Tarifwesen, Sozialversicherungen, Rechtsformen und Volkswirtschaft.
</p>
<h3 style="color: #cbd5e1; margin-top: 20px;">1. Kündigungsfristen nach BGB § 622</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<p style="color: #cbd5e1; line-height: 1.6; margin: 0;">
- <strong>Grundkündigungsfrist:</strong> 4 Wochen zum 15. oder zum Ende eines Kalendermonats.<br>
- <strong>In der Probezeit (max. 6 Monate):</strong> 2 Wochen zu jedem beliebigen Tag (§ 622 Abs. 3 BGB).<br>
- <strong>Verlängerte Fristen bei Betriebszugehörigkeit:</strong> Z. B. 5 Jahre = 2 Monate zum Monatsende; 10 Jahre = 4 Monate zum Monatsende; 15 Jahre = 6 Monate zum Monatsende.<br>
- <strong>Klagefrist (§ 4 KSchG):</strong> Kündigungsschutzklage muss innerhalb von <strong>3 Wochen</strong> nach schriftlichem Zugang erhoben werden!
</p>
</div>
<h3 style="color: #cbd5e1; margin-top: 20px;">2. Die 5 Säulen der gesetzlichen Sozialversicherung</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<table class="ihk-table">
<thead><tr><th>Versicherungszweig</th><th>Beitragsträger</th><th>Leistung / Träger</th></tr></thead>
<tbody>
<tr><td>Krankenversicherung (GKV)</td><td>Paritätisch (AG 50% / AN 50%)</td><td>Ärztliche Behandlung, Krankengeld / Krankenkassen</td></tr>
<tr><td>Pflegeversicherung (GPV)</td><td>Paritätisch (+ Kinderlosenzuschlag für AN)</td><td>Pflegegeld / Pflegekassen</td></tr>
<tr><td>Rentenversicherung (GRV)</td><td>Paritätisch (AG 50% / AN 50%)</td><td>Altersrente, Reha / Dt. Rentenversicherung</td></tr>
<tr><td>Arbeitslosenversicherung (ALV)</td><td>Paritätisch (AG 50% / AN 50%)</td><td>Arbeitslosengeld I, Umschulung / Bundesagentur für Arbeit</td></tr>
<tr><td><strong>Unfallversicherung (DGUV)</strong></td><td><strong>100 % allein durch Arbeitgeber!</strong></td><td>Arbeits- & Wegeunfälle, Berufskrankheiten / Berufsgenossenschaften</td></tr>
</tbody>
</table>
</div>
</div>
<!-- Interaktives Tool falls vorhanden -->
<!-- Fragenpool -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin: 32px 0;">
<h2 style="color: #38bdf8; margin-top: 0; font-size: 1.4rem; display: flex; align-items: center; gap: 10px;">
<span>📝</span> Authentische IHK-Prüfungsaufgaben zu WiSo Prüfungsfach
</h2>
<p style="color: #94a3b8; font-size: 0.9rem; margin-bottom: 20px;">
Aus unserem Fragenpool von 150 IHK-Prüfungsfragen nach offiziellem ZPA/AkA-Wortlaut. Bearbeiten Sie die Aufgaben und vergleichen Sie Ihre Antwort mit dem Erwartungshorizont:
</p>
<div style="display: flex; flex-direction: column; gap: 20px;">
<div class="ihk-exam-task" data-title="Gesetzliche Kündigungsfristen nach BGB § 622" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Gesetzliche Kündigungsfristen nach BGB § 622</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Ein Fachinformatiker ist seit 12 Jahren ununterbrochen in einem mittelständischen IT-Systemhaus beschäftigt. Am 18. Mai erhält er eine ordentliche, betriebsbedingte Kündigung des Arbeitgebers.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Ermitteln Sie unter Angabe der gesetzlichen Bestimmungen des § 622 BGB die Kündigungsfrist und das exakte Beendigungsdatum des Arbeitsverhältnisses.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Gesetzliche Frist nach § 622 Abs. 2 Nr. 4 BGB: Bei einer Betriebszugehörigkeit von 10 Jahren beträgt die Frist 4 Monate zum Ende eines Kalendermonats. (4 Pkt.)
Fristberechnung: Die 4-Monats-Frist beginnt nach Zugang im Mai zu laufen (Juni, Juli, August, September). Beendigungstermin ist der 30. September. (4 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Kündigungsschutzgesetz KSchG Klagefrist" data-points="6" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Kündigungsschutzgesetz KSchG Klagefrist</strong>
<span class="ihk-badge ihk-badge-success">6 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Ein Arbeitnehmer erhält eine verhaltensbedingte Kündigung, die er für sachlich unbegründet und rechtswidrig hält.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Nennen Sie die Frist zur Erhebung einer Kündigungsschutzklage beim Arbeitsgericht nach § 4 KSchG und beschreiben Sie, was geschieht, wenn diese Frist versäumt wird.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Klagefrist: Die Klage muss innerhalb von drei Wochen nach schriftlichem Zugang der Kündigung beim Arbeitsgericht erhoben werden. (3 Pkt.)
Rechtsfolge bei Versäumnis: Nach § 7 KSchG gilt die Kündigung als von Anfang an rechtswirksam (Fiktionswirkung); das Arbeitsverhältnis endet unwiderruflich zum Kündigungstermin. (3 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="BBiG Rechte und Pflichten von Auszubildenden" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">BBiG Rechte und Pflichten von Auszubildenden</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Ein Auszubildender im 2. Ausbildungsjahr weigert sich, täglich 2 Stunden lang private Botengänge für den Geschäftsführer zu erledigen.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Prüfen Sie die Rechtmäßigkeit dieser Anweisung nach dem Berufsbildungsgesetz (BBiG) und nennen Sie zwei wesentliche Pflichten des Ausbildenden sowie zwei Pflichten des Auszubildenden.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Rechtmäßigkeit: Die Anweisung ist rechtswidrig nach § 14 Abs. 3 BBiG (Auszubildenden dürfen nur Aufgaben übertragen werden, die dem Ausbildungszweck dienen und ihren körperlichen Kräften angemessen sind). (2 Pkt.)
Zwei Pflichten des Ausbildenden: 1. Ausbildungspflicht (Vermittlung der Ausbildungsinhalte); 2. Kostenlose Bereitstellung der Ausbildungsmittel; 3. Freistellung für Berufsschule und Prüfungen. (2 Pkt.)
Zwei Pflichten des Auszubildenden: 1. Lernpflicht (Bemühen um Ausbildungserfolg); 2. Sorgfaltspflicht und Führen des Ausbildungsnachweises; 3. Schweigepflicht über Betriebsgeheimnisse. (2 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="BetrVG Mitbestimmung bei technischen Einrichtungen" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">BetrVG Mitbestimmung bei technischen Einrichtungen</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Die Geschäftsleitung führt ohne Einbindung des Betriebsrats eine Software ein, die Tastenanschläge und Login-Zeiten der Mitarbeiter minutengenau protokolliert.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Beurteilen Sie die Rechtslage nach § 87 Abs. 1 Nr. 6 BetrVG und erklären Sie, welche Schritte der Betriebsrat einleiten kann.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Rechtslage: Der Betriebsrat hat nach § 87 Abs. 1 Nr. 6 BetrVG ein zwingendes, erzwingbares Mitbestimmungsrecht bei der Einführung und Anwendung von technischen Einrichtungen, die dazu bestimmt oder geeignet sind, das Verhalten oder die Leistung der Arbeitnehmer zu überwachen. Ohne vorherige Zustimmung oder Betriebsvereinbarung ist die Einführung unzulässig. (4 Pkt.)
Schritte des Betriebsrats: 1. Aufforderung an die Geschäftsleitung zur sofortigen Stilllegung/Abschaltung der Überwachung; 2. Beantragung einer einstweiligen Verfügung beim Arbeitsgericht; 3. Bei Nichteinigung Anrufung der Einigungsstelle (§ 76 BetrVG), deren Spruch die Einigung verbindlich ersetzt. (4 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Tarifvertragsarten Manteltarif vs Entgelttarif" data-points="6" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Tarifvertragsarten Manteltarif vs Entgelttarif</strong>
<span class="ihk-badge ihk-badge-success">6 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Gewerkschaften und Arbeitgeberverbände handeln Tarifverträge aus.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Unterscheiden Sie den Manteltarifvertrag (bzw. Rahmentarifvertrag) vom Entgelttarifvertrag (Vergütungstarifvertrag) hinsichtlich Inhalten und typischer Laufzeit.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Manteltarifvertrag: Regelt allgemeine Arbeitsbedingungen wie Arbeitszeit, Urlaubsdauer, Kündigungsfristen, Mehrarbeitszuschläge und Schutzbestimmungen. Typische Laufzeit: Mehrere Jahre (meist 3 bis 5 Jahre). (3 Pkt.)
Entgelttarifvertrag: Regelt die konkrete Höhe der monatlichen Vergütung, Löhne, Gehälter und Ausbildungsvergütungen eingeteilt in Tarifgruppen. Typische Laufzeit: Kurzfristig (meist 12 bis 24 Monate). (3 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Die 5 Säulen der gesetzlichen Sozialversicherung" data-points="10" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Die 5 Säulen der gesetzlichen Sozialversicherung</strong>
<span class="ihk-badge ihk-badge-success">10 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Vom Bruttogehalt eines Arbeitnehmers werden Beiträge zur gesetzlichen Sozialversicherung abgeführt.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Nennen Sie die fünf Säulen der gesetzlichen Sozialversicherung und geben Sie an, welcher Zweig im Gegensatz zu den anderen zu 100 % allein vom Arbeitgeber finanziert wird.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
1. Krankenversicherung (GKV) - paritätisch getragen. (2 Pkt.)
2. Pflegeversicherung (GPV) - paritätisch getragen (+ Kinderlosenzuschlag für AN). (2 Pkt.)
3. Rentenversicherung (GRV) - paritätisch getragen. (2 Pkt.)
4. Arbeitslosenversicherung (ALV) - paritätisch getragen. (2 Pkt.)
5. Unfallversicherung (Gesetzliche Unfallversicherung / Berufsgenossenschaft): Wird zu 100 % allein vom Arbeitgeber getragen! (2 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Gehaltsabrechnung Brutto zu Netto" data-points="6" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Gehaltsabrechnung Brutto zu Netto</strong>
<span class="ihk-badge ihk-badge-success">6 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Ein IT-Mitarbeiter (Steuerklasse 1, keine Kinder) erhält ein monatliches Bruttogehalt von 4.000 EUR.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erläutern Sie die Abzugsposten vom Brutto- zum Nettogehalt und unterscheiden Sie Steuern von Sozialversicherungsbeiträgen.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Abzugsposten:
1. Steuern: Lohnsteuer (an das Finanzamt), Solidaritätszuschlag (sofern Freigrenze überschritten), ggf. Kirchensteuer. (3 Pkt.)
2. Gesetzliche Sozialabgaben (ca. 20-21 % AN-Anteil): Kranken-, Pflege-, Renten- und Arbeitslosenversicherung (an die zuständige Krankenkasse als Einzugsstelle). (3 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Unternehmensformen GmbH vs Aktiengesellschaft (AG)" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Unternehmensformen GmbH vs Aktiengesellschaft (AG)</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Für die Expansion eines Cloud-Startups wird die Wahl zwischen einer GmbH und einer AG abgewogen.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Vergleichen Sie GmbH und AG bezüglich Mindestkapital, Organe und Haftung.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
GmbH (Gesellschaft mit beschränkter Haftung):
- Mindeststammkapital: 25.000 EUR. (1 Pkt.)
- Organe: Geschäftsführer (Leitung) und Gesellschafterversammlung (Beschlussfassung). (2 Pkt.)
- Haftung: Beschränkt auf das Gesellschaftsvermögen der GmbH. (1 Pkt.)
AG (Aktiengesellschaft):
- Mindestgrundkapital: 50.000 EUR. (1 Pkt.)
- Organe: Vorstand (Leitung), Aufsichtsrat (Kontrolle), Hauptversammlung der Aktionäre (Beschlussfassung). (2 Pkt.)
- Haftung: Beschränkt auf das Gesellschaftsvermögen der AG (Aktionär haftet nur mit dem Aktienwert). (1 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Handelsregister Abteilung A vs Abteilung B" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Handelsregister Abteilung A vs Abteilung B</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Kaufleute und Gesellschaften werden im Handelsregister eingetragen.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Unterscheiden Sie Abteilung A (HRA) und Abteilung B (HRB) bezüglich der eingetragenen Rechtsformen und erläutern Sie den Unterschied zwischen deklaratorischer und konstitutiver Wirkung.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Abteilung A (HRA): Verzeichnet Einzelkaufleute (e.K.) und Personengesellschaften (OHG, KG). (2 Pkt.)
Abteilung B (HRB): Verzeichnet Kapitalgesellschaften (GmbH, AG, KGaA). (2 Pkt.)
Deklaratorische Wirkung: Rechtswirkung ist bereits vor der Eintragung eingetreten; die Eintragung stellt den bestehenden Rechtszustand lediglich öffentlich klar (z. B. Erteilung einer Prokura). (2 Pkt.)
Konstitutive Wirkung: Die Rechtswirkung entsteht erst mit und durch die Eintragung im Handelsregister (rechtsbegründend, z. B. Entstehung einer GmbH als juristische Person). (2 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Kaufvertragsstörungen Sachmangel und Nacherfüllung" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Kaufvertragsstörungen Sachmangel und Nacherfüllung</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Ein Unternehmen bestellt 10 neue Laptops. Bei Lieferung stellt sich heraus, dass 3 Displays tiefe Kratzer aufweisen.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Nennen Sie die vorrangigen Rechte des Käufers bei Vorliegen eines Sachmangels (§ 437, § 439 BGB) und beschreiben Sie, unter welchen Bedingungen die nachrangigen Rechte (Rücktritt, Minderung) greifen.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Vorrangiges Recht (Nacherfüllung nach § 439 BGB): Der Käufer kann nach seiner Wahl die Beseitigung des Mangels (Nachbesserung / Reparatur) oder die Lieferung einer mangelfreien Sache (Nachlieferung / Ersatz) verlangen. Dem Verkäufer muss dazu eine angemessene Frist eingeräumt werden. (4 Pkt.)
Nachrangige Rechte: Schlägt die Nacherfüllung fehl (nach dem 2. erfolglosen Nachbesserungsversuch) oder verweigert der Verkäufer diese endgültig, kann der Käufer vom Kaufvertrag zurücktreten (Rückabwicklung Zug um Zug), den Kaufpreis mindern und ggf. Schadensersatz verlangen. (4 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Marktformen Polypol, Oligopol und Monopol" data-points="6" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Marktformen Polypol, Oligopol und Monopol</strong>
<span class="ihk-badge ihk-badge-success">6 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Auf Märkten treffen Angebot und Nachfrage bei unterschiedlichen Marktstrukturen aufeinander.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Definieren Sie die Marktformen Monopol, Oligopol und Polypol aus Sicht der Anbieter und nennen Sie jeweils ein konkretes Marktbeispiel.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Monopol (Angebotsmonopol): Genau ein Anbieter steht vielen Nachfragern gegenüber. Hohe Preissetzungsmacht. Beispiel: Deutsche Bahn im Schienenfernverkehr (historisch) oder staatliches Lotteriemonopol. (2 Pkt.)
Oligopol (Angebotsoligopol): Wenige Anbieter stehen vielen Nachfragern gegenüber. Gefahr von Preisabsprachen oder Preiskämpfen. Beispiel: Deutscher Mobilfunknetz-Markt (Telekom, Vodafone, Telefónica, 1&1) oder Mineralölkonzerne. (2 Pkt.)
Polypol: Sehr viele Anbieter stehen sehr vielen Nachfragern gegenüber. Vollständige Konkurrenz, Preisbildung über den Gleichgewichtspreis. Beispiel: Gebrauchtwagenmarkt, Wohnungsmarkt, Gastronomie. (2 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Konjunkturphasen Zyklus" data-points="6" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Konjunkturphasen Zyklus</strong>
<span class="ihk-badge ihk-badge-success">6 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Die volkswirtschaftliche Entwicklung verläuft in zyklischen Schwankungen.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Nennen Sie die vier klassischen Phasen des Konjunkturzyklus in richtiger Reihenfolge und beschreiben Sie zwei typische volkswirtschaftliche Merkmale der Hochkonjunktur (Boom).
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Vier Phasen:
1. Aufschwung (Expansion)
2. Hochkonjunktur (Boom)
3. Abschwung (Rezession)
4. Tiefstand (Depression). (3 Pkt.)
Zwei Merkmale des Booms: 1. Nahezu Vollbeschäftigung / akuter Fachkräftemangel; 2. Volle Kapazitätsauslastung der Unternehmen bei steigenden Zinsen, Löhnen und Inflationsraten. (3 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Geldpolitik der EZB Leitzins und Inflation" data-points="6" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Geldpolitik der EZB Leitzins und Inflation</strong>
<span class="ihk-badge ihk-badge-success">6 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Zur Bekämpfung einer anhaltend hohen Inflationsrate beschließt der Rat der Europäischen Zentralbank (EZB) eine Erhöhung der Leitzinsen.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erläutern Sie den Wirkungsmechanismus einer Leitzinserhöhung auf die Kreditvergabe von Geschäftsbanken, die Investitionsbereitschaft und die Preisentwicklung.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Wirkungsmechanismus:
1. Refinanzierungskosten steigen: Geschäftsbanken müssen für EZB-Zentralbankgeld höhere Zinsen zahlen und geben diese in Form höherer Kreditzinsen an Unternehmen und Verbraucher weiter. (2 Pkt.)
2. Dämpfung der Nachfrage: Teurere Kredite führen dazu, dass Unternehmen Investitionen verschieben und private Haushalte weniger konsumieren, während Sparen attraktiver wird. (2 Pkt.)
3. Inflationsrückgang: Die gesunkene Gesamtnachfrage reduziert den Druck auf die Güterpreise, sodass sich der Preisanstieg verlangsamt (Rückkehr zum 2%-Inflationsziel). (2 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Kaufmännisches Mahnverfahren Zahlungsverzug" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Kaufmännisches Mahnverfahren Zahlungsverzug</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Ein Kunde zahlt eine fällige Rechnung über 3.500 EUR trotz Fälligkeitsdatum nicht.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erklären Sie, wann ein Schuldner nach § 286 BGB auch ohne gesonderte Mahnung automatisch in Verzug gerät, und beschreiben Sie den Ablauf des gerichtlichen Mahnverfahrens.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Automatischer Verzug nach § 286 BGB:
1. Wenn für die Leistung eine Zeit nach dem Kalender bestimmt ist (z. B. "zahlbar bis zum 15.10."). (2 Pkt.)
2. Spätestens 30 Tage nach Fälligkeit und Zugang einer Rechnung (bei Verbrauchern nur mit entsprechendem Hinweis auf der Rechnung). (2 Pkt.)
Gerichtliches Mahnverfahren:
1. Gläubiger beantragt Mahnbescheid beim zentralen Mahngericht (keine materielle Rechtsprüfung). (1,5 Pkt.)
2. Das Gericht stellt den Mahnbescheid zu; der Schuldner hat 2 Wochen Widerspruchsfrist. (1 Pkt.)
3. Erfolgt kein Widerspruch, beantragt der Gläubiger den Vollstreckungsbescheid (vollstreckbarer Titel für Gerichtsvollzieher). (1,5 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Mutterschutz und Elternzeit" data-points="6" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Mutterschutz und Elternzeit</strong>
<span class="ihk-badge ihk-badge-success">6 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Eine Mitarbeiterin teilt ihrer Abteilungsleitung mit, dass sie schwanger ist.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Nennen Sie die gesetzlichen Mutterschutzfristen vor und nach der Entbindung nach dem Mutterschutzgesetz (MuSchG) und erklären Sie die Kündigungsschutzregelung während Schwangerschaft und Elternzeit.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Mutterschutzfristen: 6 Wochen vor der Entbindung (Schwangere darf auf eigenen Wunsch arbeiten) und 8 Wochen nach der Entbindung (absolutes Beschäftigungsverbot; 12 Wochen bei Früh- oder Mehrlingsgeburten). (3 Pkt.)
Kündigungsschutz: Während der gesamten Schwangerschaft bis 4 Monate nach der Entbindung sowie während der Elternzeit besteht nach § 17 MuSchG bzw. § 18 BEEG ein striktes Kündigungsverbot. Kündigungen sind ausnahmslos unzulässig (Ausnahmen bedürfen der vorherigen behördlichen Genehmigung). (3 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Jugendarbeitsschutzgesetz (JArbSchG)" data-points="6" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Jugendarbeitsschutzgesetz (JArbSchG)</strong>
<span class="ihk-badge ihk-badge-success">6 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Ein 17-jähriger Auszubildender soll an einem Samstag 9 Stunden lang Überstunden in der Serverwartung leisten.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Prüfen Sie die Zulässigkeit dieser Maßnahme anhand von Arbeitszeit und Samstagsruhe nach dem JArbSchG.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Tägliche Höchstarbeitszeit (§ 8 JArbSchG): Jugendliche dürfen maximal 8 Stunden täglich und 40 Stunden wöchentlich beschäftigt werden (eine 9-Stunden-Schicht ist unzulässig). (3 Pkt.)
Samstagsruhe (§ 16 JArbSchG): An Samstagen dürfen Jugendliche grundsätzlich nicht beschäftigt werden. Zulässige Ausnahmen (z. B. Krankenhäuser, Gastronomie) treffen auf reguläre IT-Bürotätigkeiten nicht zu. Die Anweisung ist somit doppelt rechtswidrig. (3 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Befristete Arbeitsverträge nach TzBfG" data-points="6" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Befristete Arbeitsverträge nach TzBfG</strong>
<span class="ihk-badge ihk-badge-success">6 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Ein Arbeitgeber möchte einen Softwareentwickler befristet einstellen.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Unterscheiden Sie die kalendermäßige Befristung ohne Sachgrund (§ 14 Abs. 2 TzBfG) von einer Befristung mit sachlichem Grund (§ 14 Abs. 1 TzBfG) hinsichtlich maximaler Dauer und Verlängerungsmöglichkeiten.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Befristung ohne Sachgrund: Maximal für 2 Jahre zulässig. Innerhalb dieses 2-Jahres-Zeitraums darf der Vertrag maximal 3-mal verlängert werden. Unzulässig, wenn mit demselben Arbeitgeber zuvor bereits ein Arbeitsverhältnis bestand (Vorbeschäftigungsverbot). (3 Pkt.)
Befristung mit Sachgrund: Zeitlich und in der Anzahl der Verlängerungen prinzipiell unbegrenzt, solange ein rechtlich anerkannter Sachgrund vorliegt (z. B. Vertretung wegen Elternzeit/Krankheit, vorübergehender betrieblicher Mehrbedarf an Arbeitsleistung/Projekt, Eigenart der Arbeitsleistung). (3 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Entgeltfortzahlung im Krankheitsfall (EntgFG)" data-points="6" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Entgeltfortzahlung im Krankheitsfall (EntgFG)</strong>
<span class="ihk-badge ihk-badge-success">6 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Ein Mitarbeiter erkrankt arbeitsunfähig infolge einer Grippe.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erläutern Sie die gesetzlichen Regelungen zur Entgeltfortzahlung nach dem Entgeltfortzahlungsgesetz (EntgFG) und erklären Sie, welche Leistung der Mitarbeiter nach Ablauf der Fortzahlung von wem erhält.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Entgeltfortzahlung durch den Arbeitgeber: Der Arbeitgeber zahlt das volle reguläre Gehalt (100 %) für die Dauer von bis zu 6 Wochen (42 Kalendertage) bei unverschuldeter Arbeitsunfähigkeit fort. Voraussetzung: Das Arbeitsverhältnis besteht seit mindestens 4 Wochen ununterbrochen. (3 Pkt.)
Anschlussleistung nach 6 Wochen: Ab der 7. Woche zahlt die gesetzliche Krankenkasse Krankengeld (70 % des Bruttoentgelts, maximal 90 % des Nettoentgelts) für dieselbe Krankheit für bis zu 78 Wochen innerhalb von 3 Jahren. (3 Pkt.)
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Prokura vs Handlungsvollmacht nach HGB" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Prokura vs Handlungsvollmacht nach HGB</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Der Geschäftsführer eines IT-Systemhauses möchte zwei leitende Mitarbeiter bevollmächtigen.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Vergleichen Sie die Prokura (§§ 48-53 HGB) und die Handlungsvollmacht (§ 54 HGB) bezüglich Erteilung, Umfang der Vertretungsmacht, Handelsregistereintragung und Zeichnungszusatz.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
Erteilung: Prokura kann nur durch den Inhaber/Geschäftsführer ausdrücklich und persönlich erteilt werden; Handlungsvollmacht kann formlos auch durch Prokuristen erteilt werden. (2 Pkt.)
Umfang: Prokura ermächtigt zu ALLEN Arten von gerichtlichen und außergerichtlichen Geschäften und Rechtshandlungen, die der Betrieb IRGENDEINES Handelsgewerbes mit sich bringt (Ausnahme: Grundstücke verkaufen/belasten bedarf gesonderter Befugnis). Handlungsvollmacht ermächtigt nur zu Geschäften, die der Betrieb DIESES KONKRETEN Handelsgewerbes gewöhnlich mit sich bringt. (3 Pkt.)
Handelsregister: Prokura MUSS zwingend ins Handelsregister eingetragen werden (deklaratorisch); Handlungsvollmacht wird NICHT eingetragen. (1,5 Pkt.)
Zeichnung: Prokurist zeichnet mit "per procura" / "ppa. Vorname Nachname"; Handlungsbevollmächtigter zeichnet mit "in Vollmacht" / "i.V." oder "in Auftrag" / "i.A.". (1,5 Pkt.)
</div>
</details>
</div>
</div></div>
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
<a href="../04_lf12_virtualisierung_und_cloud/index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Vorheriges Modul</a>
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
<a href="../06_betriebliche_projektarbeit_guide/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
</div>
</div> </div>
<script src="../../../assets/courses_manifest.js"></script>
<script src="../../../assets/course_sidebar.js"></script>
</body> </body>
</html> </html>

View file

@ -0,0 +1,9 @@
# AP2 Modul 06: Backup, Disaster Recovery & Hochverfügbarkeit (LF 11)
**Prüfungsbereich:** Lernfeld 11 (FISI)
3-2-1-1-0 Backup-Regel, Großvater-Vater-Sohn, RTO/RPO, LTO/WORM, HA-Cluster, Quorum & STONITH.
## Relevante Prüfungsthemen nach dem offiziellen ZPA Nord-West Prüfungskatalog (2. Auflage)
- Fundierte Fachtheorie und Praxis-Transfer für Fachinformatiker Systemintegration (FISI).
- Authentische Prüfungsfragen mit offiziellem IHK-Erwartungshorizont und Punkteverteilung.

View file

@ -0,0 +1,167 @@
<!DOCTYPE html>
<html lang="de">
<head>
<link rel="icon" type="image/svg+xml" href="../../../assets/favicon.svg">
<meta charset="UTF-8">
<title>AP2 Modul 06: Backup, Disaster Recovery & Hochverfügbarkeit (LF 11)</title>
<link rel="stylesheet" href="../../../assets/style.css">
<link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css">
</head>
<body class="bg-slate-900 text-slate-100 font-sans p-6">
<div class="container mx-auto max-w-4xl">
<div class="flex justify-between items-center mb-6">
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary text-sm">← Zurück zum Dashboard</a>
<span class="ihk-badge ihk-badge-success">Lernfeld 11 (FISI)</span>
</div>
<h1 class="text-3xl font-extrabold text-sky-400 mb-2">AP2 Modul 06: Backup, Disaster Recovery & Hochverfügbarkeit (LF 11)</h1>
<p class="text-slate-300 text-lg leading-relaxed mb-6">3-2-1-1-0 Backup-Regel, Großvater-Vater-Sohn, RTO/RPO, LTO/WORM, HA-Cluster, Quorum & STONITH.</p>
<!-- Fachtheorie & Wissen -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin-bottom: 24px;">
<h2 style="color: #38bdf8; margin-top: 0;">🛡️ Backup, Disaster Recovery & Hochverfügbarkeit (LF 11)</h2>
<p style="color: #cbd5e1; line-height: 1.6;">
Datensicherheit und Business Continuity: Die 3-2-1-1-0 Backup-Regel, Großvater-Vater-Sohn Prinzip, Notfall-Kennzahlen (RTO, RPO, MTBF, MTTR), HA-Cluster, Quorum und Fencing.
</p>
<h3 style="color: #cbd5e1; margin-top: 20px;">1. Die 3-2-1-1-0 Backup-Regel (BSI-Standard)</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<ul style="color: #cbd5e1; line-height: 1.8; margin: 0; padding-left: 20px;">
<li><strong>3 Kopien:</strong> Mindestens 3 Kopien der Geschäftsdaten (1x Produktivdaten + 2x Backups).</li>
<li><strong>2 Medientypen:</strong> Auf mindestens 2 unterschiedlichen Speichertechnologien (z. B. SSD-Storage + LTO-Magnetband).</li>
<li><strong>1 Offsite:</strong> Mindestens 1 Kopie an einem geographisch getrennten Standort (Schutz vor Brand/Diebstahl).</li>
<li><strong>1 Immutable / Air-Gapped:</strong> Mindestens 1 unveränderbare oder offline getrennte Kopie (WORM-Tape / Object Lock) als sicherer Schutz vor Ransomware.</li>
<li><strong>0 Fehler:</strong> Regelmäßige automatisierte Wiederherstellungstests mit 0 Fehlern!</li>
</ul>
</div>
<h3 style="color: #cbd5e1; margin-top: 20px;">2. Kennzahlen des Notfallmanagements (BCM): RTO & RPO</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<p style="color: #cbd5e1; line-height: 1.6; margin: 0;">
- <strong>RTO (Recovery Time Objective):</strong> Maximal tolerierbare Ausfallzeit bis zur Wiederaufnahme des Betriebs ($t_{\text{Ausfall}} \le RTO$).<br>
- <strong>RPO (Recovery Point Objective):</strong> Maximal tolerierbarer Datenverlust gemessen in Zeit ($t_{\text{Verlust}} \le RPO$).<br>
- <strong>Verfügbarkeitsberechnung:</strong> $A = \frac{\text{MTBF}}{\text{MTBF} + \text{MTTR}} \times 100\,\%$. Bei 99,99 % ("Four Nines") beträgt die jährliche Gesamtausfallzeit max. 52,56 Minuten.
</p>
</div>
<h3 style="color: #cbd5e1; margin-top: 20px;">3. HA-Cluster, Quorum & STONITH</h3>
<p style="color: #cbd5e1; line-height: 1.6;">
- <strong>Quorum:</strong> Um bei einem Netzwerk-Split (Split-Brain) zu verhindern, dass zwei Clusterhälften gleichzeitig Schreibzugriffe ausführen und Daten korrumpieren, benötigt das Cluster ein <em>Quorum (&gt; 50 % der Stimmen)</em>.<br>
- <strong>STONITH (Shoot The Other Node In The Head):</strong> Radikales Fencing über IPMI/iDRAC/USV schaltet den fehlerhaften Knoten hardwareseitig stromlos.
</p>
</div>
<!-- Interaktives Tool falls vorhanden -->
<!-- Fragenpool -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin: 32px 0;">
<h2 style="color: #38bdf8; margin-top: 0; font-size: 1.4rem; display: flex; align-items: center; gap: 10px;">
<span>📝</span> Authentische IHK-Prüfungsaufgaben nach ZPA 2. Auflage
</h2>
<p style="color: #94a3b8; font-size: 0.9rem; margin-bottom: 20px;">
Bearbeiten Sie die Aufgaben und vergleichen Sie Ihre Antwort mit dem offiziellen Erwartungshorizont:
</p>
<div style="display: flex; flex-direction: column; gap: 20px;">
<div class="ihk-exam-task" data-title="Quorum und Fencing (STONITH)" data-points="6" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Quorum und Fencing (STONITH)</strong>
<span class="ihk-badge ihk-badge-success">6 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Um Split-Brain in einem 2-Node-Cluster sicher zu verhindern, wird ein Quorum-Mechanismus und STONITH eingerichtet.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erläutern Sie die Funktionsweise von Quorum (Mehrheitsentscheid) und beschreiben Sie das Prinzip von STONITH (Shoot The Other Node In The Head).
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="ZFS Dateisystem Copy-on-Write & Prüfsummen" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">ZFS Dateisystem Copy-on-Write & Prüfsummen</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Ein Enterprise-Speicherserver wird unter TrueNAS mit dem Dateisystem ZFS aufgesetzt.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erläutern Sie die Funktionsweise von Copy-on-Write (CoW) in ZFS und beschreiben Sie, wie ZFS "Silent Data Corruption" (Bit-Rot) mithilfe von Prüfsummen und Scrubbing erkennt und repariert.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="LTO-Bandtechnologie und WORM-Speicher" data-points="6" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">LTO-Bandtechnologie und WORM-Speicher</strong>
<span class="ihk-badge ihk-badge-success">6 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Zur Erfüllung gesetzlicher Revisionsanforderungen (GoBD) müssen Buchhaltungsunterlagen unveränderbar auf LTO-Tape archiviert werden.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Definieren Sie das WORM-Prinzip (Write Once, Read Many) und nennen Sie zwei technische Vorteile von Magnetbändern gegenüber Festplatten zur Langzeitarchivierung.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Synchrone vs Asynchrone Storage-Replikation" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Synchrone vs Asynchrone Storage-Replikation</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Zwei Brandabschnitte eines Rechenzentrums im Abstand von 15 Kilometern sollen gespiegelt werden.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Vergleichen Sie synchrone und asynchrone Speicherreplikation hinsichtlich Bestätigung an das Betriebssystem, Latenzabhängigkeit und RPO.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
</div>
</div>
<!-- Footer Navigation mit echten Buttons -->
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
<a href="../05_lf11_speicher_und_hochverfuegbarkeit/index.html" class="ihk-btn ihk-btn-secondary font-semibold">← Vorheriges Modul</a>
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary">🏠 Kursübersicht</a>
<a href="../07_enterprise_sql_und_datenbank_admin/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
</div>
</div>
<script src="../../../assets/courses_manifest.js"></script>
<script src="../../../assets/course_sidebar.js"></script>
</body>
</html>

View file

@ -1,61 +1,17 @@
<!DOCTYPE html> <!DOCTYPE html>
<html lang="de"> <html lang="de">
<head> <head>
<link rel="icon" type="image/svg+xml" href="../../../assets/favicon.svg">
<meta charset="UTF-8"> <meta charset="UTF-8">
<title>AP2 Modul 06: Betriebliche Projektarbeit (40h) & Fachgespräch</title> <meta http-equiv="refresh" content="0; url=../11_betriebliche_projektarbeit_guide/index.html">
<title>Weiterleitung zum aktualisierten Modul...</title>
<link rel="stylesheet" href="../../../assets/style.css"> <link rel="stylesheet" href="../../../assets/style.css">
<link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css"> <link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css">
</head> </head>
<body class="bg-slate-900 text-slate-100 font-sans p-6"> <body class="bg-slate-900 text-slate-100 p-8 flex items-center justify-center min-h-screen">
<div class="container mx-auto max-w-4xl"> <div class="text-center max-w-lg bg-slate-800 p-8 rounded-xl border border-slate-700">
<div class="flex justify-between items-center mb-6"> <h2 class="text-xl font-bold text-sky-400 mb-4">Modul aktualisiert</h2>
<a href="../../../dashboard.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Zurück zum Dashboard</a> <p class="text-slate-300 mb-6">Dieses Modul wurde im Rahmen der ZPA Nord-West 2. Auflage aktualisiert. Sie werden automatisch weitergeleitet...</p>
<span class="ihk-badge ihk-badge-success">Projektarbeit & Fachgespräch (50% der AP2)</span> <a href="../11_betriebliche_projektarbeit_guide/index.html" class="ihk-btn ihk-btn-primary font-semibold">Direkt zum neuen Modul →</a>
</div>
<h1 class="text-3xl font-extrabold text-sky-400 mb-2">AP2 Modul 06: Betriebliche Projektarbeit (40h) & Fachgespräch</h1>
<p class="text-slate-300 text-lg leading-relaxed mb-6">Projektphasen, 40h-Zeitbudget, Projektantrag, Ist-Analyse, Nutzwertanalyse, Wirtschaftlichkeitsrechnung, Präsentationstechnik & typische IHK-Prüferfragen.</p>
<!-- Fachtheorie & Wissen -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin-bottom: 24px;">
<h2 style="color: #38bdf8; margin-top: 0;">🏆 Betriebliche Projektarbeit (40h) & Fachgespräch</h2>
<p style="color: #cbd5e1; line-height: 1.6;">
Die betriebliche Projektarbeit mit anschließender Präsentation und Fachgespräch macht <strong>50 % der gesamten Abschlussprüfung Teil 2</strong> aus!
</p>
<h3 style="color: #cbd5e1; margin-top: 20px;">1. Zeitbudget der 40-Stunden-Projektarbeit (FISI)</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<ul style="color: #cbd5e1; line-height: 1.8; margin: 0; padding-left: 20px;">
<li><strong>Phase 1: Projektinitialisierung & Analyse (ca. 8-10 Stunden):</strong> Ist-Analyse, Soll-Konzept, Schnittstellenanalyse, Nutzwertanalyse alternativer Lösungen, Wirtschaftlichkeitsanalyse (TCO, Amortisationsdauer).</li>
<li><strong>Phase 2: Entwurf & Planung (ca. 6-8 Stunden):</strong> Netzwerktopologie, Adresskonzept, Sicherheitskonzept, Bereitstellungsplan.</li>
<li><strong>Phase 3: Durchführung & Implementierung (ca. 14-16 Stunden):</strong> Installation, Konfiguration, Systemintegration, Automatisierungsskripte.</li>
<li><strong>Phase 4: Qualitätssicherung & Test (ca. 4-6 Stunden):</strong> Funktionstests, Lasttests, Abnahmetests, Soll-Ist-Vergleich.</li>
<li><strong>Phase 5: Dokumentation (ca. 8-10 Stunden):</strong> Erstellung des praxisbezogenen Projektberichts (max. 15-20 Seiten zzgl. Anhang) und Kundendokumentation.</li>
</ul>
</div>
<h3 style="color: #cbd5e1; margin-top: 20px;">2. Das IHK-Fachgespräch (15 Min. Präsentation + 15 Min. Fachgespräch)</h3>
<p style="color: #cbd5e1; line-height: 1.6;">
Die Prüfer hinterfragen Ihre Entscheidungen: <em>"Warum haben Sie RAID 6 statt RAID 10 gewählt?"</em>, <em>"Wie ist der Datenschutz nach Art. 32 DSGVO abgesichert?"</em>, <em>"Welche Amortisationszeit ergibt die Wirtschaftlichkeitsrechnung?"</em>. Ziel ist der Nachweis vollständiger Handlungskompetenz.
</p>
</div>
<!-- Interaktives Tool falls vorhanden -->
<!-- Fragenpool -->
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
<a href="../05_wiso_arbeitsrecht_und_wirtschaft/index.html" class="text-sky-400 hover:text-sky-300 font-semibold">← Vorheriges Modul</a>
<a href="../../../dashboard.html" class="text-slate-400 hover:text-white">🏠 Übersicht</a>
<a href="../07_ap2_teil_1_probepruefung/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
</div>
</div> </div>
<script src="../../../assets/courses_manifest.js"></script>
<script src="../../../assets/course_sidebar.js"></script>
</body> </body>
</html> </html>

View file

@ -1,167 +1,17 @@
<!DOCTYPE html> <!DOCTYPE html>
<html lang="de"> <html lang="de">
<head> <head>
<link rel="icon" type="image/svg+xml" href="../../../assets/favicon.svg">
<meta charset="UTF-8"> <meta charset="UTF-8">
<title>IHK AP2 Teil 1: Planen und Umsetzen eines IT-Systems</title> <meta http-equiv="refresh" content="0; url=../12_ap2_gesamtpruefung_simulation/index.html">
<title>Weiterleitung zum aktualisierten Modul...</title>
<link rel="stylesheet" href="../../../assets/style.css"> <link rel="stylesheet" href="../../../assets/style.css">
<link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css"> <link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css">
</head> </head>
<body class="bg-slate-900 text-slate-100 font-sans p-6"> <body class="bg-slate-900 text-slate-100 p-8 flex items-center justify-center min-h-screen">
<div class="container mx-auto max-w-4xl"> <div class="text-center max-w-lg bg-slate-800 p-8 rounded-xl border border-slate-700">
<div class="flex justify-between items-center mb-6"> <h2 class="text-xl font-bold text-sky-400 mb-4">Modul aktualisiert</h2>
<a href="../../../dashboard.html" class="text-rose-400 hover:text-rose-300 font-semibold">← Zurück zum Dashboard</a> <p class="text-slate-300 mb-6">Dieses Modul wurde im Rahmen der ZPA Nord-West 2. Auflage aktualisiert. Sie werden automatisch weitergeleitet...</p>
<span class="ihk-badge ihk-badge-danger">AP2 FISI Fachqualifikation 1</span> <a href="../12_ap2_gesamtpruefung_simulation/index.html" class="ihk-btn ihk-btn-primary font-semibold">Direkt zum neuen Modul →</a>
</div>
<h1 class="text-3xl font-extrabold text-rose-400 mb-2">Probeprüfung AP2 Teil 1: Planen und Umsetzen eines IT-Systems</h1>
<p class="text-slate-400 mb-6">Authentische Simulation (Winter 2023/24 AO 2020) | Bearbeitungszeit: 90 Minuten | 100 Punkte</p>
<!-- Timer & Exam Banner -->
<script src="../../../assets/ihk_tools/ihk_question_bank.js"></script>
<script src="../../../assets/ihk_tools/exam_engine.js"></script>
<script>
window.exam = new IhkExamEngine({
title: "IHK AP2 Teil 1: Planen und Umsetzen eines IT-Systems (FISI)",
examType: "AP2_T1",
durationMinutes: 90,
totalPoints: 100
});
</script>
<!-- AUFGABE 1: VDI & CLOUD DESKTOPS -->
<div class="ihk-exam-task" data-title="Aufgabe 1: Virtual Desktop Infrastructure (VDI) & Thin Clients" data-points="25" style="background: #1e293b; padding: 24px; border-radius: 12px; border: 1px solid #334155; margin-bottom: 24px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<h3 style="color: #f87171; margin: 0;">1. Aufgabe: VDI, Thin Clients & Gruppenrichtlinien</h3>
<span class="ihk-badge">25 Punkte</span>
</div>
<p style="color: #cbd5e1; font-size: 0.95rem; line-height: 1.6;">
Ein Unternehmen plant die Ablösung klassischer Desktop-PCs durch eine Virtual Desktop Infrastructure (VDI) mit zentralem Server-Cluster und Thin Clients.
</p>
<div class="ihk-input-group">
<label>a) Nenne 3 wesentliche administrative oder wirtschaftliche Vorteile einer zentralen VDI-Lösung gegenüber Fat Clients. (6 Punkte)</label>
<textarea class="ihk-input" rows="3" placeholder="Vorteile..."></textarea>
</div>
<div class="ihk-input-group">
<label>b) Wie wird sichergestellt, dass Konfigurationsänderungen auf allen virtuellen Desktops konsistent erzwungen werden? Erläutere die GPO-Verarbeitungshierarchie (LSDOU). (10 Punkte)</label>
<textarea class="ihk-input" rows="4" placeholder="GPO-Hierarchie..."></textarea>
</div>
<div class="ihk-input-group">
<label>c) Welche Netzwerkprotokolle (z. B. RDP, Blast, PCoIP) und Bandbreitenanforderungen sind für flüssiges Arbeiten im VDI-Umfeld notwendig? (9 Punkte)</label>
<textarea class="ihk-input" rows="3" placeholder="Protokolle & Bandbreite..."></textarea>
</div>
<div class="ihk-task-solution" style="display: none; margin-top: 16px; padding: 16px; background: #0f172a; border-left: 4px solid #4ade80; border-radius: 6px;">
<h4 style="color: #4ade80; margin-top: 0;">Offizielle IHK-Musterlösung:</h4>
<p style="color: #cbd5e1; font-size: 0.9rem; line-height: 1.6;">
<strong>a) (6 Pkt.):</strong> 1. Zentrale Administration, Rollout und Patchmanagement am Server; 2. Geringere Hardware- und Energiekosten an den Endgeräten (Thin Clients brauchen wenig Strom); 3. Höhere Datensicherheit, da keine Unternehmensdaten lokal auf den Clients gespeichert werden.<br>
<strong>b) (10 Pkt.):</strong> Active Directory Gruppenrichtlinien (GPOs). Verarbeitungsreihenfolge: <strong>L</strong>okal &rarr; <strong>S</strong>ite (Standort) &rarr; <strong>D</strong>omain (Domäne) &rarr; <strong>OU</strong> (Organisationseinheit). Die unterste OU überschreibt übergeordnete Richtlinien, es sei denn, eine Richtlinie ist auf 'Erzwungen' (Enforced) gesetzt.<br>
<strong>c) (9 Pkt.):</strong> RDP (Remote Desktop Protocol), VMware Blast Extreme oder Teradici PCoIP. Bandbreitenbedarf ca. 1,5 bis 3 Mbit/s pro Office-User, bei Multimedia/Video bis zu 5-10 Mbit/s mit niedriger Latenz (&lt; 50 ms).
</p>
</div>
</div>
<!-- AUFGABE 2: KRYPTOGRAPHIE & IT-SICHERHEIT -->
<div class="ihk-exam-task" data-title="Aufgabe 2: IT-Sicherheit & Verschlüsselungsverfahren" data-points="22" style="background: #1e293b; padding: 24px; border-radius: 12px; border: 1px solid #334155; margin-bottom: 24px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<h3 style="color: #f87171; margin: 0;">2. Aufgabe: Symmetrische Verschlüsselung & Integrität</h3>
<span class="ihk-badge">22 Punkte</span>
</div>
<p style="color: #cbd5e1; font-size: 0.95rem; line-height: 1.6;">
Zur Sicherung von Backup-Dateien und Festplatten-Images werden Verschlüsselungsverfahren eingesetzt.
</p>
<div class="ihk-input-group">
<label>a) Definiere die drei Kern-Schutzziele: Vertraulichkeit, Integrität und Authentizität. (6 Punkte)</label>
<textarea class="ihk-input" rows="3" placeholder="Definitionen..."></textarea>
</div>
<div class="ihk-input-group">
<label>b) Warum gilt das veraltete DES-Verfahren (Data Encryption Standard) heute als unsicher und warum ist AES (Advanced Encryption Standard) der empfohlene Nachfolger? Gehe auf die Schlüssellängen ein. (16 Punkte)</label>
<textarea class="ihk-input" rows="4" placeholder="DES vs. AES..."></textarea>
</div>
<div class="ihk-task-solution" style="display: none; margin-top: 16px; padding: 16px; background: #0f172a; border-left: 4px solid #4ade80; border-radius: 6px;">
<h4 style="color: #4ade80; margin-top: 0;">Offizielle IHK-Musterlösung:</h4>
<p style="color: #cbd5e1; font-size: 0.9rem; line-height: 1.6;">
<strong>a) (6 Pkt.):</strong> <em>Vertraulichkeit:</em> Daten können nur von autorisierten Personen gelesen werden. <em>Integrität:</em> Daten wurden nicht unbemerkt manipuliert oder beschädigt. <em>Authentizität:</em> Der Urheber/Absender ist zweifelsfrei nachgewiesen.<br>
<strong>b) (16 Pkt.):</strong> DES nutzt eine effektive Schlüssellänge von lediglich <strong>56 Bit</strong>. Ein 56-Bit-Schlüssel kann mit moderner Rechenleistung in wenigen Stunden per Brute-Force-Angriff geknackt werden. AES bietet Schlüssellängen von <strong>128, 192 oder 256 Bit</strong>. Selbst bei 128 Bit existieren ^{128} pprox 3{,}4 imes 10^{38}$ Kombinationen, was Brute-Force-Angriffe nach heutigem Stand der Wissenschaft unmöglich macht.
</p>
</div>
</div>
<!-- AUFGABE 3: SCRIPTING & AUTOMATION -->
<div class="ihk-exam-task" data-title="Aufgabe 3: Skripting & Mittelwertberechnung" data-points="27" style="background: #1e293b; padding: 24px; border-radius: 12px; border: 1px solid #334155; margin-bottom: 24px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<h3 style="color: #f87171; margin: 0;">3. Aufgabe: PowerShell / Python Server-Monitoring-Skript</h3>
<span class="ihk-badge">27 Punkte</span>
</div>
<p style="color: #cbd5e1; font-size: 0.95rem; line-height: 1.6;">
Ein Array <code>stundenWerte</code> enthält 24 stündliche CPU-Auslastungswerte (0 bis 23 Uhr) eines Servers. Schreibe ein Skript oder Pseudocode, das:<br>
1. Den Mittelwert des gesamten Tages berechnet,<br>
2. Den Mittelwert des Vormittags (Stunden 0 bis 11) berechnet,<br>
3. Den Mittelwert des Nachmittags (Stunden 12 bis 23) berechnet,<br>
4. Eine Warnung ausgibt, falls ein Mittelwert > 80% liegt. (27 Punkte)
</p>
<textarea class="ihk-input" rows="8" placeholder="Skriptcode hier eingeben..."></textarea>
<div class="ihk-task-solution" style="display: none; margin-top: 16px; padding: 16px; background: #0f172a; border-left: 4px solid #4ade80; border-radius: 6px;">
<h4 style="color: #4ade80; margin-top: 0;">Offizielle IHK-Musterlösung:</h4>
<pre style="color: #38bdf8; font-family: monospace; font-size: 0.85rem;">
int sumGesamt = 0; int sumVormittag = 0; int sumNachmittag = 0;
for (int i = 0; i &lt; 24; i++) {
sumGesamt += stundenWerte[i];
if (i &lt; 12) { sumVormittag += stundenWerte[i]; }
else { sumNachmittag += stundenWerte[i]; }
}
double mwGesamt = sumGesamt / 24.0;
double mwVormittag = sumVormittag / 12.0;
double mwNachmittag = sumNachmittag / 12.0;
if (mwGesamt &gt; 80 || mwVormittag &gt; 80 || mwNachmittag &gt; 80) {
print("WARNUNG: Hohe Serverauslastung festgestellt!");
}
</pre>
</div>
</div>
<!-- AUFGABE 4: BACKUP-STRATEGIEN & WORM -->
<div class="ihk-exam-task" data-title="Aufgabe 4: Backup-Konzepte & Bandlaufwerke" data-points="26" style="background: #1e293b; padding: 24px; border-radius: 12px; border: 1px solid #334155; margin-bottom: 24px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<h3 style="color: #f87171; margin: 0;">4. Aufgabe: Backup-Wiederherstellung & Compliance</h3>
<span class="ihk-badge">26 Punkte</span>
</div>
<p style="color: #cbd5e1; font-size: 0.95rem; line-height: 1.6;">
Ein Unternehmen sichert sonntags eine Vollsicherung (V1 bis V5) und montags bis samstags differenzielle Sicherungen (D1 bis D6). Am Donnerstag fällt das System aus.
</p>
<div class="ihk-input-group">
<label>a) Welche Bänder werden zur vollständigen Wiederherstellung benötigt und in welcher Reihenfolge müssen sie eingespielt werden? (12 Punkte)</label>
<textarea class="ihk-input" rows="3" placeholder="Bänder und Reihenfolge..."></textarea>
</div>
<div class="ihk-input-group">
<label>b) Zur Einhaltung der GoBD müssen Finanzdaten unveränderbar archiviert werden. Erläutere das WORM-Prinzip (Write Once Read Many). (14 Punkte)</label>
<textarea class="ihk-input" rows="3" placeholder="WORM-Erläuterung..."></textarea>
</div>
<div class="ihk-task-solution" style="display: none; margin-top: 16px; padding: 16px; background: #0f172a; border-left: 4px solid #4ade80; border-radius: 6px;">
<h4 style="color: #4ade80; margin-top: 0;">Offizielle IHK-Musterlösung:</h4>
<p style="color: #cbd5e1; font-size: 0.9rem; line-height: 1.6;">
<strong>a) (12 Pkt.):</strong> Es werden <strong>nur 2 Bänder</strong> benötigt:<br>
1. Die letzte <strong>Vollsicherung vom Sonntag</strong>.<br>
2. Die letzte <strong>differenzielle Sicherung vom Mittwochabend</strong> (enthält alle Änderungen seit Sonntag).<br>
<em>(Hinweis: Bei inkrementeller Sicherung hätte man alle Bänder So, Mo, Di, Mi gebraucht!)</em><br>
<strong>b) (14 Pkt.):</strong> WORM (Write Once Read Many) verhindert technisch jede nachträgliche Veränderung, Manipulation oder vorzeitige Löschung der Daten nach dem ersten Schreibvorgang. Dies erfüllt die rechtlichen Vorgaben zur revisionssicheren Archivierung nach GoBD und HGB.
</p>
</div>
</div>
</div> </div>
<script src="../../../assets/courses_manifest.js"></script>
<script src="../../../assets/course_sidebar.js"></script>
</body> </body>
</html> </html>

View file

@ -0,0 +1,9 @@
# AP2 Modul 07: Enterprise SQL & Datenbank-Administration (LF 10/11)
**Prüfungsbereich:** Exklusiv in AP2
ZPA-SQL-Syntax: DDL (CREATE/ALTER TABLE), DCL (GRANT/REVOKE), Multi-Table JOINs, DATEDIFF & ACID.
## Relevante Prüfungsthemen nach dem offiziellen ZPA Nord-West Prüfungskatalog (2. Auflage)
- Fundierte Fachtheorie und Praxis-Transfer für Fachinformatiker Systemintegration (FISI).
- Authentische Prüfungsfragen mit offiziellem IHK-Erwartungshorizont und Punkteverteilung.

View file

@ -0,0 +1,264 @@
<!DOCTYPE html>
<html lang="de">
<head>
<link rel="icon" type="image/svg+xml" href="../../../assets/favicon.svg">
<meta charset="UTF-8">
<title>AP2 Modul 07: Enterprise SQL & Datenbank-Administration (LF 10/11)</title>
<link rel="stylesheet" href="../../../assets/style.css">
<link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css">
</head>
<body class="bg-slate-900 text-slate-100 font-sans p-6">
<div class="container mx-auto max-w-4xl">
<div class="flex justify-between items-center mb-6">
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary text-sm">← Zurück zum Dashboard</a>
<span class="ihk-badge ihk-badge-success">Exklusiv in AP2</span>
</div>
<h1 class="text-3xl font-extrabold text-sky-400 mb-2">AP2 Modul 07: Enterprise SQL & Datenbank-Administration (LF 10/11)</h1>
<p class="text-slate-300 text-lg leading-relaxed mb-6">ZPA-SQL-Syntax: DDL (CREATE/ALTER TABLE), DCL (GRANT/REVOKE), Multi-Table JOINs, DATEDIFF & ACID.</p>
<!-- Fachtheorie & Wissen -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin-bottom: 24px;">
<h2 style="color: #38bdf8; margin-top: 0;">🗄️ Enterprise SQL & Datenbank-Administration (LF 10 & 11)</h2>
<p style="color: #cbd5e1; line-height: 1.6;">
<span style="color: #facc15; font-weight: bold;">Offizieller ZPA 2. Auflage Standard:</span> Alle SQL-Befehle (DDL, DML, DCL, Joins, Unterabfragen und spezifische ZPA-Funktionen wie <code>DATEDIFF</code>) wurden aus AP1 entfernt und sind nun <strong>exklusiv in der AP2</strong> verortet!
</p>
<h3 style="color: #cbd5e1; margin-top: 20px;">1. DDL: Tabellenstruktur & Constraints</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<pre style="background: #1e293b; padding: 12px; border-radius: 6px; color: #38bdf8; overflow-x: auto; margin: 0;">
CREATE TABLE mitarbeiter (
mit_nr INTEGER PRIMARY KEY,
nachname VARCHAR(50) NOT NULL,
vorname VARCHAR(50) NOT NULL,
gehalt DECIMAL(10,2) CHECK (gehalt &gt; 0),
eintrittsdatum DATE NOT NULL,
abt_nr INTEGER,
CONSTRAINT fk_abt FOREIGN KEY (abt_nr)
REFERENCES abteilung(abt_nr) ON DELETE RESTRICT
);
-- Tabellenstruktur nachträglich ändern
ALTER TABLE mitarbeiter ADD COLUMN email VARCHAR(100);
ALTER TABLE mitarbeiter MODIFY COLUMN nachname VARCHAR(80);
ALTER TABLE mitarbeiter DROP COLUMN email;
</pre>
</div>
<h3 style="color: #cbd5e1; margin-top: 20px;">2. DCL: Benutzer- & Rechteverwaltung</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<pre style="background: #1e293b; padding: 12px; border-radius: 6px; color: #4ade80; overflow-x: auto; margin: 0;">
-- Benutzer anlegen & Rechte vergeben
CREATE USER 'reporting'@'localhost' IDENTIFIED BY 'Start2025!Secure';
GRANT SELECT, INSERT ON unternehmen.* TO 'reporting'@'localhost' WITH GRANT OPTION;
REVOKE INSERT ON unternehmen.* FROM 'reporting'@'localhost';
</pre>
</div>
<h3 style="color: #cbd5e1; margin-top: 20px;">3. Multi-Table JOINs, Aggregation & ZPA-Funktionen</h3>
<p style="color: #cbd5e1; line-height: 1.6;">
- <strong>JOINs:</strong> <code>INNER JOIN</code> (nur übereinstimmende Paare), <code>LEFT JOIN</code> (alle Zeilen der linken Tabelle, auch ohne Treffer rechts).<br>
- <strong>Datumsdifferenz:</strong> <code>DATEDIFF(end_datum, start_datum)</code> berechnet Tage zwischen Daten.<br>
- <strong>GROUP BY & HAVING:</strong> <code>SELECT abt_nr, AVG(gehalt) FROM mitarbeiter GROUP BY abt_nr HAVING COUNT(*) &gt;= 5;</code><br>
- <strong>ACID:</strong> Atomicity (Alles oder Nichts), Consistency (Konsistenz), Isolation (Transaktionsisolierung), Durability (Dauerhaftigkeit).
</p>
</div>
<!-- Interaktives Tool falls vorhanden -->
<!-- Fragenpool -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin: 32px 0;">
<h2 style="color: #38bdf8; margin-top: 0; font-size: 1.4rem; display: flex; align-items: center; gap: 10px;">
<span>📝</span> Authentische IHK-Prüfungsaufgaben nach ZPA 2. Auflage
</h2>
<p style="color: #94a3b8; font-size: 0.9rem; margin-bottom: 20px;">
Bearbeiten Sie die Aufgaben und vergleichen Sie Ihre Antwort mit dem offiziellen Erwartungshorizont:
</p>
<div style="display: flex; flex-direction: column; gap: 20px;">
<div class="ihk-exam-task" data-title="SQL DDL CREATE TABLE mit Constraints" data-points="10" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">SQL DDL CREATE TABLE mit Constraints</strong>
<span class="ihk-badge ihk-badge-success">10 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Für eine Ticket-Verwaltung soll die Tabelle "ticket" per SQL angelegt werden: id (Ganzzahl, Primärschlüssel mit Autoinkrement), titel (Text, max. 100 Zeichen, Pflichtfeld), status (Text, Standardwert "OFFEN"), prioritaet (Ganzzahl, Werte nur von 1 bis 5 erlaubt), ersteller_id (Ganzzahl, Fremdschlüssel auf benutzer.id mit Kaskadierung beim Löschen).
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Schreiben Sie das syntaktisch korrekte SQL-Statement nach ANSI/ISO-Standard.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="SQL DML Aggregation und GROUP BY mit HAVING" data-points="10" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">SQL DML Aggregation und GROUP BY mit HAVING</strong>
<span class="ihk-badge ihk-badge-success">10 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Gegeben sind die Tabellen kunden (id, name, stadt) und bestellungen (id, kunde_id, betrag, datum).
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Formulieren Sie eine SQL-Abfrage, die den Kundennamen und die Gesamtsumme aller Bestellungen für jeden Kunden ausgibt, dessen Gesamtbestellwert 10.000 EUR überschreitet. Das Ergebnis soll absteigend nach der Summe sortiert sein.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="SQL JOIN-Typen INNER vs LEFT vs FULL" data-points="6" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">SQL JOIN-Typen INNER vs LEFT vs FULL</strong>
<span class="ihk-badge ihk-badge-success">6 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
In einer Datenbank existieren mitarbeiter (id, name, abt_id) und abteilungen (id, bezeichnung). Einige Mitarbeiter haben keine Abteilung, und einige Abteilungen haben keine Mitarbeiter.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erläutern Sie den Unterschied im Abfrageergebnis zwischen INNER JOIN und LEFT OUTER JOIN bezüglich der Ergebniszeilen.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="SQL Transaktionen ACID-Eigenschaften" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">SQL Transaktionen ACID-Eigenschaften</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Bei einer Banküberweisung von 500 EUR von Konto A auf Konto B wird ein Transaktionsblock ausgeführt.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Nennen und erläutern Sie die vier ACID-Eigenschaften und beschreiben Sie, was passiert, wenn nach dem Abbuchen von Konto A das Datenbanksystem abstürzt.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="SQL Subqueries mit IN und EXISTS" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">SQL Subqueries mit IN und EXISTS</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Gegeben sind die Tabellen kunden (id, name, land) und bestellungen (id, kunde_id, summe).
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Formulieren Sie zwei SQL-Abfragen, die alle Kundennamen ausgeben, die mindestens eine Bestellung getätigt haben: Einmal unter Verwendung einer Subquery mit IN und einmal mit EXISTS.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="SQL Window Functions ROW_NUMBER & RANK" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">SQL Window Functions ROW_NUMBER & RANK</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
In einer Vertriebsdatenbank sollen die Top-3-Umsätze jedes Verkäufers ermittelt werden.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erläutern Sie die Funktionsweise von SQL Window Functions gegenüber GROUP BY und erklären Sie die Syntax von ROW_NUMBER() OVER (PARTITION BY ... ORDER BY ...).
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="SQL Datums- und Zeitfunktionen (DATEDIFF & DATEADD)" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">SQL Datums- und Zeitfunktionen (DATEDIFF & DATEADD)</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
In einem Support-System (Tabelle tickets mit id, erstelldatum, schliessdatum) soll die Bearbeitungsdauer analysiert werden.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Formulieren Sie eine SQL-Abfrage nach ZPA-Standard, die für alle im laufenden Jahr geschlossenen Tickets die Ticket-ID und die Bearbeitungsdauer in Tagen berechnet (unter Verwendung von DATEDIFF) und nur Tickets anzeigt, deren Bearbeitung länger als 14 Tage gedauert hat.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Statistische SQL-Funktionen (STDDEV, VARIANCE, CORR)" data-points="6" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Statistische SQL-Funktionen (STDDEV, VARIANCE, CORR)</strong>
<span class="ihk-badge ihk-badge-success">6 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Im Rahmen einer Performance-Analyse von Server-Antwortzeiten (Tabelle server_metrics mit server_id, response_time_ms, cpu_load) werden statistische Kennzahlen benötigt.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erläutern Sie die Aufgaben und mathematische Bedeutung der SQL-Aggregatfunktionen STDDEV(), VARIANCE() und CORR() und beschreiben Sie einen Anwendungsfall zur Erkennung von Lastanomalien.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
</div>
</div>
<!-- Footer Navigation mit echten Buttons -->
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
<a href="../06_backup_dr_und_hochverfuegbarkeit/index.html" class="ihk-btn ihk-btn-secondary font-semibold">← Vorheriges Modul</a>
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary">🏠 Kursübersicht</a>
<a href="../08_lf12_virtualisierung_und_cloud/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
</div>
</div>
<script src="../../../assets/courses_manifest.js"></script>
<script src="../../../assets/course_sidebar.js"></script>
</body>
</html>

View file

@ -1,127 +1,17 @@
<!DOCTYPE html> <!DOCTYPE html>
<html lang="de"> <html lang="de">
<head> <head>
<link rel="icon" type="image/svg+xml" href="../../../assets/favicon.svg">
<meta charset="UTF-8"> <meta charset="UTF-8">
<title>IHK AP2 Teil 2: Analyse und Entwicklung von Netzwerken</title> <meta http-equiv="refresh" content="0; url=../12_ap2_gesamtpruefung_simulation/index.html">
<title>Weiterleitung zum aktualisierten Modul...</title>
<link rel="stylesheet" href="../../../assets/style.css"> <link rel="stylesheet" href="../../../assets/style.css">
<link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css"> <link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css">
</head> </head>
<body class="bg-slate-900 text-slate-100 font-sans p-6"> <body class="bg-slate-900 text-slate-100 p-8 flex items-center justify-center min-h-screen">
<div class="container mx-auto max-w-4xl"> <div class="text-center max-w-lg bg-slate-800 p-8 rounded-xl border border-slate-700">
<div class="flex justify-between items-center mb-6"> <h2 class="text-xl font-bold text-sky-400 mb-4">Modul aktualisiert</h2>
<a href="../../../dashboard.html" class="text-rose-400 hover:text-rose-300 font-semibold">← Zurück zum Dashboard</a> <p class="text-slate-300 mb-6">Dieses Modul wurde im Rahmen der ZPA Nord-West 2. Auflage aktualisiert. Sie werden automatisch weitergeleitet...</p>
<span class="ihk-badge ihk-badge-danger">AP2 FISI Fachqualifikation 2</span> <a href="../12_ap2_gesamtpruefung_simulation/index.html" class="ihk-btn ihk-btn-primary font-semibold">Direkt zum neuen Modul →</a>
</div>
<h1 class="text-3xl font-extrabold text-rose-400 mb-2">Probeprüfung AP2 Teil 2: Netzwerkanalyse &amp; Sicherheit</h1>
<p class="text-slate-400 mb-6">Authentische Simulation (Winter 2023/24 AO 2020) | Bearbeitungszeit: 90 Minuten | 100 Punkte</p>
<script src="../../../assets/ihk_tools/ihk_question_bank.js"></script>
<script src="../../../assets/ihk_tools/exam_engine.js"></script>
<script>
window.exam = new IhkExamEngine({
title: "IHK AP2 Teil 2: Analyse und Entwicklung von Netzwerken (FISI)",
examType: "AP2_T2",
durationMinutes: 90,
totalPoints: 100
});
</script>
<!-- AUFGABE 1: ROUTING-TABELLEN & FEHLERANALYSE -->
<div class="ihk-exam-task" data-title="Aufgabe 1: Routing-Tabellen &amp; Next-Hop Analyse" data-points="25" style="background: #1e293b; padding: 24px; border-radius: 12px; border: 1px solid #334155; margin-bottom: 24px;">
<h3 style="color: #f87171; margin-top: 0;">1. Aufgabe: Routing-Tabellen, Dynamisches Routing &amp; Metrik (25 Punkte)</h3>
<p style="color: #cbd5e1; font-size: 0.95rem; line-height: 1.6;">
In einer Router-Konfiguration für Standorte in Hamburg und München können Clients das Remotenetz nicht erreichen.
</p>
<div class="ihk-input-group">
<label>a) Erläutere den Unterschied zwischen statischem Routing und dynamischen Routing-Protokollen (z. B. OSPF) hinsichtlich Ausfallsicherheit und Konfigurationsaufwand. (10 Punkte)</label>
<textarea class="ihk-input" rows="3"></textarea>
</div>
<div class="ihk-input-group">
<label>b) Was versteht man unter einer Routing-Metrik (z. B. Cost, Hop-Count) und wie beeinflusst sie die Pfadwahl? (15 Punkte)</label>
<textarea class="ihk-input" rows="3"></textarea>
</div>
<div class="ihk-task-solution" style="display: none; margin-top: 16px; padding: 16px; background: #0f172a; border-left: 4px solid #4ade80; border-radius: 6px;">
<h4 style="color: #4ade80; margin-top: 0;">Offizielle IHK-Musterlösung:</h4>
<p style="color: #cbd5e1; font-size: 0.9rem; line-height: 1.6;">
<strong>a) (10 Pkt.):</strong> Statisches Routing muss bei jeder Netzänderung manuell gepflegt werden und bietet keine automatische Umleitung bei Leitungsausfall. Dynamisches Routing (OSPF) tauscht automatisch Link-State-Advertisements aus, berechnet bei Ausfällen binnen Sekunden Alternativrouten und skaliert in großen Netzen.<br>
<strong>b) (15 Pkt.):</strong> Die Metrik ist ein numerischer Wert zur Bewertung der Güte eines Pfades. OSPF berechnet die Metrik (Cost) invers zur Bandbreite (Cost = 10^8 / Bandbreite). Der Pfad mit der geringsten Gesamtsumme der Metriken wird in die Routingtabelle übernommen.
</p>
</div>
</div>
<!-- AUFGABE 2: NAT/PAT & FIREWALLING -->
<div class="ihk-exam-task" data-title="Aufgabe 2: NAT/PAT &amp; Port-Mapping" data-points="25" style="background: #1e293b; padding: 24px; border-radius: 12px; border: 1px solid #334155; margin-bottom: 24px;">
<h3 style="color: #f87171; margin-top: 0;">2. Aufgabe: Network Address Translation &amp; Port Forwarding (25 Punkte)</h3>
<p style="color: #cbd5e1; font-size: 0.95rem; line-height: 1.6;">
Ein interner Client (192.168.10.15) greift über einen Router mit öffentlicher IP 203.0.113.5 auf einen Webserver im Internet zu.
</p>
<div class="ihk-input-group">
<label>a) Erläutere die Arbeitsweise von Port Address Translation (PAT / NAPT / Masquerading). Warum wählt der Router für die ausgehende Verbindung einen dynamischen Quell-Port? (15 Punkte)</label>
<textarea class="ihk-input" rows="4"></textarea>
</div>
<div class="ihk-input-group">
<label>b) Bestimme Quell-IP, Quell-Port, Ziel-IP und Ziel-Port des Pakets, nachdem es den Router in Richtung Internet verlassen hat. (10 Punkte)</label>
<textarea class="ihk-input" rows="3"></textarea>
</div>
<div class="ihk-task-solution" style="display: none; margin-top: 16px; padding: 16px; background: #0f172a; border-left: 4px solid #4ade80; border-radius: 6px;">
<h4 style="color: #4ade80; margin-top: 0;">Offizielle IHK-Musterlösung:</h4>
<p style="color: #cbd5e1; font-size: 0.9rem; line-height: 1.6;">
<strong>a) (15 Pkt.):</strong> Mehrere interne Clients teilen sich eine einzige öffentliche IPv4-Adresse. Der Router ersetzt die private Quell-IP durch seine öffentliche IP und vergibt einen eindeutigen Quell-Port (z. B. 54321). In einer internen NAT-Tabelle merkt sich der Router dieses Mapping, um eintreffende Antwortpakete wieder dem korrekten internen Client zuzuordnen.<br>
<strong>b) (10 Pkt.):</strong> Quell-IP: 203.0.113.5 | Quell-Port: Beliebiger dynamischer Port zwischen 1024 und 65535 | Ziel-IP: IP des Webservers (z. B. 198.51.100.2) | Ziel-Port: 443 (HTTPS) bzw. 80 (HTTP).
</p>
</div>
</div>
<!-- AUFGABE 3: VLAN-ISOLATION & DNS TROUBLESHOOTING -->
<div class="ihk-exam-task" data-title="Aufgabe 3: VLAN-Troubleshooting &amp; DNS" data-points="25" style="background: #1e293b; padding: 24px; border-radius: 12px; border: 1px solid #334155; margin-bottom: 24px;">
<h3 style="color: #f87171; margin-top: 0;">3. Aufgabe: VLAN-Fehleranalyse &amp; Namensauflösung (25 Punkte)</h3>
<p style="color: #cbd5e1; font-size: 0.95rem; line-height: 1.6;">
Ein Client an Port Fa0/5 kann Webseiten im Internet nicht aufrufen. Ein `ping 8.8.8.8` schlägt fehl, und `nslookup www.ihk.de` meldet einen Timeout.
</p>
<div class="ihk-input-group">
<label>a) Der Switchport Fa0/5 ist in VLAN 20 konfiguriert, das Default Gateway des Routers befindet sich jedoch in VLAN 10. Erläutere die Ursache und zwei Möglichkeiten zur Fehlerbehebung. (15 Punkte)</label>
<textarea class="ihk-input" rows="4"></textarea>
</div>
<div class="ihk-input-group">
<label>b) Erkläre den Unterschied zwischen rekursiver und iterativer DNS-Abfrage. (10 Punkte)</label>
<textarea class="ihk-input" rows="3"></textarea>
</div>
<div class="ihk-task-solution" style="display: none; margin-top: 16px; padding: 16px; background: #0f172a; border-left: 4px solid #4ade80; border-radius: 6px;">
<h4 style="color: #4ade80; margin-top: 0;">Offizielle IHK-Musterlösung:</h4>
<p style="color: #cbd5e1; font-size: 0.9rem; line-height: 1.6;">
<strong>a) (15 Pkt.):</strong> Ursache: Broadcast-Isolation durch VLAN-Trennung auf Layer 2. Ohne Inter-VLAN Routing können Hosts aus VLAN 20 nicht mit VLAN 10 kommunizieren. Behebung: 1. Port Fa0/5 in VLAN 10 verschieben; oder 2. Router-on-a-Stick bzw. Layer-3 Switch SVI für VLAN 20 konfigurieren.<br>
<strong>b) (10 Pkt.):</strong> <em>Rekursiv:</em> Der Client fragt seinen DNS-Server, und der Server übernimmt die vollständige Auflösung bis zur endgültigen Antwort. <em>Iterativ:</em> Der DNS-Server antwortet mit dem Verweis (Referral) auf den nächsten zuständigen Nameserver (z.B. Root-Server &rarr; TLD-Server &rarr; autoritativer Nameserver).
</p>
</div>
</div>
<!-- AUFGABE 4: DMZ & BSI IT-GRUNDSCHUTZ -->
<div class="ihk-exam-task" data-title="Aufgabe 4: DMZ &amp; BSI IT-Grundschutz" data-points="25" style="background: #1e293b; padding: 24px; border-radius: 12px; border: 1px solid #334155; margin-bottom: 24px;">
<h3 style="color: #f87171; margin-top: 0;">4. Aufgabe: Zwei-Firewall-DMZ &amp; Schutzbedarfsfeststellung (25 Punkte)</h3>
<p style="color: #cbd5e1; font-size: 0.95rem; line-height: 1.6;">
Zur Absicherung öffentlich erreichbarer Web- und Mailserver wird eine Demilitarisierte Zone (DMZ) eingerichtet.
</p>
<div class="ihk-input-group">
<label>a) Skizziere bzw. beschreibe den Aufbau einer Zwei-Firewall-DMZ und begründe, warum zwei Firewalls unterschiedlicher Hersteller eingesetzt werden sollten. (15 Punkte)</label>
<textarea class="ihk-input" rows="4"></textarea>
</div>
<div class="ihk-input-group">
<label>b) Bestimme nach BSI IT-Grundschutz den Schutzbedarf (normal, hoch, sehr hoch) für Verfügbarkeit, Vertraulichkeit und Integrität eines Online-Banking-Portals. (10 Punkte)</label>
<textarea class="ihk-input" rows="3"></textarea>
</div>
<div class="ihk-task-solution" style="display: none; margin-top: 16px; padding: 16px; background: #0f172a; border-left: 4px solid #4ade80; border-radius: 6px;">
<h4 style="color: #4ade80; margin-top: 0;">Offizielle IHK-Musterlösung:</h4>
<p style="color: #cbd5e1; font-size: 0.9rem; line-height: 1.6;">
<strong>a) (15 Pkt.):</strong> Aufbau: Internet &rarr; Äußere Firewall &rarr; DMZ (Web/Mailserver) &rarr; Innere Firewall &rarr; Internes LAN. Unterschiedliche Hersteller (z. B. Fortinet außen, pfSense/Cisco innen) verhindern, dass eine Zero-Day-Schwachstelle oder Fehlkonfiguration eines einzelnen Herstellers den Angreifer direkt ins interne LAN durchmarschieren lässt.<br>
<strong>b) (10 Pkt.):</strong> Verfügbarkeit: <strong>Sehr hoch</strong> (hoher finanzieller und Reputationsschaden bei Ausfall); Vertraulichkeit: <strong>Sehr hoch</strong> (Bankgeheimnis, Kontostände, DSGVO Art. 9); Integrität: <strong>Sehr hoch</strong> (Fehlbuchungen oder manipulierte Überweisungen existenzbedrohend).
</p>
</div>
</div>
</div> </div>
<script src="../../../assets/courses_manifest.js"></script>
<script src="../../../assets/course_sidebar.js"></script>
</body> </body>
</html> </html>

View file

@ -0,0 +1,9 @@
# AP2 Modul 08: Cloud-Architekturen, Virtualisierung & Security (LF 12)
**Prüfungsbereich:** Lernfeld 12 (FISI)
Hypervisoren Typ 1/2, Docker vs. VMs, Kubernetes Pods, Zero Trust, NGFW, IPsec & Prometheus.
## Relevante Prüfungsthemen nach dem offiziellen ZPA Nord-West Prüfungskatalog (2. Auflage)
- Fundierte Fachtheorie und Praxis-Transfer für Fachinformatiker Systemintegration (FISI).
- Authentische Prüfungsfragen mit offiziellem IHK-Erwartungshorizont und Punkteverteilung.

View file

@ -0,0 +1,264 @@
<!DOCTYPE html>
<html lang="de">
<head>
<link rel="icon" type="image/svg+xml" href="../../../assets/favicon.svg">
<meta charset="UTF-8">
<title>AP2 Modul 08: Cloud-Architekturen, Virtualisierung & Security (LF 12)</title>
<link rel="stylesheet" href="../../../assets/style.css">
<link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css">
</head>
<body class="bg-slate-900 text-slate-100 font-sans p-6">
<div class="container mx-auto max-w-4xl">
<div class="flex justify-between items-center mb-6">
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary text-sm">← Zurück zum Dashboard</a>
<span class="ihk-badge ihk-badge-success">Lernfeld 12 (FISI)</span>
</div>
<h1 class="text-3xl font-extrabold text-sky-400 mb-2">AP2 Modul 08: Cloud-Architekturen, Virtualisierung & Security (LF 12)</h1>
<p class="text-slate-300 text-lg leading-relaxed mb-6">Hypervisoren Typ 1/2, Docker vs. VMs, Kubernetes Pods, Zero Trust, NGFW, IPsec & Prometheus.</p>
<!-- Fachtheorie & Wissen -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin-bottom: 24px;">
<h2 style="color: #38bdf8; margin-top: 0;">☁️ Cloud-Architekturen, Virtualisierung & Security (LF 12)</h2>
<p style="color: #cbd5e1; line-height: 1.6;">
Lernfeld 12 behandelt moderne Rechenzentrumsarchitekturen: Typ-1 vs. Typ-2 Hypervisoren, Containerisierung mit Docker/Kubernetes, Cloud-Servicemodelle (IaaS, PaaS, SaaS), Zero Trust Security, VPNs (IPsec, WireGuard) und Observability (Prometheus/Grafana).
</p>
<h3 style="color: #cbd5e1; margin-top: 20px;">1. Typ-1 Bare-Metal Hypervisor vs. Typ-2 Hosted</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<p style="color: #cbd5e1; line-height: 1.6; margin: 0;">
- <strong>Typ 1 (Bare-Metal):</strong> Installiert direkt auf der Serverhardware (ESXi, Proxmox VE, Hyper-V). Bietet maximale Performance, direkte Hardwaretreiber und minimale Angriffsfläche.<br>
- <strong>Typ 2 (Hosted):</strong> Läuft als Anwendung innerhalb eines Host-Betriebssystems (VirtualBox, VMware Workstation). Geeignet für Entwicklungs- und Testzwecke.
</p>
</div>
<h3 style="color: #cbd5e1; margin-top: 20px;">2. Containerisierung (Docker/Kubernetes) vs. Virtuelle Maschinen</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<table class="ihk-table">
<thead>
<tr><th>Kriterium</th><th>Virtuelle Maschinen (VM)</th><th>Container (Docker / OCI)</th></tr>
</thead>
<tbody>
<tr>
<td><strong>Isolierung</strong></td>
<td>Vollständiges Gast-Betriebssystem mit eigenem Kernel & virtueller Hardware.</td>
<td>Teilen sich den Host-Kernel. Isolierung via <em>Linux Namespaces</em> und <em>Cgroups</em>.</td>
</tr>
<tr>
<td><strong>Startzeit & Overhead</strong></td>
<td>Minuten, GB-großer RAM- und Storage-Bedarf.</td>
<td>Millisekunden, MB-großer Overhead, extrem leichtgewichtig.</td>
</tr>
<tr>
<td><strong>Kubernetes</strong></td>
<td colspan="2">Orchestriert Container in <em>Pods</em>, steuert automatische Skalierung (HPA), Rolling Updates und Selbstheilung über die Control Plane.</td>
</tr>
</tbody>
</table>
</div>
<h3 style="color: #cbd5e1; margin-top: 20px;">3. Zero Trust, Next-Gen Firewalls & IPsec VPN</h3>
<p style="color: #cbd5e1; line-height: 1.6;">
- <strong>Zero Trust:</strong> "Never trust, always verify" – ständige Authentifizierung und Mikrosegmentierung.<br>
- <strong>IPsec IKEv2 Phasen:</strong> Phase 1 (IKE-SA: Diffie-Hellman Schlüsselaustausch, Authentifizierung, Aufbau des sicheren Kontrollkanals). Phase 2 (IPsec-SA: Aushandlung von ESP-Verschlüsselung für reale Nutzdaten). NAT-Traversal via Port UDP 4500.
</p>
</div>
<!-- Interaktives Tool falls vorhanden -->
<!-- Fragenpool -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin: 32px 0;">
<h2 style="color: #38bdf8; margin-top: 0; font-size: 1.4rem; display: flex; align-items: center; gap: 10px;">
<span>📝</span> Authentische IHK-Prüfungsaufgaben nach ZPA 2. Auflage
</h2>
<p style="color: #94a3b8; font-size: 0.9rem; margin-bottom: 20px;">
Bearbeiten Sie die Aufgaben und vergleichen Sie Ihre Antwort mit dem offiziellen Erwartungshorizont:
</p>
<div style="display: flex; flex-direction: column; gap: 20px;">
<div class="ihk-exam-task" data-title="Hypervisor-Architekturen Typ 1 vs Typ 2" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Hypervisor-Architekturen Typ 1 vs Typ 2</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Für ein IT-Konsolidierungsprojekt werden Virtualisierungslösungen evaluiert.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Vergleichen Sie Typ-1-Hypervisoren (Bare-Metal) und Typ-2-Hypervisoren (Hosted) hinsichtlich Architektur, Performance und Einsatzbereich und nennen Sie jeweils zwei Produktbeispiele.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Docker-Container vs Virtuelle Maschinen" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Docker-Container vs Virtuelle Maschinen</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Ein Entwicklerteam möchte monolithische Anwendungen in containerbasierte Microservices zerlegen.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Vergleichen Sie Container und virtuelle Maschinen hinsichtlich Kernel-Architektur, Startzeiten, Speicherplatzbedarf und Isolation.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Cloud Service Modelle IaaS vs PaaS vs SaaS" data-points="9" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Cloud Service Modelle IaaS vs PaaS vs SaaS</strong>
<span class="ihk-badge ihk-badge-success">9 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Die Unternehmensführung plant die Migration von Diensten in die Cloud.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Definieren Sie die Cloud-Servicemodelle IaaS, PaaS und SaaS nach NIST und erklären Sie das Shared Responsibility Model (Gemeinsame Verantwortlichkeit).
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="SNMPv2c vs SNMPv3 Netzwerk-Monitoring" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">SNMPv2c vs SNMPv3 Netzwerk-Monitoring</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Zur Überwachung von 50 Core-Switchen wird ein Zabbix-Monitoring-Server eingerichtet.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Begründen Sie, warum SNMPv2c in modernen Netzen als Sicherheitsrisiko gilt, und erläutern Sie die drei Sicherheitsstufen von SNMPv3 (noAuthNoPriv, authNoPriv, authPriv).
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Hochverfügbarkeits-Berechnung Verfügbarkeit in Prozent" data-points="6" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Hochverfügbarkeits-Berechnung Verfügbarkeit in Prozent</strong>
<span class="ihk-badge ihk-badge-success">6 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
In einem SLA garantiert ein IT-Dienstleister für einen Cloud-Dienst eine Verfügbarkeit von 99,9 % ("Drei Neunen") bezogen auf ein Jahr (365 Tage à 24 Stunden).
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Berechnen Sie die maximal zulässige Ausfallzeit in Stunden und Minuten pro Jahr.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Kubernetes Architektur Pods und Cluster" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Kubernetes Architektur Pods und Cluster</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Ein Unternehmen betreibt Microservices in einem Kubernetes-Cluster.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erläutern Sie die Aufgaben der Control Plane Komponenten (kube-apiserver, etcd, kube-scheduler) und definieren Sie das Konzept eines Pods.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Infrastructure as Code (IaC) Terraform vs Skripte" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Infrastructure as Code (IaC) Terraform vs Skripte</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
Eine Cloud-Infrastruktur soll reproduzierbar und versionsverwaltet über Terraform bereitgestellt werden.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Unterscheiden Sie den deklarativen Ansatz von Terraform vom imperativen Ansatz von Shell-Skripten und erläutern Sie die Funktion der Terraform State-Datei (terraform.tfstate).
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
<div class="ihk-exam-task" data-title="Prometheus & Grafana Monitoring-Architektur" data-points="8" style="background: #0f172a; border: 1px solid #334155; border-radius: 8px; padding: 20px; margin-bottom: 20px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<strong style="color: #38bdf8; font-size: 1.05rem;">Prometheus & Grafana Monitoring-Architektur</strong>
<span class="ihk-badge ihk-badge-success">8 Punkte</span>
</div>
<div style="background: #1e293b; border-left: 4px solid #0284c7; padding: 12px 16px; border-radius: 6px; margin-bottom: 14px; color: #cbd5e1; font-size: 0.9rem; font-style: italic;">
In einer Kubernetes-Umgebung wird ein Prometheus-Server zur Metrikerfassung aufgebaut.
</div>
<p style="color: #f8fafc; font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px;">
Erklären Sie das Pull-Prinzip von Prometheus gegenüber dem Push-Prinzip, erläutern Sie die Aufgabe von Exportern (z. B. Node Exporter) und definieren Sie die Metriktypen Counter und Gauge.
</p>
<textarea class="ihk-input" rows="3" placeholder="Ihre Lösung stichpunktartig formulieren..."></textarea>
<details style="margin-top: 14px; background: #1e293b; padding: 12px 16px; border-radius: 6px; cursor: pointer;">
<summary style="font-weight: 600; color: #4ade80;">💡 Offizieller IHK-Erwartungshorizont & Punkteverteilung</summary>
<div class="ihk-task-solution" style="margin-top: 10px; color: #cbd5e1; font-size: 0.9rem; line-height: 1.6; white-space: pre-line;">
</div>
</details>
</div>
</div>
</div>
<!-- Footer Navigation mit echten Buttons -->
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
<a href="../07_enterprise_sql_und_datenbank_admin/index.html" class="ihk-btn ihk-btn-secondary font-semibold">← Vorheriges Modul</a>
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary">🏠 Kursübersicht</a>
<a href="../09_wiso_arbeitsrecht_und_wirtschaft/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
</div>
</div>
<script src="../../../assets/courses_manifest.js"></script>
<script src="../../../assets/course_sidebar.js"></script>
</body>
</html>

View file

@ -1,131 +1,17 @@
<!DOCTYPE html> <!DOCTYPE html>
<html lang="de"> <html lang="de">
<head> <head>
<link rel="icon" type="image/svg+xml" href="../../../assets/favicon.svg">
<meta charset="UTF-8"> <meta charset="UTF-8">
<title>IHK AP2 Wirtschafts- und Sozialkunde (WiSo)</title> <meta http-equiv="refresh" content="0; url=../12_ap2_gesamtpruefung_simulation/index.html">
<title>Weiterleitung zum aktualisierten Modul...</title>
<link rel="stylesheet" href="../../../assets/style.css"> <link rel="stylesheet" href="../../../assets/style.css">
<link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css"> <link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css">
</head> </head>
<body class="bg-slate-900 text-slate-100 font-sans p-6"> <body class="bg-slate-900 text-slate-100 p-8 flex items-center justify-center min-h-screen">
<div class="container mx-auto max-w-4xl"> <div class="text-center max-w-lg bg-slate-800 p-8 rounded-xl border border-slate-700">
<div class="flex justify-between items-center mb-6"> <h2 class="text-xl font-bold text-sky-400 mb-4">Modul aktualisiert</h2>
<a href="../../../dashboard.html" class="text-rose-400 hover:text-rose-300 font-semibold">← Zurück zum Dashboard</a> <p class="text-slate-300 mb-6">Dieses Modul wurde im Rahmen der ZPA Nord-West 2. Auflage aktualisiert. Sie werden automatisch weitergeleitet...</p>
<span class="ihk-badge ihk-badge-warning">WiSo Prüfungsteil 3 (60 Min.)</span> <a href="../12_ap2_gesamtpruefung_simulation/index.html" class="ihk-btn ihk-btn-primary font-semibold">Direkt zum neuen Modul →</a>
</div>
<h1 class="text-3xl font-extrabold text-rose-400 mb-2">Probeprüfung AP2: Wirtschafts- &amp; Sozialkunde (WiSo)</h1>
<p class="text-slate-400 mb-6">Authentische IHK-WiSo Simulation (Winter 2023/24) | Bearbeitungszeit: 60 Minuten | 100 Punkte</p>
<script src="../../../assets/ihk_tools/ihk_question_bank.js"></script>
<script src="../../../assets/ihk_tools/exam_engine.js"></script>
<script>
window.exam = new IhkExamEngine({
title: "IHK AP2 Teil 3: Wirtschafts- und Sozialkunde (WiSo)",
examType: "WiSo",
durationMinutes: 60,
totalPoints: 100
});
</script>
<!-- AUFGABE 1: KÜNDIGUNGSFRISTEN & ARBEITSRECHT -->
<div class="ihk-exam-task" data-title="Aufgabe 1: Kündigungsfristen nach BGB § 622" data-points="20" style="background: #1e293b; padding: 24px; border-radius: 12px; border: 1px solid #334155; margin-bottom: 24px;">
<h3 style="color: #facc15; margin-top: 0;">1. Aufgabe: Kündigungsfristen &amp; Probezeit (20 Punkte)</h3>
<p style="color: #cbd5e1; font-size: 0.95rem; line-height: 1.6;">
Ein Fachinformatiker ist seit 6 Jahren im selben Betrieb beschäftigt. Der Arbeitgeber kündigt das Arbeitsverhältnis am 10. Mai 2026.
</p>
<div class="ihk-input-group">
<label>a) Zu welchem Stichtag wird die Kündigung nach BGB § 622 Abs. 2 wirksam? (10 Punkte)</label>
<textarea class="ihk-input" rows="2" placeholder="Stichtag mit Begründung..."></textarea>
</div>
<div class="ihk-input-group">
<label>b) Welche Kündigungsfrist gilt während einer vereinbarten Probezeit nach BGB / BBiG? (10 Punkte)</label>
<textarea class="ihk-input" rows="2" placeholder="Frist während Probezeit..."></textarea>
</div>
<div class="ihk-task-solution" style="display: none; margin-top: 16px; padding: 16px; background: #0f172a; border-left: 4px solid #4ade80; border-radius: 6px;">
<h4 style="color: #4ade80; margin-top: 0;">Offizielle IHK-Musterlösung:</h4>
<p style="color: #cbd5e1; font-size: 0.9rem; line-height: 1.6;">
<strong>a) (10 Pkt.):</strong> Bei 6 Jahren Betriebszugehörigkeit beträgt die Kündigungsfrist <strong>zwei Monate zum Ende eines Kalendermonats</strong>. Kündigungsausspruch am 10. Mai &rarr; Ende Juni (Monat 1) &rarr; <strong>Wirksam zum 31. Juli 2026</strong>.<br>
<strong>b) (10 Pkt.):</strong> Im Arbeitsvertrag nach BGB § 622 Abs. 3: <strong>Zwei Wochen zu jedem beliebigen Tag</strong> (ohne Bindung an Monatsende). Im Ausbildungsverhältnis nach BBiG § 22 Abs. 1: <strong>Jederzeit fristlos</strong> ohne Angabe von Gründen.
</p>
</div>
</div>
<!-- AUFGABE 2: MITBESTIMMUNG DES BETRIEBSRATS -->
<div class="ihk-exam-task" data-title="Aufgabe 2: Betriebsrat &amp; Mitbestimmung" data-points="20" style="background: #1e293b; padding: 24px; border-radius: 12px; border: 1px solid #334155; margin-bottom: 24px;">
<h3 style="color: #facc15; margin-top: 0;">2. Aufgabe: Betriebsverfassungsgesetz (BetrVG) (20 Punkte)</h3>
<p style="color: #cbd5e1; font-size: 0.95rem; line-height: 1.6;">
Die Geschäftsleitung plant die Einführung einer neuen Zeiterfassungs- und Überwachungssoftware für alle Mitarbeiter.
</p>
<div class="ihk-input-group">
<label>Welches Recht steht dem Betriebsrat nach § 87 Abs. 1 Nr. 6 BetrVG zu und welche Konsequenz hat eine fehlende Zustimmung? (20 Punkte)</label>
<textarea class="ihk-input" rows="3"></textarea>
</div>
<div class="ihk-task-solution" style="display: none; margin-top: 16px; padding: 16px; background: #0f172a; border-left: 4px solid #4ade80; border-radius: 6px;">
<h4 style="color: #4ade80; margin-top: 0;">Offizielle IHK-Musterlösung:</h4>
<p style="color: #cbd5e1; font-size: 0.9rem; line-height: 1.6;">
Der Betriebsrat hat ein <strong>echtes Mitbestimmungsrecht</strong> bei der Einführung und Anwendung von technischen Einrichtungen, die dazu bestimmt sind, das Verhalten oder die Leistung der Arbeitnehmer zu überwachen (§ 87 Abs. 1 Nr. 6 BetrVG). Ohne Zustimmung des Betriebsrats darf die Software nicht eingeführt werden. Bei Nichteinigung muss die <strong>Einigungsstelle</strong> angerufen werden.
</p>
</div>
</div>
<!-- AUFGABE 3: GESELLSCHAFTSFORMEN -->
<div class="ihk-exam-task" data-title="Aufgabe 3: Rechtsformen (GmbH vs. KG)" data-points="20" style="background: #1e293b; padding: 24px; border-radius: 12px; border: 1px solid #334155; margin-bottom: 24px;">
<h3 style="color: #facc15; margin-top: 0;">3. Aufgabe: Unternehmensformen &amp; Haftung (20 Punkte)</h3>
<p style="color: #cbd5e1; font-size: 0.95rem; line-height: 1.6;">
Drei IT-Spezialisten gründen ein Cloud-Consulting-Unternehmen. Sie vergleichen die Rechtsformen <strong>GmbH</strong> und <strong>Kommanditgesellschaft (KG)</strong>.
</p>
<div class="ihk-input-group">
<label>Vergleiche Mindeststammkapital, Haftung der Gesellschafter und Eintragung ins Handelsregister (Abteilung A vs. B). (20 Punkte)</label>
<textarea class="ihk-input" rows="4"></textarea>
</div>
<div class="ihk-task-solution" style="display: none; margin-top: 16px; padding: 16px; background: #0f172a; border-left: 4px solid #4ade80; border-radius: 6px;">
<h4 style="color: #4ade80; margin-top: 0;">Offizielle IHK-Musterlösung:</h4>
<p style="color: #cbd5e1; font-size: 0.9rem; line-height: 1.6;">
<strong>GmbH:</strong> Mindeststammkapital 25.000 € (bei Gründung min. 12.500 € eingezahlt). Haftung auf das Gesellschaftsvermögen beschränkt. Eintragung in <strong>Handelsregister Abteilung B</strong> (Kapitalgesellschaften).<br>
<strong>KG:</strong> Kein gesetzliches Mindestkapital. Mindestens ein Vollhafter (Komplementär, haftet unbeschränkt mit Privatvermögen) und mindestens ein Teilhafter (Kommanditist, haftet nur bis zur eingetragenen Hafteinlage). Eintragung in <strong>Handelsregister Abteilung A</strong> (Personengesellschaften).
</p>
</div>
</div>
<!-- AUFGABE 4: GEHALTSABRECHNUNG & SOZIALVERSICHERUNG -->
<div class="ihk-exam-task" data-title="Aufgabe 4: Gehaltsabrechnung &amp; Sozialabgaben" data-points="20" style="background: #1e293b; padding: 24px; border-radius: 12px; border: 1px solid #334155; margin-bottom: 24px;">
<h3 style="color: #facc15; margin-top: 0;">4. Aufgabe: Entgeltabrechnung &amp; 5 Säulen der Sozialversicherung (20 Punkte)</h3>
<p style="color: #cbd5e1; font-size: 0.95rem; line-height: 1.6;">
Nenne die 5 gesetzlichen Sozialversicherungszweige und gib an, welche Versicherung als einzige zu 100% vom Arbeitgeber getragen wird. (20 Punkte)
</p>
<textarea class="ihk-input" rows="4"></textarea>
<div class="ihk-task-solution" style="display: none; margin-top: 16px; padding: 16px; background: #0f172a; border-left: 4px solid #4ade80; border-radius: 6px;">
<h4 style="color: #4ade80; margin-top: 0;">Offizielle IHK-Musterlösung:</h4>
<p style="color: #cbd5e1; font-size: 0.9rem; line-height: 1.6;">
1. Gesetzliche Krankenversicherung (GKV - paritätisch)<br>
2. Soziale Pflegeversicherung (SPV - paritätisch + Kinderlosenzuschlag)<br>
3. Gesetzliche Rentenversicherung (GRV - paritätisch)<br>
4. Arbeitslosenversicherung (ALV - paritätisch)<br>
5. <strong>Gesetzliche Unfallversicherung (Berufsgenossenschaft / DGUV): Wird zu 100 % allein vom Arbeitgeber getragen!</strong>
</p>
</div>
</div>
<!-- AUFGABE 5: TARIFRECHT & ARBEITSKAMPF -->
<div class="ihk-exam-task" data-title="Aufgabe 5: Tarifautonomie &amp; Streik" data-points="20" style="background: #1e293b; padding: 24px; border-radius: 12px; border: 1px solid #334155; margin-bottom: 24px;">
<h3 style="color: #facc15; margin-top: 0;">5. Aufgabe: Tarifautonomie, Friedenspflicht &amp; Warnstreik (20 Punkte)</h3>
<p style="color: #cbd5e1; font-size: 0.95rem; line-height: 1.6;">
Erläutere die Begriffe Tarifautonomie, Friedenspflicht während der Laufzeit eines Tarifvertrages und die Voraussetzungen für einen legalen Streik. (20 Punkte)
</p>
<textarea class="ihk-input" rows="4"></textarea>
<div class="ihk-task-solution" style="display: none; margin-top: 16px; padding: 16px; background: #0f172a; border-left: 4px solid #4ade80; border-radius: 6px;">
<h4 style="color: #4ade80; margin-top: 0;">Offizielle IHK-Musterlösung:</h4>
<p style="color: #cbd5e1; font-size: 0.9rem; line-height: 1.6;">
<strong>Tarifautonomie (Art. 9 Abs. 3 GG):</strong> Das Recht der Tarifparteien (Gewerkschaften und Arbeitgeberverbände), Arbeitsbedingungen ohne Einmischung des Staates autonom auszuhandeln.<br>
<strong>Friedenspflicht:</strong> Solange ein Tarifvertrag läuft, dürfen bezüglich der geregelten Inhalte keine Arbeitskampfmaßnahmen (Streiks) durchgeführt werden.<br>
<strong>Voraussetzungen für legalen Streik:</strong> Tarifvertrag muss abgelaufen sein, Verhandlungen für gescheitert erklärt, Urabstimmung unter den Gewerkschaftsmitgliedern (in der Regel mindestens 75 % Zustimmung) und Aufruf durch eine tariffähige Gewerkschaft.
</p>
</div>
</div>
</div> </div>
<script src="../../../assets/courses_manifest.js"></script>
<script src="../../../assets/course_sidebar.js"></script>
</body> </body>
</html> </html>

View file

@ -0,0 +1,9 @@
# AP2 Modul 09: WiSo 1 – Arbeitsrecht, Tarifrecht & Gehalt (WiSo)
**Prüfungsbereich:** Prüfungsbereich 3 (WiSo)
BBiG (Probezeit/Kündigung), KSchG (Sozialauswahl/3-Wochen-Frist), Tarifverträge & Gehaltsrechnung.
## Relevante Prüfungsthemen nach dem offiziellen ZPA Nord-West Prüfungskatalog (2. Auflage)
- Fundierte Fachtheorie und Praxis-Transfer für Fachinformatiker Systemintegration (FISI).
- Authentische Prüfungsfragen mit offiziellem IHK-Erwartungshorizont und Punkteverteilung.

View file

@ -0,0 +1,84 @@
<!DOCTYPE html>
<html lang="de">
<head>
<link rel="icon" type="image/svg+xml" href="../../../assets/favicon.svg">
<meta charset="UTF-8">
<title>AP2 Modul 09: WiSo 1 – Arbeitsrecht, Tarifrecht & Gehalt (WiSo)</title>
<link rel="stylesheet" href="../../../assets/style.css">
<link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css">
</head>
<body class="bg-slate-900 text-slate-100 font-sans p-6">
<div class="container mx-auto max-w-4xl">
<div class="flex justify-between items-center mb-6">
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary text-sm">← Zurück zum Dashboard</a>
<span class="ihk-badge ihk-badge-success">Prüfungsbereich 3 (WiSo)</span>
</div>
<h1 class="text-3xl font-extrabold text-sky-400 mb-2">AP2 Modul 09: WiSo 1 – Arbeitsrecht, Tarifrecht & Gehalt (WiSo)</h1>
<p class="text-slate-300 text-lg leading-relaxed mb-6">BBiG (Probezeit/Kündigung), KSchG (Sozialauswahl/3-Wochen-Frist), Tarifverträge & Gehaltsrechnung.</p>
<!-- Fachtheorie & Wissen -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin-bottom: 24px;">
<h2 style="color: #38bdf8; margin-top: 0;">⚖️ WiSo 1: Arbeitsrecht, Tarifrecht & Gehaltsabrechnung</h2>
<p style="color: #cbd5e1; line-height: 1.6;">
Prüfungsbereich 3 (Wirtschafts- und Sozialkunde) prüft arbeits- und sozialrechtliche Kernkompetenzen: Berufsbildungsgesetz (BBiG), Kündigungsschutzgesetz (KSchG), Arbeitszeitgesetz (ArbZG), Tarifrecht und die schrittweise Entgeltabrechnung.
</p>
<h3 style="color: #cbd5e1; margin-top: 20px;">1. BBiG: Ausbildungsvertrag, Probezeit & Kündigung</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<p style="color: #cbd5e1; line-height: 1.6; margin: 0;">
- <strong>Probezeit (§ 20 BBiG):</strong> Zwingend mindestens 1 Monat, höchstens 4 Monate. Während der Probezeit kann das Ausbildungsverhältnis jederzeit von beiden Seiten fristlos und ohne Angabe von Gründen gekündigt werden.<br>
- <strong>Kündigung nach der Probezeit (§ 22 BBiG):</strong><br>
• Fristlos nur aus wichtigem Grund (§ 626 BGB, z. B. Diebstahl, beharrliche Arbeitsverweigerung) innerhalb von 2 Wochen nach Bekanntwerden.<br>
• Mit Frist von 4 Wochen durch den Azubi bei vollständiger Berufsaufgabe oder Wechsel des Berufsfelds.
</p>
</div>
<h3 style="color: #cbd5e1; margin-top: 20px;">2. Kündigungsschutzgesetz (KSchG) & Sozialauswahl</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<p style="color: #cbd5e1; line-height: 1.6; margin: 0;">
- <strong>Anwendungsbereich:</strong> Betrieb mit mehr als 10 Arbeitnehmern UND mehr als 6 Monate Betriebszugehörigkeit.<br>
- <strong>3 Kündigungsgründe:</strong> Personenbedingt (dauerhafte Krankheit), Verhaltensbedingt (Pflichtverletzung nach Abmahnung), Betriebsbedingt (Dringende betriebliche Erfordernisse).<br>
- <strong>4 Kriterien der Sozialauswahl (§ 1 Abs. 3 KSchG):</strong> 1. Dauer der Betriebszugehörigkeit, 2. Lebensalter, 3. Gesetzliche Unterhaltspflichten, 4. Schwerbehinderung.<br>
- <span style="color: #facc15; font-weight: bold;">Klagefrist:</span> Exakt <strong>3 Wochen nach Zugang</strong> der schriftlichen Kündigung muss Kündigungsschutzklage beim Arbeitsgericht erhoben werden!
</p>
</div>
<h3 style="color: #cbd5e1; margin-top: 20px;">3. Entgeltabrechnung & Die 5 Säulen der Sozialversicherung</h3>
<p style="color: #cbd5e1; line-height: 1.6;">
Bruttogehalt $ ightarrow$ Steuerpflichtiges Brutto $ ightarrow$ Abzug Lohnsteuer (Steuerklassen I–VI), Solidaritätszuschlag, Kirchensteuer $ ightarrow$ Abzug Sozialversicherung:
1. Krankenversicherung (14,6 % + Zusatzbeitrag hälftig), 2. Pflegeversicherung, 3. Rentenversicherung (18,6 % hälftig), 4. Arbeitslosenversicherung (2,6 % hälftig), 5. Gesetzliche Unfallversicherung (100 % Arbeitgeber!) $ ightarrow$ Nettogehalt.
</p>
</div>
<!-- Interaktives Tool falls vorhanden -->
<!-- Fragenpool -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin: 32px 0;">
<h2 style="color: #38bdf8; margin-top: 0; font-size: 1.4rem; display: flex; align-items: center; gap: 10px;">
<span>📝</span> Authentische IHK-Prüfungsaufgaben nach ZPA 2. Auflage
</h2>
<p style="color: #94a3b8; font-size: 0.9rem; margin-bottom: 20px;">
Bearbeiten Sie die Aufgaben und vergleichen Sie Ihre Antwort mit dem offiziellen Erwartungshorizont:
</p>
<div style="display: flex; flex-direction: column; gap: 20px;">
</div>
</div>
<!-- Footer Navigation mit echten Buttons -->
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
<a href="../08_lf12_virtualisierung_und_cloud/index.html" class="ihk-btn ihk-btn-secondary font-semibold">← Vorheriges Modul</a>
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary">🏠 Kursübersicht</a>
<a href="../10_wiso_betriebsorganisation_und_umwelt/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
</div>
</div>
<script src="../../../assets/courses_manifest.js"></script>
<script src="../../../assets/course_sidebar.js"></script>
</body>
</html>

View file

@ -0,0 +1,9 @@
# AP2 Modul 10: WiSo 2 – Betriebsaufbau, Umweltschutz & Compliance (WiSo)
**Prüfungsbereich:** Prüfungsbereich 3 (WiSo)
Rechtsformen (GmbH/AG/KG), Prokura vs. Handlungsvollmacht, BetrVG § 87, PUE-Wert & Green IT.
## Relevante Prüfungsthemen nach dem offiziellen ZPA Nord-West Prüfungskatalog (2. Auflage)
- Fundierte Fachtheorie und Praxis-Transfer für Fachinformatiker Systemintegration (FISI).
- Authentische Prüfungsfragen mit offiziellem IHK-Erwartungshorizont und Punkteverteilung.

View file

@ -0,0 +1,113 @@
<!DOCTYPE html>
<html lang="de">
<head>
<link rel="icon" type="image/svg+xml" href="../../../assets/favicon.svg">
<meta charset="UTF-8">
<title>AP2 Modul 10: WiSo 2 – Betriebsaufbau, Umweltschutz & Compliance (WiSo)</title>
<link rel="stylesheet" href="../../../assets/style.css">
<link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css">
</head>
<body class="bg-slate-900 text-slate-100 font-sans p-6">
<div class="container mx-auto max-w-4xl">
<div class="flex justify-between items-center mb-6">
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary text-sm">← Zurück zum Dashboard</a>
<span class="ihk-badge ihk-badge-success">Prüfungsbereich 3 (WiSo)</span>
</div>
<h1 class="text-3xl font-extrabold text-sky-400 mb-2">AP2 Modul 10: WiSo 2 – Betriebsaufbau, Umweltschutz & Compliance (WiSo)</h1>
<p class="text-slate-300 text-lg leading-relaxed mb-6">Rechtsformen (GmbH/AG/KG), Prokura vs. Handlungsvollmacht, BetrVG § 87, PUE-Wert & Green IT.</p>
<!-- Fachtheorie & Wissen -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin-bottom: 24px;">
<h2 style="color: #38bdf8; margin-top: 0;">🏭 WiSo 2: Unternehmensformen, Umweltschutz (PUE) & Organisation</h2>
<p style="color: #cbd5e1; line-height: 1.6;">
Unternehmensrechtsformen, Handelsregister, Vollmachten nach HGB (Prokura vs. Handlungsvollmacht), Betriebsverfassung (§ 87 BetrVG Mitbestimmung bei IT-Systemen), Green IT und die Rechenzentrums-Kennzahl PUE.
</p>
<h3 style="color: #cbd5e1; margin-top: 20px;">1. Rechtsformen im IHK-Vergleich</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<table class="ihk-table">
<thead>
<tr><th>Rechtsform</th><th>Mindestkapital</th><th>Haftung</th><th>Organe / Geschäftsführung</th></tr>
</thead>
<tbody>
<tr>
<td><strong>Einzelunternehmung</strong></td>
<td>Keines</td>
<td>Unbeschränkt mit Betriebs- und Privatvermögen.</td>
<td>Inhaber allein</td>
</tr>
<tr>
<td><strong>OHG</strong></td>
<td>Keines</td>
<td>Alle Gesellschafter unbeschränkt & solidarisch.</td>
<td>Alle Gesellschafter einzelvertretungsberechtigt</td>
</tr>
<tr>
<td><strong>KG</strong></td>
<td>Keines</td>
<td>Komplementär: unbeschränkt; Kommanditist: nur bis Einlage.</td>
<td>Nur der Komplementär</td>
</tr>
<tr>
<td><strong>GmbH</strong></td>
<td>25.000 € (mind. 12.500 € bei Gründung)</td>
<td>Beschränkt auf Gesellschaftsvermögen.</td>
<td>Geschäftsführer, Gesellschafterversammlung</td>
</tr>
<tr>
<td><strong>AG</strong></td>
<td>50.000 €</td>
<td>Beschränkt auf Gesellschaftsvermögen.</td>
<td>Vorstand (Leitung), Aufsichtsrat (Kontrolle), Hauptversammlung</td>
</tr>
</tbody>
</table>
</div>
<h3 style="color: #cbd5e1; margin-top: 20px;">2. Prokura vs. Handlungsvollmacht nach HGB</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<p style="color: #cbd5e1; line-height: 1.6; margin: 0;">
- <strong>Prokura (§§ 48 ff. HGB, "ppa."):</strong> Nur von Kaufleuten erteilbar, zwingend ins Handelsregister einzutragen. Ermächtigt zu <em>allen</em> Arten von gerichtlichen und außergerichtlichen Geschäften eines Handelsgewerbes. <strong>Ausnahmen (Prinzipalgeschäfte):</strong> Grundstücke verkaufen/belasten, Handelsregistereintragungen, Bilanzen unterzeichnen.<br>
- <strong>Handlungsvollmacht (§ 54 HGB, "i.V." / "i.A."):</strong> Ermächtigt nur zu <em>gewöhnlichen, branchenüblichen</em> Geschäften. Keine Eintragung ins Handelsregister.
</p>
</div>
<h3 style="color: #cbd5e1; margin-top: 20px;">3. Green IT & PUE-Wert (Power Usage Effectiveness)</h3>
<p style="color: #cbd5e1; line-height: 1.6;">
- <strong>PUE-Formel:</strong> $PUE = \frac{\text{Gesamte Leistungsaufnahme RZ (kW)}}{\text{Leistungsaufnahme IT-Infrastruktur (kW)}}$.<br>
- <strong>Idealwert:</strong> 1,0 (100 % Energie fließt direkt in Rechenleistung). Ältere RZs liegen bei 1,8–2,0; moderne hocheffiziente RZs mit Kaltgang-Einhausung und Freikühlung erreichen PUE 1,15 bis 1,25.
</p>
</div>
<!-- Interaktives Tool falls vorhanden -->
<!-- Fragenpool -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin: 32px 0;">
<h2 style="color: #38bdf8; margin-top: 0; font-size: 1.4rem; display: flex; align-items: center; gap: 10px;">
<span>📝</span> Authentische IHK-Prüfungsaufgaben nach ZPA 2. Auflage
</h2>
<p style="color: #94a3b8; font-size: 0.9rem; margin-bottom: 20px;">
Bearbeiten Sie die Aufgaben und vergleichen Sie Ihre Antwort mit dem offiziellen Erwartungshorizont:
</p>
<div style="display: flex; flex-direction: column; gap: 20px;">
</div>
</div>
<!-- Footer Navigation mit echten Buttons -->
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
<a href="../09_wiso_arbeitsrecht_und_wirtschaft/index.html" class="ihk-btn ihk-btn-secondary font-semibold">← Vorheriges Modul</a>
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary">🏠 Kursübersicht</a>
<a href="../11_betriebliche_projektarbeit_guide/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
</div>
</div>
<script src="../../../assets/courses_manifest.js"></script>
<script src="../../../assets/course_sidebar.js"></script>
</body>
</html>

View file

@ -0,0 +1,9 @@
# AP2 Modul 11: Betriebliche Projektarbeit (40h) & Fachgespräch (Guide)
**Prüfungsbereich:** 50 % der AP2 Gesamtnote
Die 50%-Gesamtnote: Projektantrag, 40h-Phasengliederung, Nutzwertanalyse, Dokumentation & Kolloquium.
## Relevante Prüfungsthemen nach dem offiziellen ZPA Nord-West Prüfungskatalog (2. Auflage)
- Fundierte Fachtheorie und Praxis-Transfer für Fachinformatiker Systemintegration (FISI).
- Authentische Prüfungsfragen mit offiziellem IHK-Erwartungshorizont und Punkteverteilung.

View file

@ -0,0 +1,101 @@
<!DOCTYPE html>
<html lang="de">
<head>
<link rel="icon" type="image/svg+xml" href="../../../assets/favicon.svg">
<meta charset="UTF-8">
<title>AP2 Modul 11: Betriebliche Projektarbeit (40h) & Fachgespräch (Guide)</title>
<link rel="stylesheet" href="../../../assets/style.css">
<link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css">
</head>
<body class="bg-slate-900 text-slate-100 font-sans p-6">
<div class="container mx-auto max-w-4xl">
<div class="flex justify-between items-center mb-6">
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary text-sm">← Zurück zum Dashboard</a>
<span class="ihk-badge ihk-badge-success">50 % der AP2 Gesamtnote</span>
</div>
<h1 class="text-3xl font-extrabold text-sky-400 mb-2">AP2 Modul 11: Betriebliche Projektarbeit (40h) & Fachgespräch (Guide)</h1>
<p class="text-slate-300 text-lg leading-relaxed mb-6">Die 50%-Gesamtnote: Projektantrag, 40h-Phasengliederung, Nutzwertanalyse, Dokumentation & Kolloquium.</p>
<!-- Fachtheorie & Wissen -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin-bottom: 24px;">
<h2 style="color: #38bdf8; margin-top: 0;">🏆 Betriebliche Projektarbeit (40h) & Fachgespräch</h2>
<p style="color: #cbd5e1; line-height: 1.6;">
Die betriebliche Projektarbeit mit anschließender Präsentation und Fachgespräch bildet das Herzstück der Abschlussprüfung und macht <strong>50 % der gesamten Abschlussprüfung Teil 2</strong> aus!
</p>
<h3 style="color: #cbd5e1; margin-top: 20px;">1. Die 5 Phasen des 40-Stunden-Projekts (FISI)</h3>
<div style="background: #0f172a; padding: 16px; border-radius: 8px; margin: 12px 0;">
<table class="ihk-table">
<thead>
<tr><th>Projektphase</th><th>Typische Dauer</th><th>Kernaktivitäten</th></tr>
</thead>
<tbody>
<tr>
<td><strong>1. Analyse & Konzeption</strong></td>
<td>ca. 8 Stunden</td>
<td>Ist-Analyse, Soll-Konzept, Nutzwertanalyse, Make-or-Buy-Entscheidung, Lastenheft.</td>
</tr>
<tr>
<td><strong>2. Entwurf & Planung</strong></td>
<td>ca. 8 Stunden</td>
<td>Pflichtenheft, Netzwerk- und Speicherkonzept, Adressierungsplan, Zeit-/Ressourcenplanung.</td>
</tr>
<tr>
<td><strong>3. Durchführung & Implementierung</strong></td>
<td>ca. 14 Stunden</td>
<td>Installation, Konfiguration von Servern/Switches, Scripting, Anbindung Monitoring.</td>
</tr>
<tr>
<td><strong>4. Qualitätssicherung & Test</strong></td>
<td>ca. 4 Stunden</td>
<td>Testplan abarbeiten, Funktionstest, Failover-Simulation, Sicherheitsaudit, Abnahme.</td>
</tr>
<tr>
<td><strong>5. Dokumentation & Wirtschaftlichkeit</strong></td>
<td>ca. 6 Stunden</td>
<td>Projektdokumentation (max. 15 Seiten), Kundendokumentation, Amortisationsrechnung.</td>
</tr>
</tbody>
</table>
</div>
<h3 style="color: #cbd5e1; margin-top: 20px;">2. Wirtschaftlichkeitsanalyse & Nutzwertanalyse (NWA)</h3>
<p style="color: #cbd5e1; line-height: 1.6;">
- <strong>Nutzwertanalyse (NWA):</strong> Mehrkriterielle Bewertung von Alternativen. Kriterien gewichten (Summe 100 %), Punkte 1–10 vergeben, Teilnutzwerte addieren.<br>
- <strong>Amortisation:</strong> $t_{\text{Amort}} = \frac{\text{Investition}}{\text{Jährliche Einsparung}}$.<br>
- <strong>Präsentation & Fachgespräch:</strong> 15 Min. Vortrag + 15 Min. Fachgespräch vor dem IHK-Prüfungsausschuss.
</p>
</div>
<!-- Interaktives Tool falls vorhanden -->
<div id="nwa-calculator-container" style="margin-bottom: 24px;"></div>
<!-- Fragenpool -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 24px; margin: 32px 0;">
<h2 style="color: #38bdf8; margin-top: 0; font-size: 1.4rem; display: flex; align-items: center; gap: 10px;">
<span>📝</span> Authentische IHK-Prüfungsaufgaben nach ZPA 2. Auflage
</h2>
<p style="color: #94a3b8; font-size: 0.9rem; margin-bottom: 20px;">
Bearbeiten Sie die Aufgaben und vergleichen Sie Ihre Antwort mit dem offiziellen Erwartungshorizont:
</p>
<div style="display: flex; flex-direction: column; gap: 20px;">
</div>
</div>
<!-- Footer Navigation mit echten Buttons -->
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
<a href="../10_wiso_betriebsorganisation_und_umwelt/index.html" class="ihk-btn ihk-btn-secondary font-semibold">← Vorheriges Modul</a>
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary">🏠 Kursübersicht</a>
<a href="../12_ap2_gesamtpruefung_simulation/index.html" class="ihk-btn ihk-btn-primary font-semibold">Nächstes Modul →</a>
</div>
</div>
<script src="../../../assets/courses_manifest.js"></script>
<script src="../../../assets/course_sidebar.js"></script>
<script src="../../../assets/ihk_tools/nwa_calculator.js"></script>
</body>
</html>

View file

@ -0,0 +1,5 @@
# AP2 Modul 12: AP2 Gesamtprüfungssimulation (Echtzeit)
**Prüfungsbereich:** Offizielle Prüfungs-Simulation (PB 1, PB 2 & WiSo)
Vollständige Prüfungssimulation aller 3 Prüfungsteile unter Echtzeitbedingungen mit Timer, Auswertung und IHK-Notenschlüssel.

View file

@ -0,0 +1,218 @@
<!DOCTYPE html>
<html lang="de">
<head>
<link rel="icon" type="image/svg+xml" href="../../../assets/favicon.svg">
<meta charset="UTF-8">
<title>AP2 Modul 12: AP2 Gesamtprüfungssimulation (Echtzeit)</title>
<link rel="stylesheet" href="../../../assets/style.css">
<link rel="stylesheet" href="../../../assets/ihk_tools/ihk_tools.css">
</head>
<body class="bg-slate-900 text-slate-100 font-sans p-6">
<div class="container mx-auto max-w-4xl">
<div class="flex justify-between items-center mb-6">
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-secondary text-sm">← Zurück zum Dashboard</a>
<span class="ihk-badge ihk-badge-danger">Offizielle IHK Simulation</span>
</div>
<h1 class="text-3xl font-extrabold text-rose-400 mb-2">AP2 Modul 12: AP2 Gesamtprüfungssimulation (Echtzeit)</h1>
<p class="text-slate-300 text-lg leading-relaxed mb-6">Simulation unter realen Prüfungsbedingungen nach ZPA Nord-West 2. Auflage: PB 1 (90 Min.), PB 2 (90 Min.) und WiSo (60 Min.) mit Notenrechner.</p>
<!-- Prüfungs-Tabs -->
<div style="background: #1e293b; border: 1px solid #334155; border-radius: 12px; padding: 20px; margin-bottom: 24px;">
<h3 style="color: #38bdf8; margin: 0 0 12px 0;">Wählen Sie Ihren Prüfungsteil für die Simulation:</h3>
<div style="display: flex; gap: 12px; flex-wrap: wrap;">
<button id="btn-part-t1" class="ihk-btn ihk-btn-primary">📋 Teil 1: Planen & Umsetzen (90 Min. / 100 Pkt.)</button>
<button id="btn-part-t2" class="ihk-btn ihk-btn-secondary">🌐 Teil 2: Netzanalyse & Redundanz (90 Min. / 100 Pkt.)</button>
<button id="btn-part-wiso" class="ihk-btn ihk-btn-secondary">⚖️ Teil 3: WiSo (60 Min. / 100 Pkt.)</button>
</div>
</div>
<script src="../../../assets/ihk_tools/ihk_question_bank.js"></script>
<script src="../../../assets/ihk_tools/exam_engine.js"></script>
<script>
function startExam(type, title, duration) {
window.exam = new IhkExamEngine({
title: title,
examType: type,
durationMinutes: duration,
totalPoints: 100
});
}
document.addEventListener("DOMContentLoaded", () => {
startExam("AP2_T1", "IHK AP2 Teil 1: Planen und Umsetzen eines IT-Systems (FISI)", 90);
document.getElementById("btn-part-t1").addEventListener("click", () => {
document.getElementById("btn-part-t1").className = "ihk-btn ihk-btn-primary";
document.getElementById("btn-part-t2").className = "ihk-btn ihk-btn-secondary";
document.getElementById("btn-part-wiso").className = "ihk-btn ihk-btn-secondary";
startExam("AP2_T1", "IHK AP2 Teil 1: Planen und Umsetzen eines IT-Systems (FISI)", 90);
});
document.getElementById("btn-part-t2").addEventListener("click", () => {
document.getElementById("btn-part-t2").className = "ihk-btn ihk-btn-primary";
document.getElementById("btn-part-t1").className = "ihk-btn ihk-btn-secondary";
document.getElementById("btn-part-wiso").className = "ihk-btn ihk-btn-secondary";
startExam("AP2_T2", "IHK AP2 Teil 2: Analyse und Entwicklung von Netzwerken (FISI)", 90);
});
document.getElementById("btn-part-wiso").addEventListener("click", () => {
document.getElementById("btn-part-wiso").className = "ihk-btn ihk-btn-primary";
document.getElementById("btn-part-t1").className = "ihk-btn ihk-btn-secondary";
document.getElementById("btn-part-t2").className = "ihk-btn ihk-btn-secondary";
startExam("WiSo", "IHK AP2 Teil 3: Wirtschafts- und Sozialkunde (WiSo)", 60);
});
});
</script>
<!-- Standard-Aufgaben für Teil 1 -->
<div class="ihk-exam-task" data-title="Aufgabe 1: Virtual Desktop Infrastructure (VDI) & Thin Clients" data-points="25" style="background: #1e293b; padding: 24px; border-radius: 12px; border: 1px solid #334155; margin-bottom: 24px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<h3 style="color: #f87171; margin: 0;">1. Aufgabe: VDI, Thin Clients & Gruppenrichtlinien</h3>
<span class="ihk-badge">25 Punkte</span>
</div>
<p style="color: #cbd5e1; font-size: 0.95rem; line-height: 1.6;">
Ein Unternehmen plant die Ablösung klassischer Desktop-PCs durch eine Virtual Desktop Infrastructure (VDI) mit zentralem Server-Cluster und Thin Clients.
</p>
<div class="ihk-input-group">
<label>a) Nenne 3 wesentliche administrative oder wirtschaftliche Vorteile einer zentralen VDI-Lösung gegenüber Fat Clients. (6 Punkte)</label>
<textarea class="ihk-input" rows="3" placeholder="Vorteile..."></textarea>
</div>
<div class="ihk-input-group">
<label>b) Wie wird sichergestellt, dass Konfigurationsänderungen auf allen virtuellen Desktops konsistent erzwungen werden? Erläutere die GPO-Verarbeitungshierarchie (LSDOU). (10 Punkte)</label>
<textarea class="ihk-input" rows="4" placeholder="GPO-Hierarchie..."></textarea>
</div>
<div class="ihk-input-group">
<label>c) Welche Netzwerkprotokolle (z. B. RDP, Blast, PCoIP) und Bandbreitenanforderungen sind für flüssiges Arbeiten im VDI-Umfeld notwendig? (9 Punkte)</label>
<textarea class="ihk-input" rows="3" placeholder="Protokolle & Bandbreite..."></textarea>
</div>
<div class="ihk-task-solution" style="display: none; margin-top: 16px; padding: 16px; background: #0f172a; border-left: 4px solid #4ade80; border-radius: 6px;">
<h4 style="color: #4ade80; margin-top: 0;">Offizielle IHK-Musterlösung:</h4>
<p style="color: #cbd5e1; font-size: 0.9rem; line-height: 1.6;">
<strong>a) (6 Pkt.):</strong> 1. Zentrale Administration, Rollout und Patchmanagement am Server; 2. Geringere Hardware- und Energiekosten an den Endgeräten (Thin Clients brauchen wenig Strom); 3. Höhere Datensicherheit, da keine Unternehmensdaten lokal auf den Clients gespeichert werden.<br>
<strong>b) (10 Pkt.):</strong> GPO-Hierarchie LSDOU (Local, Site, Domain, OU). Letztere überschreibt vorherige, es sei denn "Erzwungen" ist aktiv. Benutzer- und Computerkonfiguration werden strikt getrennt.<br>
<strong>c) (9 Pkt.):</strong> Protokolle: VMware Blast Extreme, Teradici PCoIP, Microsoft RDP. Bandbreite: ca. 1,5 bis 3 Mbit/s pro Standard-Office-Sitzung; Latenz sollte unter 50 ms liegen.
</p>
</div>
</div>
<!-- AUFGABE 2: ENTERPRISE STORAGE & RAID 6 -->
<div class="ihk-exam-task" data-title="Aufgabe 2: Enterprise SAN Storage & RAID 6" data-points="25" style="background: #1e293b; padding: 24px; border-radius: 12px; border: 1px solid #334155; margin-bottom: 24px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<h3 style="color: #f87171; margin: 0;">2. Aufgabe: Enterprise SAN Storage & RAID-Berechnung</h3>
<span class="ihk-badge">25 Punkte</span>
</div>
<p style="color: #cbd5e1; font-size: 0.95rem; line-height: 1.6;">
Für das neue Virtualisierungs-Cluster wird ein zentrales SAN mit einem All-Flash-Array beschafft. Es kommen 8 SSDs à 3,84 TB zum Einsatz, konfiguriert als RAID 6 plus 1 globale Hot-Spare-SSD.
</p>
<div class="ihk-input-group">
<label>a) Berechne die nutzbare Speicherkapazität (Netto) des Arrays in TB. Zeige den Rechenweg. (8 Punkte)</label>
<textarea class="ihk-input" rows="2" placeholder="Rechnung..."></textarea>
</div>
<div class="ihk-input-group">
<label>b) Warum empfiehlt der Hersteller bei SSD-Größen über 2 TB dringend RAID 6 statt RAID 5? Erläutere das Risiko von URE (Unrecoverable Read Errors) beim Rebuild. (9 Punkte)</label>
<textarea class="ihk-input" rows="3" placeholder="URE & Rebuild-Risiko..."></textarea>
</div>
<div class="ihk-input-group">
<label>c) Vergleiche die Protokolle iSCSI und Fibre Channel hinsichtlich Kosten, Hardwareanforderungen und Performance. (8 Punkte)</label>
<textarea class="ihk-input" rows="3" placeholder="iSCSI vs. Fibre Channel..."></textarea>
</div>
<div class="ihk-task-solution" style="display: none; margin-top: 16px; padding: 16px; background: #0f172a; border-left: 4px solid #4ade80; border-radius: 6px;">
<h4 style="color: #4ade80; margin-top: 0;">Offizielle IHK-Musterlösung:</h4>
<p style="color: #cbd5e1; font-size: 0.9rem; line-height: 1.6;">
<strong>a) (8 Pkt.):</strong> 8 SSDs abzüglich 1 Hot-Spare = 7 aktive SSDs im RAID. Bei RAID 6 gehen 2 Platten für Parität ab: Nutzkapazität = (7 - 2) * 3,84 TB = 5 * 3,84 TB = 19,20 TB.<br>
<strong>b) (9 Pkt.):</strong> Bei sehr großen Datenträgern ist die Wahrscheinlichkeit eines URE während des tagelangen Rebuilds eines RAID 5 extrem hoch. Fällt beim Rebuild ein weiterer Sektor aus, ist das gesamte RAID 5 unwiderruflich verloren. RAID 6 toleriert einen zweiten Fehler durch doppelte Parität (Reed-Solomon).<br>
<strong>c) (8 Pkt.):</strong> iSCSI nutzt bestehendes Ethernet (günstig, Standard-NICs, TCP Port 3260), erzeugt aber CPU-Overhead. Fibre Channel (FC) erfordert dedizierte FC-Switches und Host Bus Adapter (HBA), ist teurer, bietet aber garantierte Latenzfreiheit und Lossless-Framing.
</p>
</div>
</div>
<!-- AUFGABE 3: OSPF & BGP ROUTING -->
<div class="ihk-exam-task" data-title="Aufgabe 3: Dynamisches Routing mit OSPF & BGP" data-points="25" style="background: #1e293b; padding: 24px; border-radius: 12px; border: 1px solid #334155; margin-bottom: 24px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<h3 style="color: #f87171; margin: 0;">3. Aufgabe: Dynamisches Routing mit OSPF</h3>
<span class="ihk-badge">25 Punkte</span>
</div>
<p style="color: #cbd5e1; font-size: 0.95rem; line-height: 1.6;">
Ein Standortnetz mit drei Gebäuden wird über ein OSPF-Single-Area-Design (Area 0) redundant verbunden.
</p>
<div class="ihk-input-group">
<label>a) Wie berechnet OSPF die Metrik (Kosten) einer Route? Welche Referenzbandbreite wird standardmäßig verwendet und wie lautet die Formel? (8 Punkte)</label>
<textarea class="ihk-input" rows="2" placeholder="Formel..."></textarea>
</div>
<div class="ihk-input-group">
<label>b) Erläutere die Rollen von DR (Designated Router) und BDR (Backup Designated Router) in Multi-Access-Netzen. Welchem Zweck dienen sie? (9 Punkte)</label>
<textarea class="ihk-input" rows="3" placeholder="DR / BDR..."></textarea>
</div>
<div class="ihk-input-group">
<label>c) Warum muss Area 0 (Backbone Area) in jedem OSPF-Netzwerk vorhanden sein und wie müssen andere Areas angebunden werden? (8 Punkte)</label>
<textarea class="ihk-input" rows="3" placeholder="Area 0..."></textarea>
</div>
<div class="ihk-task-solution" style="display: none; margin-top: 16px; padding: 16px; background: #0f172a; border-left: 4px solid #4ade80; border-radius: 6px;">
<h4 style="color: #4ade80; margin-top: 0;">Offizielle IHK-Musterlösung:</h4>
<p style="color: #cbd5e1; font-size: 0.9rem; line-height: 1.6;">
<strong>a) (8 Pkt.):</strong> Formel: Cost = Referenzbandbreite / Schnittstellenbandbreite. Standardmäßig 100 Mbit/s (10^8 bit/s). Für Gigabit/10G-Netze muss auto-cost reference-bandwidth angepasst werden.<br>
<strong>b) (9 Pkt.):</strong> In Broadcast-Netzen reduzieren DR/BDR die Anzahl der Adjacency-Beziehungen von n*(n-1)/2 auf n. Router senden LSAs nur an 224.0.0.6 (AllDRouters), DR verteilt sie an 224.0.0.5 weiter.<br>
<strong>c) (8 Pkt.):</strong> Area 0 dient als schleifenfreier Kern (Loop Prevention). Jede Nicht-Backbone-Area muss physisch oder über Virtual Links direkt mit Area 0 verbunden sein (Star-Topologie).
</p>
</div>
</div>
<!-- AUFGABE 4: IT-SICHERHEIT & ZERO TRUST -->
<div class="ihk-exam-task" data-title="Aufgabe 4: Zero Trust Architektur & NGFW" data-points="25" style="background: #1e293b; padding: 24px; border-radius: 12px; border: 1px solid #334155; margin-bottom: 24px;">
<div style="display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px;">
<h3 style="color: #f87171; margin: 0;">4. Aufgabe: Zero Trust Architecture & Next-Gen Firewall</h3>
<span class="ihk-badge">25 Punkte</span>
</div>
<p style="color: #cbd5e1; font-size: 0.95rem; line-height: 1.6;">
Ein FinTech-Unternehmen stellt seine Sicherheitsarchitektur von einem klassischen Perimeter-Modell auf Zero Trust um.
</p>
<div class="ihk-input-group">
<label>a) Beschreibe die 3 Grundprinzipien von Zero Trust nach NIST SP 800-207. (8 Punkte)</label>
<textarea class="ihk-input" rows="3" placeholder="3 Prinzipien..."></textarea>
</div>
<div class="ihk-input-group">
<label>b) Was unterscheidet eine Stateful-Inspection-Firewall von einer Next-Generation-Firewall (NGFW)? Nenne 3 NGFW-Sicherheitsfeatures. (9 Punkte)</label>
<textarea class="ihk-input" rows="3" placeholder="NGFW Features..."></textarea>
</div>
<div class="ihk-input-group">
<label>c) Erläutere den Unterschied zwischen IPSec Site-to-Site VPN im Tunnel-Modus vs. Transport-Modus. (8 Punkte)</label>
<textarea class="ihk-input" rows="3" placeholder="Tunnel vs. Transport..."></textarea>
</div>
<div class="ihk-task-solution" style="display: none; margin-top: 16px; padding: 16px; background: #0f172a; border-left: 4px solid #4ade80; border-radius: 6px;">
<h4 style="color: #4ade80; margin-top: 0;">Offizielle IHK-Musterlösung:</h4>
<p style="color: #cbd5e1; font-size: 0.9rem; line-height: 1.6;">
<strong>a) (8 Pkt.):</strong> 1. "Never trust, always verify" (Jede Anfrage wird authentifiziert und autorisiert); 2. "Least Privilege" (Minimaler Rechtezugriff); 3. "Assume Breach" (Sicherheitsüberprüfungen gehen davon aus, dass Angreifer bereits im Netz sind).<br>
<strong>b) (9 Pkt.):</strong> Stateful Inspection filtert nur L3/L4 anhand von IP, Port und State-Table. NGFW prüft bis Layer 7: Deep Packet Inspection (DPI), Application Control (App-ID), integriertes Intrusion Prevention System (IPS), SSL/TLS-Entschlüsselung.<br>
<strong>c) (8 Pkt.):</strong> Transport-Modus: Verschlüsselt nur die Nutzlast (Payload), IP-Header bleibt unverändert (für Host-to-Host). Tunnel-Modus: Verschlüsselt das gesamte ursprüngliche IP-Paket und setzt einen neuen IP-Header davor (Standard für Router-to-Router Site-to-Site VPNs).
</p>
</div>
</div>
<!-- Footer Navigation mit echten Buttons -->
<div class="mt-8 pt-6 border-t border-slate-700 flex justify-between items-center">
<a href="../11_betriebliche_projektarbeit_guide/index.html" class="ihk-btn ihk-btn-secondary font-semibold">← Vorheriges Modul</a>
<a href="../../../dashboard.html" class="ihk-btn ihk-btn-success font-semibold">🏆 Zurück zur Kursübersicht</a>
</div>
</div>
<script src="../../../assets/courses_manifest.js"></script>
<script src="../../../assets/course_sidebar.js"></script>
</body>
</html>

View file

@ -4,89 +4,107 @@
"language": "ihk_ap2_fisi", "language": "ihk_ap2_fisi",
"icon": "📕", "icon": "📕",
"runner": "none", "runner": "none",
"description": "Vollständige Prüfungsvorbereitung für FISI (LF 9–12, WiSo, 40h-Projekt). VLANs, OSPF, Active Directory, RAID-Simulator, Cloud & 3 vollständige Probeprüfungen.", "description": "Vollständige Prüfungsvorbereitung für FISI (LF 9–12, WiSo, 40h-Projekt). 12 Module nach ZPA Nord-West 2. Auflage: VLANs, VRT-Symbole, Active Directory, RAID 0-10, Backup 3-2-1-1-0, Enterprise SQL & Vollsimulation.",
"tracks": [ "tracks": [
{ {
"id": "track_1_netzwerke_und_server", "id": "track_1_netzwerke_und_server",
"title": "🌱 Lehrpfad 1: Enterprise Netzwerke & Serverdienste (LF 9 & 10)", "title": "🌱 Lehrpfad 1: Enterprise Netzwerke & Serverdienste (LF 9 & 10)",
"description": "VLANs (802.1Q), LACP, Spanning Tree, OSPF, BGP, Active Directory, Gruppenrichtlinien, PKI & Ansible.", "description": "VLANs (802.1Q), LACP, Spanning Tree, OSPF, BGP, VRT-Symbole, Strukturierte Verkabelung, Active Directory & Kerberos.",
"certificateKey": "ihk_ap2_netzwerke", "certificateKey": "ihk_ap2_netzwerke",
"chapters": [ "chapters": [
{ {
"folder": "01_lf9_netzwerke_und_dienste", "folder": "01_lf9_netzwerkinfrastruktur_und_routing",
"title": "LF 9: Netzwerke & Dienste bereitstellen (VLAN, Routing, Firewalls)", "title": "LF 9: Enterprise Routing & Switching (VLAN, STP, LACP, OSPF)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
}, },
{ {
"folder": "02_lf10_serverdienste_und_automation", "folder": "02_vrt_netzwerkplaene_und_infrastruktur",
"title": "LF 10: Serverdienste & Automation bereitstellen (AD DS, DNS, Ansible)", "title": "LF 9: Normierte Netzwerkpläne (VRT-Symbole) & Verkabelung",
"taskFile": "README.md",
"testFile": "index.html"
},
{
"folder": "03_lf10_serverdienste_und_identitaeten",
"title": "LF 10: Serverdienste, Active Directory & Identitäten (AD DS, GPO, Kerberos)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
} }
] ]
}, },
{ {
"id": "track_2_storage_und_cloud", "id": "track_2_storage_und_automation",
"title": "🛡️ Lehrpfad 2: Storage, Hochverfügbarkeit & Cloud (LF 11 & 12)", "title": "⚙️ Lehrpfad 2: Skripting, Storage & Hochverfügbarkeit (LF 10 & 11)",
"description": "RAID 0/1/5/6/10, SAN/NAS, HA-Cluster, Quorum, STONITH, ZFS, Hypervisoren, Docker, Kubernetes & Prometheus.", "description": "PowerShell, Bash, Ansible, RAID 0/1/5/6/10 (exklusiv AP2!), SAN/NAS, iSCSI, 3-2-1-1-0 Backup & HA-Cluster.",
"certificateKey": "ihk_ap2_sicherheit", "certificateKey": "ihk_ap2_storage_automation",
"chapters": [ "chapters": [
{ {
"folder": "03_lf11_speicher_und_hochverfuegbarkeit", "folder": "04_systemautomation_powershell_bash_python",
"title": "LF 11: Speicher- & Hochverfügbarkeitssysteme (RAID, SAN, Cluster)", "title": "LF 10: Skriptprogrammierung & Systemautomation (PowerShell, Bash, Ansible)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
}, },
{ {
"folder": "04_lf12_virtualisierung_und_cloud", "folder": "05_lf11_speicher_und_hochverfuegbarkeit",
"title": "LF 12: Virtualisierung, Cloud & Automation (Docker, K8s, IaC)", "title": "LF 11: Enterprise Storage, RAID & SAN-Architekturen (RAID 0-10, iSCSI, ZFS)",
"taskFile": "README.md",
"testFile": "index.html"
},
{
"folder": "06_backup_dr_und_hochverfuegbarkeit",
"title": "LF 11: Backup, Disaster Recovery & Hochverfügbarkeit (3-2-1-1-0, RTO/RPO)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
} }
] ]
}, },
{ {
"id": "track_3_wiso_und_projekt", "id": "track_3_datenbanken_und_cloud",
"title": "☁️ Lehrpfad 3: WiSo & 40h-Betriebliche Projektarbeit", "title": "☁️ Lehrpfad 3: Enterprise SQL, Cloud & WiSo Arbeitsrecht (LF 10, 11 & 12)",
"description": "Wirtschafts- & Sozialkunde (Arbeitsrecht, KSchG, Sozialversicherung) & Leitfaden zur 40h-Projektarbeit samt Fachgespräch.", "description": "ZPA-SQL (DDL, DCL, Multi-Table JOINs, DATEDIFF), Hypervisoren, Docker, Kubernetes, Zero Trust & WiSo Arbeitsrecht.",
"certificateKey": "ihk_ap2_wiso_projekt", "certificateKey": "ihk_ap2_cloud_sql",
"chapters": [ "chapters": [
{ {
"folder": "05_wiso_arbeitsrecht_und_wirtschaft", "folder": "07_enterprise_sql_und_datenbank_admin",
"title": "WiSo: Wirtschafts- & Sozialkunde Prüfungs-Fit (BGB, KSchG, BetrVG)", "title": "LF 10/11: Enterprise SQL & Datenbank-Administration (DDL, DCL, Joins, DATEDIFF)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
}, },
{ {
"folder": "06_betriebliche_projektarbeit_guide", "folder": "08_lf12_virtualisierung_und_cloud",
"title": "Projekt: Betriebliche Projektarbeit (40h) & Fachgespräch-Guide", "title": "LF 12: Cloud-Architekturen, Virtualisierung & Security (Docker, K8s, Zero Trust)",
"taskFile": "README.md",
"testFile": "index.html"
},
{
"folder": "09_wiso_arbeitsrecht_und_wirtschaft",
"title": "WiSo 1: Arbeitsrecht, Tarifrecht & Gehaltsabrechnung (BBiG, KSchG, ArbZG)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
} }
] ]
}, },
{ {
"id": "track_4_probepruefungen", "id": "track_4_betrieb_projekt_und_pruefung",
"title": "🏆 Lehrpfad 4: Offizielle AP2 Probeprüfungen & Simulationen", "title": "🏆 Lehrpfad 4: Organisation, 40h-Projektarbeit & Prüfungssimulation",
"description": "Die 3 schriftlichen IHK-Prüfungsteile unter Realbedingungen (Teil 1: 90 Min., Teil 2: 90 Min., WiSo: 60 Min.) mit 150-Fragen-Zufallsgenerator.", "description": "Unternehmensformen, BetrVG, PUE-Wert, Green IT, Leitfaden zur 40h-Projektarbeit samt Fachgespräch & Vollsimulation AP2.",
"certificateKey": "ihk_ap2_fisi_master", "certificateKey": "ihk_ap2_fisi_master",
"chapters": [ "chapters": [
{ {
"folder": "07_ap2_teil_1_probepruefung", "folder": "10_wiso_betriebsorganisation_und_umwelt",
"title": "Probeprüfung AP2 Teil 1: Planen & Umsetzen (90 Min. / 100 Pkt.)", "title": "WiSo 2: Unternehmensformen, Umweltschutz (PUE) & Organisation (BetrVG)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
}, },
{ {
"folder": "08_ap2_teil_2_probepruefung", "folder": "11_betriebliche_projektarbeit_guide",
"title": "Probeprüfung AP2 Teil 2: Administration & Netzanalyse (90 Min. / 100 Pkt.)", "title": "Projekt: Betriebliche Projektarbeit (40h) & Fachgespräch (Guide)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
}, },
{ {
"folder": "09_ap2_wiso_probepruefung", "folder": "12_ap2_gesamtpruefung_simulation",
"title": "Probeprüfung AP2 WiSo: Wirtschafts- & Sozialkunde (60 Min. / 100 Pkt.)", "title": "Abschluss: AP2 Gesamtprüfungssimulation (PB 1, PB 2 & WiSo)",
"taskFile": "README.md", "taskFile": "README.md",
"testFile": "index.html" "testFile": "index.html"
} }

View file

@ -499,14 +499,14 @@
</div> </div>
<div class="course-progress-meta"> <div class="course-progress-meta">
<span>Fortschritt</span> <span>Fortschritt</span>
<span id="prog-text-ihk_ap2_fisi">0 / 9 Module (0%)</span> <span id="prog-text-ihk_ap2_fisi">0 / 12 Module (0%)</span>
</div> </div>
</div> </div>
<div class="portal-card-footer" style="margin-top: 14px;"> <div class="portal-card-footer" style="margin-top: 14px;">
<a href="workspace.html?course=ihk_ap2_fisi&chapter=01_lf9_netzwerke_und_dienste" class="btn-start-ide" onclick="trackLastCourse('ihk_ap2_fisi', 'IHK AP2 Systemintegration', '📕')"> <a href="workspace.html?course=ihk_ap2_fisi&chapter=01_lf9_netzwerkinfrastruktur_und_routing" class="btn-start-ide" onclick="trackLastCourse('ihk_ap2_fisi', 'IHK AP2 Systemintegration', '📕')">
<span>▶ Kurs starten</span> <span>&rarr;</span> <span>▶ Kurs starten</span> <span>&rarr;</span>
</a> </a>
<a href="courses/ihk_ap2_fisi/01_lf9_netzwerke_und_dienste/index.html" class="btn-view-theory"> <a href="courses/ihk_ap2_fisi/01_lf9_netzwerkinfrastruktur_und_routing/index.html" class="btn-view-theory">
<span>📖 Lehrplan</span> <span>📖 Lehrplan</span>
</a> </a>
</div> </div>
@ -985,7 +985,7 @@
<h3 style="margin: 8px 0 6px 0; font-size: 1.6rem; color: #1e3a8a; font-weight: 900;">🎓 IHK Prüfungstrainer AP1 &amp; AP2</h3> <h3 style="margin: 8px 0 6px 0; font-size: 1.6rem; color: #1e3a8a; font-weight: 900;">🎓 IHK Prüfungstrainer AP1 &amp; AP2</h3>
<p style="margin: 0; color: #475569; font-size: 0.95rem; max-width: 780px;">Realistische Prüfungssimulation nach der neuen Ausbildungsordnung (AO 2020) für Fachinformatiker aller Fachrichtungen mit Timer, Notenschlüssel &amp; Lösungserklärungen.</p> <p style="margin: 0; color: #475569; font-size: 0.95rem; max-width: 780px;">Realistische Prüfungssimulation nach der neuen Ausbildungsordnung (AO 2020) für Fachinformatiker aller Fachrichtungen mit Timer, Notenschlüssel &amp; Lösungserklärungen.</p>
</div> </div>
<a href="courses/ihk_ap1/12_ihk_ap1_probepruefung_simulation/index.html" class="btn" style="background: #1d4ed8; color: white; padding: 10px 20px; font-weight: 800; border-radius: 8px; text-decoration: none; display: inline-flex; align-items: center; gap: 8px;"> <a href="courses/ihk_ap1/12_ap1_probepruefung_simulation/index.html" class="btn" style="background: #1d4ed8; color: white; padding: 10px 20px; font-weight: 800; border-radius: 8px; text-decoration: none; display: inline-flex; align-items: center; gap: 8px;">
<span>⚡ 90-Min AP1 Probeprüfung starten</span> <span>⚡ 90-Min AP1 Probeprüfung starten</span>
</a> </a>
</div> </div>
@ -993,7 +993,7 @@
<div style="display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 18px; margin-top: 16px;"> <div style="display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 18px; margin-top: 16px;">
<div style="background: #ffffff; border: 1px solid #e2e8f0; border-radius: 12px; padding: 20px; box-shadow: var(--shadow-sm);"> <div style="background: #ffffff; border: 1px solid #e2e8f0; border-radius: 12px; padding: 20px; box-shadow: var(--shadow-sm);">
<h4 style="margin: 0 0 6px 0; color: #1e3a8a; font-size: 1.05rem;">📘 AP1: IT-Arbeitsplatz (LF 1–8)</h4> <h4 style="margin: 0 0 6px 0; color: #1e3a8a; font-size: 1.05rem;">📘 AP1: IT-Arbeitsplatz (LF 1–8)</h4>
<p style="font-size: 0.86rem; color: #64748b; margin: 0 0 14px 0;">Gemeinsame Kernqualifikationen: Verträge, Ergonomie, IPv4/IPv6 Subnetting, BSI-Schutzbedarf, SQL &amp; Trace-Tabellen.</p> <p style="font-size: 0.86rem; color: #64748b; margin: 0 0 14px 0;">Gemeinsame Kernqualifikationen: Verträge, Ergonomie, IPv4/IPv6 Subnetting, BSI-Schutzbedarf, BPMN 2.0, Belegsätze &amp; Netzplantechnik.</p>
<a href="workspace.html?course=ihk_ap1&chapter=01_lf1_unternehmen_und_arbeitsplatz" class="btn-start-ide" style="font-size: 0.84rem; padding: 8px 14px;"> <a href="workspace.html?course=ihk_ap1&chapter=01_lf1_unternehmen_und_arbeitsplatz" class="btn-start-ide" style="font-size: 0.84rem; padding: 8px 14px;">
<span>▶ AP1 Module üben</span> <span>▶ AP1 Module üben</span>
</a> </a>
@ -1001,8 +1001,8 @@
<div style="background: #ffffff; border: 1px solid #e2e8f0; border-radius: 12px; padding: 20px; box-shadow: var(--shadow-sm);"> <div style="background: #ffffff; border: 1px solid #e2e8f0; border-radius: 12px; padding: 20px; box-shadow: var(--shadow-sm);">
<h4 style="margin: 0 0 6px 0; color: #991b1b; font-size: 1.05rem;">📕 AP2: Systemintegration (LF 9–12)</h4> <h4 style="margin: 0 0 6px 0; color: #991b1b; font-size: 1.05rem;">📕 AP2: Systemintegration (LF 9–12)</h4>
<p style="font-size: 0.86rem; color: #64748b; margin: 0 0 14px 0;">Fachrichtungsspezifisch: VLANs &amp; Routing, Active Directory GPO, RAID &amp; SAN-Speicher, Virtualisierung, WiSo &amp; 40h-Projektleitfaden.</p> <p style="font-size: 0.86rem; color: #64748b; margin: 0 0 14px 0;">Fachrichtungsspezifisch: VLANs &amp; Routing, VRT-Netzwerkpläne, Active Directory, RAID &amp; Backup 3-2-1-1-0, Enterprise SQL &amp; 40h-Projektleitfaden.</p>
<a href="workspace.html?course=ihk_ap2_fisi&chapter=01_lf9_netzwerke_und_dienste" class="btn-start-ide" style="font-size: 0.84rem; padding: 8px 14px; background: #991b1b;"> <a href="workspace.html?course=ihk_ap2_fisi&chapter=01_lf9_netzwerkinfrastruktur_und_routing" class="btn-start-ide" style="font-size: 0.84rem; padding: 8px 14px; background: #991b1b;">
<span>▶ AP2 FISI Module üben</span> <span>▶ AP2 FISI Module üben</span>
</a> </a>
</div> </div>

View file

@ -444,13 +444,13 @@ add_q('ap1_lf4_014', 'AP1', 'LF 4', 'Digitale Signatur und Hashfunktionen',
'3. Der Kunde entschlüsselt die Signatur mit dem öffentlichen Schlüssel (Public Key) des Erstellers und erhält den Original-Hash. (2 Pkt.)\n' '3. Der Kunde entschlüsselt die Signatur mit dem öffentlichen Schlüssel (Public Key) des Erstellers und erhält den Original-Hash. (2 Pkt.)\n'
'4. Der Kunde berechnet unabhängig den Hashwert über die heruntergeladene Datei. Stimmen beide Hashwerte exakt überein, ist die Software integer (unverändert) und authentisch (vom echten Ersteller). (2 Pkt.)') '4. Der Kunde berechnet unabhängig den Hashwert über die heruntergeladene Datei. Stimmen beide Hashwerte exakt überein, ist die Software integer (unverändert) und authentisch (vom echten Ersteller). (2 Pkt.)')
# --- LF 5: Software zur Datenverwaltung anpassen (Trace-Tabellen, UML, SQL) --- # --- LF 5: Software zur Datenverwaltung anpassen (Trace-Tabellen, UML, Pseudocode) ---
add_q('ap1_lf5_001', 'AP1', 'LF 5', 'Struktogramm Schleifentypen nach DIN 66261', add_q('ap1_lf5_001', 'AP1', 'LF 5', 'UML-Aktivitätsdiagramm & Pseudocode Schleifenlogik',
'Zur Programmierung eines Algorithmus werden Schleifenstrukturen entworfen.', 'Für einen automatisierten Backup-Prozess soll die Kontrolllogik modelliert werden: Es wird geprüft, ob ausreichend Speicherplatz frei ist. Wenn ja, werden Dateien kopiert und eine Erfolgsmeldung gesendet. Wenn nein, wird ein Fehler protokolliert und der Vorgang abgebrochen.',
'Vergleichen Sie eine kopfgesteuerte Schleife (WHILE) mit einer fußgesteuerten Schleife (DO-WHILE) hinsichtlich Ausführungslogik und Mindestanzahl von Durchläufen und skizzieren Sie die Darstellung nach Nassi-Shneiderman.', 'Vergleichen Sie die Modellierung von Kontrollstrukturen im UML-Aktivitätsdiagramm (Entscheidungsknoten / Raute, Guards) mit strukturiertem Pseudocode (WENN-DANN-SONST) und erläutern Sie die Funktion von Fork- und Join-Knoten (Synchronisationsbalken) bei parallelen Abläufen.',
6, 6,
'Kopfgesteuerte Schleife (abweisend): Die Bedingung wird VOR jedem Schleifendurchlauf geprüft. Ist die Bedingung von Beginn an falsch, wird der Rumpf 0-mal ausgeführt. Nassi-Shneiderman: Oberer horizontaler Balken mit Bedingung, der den Schleifenkörper links und unten umschließt. (3 Pkt.)\n' 'Entscheidungsknoten & Guards: Im UML-Aktivitätsdiagramm stellt eine Raute eine Verzweigung dar; die ausgehenden Kanten tragen Bedingungen in eckigen Klammern [Guards], von denen exakt eine wahr sein muss (äquivalent zu WENN-DANN-SONST im Pseudocode). (3 Pkt.)\n'
'Fußgesteuerte Schleife (nicht abweisend): Die Bedingung wird NACH jedem Schleifendurchlauf am Fuß geprüft. Der Rumpf wird mindestens 1-mal garantiert ausgeführt. Nassi-Shneiderman: Unterer horizontaler Balken mit Bedingung, der den Schleifenkörper links und oben umschließt. (3 Pkt.)') 'Fork- und Join-Knoten: Ein Fork-Knoten (dicker Balken) teilt einen eingehenden Kontrollfluss in mehrere nebenläufig/parallel ausgeführte Pfade auf. Ein Join-Knoten synchronisiert diese parallelen Pfade wieder und lässt den Kontrollfluss erst weiterlaufen, wenn ALLE eingehenden Aktionen abgeschlossen sind. (3 Pkt.)')
add_q('ap1_lf5_002', 'AP1', 'LF 5', 'Trace-Tabelle Quersumme Algorithmus', add_q('ap1_lf5_002', 'AP1', 'LF 5', 'Trace-Tabelle Quersumme Algorithmus',
'Gegeben ist folgender Pseudocode zur Berechnung der Quersumme einer Zahl:\n' 'Gegeben ist folgender Pseudocode zur Berechnung der Quersumme einer Zahl:\n'
@ -531,46 +531,51 @@ add_q('ap1_lf5_008', 'AP1', 'LF 5', 'ER-Modellierung Kardinalitäten',
'Auflösung im relationalen Schema: Eine n:m-Beziehung kann nicht direkt über Fremdschlüssel in den beiden Haupttabellen abgebildet werden. Es wird eine Zwischentabelle / Verknüpfungstabelle (z. B. projekt_mitarbeiter) benötigt. (3 Pkt.)\n' 'Auflösung im relationalen Schema: Eine n:m-Beziehung kann nicht direkt über Fremdschlüssel in den beiden Haupttabellen abgebildet werden. Es wird eine Zwischentabelle / Verknüpfungstabelle (z. B. projekt_mitarbeiter) benötigt. (3 Pkt.)\n'
'Struktur der Zwischentabelle: Enthält als Fremdschlüssel projekt_id und mitarbeiter_id (bilden gemeinsam den zusammengesetzten Primärschlüssel) sowie das Beziehungsattribut arbeitsstunden. (3 Pkt.)') 'Struktur der Zwischentabelle: Enthält als Fremdschlüssel projekt_id und mitarbeiter_id (bilden gemeinsam den zusammengesetzten Primärschlüssel) sowie das Beziehungsattribut arbeitsstunden. (3 Pkt.)')
add_q('ap1_lf5_009', 'AP1', 'LF 5', 'SQL DDL CREATE TABLE mit Constraints', add_q('ap1_lf5_009', 'AP1', 'LF 5', 'ER-Modellierung Chen vs Krähenfuß-Notation',
'Für eine Ticket-Verwaltung soll die Tabelle \"ticket\" per SQL angelegt werden: id (Ganzzahl, Primärschlüssel mit Autoinkrement), titel (Text, max. 100 Zeichen, Pflichtfeld), status (Text, Standardwert \"OFFEN\"), prioritaet (Ganzzahl, Werte nur von 1 bis 5 erlaubt), ersteller_id (Ganzzahl, Fremdschlüssel auf benutzer.id mit Kaskadierung beim Löschen).', 'Zur Dokumentation eines Kundensystems werden Entity-Relationship-Modelle (ERM) eingesetzt.',
'Schreiben Sie das syntaktisch korrekte SQL-Statement nach ANSI/ISO-Standard.', 'Vergleichen Sie die Chen-Notation mit der Krähenfuß-Notation (Martin-Notation) hinsichtlich der Darstellung von Entitäten, Attributen und Kardinalitäten (1:1, 1:n, n:m).',
10,
'CREATE TABLE ticket (\n'
' id INTEGER PRIMARY KEY AUTO_INCREMENT,\n'
' titel VARCHAR(100) NOT NULL,\n'
' status VARCHAR(20) DEFAULT \'OFFEN\',\n'
' prioritaet INT CHECK (prioritaet BETWEEN 1 AND 5),\n'
' ersteller_id INT,\n'
' FOREIGN KEY (ersteller_id) REFERENCES benutzer(id) ON DELETE CASCADE\n'
'); (10 Pkt. - Abzug bei fehlendem NOT NULL, CHECK, DEFAULT oder FOREIGN KEY)')
add_q('ap1_lf5_010', 'AP1', 'LF 5', 'SQL DML Aggregation und GROUP BY mit HAVING',
'Gegeben sind die Tabellen kunden (id, name, stadt) und bestellungen (id, kunde_id, betrag, datum).',
'Formulieren Sie eine SQL-Abfrage, die den Kundennamen und die Gesamtsumme aller Bestellungen für jeden Kunden ausgibt, dessen Gesamtbestellwert 10.000 EUR überschreitet. Das Ergebnis soll absteigend nach der Summe sortiert sein.',
10,
'SELECT k.name, SUM(b.betrag) AS gesamtumsatz\n'
'FROM kunden k\n'
'INNER JOIN bestellungen b ON k.id = b.kunde_id\n'
'GROUP BY k.id, k.name\n'
'HAVING SUM(b.betrag) > 10000\n'
'ORDER BY gesamtumsatz DESC; (10 Pkt. - Abzug bei WHERE statt HAVING für Aggregatfunktion oder fehlendem GROUP BY)')
add_q('ap1_lf5_011', 'AP1', 'LF 5', 'SQL JOIN-Typen INNER vs LEFT vs FULL',
'In einer Datenbank existieren mitarbeiter (id, name, abt_id) und abteilungen (id, bezeichnung). Einige Mitarbeiter haben keine Abteilung, und einige Abteilungen haben keine Mitarbeiter.',
'Erläutern Sie den Unterschied im Abfrageergebnis zwischen INNER JOIN und LEFT OUTER JOIN bezüglich der Ergebniszeilen.',
6,
'INNER JOIN: Liefert ausschließlich Zeilen zurück, bei denen in beiden Tabellen ein übereinstimmender Wert vorliegt (Schnittmenge). Mitarbeiter ohne Abteilung und Abteilungen ohne Mitarbeiter werden vollständig verworfen. (3 Pkt.)\n'
'LEFT OUTER JOIN (mitarbeiter LEFT JOIN abteilungen): Liefert ALLE Datensätze der linken Tabelle (mitarbeiter), selbst wenn keine Übereinstimmung in abteilungen vorliegt. Die fehlenden Abteilungsspalten werden mit NULL aufgefüllt. (3 Pkt.)')
add_q('ap1_lf5_012', 'AP1', 'LF 5', 'SQL Transaktionen ACID-Eigenschaften',
'Bei einer Banküberweisung von 500 EUR von Konto A auf Konto B wird ein Transaktionsblock ausgeführt.',
'Nennen und erläutern Sie die vier ACID-Eigenschaften und beschreiben Sie, was passiert, wenn nach dem Abbuchen von Konto A das Datenbanksystem abstürzt.',
8, 8,
'Atomarität (Atomicity): Alles-oder-Nichts-Prinzip. Eine Transaktion wird entweder ganz oder gar nicht ausgeführt. (2 Pkt.)\n' 'Entitäten: Bei Chen als Rechteck dargestellt; bei Krähenfuß ebenfalls als Rechteck/Tabelle mit getrenntem Kopf für den Entitätsnamen. (2 Pkt.)\n'
'Konsistenz (Consistency): Nach Abschluss der Transaktion befindet sich die Datenbank in einem gültigen, integren Zustand. (2 Pkt.)\n' 'Attribute: Bei Chen als Ellipsen, die mit der Entität verbunden sind (Primärschlüssel unterstrichen); bei Krähenfuß direkt als Zeilen innerhalb des Entitätsrechtecks aufgelistet (PK/FK gekennzeichnet). (3 Pkt.)\n'
'Isolation: Gleichzeitige Transaktionen beeinflussen sich nicht gegenseitig. (1 Pkt.)\n' 'Kardinalitäten: Bei Chen über Rauten als Beziehungselemente mit Beschriftung 1, n, m an den Kanten; bei Krähenfuß direkt an den Linienenden über Symbole (Strich = genau eins, Kreis = optional/null, Dreizack/Krähenfuß = viele). (3 Pkt.)')
'Dauerhaftigkeit (Durability): Erfolgreich mit COMMIT bestätigte Änderungen bleiben dauerhaft im Speicher erhalten. (1 Pkt.)\n'
'Absturzfolge: Da die Buchung nicht durch COMMIT bestätigt wurde, greift beim Neustart ein automatisches Rollback (Undo-Logging). Die Abbuchung auf Konto A wird rückgängig gemacht. (2 Pkt.)') add_q('ap1_lf5_010', 'AP1', 'LF 5', 'Relationales Datenmodell & Referenzielle Integrität',
'In einer relationalen Datenbank werden Kundendaten und deren Bestellungen verwaltet.',
'Definieren Sie die Begriffe Primärschlüssel, Fremdschlüssel und Referenzielle Integrität und erklären Sie, welche Gefahr droht, wenn die referenzielle Integrität verletzt wird.',
8,
'Primärschlüssel (Primary Key): Ein Attribut oder eine minimale Attributkombination, die jeden Datensatz einer Tabelle eindeutig und unveränderlich identifiziert (Darf weder Duplikate noch NULL enthalten). (2 Pkt.)\n'
'Fremdschlüssel (Foreign Key): Ein Attribut in einer Relation, das auf den Primärschlüssel einer anderen (oder derselben) Relation verweist und logische Beziehungen herstellt. (2 Pkt.)\n'
'Referenzielle Integrität: Die Integritätsbedingung besagt, dass jeder Fremdschlüsselwert entweder NULL sein muss oder tatsächlich als gültiger Primärschlüsselwert in der referenzierten Elterntabelle existieren muss. (2 Pkt.)\n'
'Gefahr bei Verletzung: Entstehung von \"verwaisten Datensätzen\" (Orphan Records), z. B. Bestellungen ohne zugehörigen Kunden, was zu inkonsistenten Datenbeständen und Abstürzen in Auswertungen führt. (2 Pkt.)')
add_q('ap1_lf5_011', 'AP1', 'LF 5', 'Trace-Tabelle Array-Filterung und Schwellenwert',
'Gegeben ist ein Array messwerte = [18, 24, 12, 31, 20] und folgender Pseudocode:\n'
'GANZZAHL anzahl = 0\n'
'FÜR i VON 0 BIS 4 SCHRITT 1:\n'
' WENN messwerte[i] >= 20 DANN\n'
' anzahl = anzahl + 1\n'
' ENDE_WENN\n'
'ENDE_FÜR',
'Führen Sie eine vollständige Trace-Tabelle mit den Spalten: i, messwerte[i], Bedingung (>= 20), anzahl für alle 5 Schleifendurchläufe und geben Sie den Endwert von anzahl an.',
8,
'Initial: anzahl = 0\n'
'Schritt 1: i=0 -> messwerte[0]=18 -> 18>=20 (falsch) -> anzahl bleibt 0. (1,5 Pkt.)\n'
'Schritt 2: i=1 -> messwerte[1]=24 -> 24>=20 (wahr) -> anzahl = 0 + 1 = 1. (1,5 Pkt.)\n'
'Schritt 3: i=2 -> messwerte[2]=12 -> 12>=20 (falsch) -> anzahl bleibt 1. (1,5 Pkt.)\n'
'Schritt 4: i=3 -> messwerte[3]=31 -> 31>=20 (wahr) -> anzahl = 1 + 1 = 2. (1,5 Pkt.)\n'
'Schritt 5: i=4 -> messwerte[4]=20 -> 20>=20 (wahr) -> anzahl = 2 + 1 = 3. (1,5 Pkt.)\n'
'Ende: Schleife beendet, Endwert anzahl = 3. (0,5 Pkt.)',
qtype='calc')
add_q('ap1_lf5_012', 'AP1', 'LF 5', 'Transaktionskonzept & ACID-Eigenschaften',
'Bei der Erfassung eines Kundenauftrags müssen Kundendaten, Bestellkopf und fünf Bestellpositionen zeitgleich in der Datenbank gespeichert werden.',
'Nennen und erläutern Sie die vier ACID-Eigenschaften und beschreiben Sie, warum ein automatisches Rollback erforderlich ist, wenn das Speichern der vierten Bestellposition fehlschlägt.',
8,
'Atomarität (Atomicity): Alles-oder-Nichts-Prinzip. Eine Transaktion wird entweder vollständig oder gar nicht in der Datenbank festgeschrieben. (2 Pkt.)\n'
'Konsistenz (Consistency): Vor Beginn und nach Abschluss einer Transaktion befindet sich die Datenbank in einem konsistenten, widerspruchsfreien Zustand. (2 Pkt.)\n'
'Isolation: Parallele Transaktionen dürfen sich nicht gegenseitig beeinflussen, als liefen sie isoliert nacheinander ab. (1 Pkt.)\n'
'Dauerhaftigkeit (Durability): Nach erfolgreichem Transaktionsabschluss (Commit) sind die Daten dauerhaft und vor Systemabstürzen geschützt gespeichert. (1 Pkt.)\n'
'Bedarf für Rollback: Schlägt die vierte Position fehl, verhindert das Rollback eine unvollständige Bestellung (Kopf ohne alle Positionen), indem alle bereits geschriebenen Teilschritte rückgängig gemacht werden. (2 Pkt.)')
# --- LF 6: Cyber-Physische Systeme & IoT --- # --- LF 6: Cyber-Physische Systeme & IoT ---
add_q('ap1_lf6_001', 'AP1', 'LF 6', 'Sensoren und Aktoren im CPS', add_q('ap1_lf6_001', 'AP1', 'LF 6', 'Sensoren und Aktoren im CPS',
@ -675,6 +680,150 @@ add_q('ap1_lf8_004', 'AP1', 'LF 8', 'API-Authentifizierung JWT Bearer Token',
'Stateless-Prüfung: Der Server benötigt keine Session-Datenbank. Er berechnet aus empfangenem Header und Payload mit seinem geheimen Schlüssel die Signatur neu. Stimmt sie mit der im Token mitgelieferten Signatur überein und ist exp nicht abgelaufen, ist das Token garantiert echt und unverfälscht. (2 Pkt.)') 'Stateless-Prüfung: Der Server benötigt keine Session-Datenbank. Er berechnet aus empfangenem Header und Payload mit seinem geheimen Schlüssel die Signatur neu. Stimmt sie mit der im Token mitgelieferten Signatur überein und ist exp nicht abgelaufen, ist das Token garantiert echt und unverfälscht. (2 Pkt.)')
# --- AP1 NEU (ZPA 2. Auflage): BPMN 2.0, EPK, KI-Support, Belege, Netzplantechnik & IEC-Präfixe ---
add_q('ap1_bpmn_001', 'AP1', 'LF 1', 'BPMN 2.0 Gateways (Exklusiv XOR, Parallel AND, Inklusiv OR)',
'In einem IT-Service-Helpdesk wird die Bearbeitung eingehender Störungsmeldungen als BPMN 2.0 Geschäftsprozess modelliert.',
'Erläutern Sie die Funktionsweise und grafischen Symbole der drei BPMN-Gateways: Exklusives Gateway (XOR), Paralleles Gateway (AND) und Inklusives Gateway (OR) beim Verzweigen (Diverging) und Zusammenführen (Converging).',
8,
'Exklusives Gateway (XOR, Raute mit X oder leer): Genau ein einziger ausgehender Pfad wird gewählt, dessen Bedingung zutrifft. Beim Zusammenführen wartet es nicht, sondern leitet jedes eintreffende Token sofort weiter. (3 Pkt.)\n'
'Paralleles Gateway (AND, Raute mit Pluszeichen +): Alle ausgehenden Pfade werden gleichzeitig/nebenläufig aktiviert (Fork). Beim Zusammenführen (Join) wartet das Gateway, bis auf ALLEN eingehenden Pfaden ein Token eingetroffen ist, bevor der Prozess fortgesetzt wird. (3 Pkt.)\n'
'Inklusives Gateway (OR, Raute mit Kreis O): Ein oder mehrere Pfade werden gewählt, deren Bedingungen wahr sind. Beim Zusammenführen synchronisiert es alle tatsächlich aktiven eingehenden Pfade. (2 Pkt.)')
add_q('ap1_bpmn_002', 'AP1', 'LF 1', 'BPMN 2.0 Pools, Lanes und Flussregeln',
'Zur Abbildung eines Bestell- und Freigabeprozesses für Neugeräte zwischen Kunde, IT-Einkauf und Buchhaltung wird ein BPMN-Diagramm erstellt.',
'Unterscheiden Sie Pools und Swimlanes (Bahnen) und erläutern Sie die Regeln bezüglich Sequenzfluss (Sequence Flow) und Nachrichtenfluss (Message Flow).',
6,
'Pool: Repräsentiert eine eigenständige Organisationseinheit, ein externes Unternehmen oder einen eigenständigen Teilnehmer/Prozess (Black Box oder White Box). (2 Pkt.)\n'
'Lane: Unterteilt einen Pool in interne Rollen, Abteilungen oder Systeme (z. B. IT-Einkauf, Buchhaltung). (1 Pkt.)\n'
'Flussregeln: Ein Sequenzfluss (durchgezogener Pfeil) verbindet Aktivitäten innerhalb DENSELBEN Pools und darf niemals Pool-Grenzen überschreiten. Ein Nachrichtenfluss (gestrichelte Linie mit offenem Pfeil und Kreis am Start) stellt die asynchrone Kommunikation ZWISCHEN zwei unterschiedlichen Pools dar. (3 Pkt.)')
add_q('ap1_epk_001', 'AP1', 'LF 1', 'Ereignisgesteuerte Prozesskette (EPK) Modellierungsregeln',
'Ein Onboarding-Prozess für neue Mitarbeiter wird als Ereignisgesteuerte Prozesskette (EPK) dokumentiert.',
'Nennen Sie die drei Grundelemente einer EPK mit ihren geometrischen Symbolen und erläutern Sie zwei fundamentale Syntaxregeln für die Verknüpfung von Ereignissen und Funktionen.',
8,
'Grundelemente:\n'
'1. Ereignis: Sechseck (Hexagon). Beschreibt einen eingetretenen Zustand (Auslöser/Ergebnis, z. B. \"Mitarbeitervertrag unterzeichnet\"). (2 Pkt.)\n'
'2. Funktion: Rechteck mit abgerundeten Ecken. Beschreibt eine auszuführende Transformation/Aktivität im Infinitiv (z. B. \"Benutzerkonto im AD anlegen\"). (2 Pkt.)\n'
'3. Logischer Konnektor: Kreis mit Symbol (UND, ODER, XOR) zur Verzweigung/Zusammenführung. (1 Pkt.)\n'
'Zwei Syntaxregeln:\n'
'- Alternierungsregel: Ereignisse und Funktionen müssen sich im Ablauf immer strikt abwechseln (niemals Ereignis direkt auf Ereignis oder Funktion direkt auf Funktion ohne Konnektor). (1,5 Pkt.)\n'
'- Konnektorenregel: Ein Ereignis hat keine Entscheidungskraft; nach einem einzelnen Ereignis darf daher niemals ein ODER- oder XOR-Konnektor verzweigen (nur UND ist nach Einzelereignis zulässig). (1,5 Pkt.)')
add_q('ap1_ki_001', 'AP1', 'LF 1', 'Künstliche Intelligenz im First-Level-Support & Tickettriage',
'Ein IT-Service-Desk plant den Einsatz eines KI-Systems (Large Language Model / NLP) zur automatisierten Entgegennahme und Priorisierung von Störungstickets.',
'Nennen Sie drei konkrete Aufgaben, die das KI-System im First-Level-Support übernehmen kann, und erläutern Sie eine zentrale Herausforderung (Risiko) beim automatisierten Ticket-Dispatching.',
6,
'Drei Aufgaben:\n'
'1. Automatische Klassifizierung & Triage: Analysieren des Freitextes und Zuweisen der richtigen Fehlerkategorie und Priorität (Prio 1-4). (1,5 Pkt.)\n'
'2. Lösungsvorschläge & Self-Service: Automatischer Abgleich mit der Knowledge Base (FAQ) und Bereitstellung von Standard-Lösungsschritten für den Anwender (z. B. Kennwort-Reset). (1,5 Pkt.)\n'
'3. Routing & Zuweisung: Gezielte Weiterleitung an das zuständige Fach-Supportteam (Second Level). (1 Pkt.)\n'
'Herausforderung / Risiko: Fehlklassifikation (False Positives / Negatives) bei Sarkasmus, unpräziser Sprache oder kombinierten Problemen; ein kritischer Netzwerkausfall könnte fälschlich als Prio 4 eingestuft werden und SLA-Fristen verletzen. (2 Pkt.)')
add_q('ap1_ki_002', 'AP1', 'LF 4', 'KI-Software am Arbeitsplatz & Datenschutz (DSGVO)',
'Mitarbeiter möchten öffentlich zugängliche Cloud-KI-Dienste (z. B. ChatGPT) zur Analyse von Server-Logdateien und Programmcode am Arbeitsplatz einsetzen.',
'Erläutern Sie zwei datenschutzrechtliche Risiken nach DSGVO und formulieren Sie zwei verbindliche Unternehmensrichtlinien für den zulässigen KI-Einsatz.',
6,
'Zwei Risiken:\n'
'1. Unzulässige Drittlandübermittlung & Auftragsverarbeitung: Logdateien enthalten oft personenbezogene Daten (IP-Adressen, Benutzernamen). Werden diese ohne Auftragsverarbeitungsvertrag (AVV nach Art. 28 DSGVO) an US-Cloudanbieter übertragen, liegt ein schwerer Datenschutzverstoß vor. (2 Pkt.)\n'
'2. Verlust von Geschäftsgeheimnissen: Öffentliche KIs können eingegebene Prompts und vertraulichen Source Code zum Weitertrainieren zukünftiger Modelle verwenden. (1 Pkt.)\n'
'Zwei Richtlinien:\n'
'1. Striktes Verbot der Eingabe personenbezogener Daten (PII), Passwörter, API-Keys oder interner Geschäftsgeheimnisse in nicht freigegebene öffentliche KIs (Anonymisierungspflicht). (1,5 Pkt.)\n'
'2. Vier-Augen-Prinzip & menschliche Letztverantwortung: Von KI generierter Quellcode oder Skripte müssen vor Produktivbetrieb immer zwingend durch IT-Fachpersonal auf Sicherheit und Korrektheit geprüft werden (kein unbesehenes Copy-Paste). (1,5 Pkt.)')
add_q('ap1_praefix_001', 'AP1', 'LF 2', 'Binärpräfixe (IEC) vs. Dezimalpräfixe (SI) bei Speichermedien',
'Ein Festplattenhersteller deklariert eine NVMe-SSD mit einer Speicherkapazität von exakt 4 TB (Terabyte). Das Betriebssystem zeigt nach der Formatierung jedoch eine Kapazität in GiB (Gibibyte) bzw. TiB (Tebibyte) an.',
'Berechnen Sie die Kapazität der Festplatte in Byte auf Basis der Herstellerangabe (SI-Präfix), rechnen Sie diese exakt in GiB und TiB (IEC-Präfixe) um und ermitteln Sie die prozentuale scheinbare Differenz.',
8,
'1. Herstellerangabe in Byte (Dezimal / SI, Basis 10):\n'
' 4 TB = 4 * 10^12 Byte = 4.000.000.000.000 Byte. (2 Pkt.)\n'
'2. Umrechnung in GiB und TiB (Binär / IEC, Basis 2):\n'
' 1 GiB = 1.024^3 Byte = 1.073.741.824 Byte.\n'
' Kapazität in GiB = 4.000.000.000.000 / 1.073.741.824 ≈ 3.725,29 GiB. (2 Pkt.)\n'
' 1 TiB = 1.024^4 Byte = 1.099.511.627.776 Byte.\n'
' Kapazität in TiB = 4.000.000.000.000 / 1.099.511.627.776 ≈ 3,638 TiB. (2 Pkt.)\n'
'3. Prozentuale scheinbare Differenz:\n'
' (4,000 - 3,638) / 4,000 = 0,362 / 4,000 = 9,05 % (bzw. bezogen auf 4 TiB fehlen ca. 9,1 %). (2 Pkt.)',
qtype='calc')
add_q('ap1_praefix_002', 'AP1', 'LF 3', 'Datenübertragungsrate (Mbit/s) vs. Dateigröße (GiB)',
'Über eine Glasfaser-Internetanbindung mit einer nutzbaren Download-Bandbreite von 250 Mbit/s soll ein virtuelles Festplatten-Image mit einer Dateigröße von 45 GiB heruntergeladen werden. Durch TCP/IP- und Protokoll-Header entsteht ein Overhead von 8 %.',
'Berechnen Sie die reine Übertragungszeit in Minuten und Sekunden.',
8,
'1. Umrechnung Dateigröße von GiB in Byte und Bit:\n'
' 45 GiB = 45 * 1.024^3 Byte = 45 * 1.073.741.824 Byte = 48.318.382.080 Byte. (2 Pkt.)\n'
' In Bit: 48.318.382.080 * 8 = 386.547.056.640 Bit. (1 Pkt.)\n'
'2. Berücksichtigung des Protokoll-Overheads (8 %):\n'
' Gesamte zu übertragende Bitmenge = 386.547.056.640 * 1,08 = 417.470.821.171 Bit. (2 Pkt.)\n'
'3. Übertragungsrate in Bit/s (SI-Präfix bei Netzwerk!):\n'
' 250 Mbit/s = 250 * 10^6 Bit/s = 250.000.000 Bit/s. (1 Pkt.)\n'
'4. Download-Dauer:\n'
' Zeit = 417.470.821.171 / 250.000.000 ≈ 1.669,88 Sekunden. (1 Pkt.)\n'
' In Minuten: 1.669,88 / 60 ≈ 27 Minuten und 50 Sekunden (bzw. 27,83 Min.). (1 Pkt.)',
qtype='calc')
add_q('ap1_beleg_001', 'AP1', 'LF 1', 'Kaufmännische Rechnung PrintTop GmbH (Rabatt, Skonto, MwSt.)',
'Die Meier IT-Solutions bestellt bei der PrintTop GmbH 10 Netzwerkdrucker zu einem Listenpreis von je 650,00 EUR netto. Die PrintTop GmbH gewährt 8 % Mengenrabatt. Bei Zahlung innerhalb von 14 Tagen werden 2 % Skonto eingeräumt. Die Frachtkosten betragen pauschal 70,00 EUR netto. Es gilt der reguläre Mehrwertsteuersatz von 19 %.',
'Erstellen Sie das vollständige kaufmännische Prüfungsschema nach ZPA-Belegstandard und berechnen Sie: 1. Gesamter Listenpreis, 2. Rabattbetrag, 3. Bareinkaufspreis vor Fracht, 4. Netto-Rechnungsbetrag, 5. Skontobetrag, 6. Überweisungsbetrag bei fristgerechter Zahlung.',
10,
'1. Listenpreis gesamt (netto): 10 * 650,00 EUR = 6.500,00 EUR. (1 Pkt.)\n'
'2. - 8 % Liefererrabatt: 6.500,00 * 0,08 = 520,00 EUR. (1,5 Pkt.)\n'
'3. = Zieleinkaufspreis: 6.500,00 - 520,00 = 5.980,00 EUR. (1,5 Pkt.)\n'
'4. + Frachtkosten (netto): 5.980,00 + 70,00 = 6.050,00 EUR (Rechnungsbetrag Netto). (1,5 Pkt.)\n'
'5. + 19 % Umsatzsteuer: 6.050,00 * 0,19 = 1.149,50 EUR -> Rechnungsbetrag Brutto: 7.199,50 EUR. (1,5 Pkt.)\n'
'6. - 2 % Skonto (auf skontofähigen Betrag 5.980 EUR Warenwert bzw. Bruttowarenwert 7.116,20 EUR):\n'
' Skonto auf Bruttorechnung (7.199,50 EUR * 0,02) = 143,99 EUR (oder warenwertbezogen 119,60 EUR netto = 142,32 EUR brutto). (1,5 Pkt.)\n'
'7. Überweisungsbetrag (Zahlbetrag): 7.199,50 EUR - 143,99 EUR = 7.055,51 EUR. (1,5 Pkt.)',
qtype='calc')
add_q('ap1_beleg_002', 'AP1', 'LF 1', 'Lieferungsverzug und Verzugszinsen nach BGB (§ 288 BGB)',
'Die Systemhaus Nord GmbH hat eine fällige Rechnung eines gewerblichen Kunden (B2B) über 12.000,00 EUR brutto. Das Zahlungsziel war der 15. März. Nach Eintritt des Verzugs zahlt der Kunde die Gesamtsumme erst nach 45 Tagen Verzug. Der Basiszinssatz der Deutschen Bundesbank beträgt zum Stichtag 3,62 %.',
'Erläutern Sie die gesetzlichen Voraussetzungen für den Verzugseintritt bei Entgeltforderungen im B2B-Bereich (§ 286 BGB), berechnen Sie den gesetzlichen Verzugszinssatz nach § 288 Abs. 2 BGB und ermitteln Sie die geschuldeten Verzugszinsen sowie die gesetzliche Verzugspauschale (§ 288 Abs. 5 BGB).',
8,
'1. Verzugseintritt im B2B-Geschäft (§ 286 Abs. 3 BGB): Gerät spätestens 30 Tage nach Fälligkeit und Zugang einer Rechnung automatisch in Verzug, ohne dass es einer gesonderten Mahnung bedarf. (2 Pkt.)\n'
'2. Gesetzlicher Verzugszinssatz (§ 288 Abs. 2 BGB für Rechtsgeschäfte ohne Verbraucherbeteiligung):\n'
' Basiszinssatz + 9 Prozentpunkte = 3,62 % + 9,00 % = 12,62 % p. a. (2 Pkt.)\n'
'3. Berechnung der Verzugszinsen für 45 Tage (kaufmännische Zinsformel Z = (K * p * t) / (100 * 360)):\n'
' Zinsen = (12.000 EUR * 12,62 * 45) / 36.000 = 6.814.800 / 36.000 = 189,30 EUR. (2 Pkt.)\n'
'4. Gesetzliche Mahn- und Verzugspauschale nach § 288 Abs. 5 BGB: Gesetzlicher Anspruch auf eine Pauschale von 40,00 EUR bei B2B-Zahlungsverzug. (2 Pkt.)',
qtype='calc')
add_q('ap1_netzplan_001', 'AP1', 'LF 1', 'Netzplantechnik Vorwärts- und Rückwärtsrechnung',
'Gegeben ist ein Projektausschnitt mit folgenden Vorgängen (Dauer D in Tagen):\n'
'- Vorgang A: Server beschaffen (D=4, kein Vorgänger)\n'
'- Vorgang B: Betriebssystem installieren (D=3, Vorgänger A)\n'
'- Vorgang C: Verkabelung prüfen (D=2, kein Vorgänger)\n'
'- Vorgang D: Datenbank einrichten (D=5, Vorgänger B und C)\n'
'Projektstart ist an Tag 0.',
'Berechnen Sie für alle Vorgänge (A, B, C, D) den Frühesten Anfangszeitpunkt (FAZ), den Frühesten Endzeitpunkt (FEZ), den Spätesten Anfangszeitpunkt (SAZ) und den Spätesten Endzeitpunkt (SEZ) und geben Sie die minimale Projektdauer an.',
10,
'Vorwärtsrechnung (FAZ + Dauer = FEZ):\n'
'- A: FAZ = 0, FEZ = 0 + 4 = 4. (1,5 Pkt.)\n'
'- B: Vorgänger A -> FAZ = 4, FEZ = 4 + 3 = 7. (1,5 Pkt.)\n'
'- C: Kein Vorgänger -> FAZ = 0, FEZ = 0 + 2 = 2. (1,5 Pkt.)\n'
'- D: Vorgänger B (FEZ 7) und C (FEZ 2) -> FAZ = MAX(7, 2) = 7, FEZ = 7 + 5 = 12. (1,5 Pkt.)\n'
'Projektdauer: 12 Tage. (1 Pkt.)\n'
'Rückwärtsrechnung (SEZ - Dauer = SAZ):\n'
'- D: SEZ = 12, SAZ = 12 - 5 = 7. (1 Pkt.)\n'
'- B: Nachfolger D -> SEZ = 7, SAZ = 7 - 3 = 4. (1 Pkt.)\n'
'- C: Nachfolger D -> SEZ = 7, SAZ = 7 - 2 = 5. (1 Pkt.)\n'
'- A: Nachfolger B -> SEZ = 4, SAZ = 4 - 4 = 0. (1 Pkt.)',
qtype='calc')
add_q('ap1_netzplan_002', 'AP1', 'LF 1', 'Kritischer Pfad und Pufferzeiten (GP vs. FP)',
'Bezugnehmend auf den Netzplan aus Vorgang A, B, C und D mit Projektdauer 12 Tage.',
'Definieren Sie Gesamtpuffer (GP) und freien Puffer (FP) mit ihren mathematischen Formeln, berechnen Sie GP und FP für Vorgang C und identifizieren Sie den kritischen Pfad des Projekts.',
8,
'Definitionen & Formeln:\n'
'- Gesamtpuffer (GP = SAZ - FAZ bzw. SEZ - FEZ): Die Zeitspanne, um die ein Vorgang maximal verschoben werden darf, ohne den gesamten Projektendtermin zu gefährden. (2 Pkt.)\n'
'- Freier Puffer (FP = FAZ_Nachfolger - FEZ_aktuell): Die Zeitspanne, um die ein Vorgang maximal verschoben werden darf, ohne den frühesten Anfangszeitpunkt des direkten Nachfolgers zu beeinflussen. (2 Pkt.)\n'
'Berechnung für Vorgang C (FAZ=0, FEZ=2, SAZ=5, SEZ=7, Nachfolger D mit FAZ=7):\n'
'- GP(C) = 5 - 0 = 5 Tage (oder 7 - 2 = 5 Tage). (1,5 Pkt.)\n'
'- FP(C) = FAZ(D) - FEZ(C) = 7 - 2 = 5 Tage. (1,5 Pkt.)\n'
'Kritischer Pfad: Die Kette von Vorgängen, bei denen der Gesamtpuffer 0 beträgt: Start -> A (GP=0) -> B (GP=0) -> D (GP=0) -> Ende (Dauer 12 Tage). (1 Pkt.)',
qtype='calc')
# ============================================================================== # ==============================================================================
# BEREICH 2: AP2 FISI TEIL 1 (Lernfelder 9 & 11) - Planen & Umsetzen von IT-Systemen # BEREICH 2: AP2 FISI TEIL 1 (Lernfelder 9 & 11) - Planen & Umsetzen von IT-Systemen
# ============================================================================== # ==============================================================================
@ -769,6 +918,24 @@ add_q('ap2_lf9_010', 'AP2_T1', 'LF 9', 'Stateful Packet Inspection vs Next-Gen F
'Deep Packet Inspection (DPI): Untersucht die tatsächlichen Anwendungsnutzdaten auf Layer 7 (Payload), unabhängig vom verwendeten Port (erkennt z. B. BitTorrent über Port 80/443). (3 Pkt.)\n' 'Deep Packet Inspection (DPI): Untersucht die tatsächlichen Anwendungsnutzdaten auf Layer 7 (Payload), unabhängig vom verwendeten Port (erkennt z. B. BitTorrent über Port 80/443). (3 Pkt.)\n'
'Zwei NGFW-Features: 1. Intrusion Prevention System (IPS / Signaturerkennung); 2. SSL/TLS-Inspection (Aufbrechen und Scannen verschlüsselter Datenströme). (2 Pkt.)') 'Zwei NGFW-Features: 1. Intrusion Prevention System (IPS / Signaturerkennung); 2. SSL/TLS-Inspection (Aufbrechen und Scannen verschlüsselter Datenströme). (2 Pkt.)')
add_q('ap2_net_001', 'AP2_T1', 'LF 9', 'Normierte Netzwerkplan-Symbole nach VRT Network Equipment',
'In einem IHK-Prüfungsszenario soll ein Unternehmensnetzwerk nach dem offiziellen VRT-Symbolstandard der ZPA Nord-West dokumentiert werden.',
'Erläutern Sie die visuellen Unterscheidungsmerkmale und Funktionen der genormten VRT-Symbole für: 1. Layer-2-Switch, 2. Layer-3-Switch, 3. Router mit NAT/PAT, 4. Firewall (Stateful Inspection / NGFW) und 5. Access Point.',
8,
'1. Layer-2-Switch: Flacher Quader mit 4 gegensätzlichen Pfeilen auf der Oberseite (horizontale Vermittlung auf Layer 2 / MAC). (1,5 Pkt.)\n'
'2. Layer-3-Switch: Quader mit kreuzförmigen Pfeilen nach innen und außen (kombiniert L2-Switching mit hardwarebasiertem L3-Routing). (1,5 Pkt.)\n'
'3. Router: Zylinder (Trommel) mit vier Pfeilen (zwei hinein, zwei heraus) bzw. mit NAT/PAT-Kennzeichnung; verbindet autonome IP-Netze auf Layer 3. (1,5 Pkt.)\n'
'4. Firewall: Quader mit Ziegelsteinmauer-Muster; trennt Sicherheitszonen (LAN, DMZ, WAN) und filtert Pakete zustandsbasiert oder auf Applikationsebene. (2 Pkt.)\n'
'5. Access Point: Kleines Gehäuse mit Antennensymbolen / Funkwellen; bridged Funkzellen (IEEE 802.11) ins kabelgebundene Ethernet (802.3). (1,5 Pkt.)')
add_q('ap2_net_002', 'AP2_T1', 'LF 9', 'Redundante Netzwerkinfrastruktur mit VRRP & LACP',
'Für eine hochverfügbare Rechenzentrumsanbindung werden zwei Layer-3-Switches als redundantes Standard-Gateway für Clients eingerichtet. Gleichzeitig werden Server über mehrere Netzwerkkarten redundant angebunden.',
'Erklären Sie das Zusammenspiel von Virtual Router Redundancy Protocol (VRRP) für die Gateway-Redundanz und Link Aggregation Control Protocol (LACP nach 802.3ad) für die Serveranbindung.',
8,
'VRRP Funktionsweise: Beide L3-Switches teilen sich eine gemeinsame virtuelle IP-Adresse (VIP) und virtuelle MAC-Adresse. Ein Switch ist Master und beantwortet ARP-Requests für die VIP. Fällt der Master aus, übernimmt der Backup-Switch innerhalb von Sekundenbruchteilen die VIP nahtlos (Keepalive-Multicasts bleiben aus), ohne dass Clients umkonfiguriert werden müssen. (4 Pkt.)\n'
'LACP (802.3ad): Bündelt mehrere physische Netzwerkkabel zu einem einzigen logischen Link (Trunk / NIC-Teaming). Erhöht die aggregierte Bandbreite und bietet automatische Link-Redundanz (fällt ein Kabel aus, läuft der Traffic unterbrechungsfrei über die verbleibenden Ports weiter). (4 Pkt.)')
# --- LF 11: Speicher- und Hochverfügbarkeitssysteme implementieren --- # --- LF 11: Speicher- und Hochverfügbarkeitssysteme implementieren ---
add_q('ap2_lf11_001', 'AP2_T1', 'LF 11', 'RAID 5 vs RAID 6 Nutzkapazität und URE', add_q('ap2_lf11_001', 'AP2_T1', 'LF 11', 'RAID 5 vs RAID 6 Nutzkapazität und URE',
'Ein Storage-Server wird mit 8 Enterprise-Festplatten zu je 10 TB Bruttokapazität bestückt.', 'Ein Storage-Server wird mit 8 Enterprise-Festplatten zu je 10 TB Bruttokapazität bestückt.',
@ -883,6 +1050,87 @@ add_q('ap2_lf10_006', 'AP2_T2', 'LF 10', 'Infrastruktur-Automatisierung mit Ansi
'Idempotenz: Ein Playbook kann beliebig oft ausgeführt werden und führt immer zum identischen Soll-Zustand. Befindet sich ein Server bereits im gewünschten Zustand (z. B. Paket ist bereits installiert), führt Ansible keine Änderungen aus (\"ok\" statt \"changed\"). (3 Pkt.)\n' 'Idempotenz: Ein Playbook kann beliebig oft ausgeführt werden und führt immer zum identischen Soll-Zustand. Befindet sich ein Server bereits im gewünschten Zustand (z. B. Paket ist bereits installiert), führt Ansible keine Änderungen aus (\"ok\" statt \"changed\"). (3 Pkt.)\n'
'Aufbau eines Playbooks: In YAML-Syntax verfasste Datei, die Plays enthält. Jedes Play definiert Ziel-Hosts, Variablen und eine geordnete Liste von Tasks, die vorgefertigte Module (z. B. apt, copy, systemd) aufrufen. (2 Pkt.)') 'Aufbau eines Playbooks: In YAML-Syntax verfasste Datei, die Plays enthält. Jedes Play definiert Ziel-Hosts, Variablen und eine geordnete Liste von Tasks, die vorgefertigte Module (z. B. apt, copy, systemd) aufrufen. (2 Pkt.)')
# --- LF 10: Enterprise SQL & Relationales Datenbankmanagement (ZPA 2. Auflage) ---
add_q('ap2_sql_001', 'AP2_T2', 'LF 10', 'SQL DDL CREATE TABLE mit Constraints',
'Für eine Ticket-Verwaltung soll die Tabelle \"ticket\" per SQL angelegt werden: id (Ganzzahl, Primärschlüssel mit Autoinkrement), titel (Text, max. 100 Zeichen, Pflichtfeld), status (Text, Standardwert \"OFFEN\"), prioritaet (Ganzzahl, Werte nur von 1 bis 5 erlaubt), ersteller_id (Ganzzahl, Fremdschlüssel auf benutzer.id mit Kaskadierung beim Löschen).',
'Schreiben Sie das syntaktisch korrekte SQL-Statement nach ANSI/ISO-Standard.',
10,
'CREATE TABLE ticket (\n'
' id INTEGER PRIMARY KEY AUTO_INCREMENT,\n'
' titel VARCHAR(100) NOT NULL,\n'
' status VARCHAR(20) DEFAULT \'OFFEN\',\n'
' prioritaet INT CHECK (prioritaet BETWEEN 1 AND 5),\n'
' ersteller_id INT,\n'
' FOREIGN KEY (ersteller_id) REFERENCES benutzer(id) ON DELETE CASCADE\n'
'); (10 Pkt. - Abzug bei fehlendem NOT NULL, CHECK, DEFAULT oder FOREIGN KEY)')
add_q('ap2_sql_002', 'AP2_T2', 'LF 10', 'SQL DML Aggregation und GROUP BY mit HAVING',
'Gegeben sind die Tabellen kunden (id, name, stadt) und bestellungen (id, kunde_id, betrag, datum).',
'Formulieren Sie eine SQL-Abfrage, die den Kundennamen und die Gesamtsumme aller Bestellungen für jeden Kunden ausgibt, dessen Gesamtbestellwert 10.000 EUR überschreitet. Das Ergebnis soll absteigend nach der Summe sortiert sein.',
10,
'SELECT k.name, SUM(b.betrag) AS gesamtumsatz\n'
'FROM kunden k\n'
'INNER JOIN bestellungen b ON k.id = b.kunde_id\n'
'GROUP BY k.id, k.name\n'
'HAVING SUM(b.betrag) > 10000\n'
'ORDER BY gesamtumsatz DESC; (10 Pkt. - Abzug bei WHERE statt HAVING für Aggregatfunktion oder fehlendem GROUP BY)')
add_q('ap2_sql_003', 'AP2_T2', 'LF 10', 'SQL JOIN-Typen INNER vs LEFT vs FULL',
'In einer Datenbank existieren mitarbeiter (id, name, abt_id) und abteilungen (id, bezeichnung). Einige Mitarbeiter haben keine Abteilung, und einige Abteilungen haben keine Mitarbeiter.',
'Erläutern Sie den Unterschied im Abfrageergebnis zwischen INNER JOIN und LEFT OUTER JOIN bezüglich der Ergebniszeilen.',
6,
'INNER JOIN: Liefert ausschließlich Zeilen zurück, bei denen in beiden Tabellen ein übereinstimmender Wert vorliegt (Schnittmenge). Mitarbeiter ohne Abteilung und Abteilungen ohne Mitarbeiter werden vollständig verworfen. (3 Pkt.)\n'
'LEFT OUTER JOIN (mitarbeiter LEFT JOIN abteilungen): Liefert ALLE Datensätze der linken Tabelle (mitarbeiter), selbst wenn keine Übereinstimmung in abteilungen vorliegt. Die fehlenden Abteilungsspalten werden mit NULL aufgefüllt. (3 Pkt.)')
add_q('ap2_sql_004', 'AP2_T2', 'LF 10', 'SQL Transaktionen ACID-Eigenschaften',
'Bei einer Banküberweisung von 500 EUR von Konto A auf Konto B wird ein Transaktionsblock ausgeführt.',
'Nennen und erläutern Sie die vier ACID-Eigenschaften und beschreiben Sie, was passiert, wenn nach dem Abbuchen von Konto A das Datenbanksystem abstürzt.',
8,
'Atomarität (Atomicity): Alles-oder-Nichts-Prinzip. Eine Transaktion wird entweder ganz oder gar nicht ausgeführt. (2 Pkt.)\n'
'Konsistenz (Consistency): Nach Abschluss der Transaktion befindet sich die Datenbank in einem gültigen, integren Zustand. (2 Pkt.)\n'
'Isolation: Gleichzeitige Transaktionen beeinflussen sich nicht gegenseitig. (1 Pkt.)\n'
'Dauerhaftigkeit (Durability): Erfolgreich mit COMMIT bestätigte Änderungen bleiben dauerhaft im Speicher erhalten. (1 Pkt.)\n'
'Absturzfolge: Da die Buchung nicht durch COMMIT bestätigt wurde, greift beim Neustart ein automatisches Rollback (Undo-Logging). Die Abbuchung auf Konto A wird rückgängig gemacht. (2 Pkt.)')
add_q('ap2_sql_005', 'AP2_T2', 'LF 10', 'SQL Subqueries mit IN und EXISTS',
'Gegeben sind die Tabellen kunden (id, name, land) und bestellungen (id, kunde_id, summe).',
'Formulieren Sie zwei SQL-Abfragen, die alle Kundennamen ausgeben, die mindestens eine Bestellung getätigt haben: Einmal unter Verwendung einer Subquery mit IN und einmal mit EXISTS.',
8,
'Variante 1 (IN):\n'
'SELECT name FROM kunden WHERE id IN (SELECT kunde_id FROM bestellungen); (4 Pkt.)\n'
'Variante 2 (EXISTS / Korrelierte Unterabfrage):\n'
'SELECT k.name FROM kunden k WHERE EXISTS (SELECT 1 FROM bestellungen b WHERE b.kunde_id = k.id); (4 Pkt.)')
add_q('ap2_sql_006', 'AP2_T2', 'LF 10', 'SQL Window Functions ROW_NUMBER & RANK',
'In einer Vertriebsdatenbank sollen die Top-3-Umsätze jedes Verkäufers ermittelt werden.',
'Erläutern Sie die Funktionsweise von SQL Window Functions gegenüber GROUP BY und erklären Sie die Syntax von ROW_NUMBER() OVER (PARTITION BY ... ORDER BY ...).',
8,
'Unterschied zu GROUP BY: GROUP BY fasst Zeilen zusammen und reduziert die Ergebnismenge auf eine einzige Zeile pro Gruppe. Eine Window Function führt Berechnungen über eine definierte Zeilenmenge (das Fenster / Window) durch, behält jedoch die individuelle Identität jeder einzelnen Zeile bei. (4 Pkt.)\n'
'Syntax-Erklärung:\n'
'- ROW_NUMBER(): Vergibt eine fortlaufende Zeilennummer (1, 2, 3...).\n'
'- PARTITION BY spalte: Teilt den Datensatz in logische Untergruppen (z. B. pro Verkäufer).\n'
'- ORDER BY spalte DESC: Bestimmt die Sortierreihenfolge innerhalb jeder Partition (z. B. höchster Umsatz zuerst). (4 Pkt.)')
add_q('ap2_sql_007', 'AP2_T2', 'LF 10', 'SQL Datums- und Zeitfunktionen (DATEDIFF & DATEADD)',
'In einem Support-System (Tabelle tickets mit id, erstelldatum, schliessdatum) soll die Bearbeitungsdauer analysiert werden.',
'Formulieren Sie eine SQL-Abfrage nach ZPA-Standard, die für alle im laufenden Jahr geschlossenen Tickets die Ticket-ID und die Bearbeitungsdauer in Tagen berechnet (unter Verwendung von DATEDIFF) und nur Tickets anzeigt, deren Bearbeitung länger als 14 Tage gedauert hat.',
8,
'SELECT id, DATEDIFF(day, erstelldatum, schliessdatum) AS bearbeitungsdauer_tage\n'
'FROM tickets\n'
'WHERE schliessdatum IS NOT NULL\n'
' AND DATEDIFF(day, erstelldatum, schliessdatum) > 14\n'
'ORDER BY bearbeitungsdauer_tage DESC; (8 Pkt. - Volle Punktzahl auch bei SQL-Dialekt-Varianten wie DATEDIFF(schliessdatum, erstelldatum) oder DATE_PART)')
add_q('ap2_sql_008', 'AP2_T2', 'LF 10', 'Statistische SQL-Funktionen (STDDEV, VARIANCE, CORR)',
'Im Rahmen einer Performance-Analyse von Server-Antwortzeiten (Tabelle server_metrics mit server_id, response_time_ms, cpu_load) werden statistische Kennzahlen benötigt.',
'Erläutern Sie die Aufgaben und mathematische Bedeutung der SQL-Aggregatfunktionen STDDEV(), VARIANCE() und CORR() und beschreiben Sie einen Anwendungsfall zur Erkennung von Lastanomalien.',
6,
'VARIANCE(): Berechnet die statistische Varianz (mittlere quadratische Abweichung vom Mittelwert) der Messwerte. (2 Pkt.)\n'
'STDDEV(): Berechnet die Standardabweichung (Quadratwurzel der Varianz) als Maß für die Streuung um den Mittelwert. Anwendungsfall: Überschreitet eine Antwortzeit den Bereich Mittelwert + 3*STDDEV (3-Sigma-Regel), liegt eine signifikante Performance-Anomalie vor. (2 Pkt.)\n'
'CORR(spalte1, spalte2): Berechnet den Pearson-Korrelationskoeffizienten (-1 bis +1) zwischen zwei Variablen, um festzustellen, ob hohe Antwortzeiten direkt linear mit hoher CPU-Last korrelieren. (2 Pkt.)')
# --- LF 12: Virtualisierung, Cloud & Monitoring --- # --- LF 12: Virtualisierung, Cloud & Monitoring ---
add_q('ap2_lf12_001', 'AP2_T2', 'LF 12', 'Hypervisor-Architekturen Typ 1 vs Typ 2', add_q('ap2_lf12_001', 'AP2_T2', 'LF 12', 'Hypervisor-Architekturen Typ 1 vs Typ 2',
'Für ein IT-Konsolidierungsprojekt werden Virtualisierungslösungen evaluiert.', 'Für ein IT-Konsolidierungsprojekt werden Virtualisierungslösungen evaluiert.',
@ -1207,24 +1455,24 @@ add_q('ap1_lf5_013', 'AP1', 'LF 5', 'Python Exception Handling & Custom Errors',
'finally:\n' 'finally:\n'
' print(\"Berechnung abgeschlossen.\") (4 Pkt.)') ' print(\"Berechnung abgeschlossen.\") (4 Pkt.)')
add_q('ap1_lf5_014', 'AP1', 'LF 5', 'SQL Subqueries mit IN und EXISTS', add_q('ap1_lf5_014', 'AP1', 'LF 5', 'Transformation ERM in Relationales Schema (1:n und n:m)',
'Gegeben sind die Tabellen kunden (id, name, land) und bestellungen (id, kunde_id, summe).', 'Ein ER-Modell enthält die Entitäten \"Abteilung\" und \"Mitarbeiter\" (1:n) sowie \"Mitarbeiter\" und \"Projekt\" (n:m).',
'Formulieren Sie zwei SQL-Abfragen, die alle Kundennamen ausgeben, die mindestens eine Bestellung getätigt haben: Einmal unter Verwendung einer Subquery mit IN und einmal mit EXISTS.', 'Beschreiben Sie die formalen Regeln zur Überführung einer 1:n-Beziehung und einer n:m-Beziehung in ein relationales Tabellenschema (Primär-/Fremdschlüssel-Platzierung).',
8, 8,
'Variante 1 (IN):\n' 'Überführung 1:n (1 Abteilung hat n Mitarbeiter):\n'
'SELECT name FROM kunden WHERE id IN (SELECT kunde_id FROM bestellungen); (4 Pkt.)\n' 'Der Primärschlüssel der 1-Seite (abteilung_id) wird als Fremdschlüssel (FK) in die Relation der n-Seite (Mitarbeiter) aufgenommen. Eine eigene Zwischentabelle ist nicht erforderlich. (4 Pkt.)\n'
'Variante 2 (EXISTS / Korrelierte Unterabfrage):\n' 'Überführung n:m (Mitarbeiter arbeitet in n Projekten):\n'
'SELECT k.name FROM kunden k WHERE EXISTS (SELECT 1 FROM bestellungen b WHERE b.kunde_id = k.id); (4 Pkt.)') 'Es wird zwingend eine eigenständige Verknüpfungstabelle (z. B. mitarbeiter_projekt) angelegt. Diese enthält die Primärschlüssel beider beteiligter Tabellen (mitarbeiter_id und projekt_id) als Fremdschlüssel. Beide Fremdschlüssel bilden gemeinsam den zusammengesetzten Primärschlüssel der Zwischentabelle. (4 Pkt.)')
add_q('ap1_lf5_015', 'AP1', 'LF 5', 'SQL Window Functions ROW_NUMBER', add_q('ap1_lf5_015', 'AP1', 'LF 5', 'Datenvalidierung & Konsistenzprüfung im Erfassungsdialog',
'In einer Vertriebsdatenbank sollen die Top-3-Umsätze jedes Verkäufers ermittelt werden.', 'In einer Eingabemaske für Kundenstammdaten sollen fehlerhafte Eingaben frühzeitig abgefangen werden.',
'Erläutern Sie die Funktionsweise von SQL Window Functions gegenüber GROUP BY und erklären Sie die Syntax von ROW_NUMBER() OVER (PARTITION BY ... ORDER BY ...).', 'Nennen und erläutern Sie vier Methoden der serverseitigen bzw. anwendungsseitigen Datenvalidierung (z. B. Typ-, Wertebereichs-, Plausibilitäts- und Pflichtfeldprüfung) anhand konkreter Beispiele.',
8, 8,
'Unterschied zu GROUP BY: GROUP BY fasst Zeilen zusammen und reduziert die Ergebnismenge auf eine einzige Zeile pro Gruppe. Eine Window Function führt Berechnungen über eine definierte Zeilenmenge (das Fenster / Window) durch, behält jedoch die individuelle Identität jeder einzelnen Zeile bei. (4 Pkt.)\n' '1. Pflichtfeldprüfung (Nullwertprüfung): Stellt sicher, dass zwingend notwendige Daten (z. B. Nachname, E-Mail) nicht leer übermittelt werden. (2 Pkt.)\n'
'Syntax-Erklärung:\n' '2. Datentypprüfung: Überprüft, ob der eingegebene Wert dem erwarteten Datentyp entspricht (z. B. Geburtstag als valides Datum YYYY-MM-DD, Kundennummer als Ganzzahl). (2 Pkt.)\n'
'- ROW_NUMBER(): Vergibt eine fortlaufende Zeilennummer (1, 2, 3...).\n' '3. Wertebereichsprüfung (Range Check): Kontrolliert, ob ein numerischer Wert innerhalb zulässiger Grenzwerte liegt (z. B. Alter zwischen 18 und 120 Jahren). (2 Pkt.)\n'
'- PARTITION BY spalte: Teilt den Datensatz in logische Untergruppen (z. B. pro Verkäufer).\n' '4. Format- und Plausibilitätsprüfung: Prüfung auf bestimmte Muster mittels Regex (z. B. gültige E-Mail-Syntax @..., deutsche Postleitzahl genau 5 Ziffern) oder semantische Zusammenhänge (z. B. Vertragsende darf nicht vor Vertragsbeginn liegen). (2 Pkt.)')
'- ORDER BY spalte DESC: Bestimmt die Sortierreihenfolge innerhalb jeder Partition (z. B. höchster Umsatz zuerst). (4 Pkt.)')
# AP1 LF 6 & 7 # AP1 LF 6 & 7
add_q('ap1_lf6_005', 'AP1', 'LF 6', 'Feldbussysteme Modbus RTU vs Modbus TCP', add_q('ap1_lf6_005', 'AP1', 'LF 6', 'Feldbussysteme Modbus RTU vs Modbus TCP',

View file

@ -73,6 +73,14 @@ def load_chapter_routes():
routes[f] = f"/{tid}/{f}" routes[f] = f"/{tid}/{f}"
else: else:
routes[f] = f"/courses/{cid}/{f}" routes[f] = f"/courses/{cid}/{f}"
legacy_aliases = {
"01_lf9_netzwerke_und_dienste": "/courses/ihk_ap2_fisi/01_lf9_netzwerkinfrastruktur_und_routing",
"02_lf10_serverdienste_und_automation": "/courses/ihk_ap2_fisi/03_lf10_serverdienste_und_identitaeten",
"07_ap2_teil_1_probepruefung": "/courses/ihk_ap2_fisi/12_ap2_gesamtpruefung_simulation",
"08_ap2_teil_2_probepruefung": "/courses/ihk_ap2_fisi/12_ap2_gesamtpruefung_simulation",
"09_ap2_wiso_probepruefung": "/courses/ihk_ap2_fisi/12_ap2_gesamtpruefung_simulation"
}
routes.update(legacy_aliases)
CHAPTER_ROUTES = routes CHAPTER_ROUTES = routes
except Exception as e: except Exception as e:
print(f"Warnung beim Laden der Kapitel-Routen: {e}") print(f"Warnung beim Laden der Kapitel-Routen: {e}")