Zum Inhalt springen

Fachübungen 5 – Software zur Verwaltung von Daten anpassen - Kaufmann für Digitalisierungsmanagement

Aus MOOCsWiki Staging
Version vom 27. Oktober 2026, 09:43 Uhr von Glanz (Diskussion | Beiträge) (AI MOOC Plugin b0f721b82281ad606ab65ad86f3207e0)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
aiMOOC-Siegel aiMOOC

Fachübungen 5 – Software zur Verwaltung von Daten anpassen - Kaufmann für Digitalisierungsmanagement

QR-Code



Einleitung

Du arbeitest im ersten Ausbildungsjahr als angehende Kauffrau oder angehender Kaufmann für Digitalisierungsmanagement. Ein fiktiver Dienstleistungsbetrieb möchte seine digitale Auftragsverwaltung um Statusfilter, verlässliche Prüfregeln und eine verständliche Auswertung erweitern. Du untersuchst die Daten, entwirfst eine passende Änderung, prüfst sie an erfundenen Datensätzen und dokumentierst das Ergebnis. Im Mittelpunkt stehen berufliches Entscheiden, Datenqualität, wirtschaftlicher Nutzen und die nachvollziehbare Zusammenarbeit zwischen Fachabteilung und IT.

Leitfrage: Wie passt du eine bestehende Anwendung so an, dass Daten korrekt, sicher, effizient und für den Geschäftsprozess sinnvoll verarbeitet werden?

Lehrplanbezug: Kaufleute für Digitalisierungsmanagement, Lernfeld 5 „Software zur Verwaltung von Daten anpassen“, 1. Ausbildungsjahr, Zeitrichtwert 80 Unterrichtsstunden laut KMK-Rahmenlehrplan, Seite 14. Das Lernfeld verlangt die Analyse von Herkunft, Art, Verfügbarkeit, Datenschutz, Datensicherheit und Speicherbedarf sowie Planung, Implementierung, Test, Dokumentation und Evaluation. Die Ausbildungsordnung vom 28. Februar 2020 gilt seit dem 1. August 2020; der anerkannte Beruf dauert regulär drei Jahre. Das BIBB nennt betriebliche Einsatzgebiete (unter anderem IT-Systemlösungen und Organisations- und Prozessentwicklung), nicht eigenständige Fachrichtungen. Die Verordnung sieht eine gestreckte Abschlussprüfung mit Teil 1 im vierten Ausbildungshalbjahr und Teil 2 am Ausbildungsende vor; konkrete Prüfungsaufgaben und Terminangaben sind nicht Gegenstand dieses Kurses. Quellen: Ausbildungsordnung und BIBB-Berufsprofil.

Lernprodukte: Anforderungsliste, Datenfluss- und Datenmodell, Entscheidungsmatrix, demonstrierbarer SQL-Prototyp, dokumentierte Testfälle, Kosten-Nutzen-Abschätzung und Übergabeprotokoll. Alle Daten in diesem Kurs sind synthetisch. Verwende ausschließlich isolierte Übungsumgebungen; produktive Kundendaten, Zugangsdaten und betriebliche Systeme bleiben außen vor.


Datenbedarf, Datenqualität und Anforderungen analysieren


Geschäftsvorgang und Informationsbedarf

Bei einer Anforderungsanalyse trennst du Ist-Zustand, Problem, Soll-Zustand und prüfbare Akzeptanzkriterien. Ein Beispiel: In der alten Auftragsübersicht lassen sich offene Vorgänge nicht filtern. Daraus folgt die funktionale Anforderung „Nutzerinnen und Nutzer können Aufträge nach Status anzeigen“ und das Akzeptanzkriterium „Der Filter 'offen' zeigt ausschließlich die als offen gespeicherten Aufträge“. Nichtfunktionale Anforderungen betreffen etwa Berechtigungen, Antwortzeit, Verständlichkeit, Wiederherstellbarkeit und Barrierearmut.

Frage bei der Aufnahme von Anforderungen nach Wer? (Rolle), Was? (Information), Wofür? (Prozess), Wann? (Aktualität) und Wie verlässlich? (Qualität). Schreibe jeweils eine nachvollziehbare Quelle und eine verantwortliche Stelle auf; bloße Vermutungen sind keine freigegebenen Anforderungen. Eine Nutzergeschichte lautet: „Als Sachbearbeitung möchte ich offene Aufträge filtern, damit ich unbearbeitete Vorgänge priorisieren kann.“ Ein Testfall belegt später, ob das Ziel erreicht wurde.


Datenherkunft, Formate und Speicherort

Unterscheide Stammdaten wie eine Kundennummer von Bewegungsdaten wie einer Bestellung. Strukturierte Daten besitzen ein vorgegebenes Schema, beispielsweise Tabellen mit Kundennummer und Auftragsnummer; halbstrukturierte Daten wie JSON verwenden benannte Felder mit flexiblerer Struktur; Fließtexte sind überwiegend unstrukturiert. CSV ist ein einfaches Austauschformat, jedoch ohne eingebauten Datentyp, verbindliche Zeichencodierung oder garantierte Eindeutigkeit der Kennung. JSON bildet Objekte und Listen ab, ersetzt aber keine Plausibilitätsprüfung. Für Datumsangaben ist ein eindeutiges Format wie JJJJ-MM-TT im Übungsmodell sinnvoll.

Entscheidungsmatrix für den Beispielbetrieb:

Lösung Vorteile Grenzen Passende Verwendung
CSV-Datei Einfacher Datenaustausch und geringe Einstiegshürde Keine referenziellen Fremdschlüssel und konfliktfreie Mehrbenutzerbearbeitung von sich aus Kontrollierter Import und Export
Relationale Datenbank Schema, Beziehungen, Transaktionen, Abfragen Entwurf, Betrieb und Berechtigungskonzept erforderlich Aufträge mit zugeordneten Kunden
Dokumentenorientierter Speicher Flexible Dokumentstruktur Beziehungen und Konsistenzregeln müssen passend gestaltet werden Variable Dokumente und Metadaten

Begründete Wahl: Für die zwei zusammengehörenden Entitätstypen „Kunde“ und „Auftrag“ ist in dieser Übung ein relationales Modell übersichtlich. Das ist keine allgemeine Empfehlung, die alle Einsatzfälle abdeckt. Prüfe Datenmengen, Mehrbenutzerbetrieb, vorhandene Systeme und Schnittstellen vor einer echten Entscheidung.

Abb. 1: Beispiel eines Datenflussdiagramms, das Eingaben, Verarbeitung und Ausgaben voneinander abgrenzt; englischsprachige Beschriftung. Autor: AutumnSnow, nach Ilario; CC BY-SA 3.0 bzw. angebotene Alternativlizenz. Quelle und Lizenz.


Datenschutz, Sicherheit und Qualität

Datenschutz regelt den rechtmäßigen Umgang mit personenbezogenen Daten; Datensicherheit bezeichnet technische und organisatorische Maßnahmen gegen Verlust, unzulässige Änderung und unberechtigten Zugriff. Beurteile insbesondere Vertraulichkeit, Integrität und Verfügbarkeit. Datenminimierung bedeutet, nur für den Zweck erforderliche personenbezogene Daten vorzusehen. Für den Modellfall genügen erfundene Unternehmensbezeichnungen und Kennungen, keine Namen realer Mitarbeitender, Privatadressen oder Zugangsdaten. Zugriffe sind rollenbezogen zu regeln, Ein- und Ausgaben zu prüfen und Testkopien zu isolieren. Lösch- und Aufbewahrungsregeln hängen vom jeweiligen echten Prozess und der Rechtsgrundlage ab; sie werden hier nicht pauschal festgelegt.

Typische Fehler: Kundennamen als eindeutige Schlüssel verwenden; Geldwerte ungeprüft als binäre Gleitkommazahlen speichern; CSV-Spalten ohne Prüfregeln importieren; Produktionsdaten zum Testen kopieren; Vertraulichkeit mit Datensicherung verwechseln. Bessere Vorgehensweise: stabile technische Kennungen, Beträge in ganzen Cent für den Beispielprototyp, kontrollierter Import, fiktive Testdaten und ein dokumentiertes Rollenmodell.

Rechenweg Speicherbedarf: Bei angenommenen 40.000 Datensätzen mit durchschnittlich 250 Byte Nutzdaten ergibt sich 40.000 × 250 Byte = 10.000.000 Byte ≈ 10 MB (dezimal) ≈ 9,54 MiB. Zwei gleich große Kopien dieser Nutzdaten umfassen rechnerisch 20 MB. Indizes, Protokolle, Kompression, Dateisystem-Overhead und Sicherungsversionen sind ausdrücklich nicht eingerechnet. Die Schätzung dient der Größenordnung, nicht als konkrete Kapazitätszusage.


Datenmodell und konsistente Speicherung planen


Entitäten, Attribute und Schlüssel

Eine Entität ist ein eindeutig beschreibbares Objekt, hier ein Kunde oder ein Auftrag. Ein Attribut beschreibt eine Eigenschaft, etwa den Auftragsstatus. In einer relationalen Datenbank sind Datensätze Zeilen und Attribute Spalten. Ein Primärschlüssel identifiziert einen Datensatz eindeutig; ein Fremdschlüssel stellt eine überprüfbare Referenz auf einen passenden Schlüssel einer anderen Tabelle her. Kardinalität 1:n bedeutet: Ein Kunde kann mehrere Aufträge besitzen, jeder Auftrag verweist im Beispiel auf genau einen Kunden.

Abb. 2: Schematisches Entity-Relationship-Modell an einem Schulbeispiel, als Anregung zum Übertragen auf Kunde und Auftrag. Autor: Fleshgrinder; Public Domain. Quelle und Rechte.

Modell für den Übungsfall:

Tabelle Attribute Bedeutung und Regel
Kunde kunde_id, name kunde_id ist eindeutiger Primärschlüssel
Auftrag auftrag_id, kunde_id, datum, betrag_cent, status auftrag_id ist Primärschlüssel; kunde_id ist Fremdschlüssel; betrag_cent ist nicht negativ; status liegt in einer festgelegten Auswahl

Die Verknüpfung heißt Kunde 1:n Auftrag. Ein Auftrag ohne vorhandene Kundennummer soll abgelehnt werden. Änderungen an Schlüsseln und Löschungen bedürfen eines bewusst festgelegten Verhaltens, damit keine verwaisten Aufträge entstehen.


Normalisierung und typische Anomalien

Bei der Normalisierung werden Daten so aufgeteilt, dass unnötige Wiederholungen und Änderungsanomalien vermieden werden. Die erste Normalform verlangt im üblichen Lehrmodell atomare Feldwerte. In der zweiten Normalform hängen Nichtschlüsselattribute vollständig vom ganzen Kandidatenschlüssel ab; dies ist bei zusammengesetzten Schlüsseln besonders bedeutsam. In der dritten Normalform vermeidest du darüber hinaus transitive Abhängigkeiten von Nichtschlüsselattributen über andere Nichtschlüsselattribute.

Wenn der Kundenname in jeder Auftragszeile wiederholt wird, kann derselbe Kunde nach einer Namensänderung in verschiedenen Zeilen unterschiedliche Namen tragen: eine Änderungsanomalie. In zwei Tabellen wird der Name genau in „Kunde“ gepflegt. Nicht jede zusätzliche Tabelle verbessert eine Anwendung; betriebliche Abfragen und verständliche Datenpflege bleiben ebenso wichtig.

Abb. 3: Schematische Darstellung von Datenbanknormalformen, englisch/niederländisch. Urheber: LimoWreck; SVG-Bearbeitung Beao; CC BY-SA 3.0. Dateiseite und Lizenz.

Fachvideo: „Normalisierung und Normalformen“ von Informatik-Grundlagen mit Frank Dopatka, veröffentlicht am 31.05.2025. Schwerpunkte 1NF, 2NF und 3NF; urheberrechtlich geschütztes externes Video, nur eingebettet. Originalvideo.


Abfragen, Beziehungen und Diagramme lesen

Ein SQL-JOIN verbindet Zeilen mehrerer Tabellen anhand einer Bedingung. Ein INNER JOIN liefert nur passende Kombinationen. Ein LEFT JOIN behält zusätzlich Zeilen der linken Tabelle ohne passende rechte Zeile und ergänzt rechts fehlende Werte. Das ist insbesondere bei Kunden ohne Aufträge hilfreich. Für die Abfrage einer Kundenzuordnung genügt im Modell ein INNER JOIN, da jeder Auftrag eine gültige Kundenkennung besitzen muss.

Abb. 4: Vergleich verschiedener SQL-Verbundarten, englischsprachig. Urheber: Arbeck; CC BY 3.0. Quelle und Rechte. Die Mengenbilder sind Lernhilfen; im Datenbanksystem bestimmen ON-Bedingung, Mehrfachtreffer und NULL-Werte das tatsächliche Ergebnis.

Abb. 5: Syntaxdiagramm zu SQL-JOIN-Varianten. Urheber: Paul Setzer; CC BY-SA 4.0. Quelle und Lizenz.

Fachvideo: „Beziehungen in relationalen Datenbanken (1:n, n:m, 1:1)“ von Patrick Boekhoven, veröffentlicht am 17.03.2022. Übe im Anschluss, Primär- und Fremdschlüssel am eigenen Modell zu markieren. Originalvideo; externes, nicht als OER lizenziertes Video.


Anpassungen an der Software umsetzen


Änderungsauftrag, Vorgehen und Abnahme

Die Softwareänderung beginnt nicht mit Programmcode, sondern mit einem Änderungsauftrag: Fachliche Zielsetzung, betroffene Rollen, Datenfelder, Schnittstellen, Akzeptanzkriterien, Risiken, Aufwandsannahmen und Rückfallplan gehören zusammen. Eine kleine Änderung kannst du iterativ vorbereiten: Anforderung klären → Schema und Oberfläche entwerfen → isoliert implementieren → testen → freigeben lassen → dokumentiert übergeben. Eine Produktivfreigabe ist keine Schulaufgabe: Sie erfolgt ausschließlich durch befugte Fach- und IT-Verantwortliche.

Entscheidung: Ergänze für Aufträge einen Status aus genau „offen“, „in_arbeit“ und „abgeschlossen“. Die Bedienoberfläche bietet ein Dropdown statt Freitext und einen Filter. Die Datenbank prüft zusätzlich gültige Werte, damit auch fehlerhafte Import- oder Schnittstellendaten abgewiesen werden. Bei echten Bestandsdaten ist vor einer Migration fachlich zu klären, welcher Status jeweils sachlich richtig ist; ein pauschaler Standard „offen“ beweist keinen historischen Bearbeitungsstand. Vor Änderungen an einer realen Datenbank wären Sicherung, Migration, Berechtigungsprüfung und abgestimmtes Wartungsfenster erforderlich.

Soll-Prozess als selbst entwickeltes Textschema: Sachbearbeitung → Eingabeformular → Feld- und Rollenprüfung → Datenbank mit Statusregel → gefilterte Auftragsliste → dokumentierter Test- und Freigabenachweis.


SQL-Prototyp mit synthetischen Daten

Der folgende Code ist für eine separate SQLite-Übungsdatenbank gedacht und baut ein neues Schema auf. Er ist kein Migrationsskript für produktive Bestände. Geldbeträge werden als ganze Cent gespeichert, damit der Rechenweg im Modell eindeutig ist. Aktiviere die referenzielle Prüfung pro Verbindung mit PRAGMA foreign_keys = ON; die SQLite-Dokumentation warnt ausdrücklich davor, sich auf einen unveränderlichen Standardwert zu verlassen.

PRAGMA foreign_keys = ON;

CREATE TABLE Kunde (
  kunde_id TEXT PRIMARY KEY,
  name TEXT NOT NULL
);
CREATE TABLE Auftrag (
  auftrag_id TEXT PRIMARY KEY,
  kunde_id TEXT NOT NULL,
  datum TEXT NOT NULL,
  betrag_cent INTEGER NOT NULL
    CHECK (betrag_cent >= 0),
  status TEXT NOT NULL DEFAULT 'offen'
    CHECK (status IN ('offen','in_arbeit','abgeschlossen')),
  FOREIGN KEY (kunde_id) REFERENCES Kunde(kunde_id)
);

INSERT INTO Kunde VALUES
('K101','Alpha Print'),
('K102','Beta Repair'),
('K103','Gamma Learning'),
('K104','Delta Studio');

INSERT INTO Auftrag VALUES
('A501','K101','2026-10-20',25000,'offen'),
('A502','K102','2026-10-20',48000,'abgeschlossen'),
('A503','K101','2026-10-22',30000,'in_arbeit'),
('A504','K103','2026-10-23',18000,'offen'),
('A505','K104','2026-10-24',70000,'abgeschlossen'),
('A506','K102','2026-10-25',9000,'in_arbeit');

Statusfilter mit beschrifteter Ausgabe:

SELECT a.auftrag_id, k.name, a.betrag_cent
FROM Auftrag AS a
INNER JOIN Kunde AS k
  ON a.kunde_id = k.kunde_id
WHERE a.status = 'offen'
ORDER BY a.auftrag_id;

Sollausgabe: A501 – Alpha Print – 25000 Cent und A504 – Gamma Learning – 18000 Cent. Die Summe offener Aufträge beträgt 43000 Cent = 430,00 €. Die Abfrage enthält bewusst keine personenbezogenen Daten.


Anpassung von Bedienoberfläche, Import und Schutzmaßnahmen

Die Anwendung benötigt nun den Statusfilter mit verständlicher Beschriftung, eine Fehlermeldung für ungültige Statuswerte, eine klare Leerliste und eine Exportfunktion, die nicht versehentlich zusätzliche Felder offenlegt. Eingabevalidierung kontrolliert Formate und Werte. Parametrisierte Abfragen binden Nutzereingaben als Werte statt sie in SQL-Text zu verketten; das reduziert das Risiko von SQL-Injection. Die folgenden Platzhalter zeigen das Prinzip, nicht den vollständigen Programmcode einer Anwendung.

SELECT auftrag_id, status
FROM Auftrag
WHERE status = ?;

Das Fragezeichen wird durch die Datenbankschnittstelle mit einem geprüften Parameterwert belegt. Bitte keine manuellen Anführungszeichen um zusammengebaute Eingabetexte setzen. Ausgaben sind zusätzlich an Berechtigungen zu binden. Trenne Entwicklungs-, Test- und Produktivumgebung und protokolliere wesentliche Änderungen ohne geheime Inhalte.

Fehlerdiagnose: Fehlen beim JOIN Datensätze, prüfe die Zuordnung der Schlüssel und die JOIN-Art. Akzeptiert SQLite nicht vorhandene Kundennummern, prüfe, ob PRAGMA foreign_keys für diese Verbindung tatsächlich aktiv ist. Falsche Summen entstehen oft durch fehlerhafte Imports, uneinheitliche Einheiten oder doppelte Datensätze. Ein leeres Suchergebnis ist nicht dasselbe wie ein Datenbankfehler.

Fachvideo: „SQL Tutorial Deutsch – Komplettkurs für Anfänger“ von Fabian Rappert / Data Science Institute, veröffentlicht am 21.04.2023. Für diesen Kurs besonders relevant: SELECT ab 00:30:09, INNER JOIN ab 02:12:15 und Daten ändern ab 02:49:20. Originalvideo; externes Video, keine freie Bearbeitungslizenz zugesagt.


Testen, dokumentieren und Verbesserungen bewerten


Geplante Prüfungen statt Zufallstests

Eine Testfallbeschreibung enthält ID, Voraussetzung, Eingabe, erwartete Ausgabe, tatsächliche Ausgabe und Bewertung. Positivtests prüfen erlaubte Eingaben; Negativtests prüfen unzulässige Werte; Grenzwerttests prüfen die Übergänge, etwa 0 Cent als zulässig und −1 Cent als unzulässig. Ein Test kann nur im kontrollierten Testbestand beurteilt werden. Dokumentiere Soll und Ist getrennt, statt das erwartete Ergebnis als beobachteten Beleg auszugeben.

Test-ID Eingabe/Aktion in der isolierten Übung Erwartung
T01 Statusfilter „offen“ für die sechs Ausgangsaufträge A501 und A504, zusammen 43000 Cent
T02 Neuer Auftrag für K103 mit 0 Cent und gültigem Status Datensatz angenommen, falls die Auftragskennung neu ist
T03 Auftrag mit kunde_id K999 Ablehnung durch Fremdschlüssel bei aktiver Prüfung
T04 Auftrag mit betrag_cent = −1 Ablehnung durch CHECK
T05 Auftrag mit status = „fertig“ Ablehnung durch CHECK
T06 Statusfilter mit zulässigem Wert ohne Treffer Verständliche leere Ergebnisliste, keine Fehlermeldung

Für T02 bis T05 nutze getrennte Transaktionen oder stelle den Ausgangszustand anschließend vollständig wieder her; andernfalls ändern die neu eingefügten Testdaten spätere Sollsummen. Der hier genannte Status der erwarteten Reaktion ist kein Bericht über einen tatsächlich ausgeführten Anwendungstest.

Abb. 6: Testpyramide mit Unit-, Integrations- und Ende-zu-Ende-Prüfungen. Urheber: Abbe98; CC BY-SA 4.0. Quelle und Lizenz. Der Übungsfall verbindet Datenbankregeltests mit einem Test der sichtbaren Filterfunktion.


Dokumentationspaket und Übergabe

Erstelle ein Datenwörterbuch (Feldname, Datentyp, Pflichtfeld, Wertebereich, Zweck), eine Skizze der Benutzeroberfläche, ein Änderungsprotokoll und ein Testprotokoll. Die Dokumentation erläutert auch, wie die bisherige Datenlage geprüft, wie ein Export wieder importiert und wie Fehler an Fachverantwortliche gemeldet werden. Ein Rollenkonzept legt fest, wer Aufträge lesen, ändern oder exportieren darf. Eine Abnahmebestätigung darf nur von tatsächlich befugten Personen stammen; für den Kurs genügt ein als „Muster“ gekennzeichnetes Formular.

Muster einer kompakten Testprotokollzeile: T01; Stand des Testdatensatzes: 6 Aufträge; erwartete Kennungen: A501, A504; erwartete Summe: 43000 Cent; tatsächliche Ausgabe: erst nach eigenem Test eintragen; Entscheidung: erst dann bestanden/nicht bestanden; verantwortliche Rolle: Tester/in; Datum: frei wählen.


Fachrechnen und Wirtschaftlichkeit

Eine angenommene manuelle Bearbeitung benötigt 6 Minuten je Auftrag, der geplante Filterprozess 2 Minuten. Bei 40 Vorgängen pro Woche ergibt dies (6 − 2) × 40 = 160 Minuten = 2 Stunden und 40 Minuten. Bei einem angenommenen internen Stundensatz von 28 € entspricht das 160/60 × 28 € = 74,67 € rechnerischer wöchentlicher Zeitwert. Dies ist kein sicher realisierter Gewinn: Einmalige Entwicklung, Wartung, Schulung, Fehlerkosten und die tatsächliche Nutzung müssen gegengerechnet werden.

Bewertung: Vergleiche erzielte Filtergenauigkeit, Fehlerrate, Nutzbarkeit, Sicherheitsanforderungen, Entwicklungsaufwand und messbare Bearbeitungszeit. Eine technisch funktionierende Änderung ist nicht automatisch wirtschaftlich oder datenschutzrechtlich geeignet.


Berufstypischer Modellfall mit Musterlösung


Ausgangslage, Auftrag und Datenbestand

Fiktiver Auftraggeber: Büroservice Süd, ein rein erfundenes Beispielunternehmen. Die bisherige Übungsanwendung besitzt Kunden und Aufträge, aber keine nutzbare Statusfilterung. Du sollst die drei erlaubten Statuswerte festlegen, die 1:n-Zuordnung abbilden, den Auftragsstatus anzeigen und eine Auswertung liefern. Akzeptanz: Jede sichtbare Auftragszeile verweist auf eine gültige Kundennummer; der Filter „offen“ liefert nur offene Aufträge; ungültiger Status, negative Beträge und unbekannte Kundenkennungen werden abgelehnt.

Synthetischer Datenstand vor Teständerungen:

Kunde-ID Fiktiver Kundenname
K101 Alpha Print
K102 Beta Repair
K103 Gamma Learning
K104 Delta Studio
Auftrag-ID Kunde-ID Datum Netto in Cent Status
A501 K101 20.10.2026 25000 offen
A502 K102 20.10.2026 48000 abgeschlossen
A503 K101 22.10.2026 30000 in_arbeit
A504 K103 23.10.2026 18000 offen
A505 K104 24.10.2026 70000 abgeschlossen
A506 K102 25.10.2026 9000 in_arbeit

Arbeitsauftrag: Fertige Anforderungsanalyse, ER-Skizze, SQL-Abfrage, Testplan, Rechenblatt und Übergabehinweis an. Entscheide, ob der Prototyp die fachlichen Kriterien erfüllt. Die SQL-Definition und die synthetischen Eingabedaten findest du im Kapitel „SQL-Prototyp“.


Durchgerechnete Musterarbeitsprodukte

Muster 1 – Anforderungssatz: F01 „Die Liste kann nach offen, in_arbeit und abgeschlossen gefiltert werden“; F02 „Ungültige Statuswerte werden abgewehrt“; Q01 „Jeder Auftrag verweist auf einen existierenden Kunden“; Q02 „Der Datenbestand des Tests ist vollständig synthetisch“; Q03 „Ergebnisse sind über feste Testfälle nachvollziehbar“.

Muster 2 – Datenmodell: Kunde(kunde_id als PK, name); Auftrag(auftrag_id als PK, kunde_id als FK, datum, betrag_cent, status); Kunde 1:n Auftrag. Ein Fremdschlüssel ist keine zweite Kundennummer und gehört als Verweis in die Auftragstabelle. Die CHECK-Regel sichert die drei zulässigen Statuswerte ab.

Muster 3 – Auswertung: Die insgesamt sechs Aufträge ergeben 25000 + 48000 + 30000 + 18000 + 70000 + 9000 = 200000 Cent = 2000,00 € netto. Offen: A501 + A504 = 25000 + 18000 = 43000 Cent = 430,00 €. In Arbeit: A503 + A506 = 39000 Cent = 390,00 €. Abgeschlossen: A502 + A505 = 118000 Cent = 1180,00 €. Kontrolle: 43000 + 39000 + 118000 = 200000 Cent. Der Anteil offener Aufträge beträgt 2/6 × 100 = 33,33 % (auf zwei Dezimalstellen gerundet).

SELECT status,
       COUNT(*) AS anzahl,
       SUM(betrag_cent) AS wert_cent
FROM Auftrag
GROUP BY status
ORDER BY status;

Erwartetes Ergebnis, alphabetisch sortiert:

Status Anzahl Wert in Cent
abgeschlossen 2 118000
in_arbeit 2 39000
offen 2 43000

Muster 4 – Testentscheidung: Eine fachlich korrekte Implementierung zeigt bei T01 die IDs A501 und A504 und 43000 Cent; T03, T04 und T05 müssen fehlschlagen. Ohne tatsächliche Testausführung bleibt „Ist“ offen. Tritt bei T03 trotzdem eine erfolgreiche Einfügung auf, prüfe die Fremdschlüsselaktivierung der SQLite-Verbindung. Überschreibt ein Statusfilter ältere Daten unkontrolliert, stoppe die Freigabe und untersuche das Änderungsverfahren.

Muster 5 – Kosten-Nutzen-Notiz: Der in der Aufgabenstellung angenommene Zeitwert beträgt 74,67 €/Woche, nicht der belegte Gewinn. Für die Entscheidung werden echte Zeitmessungen, Einmalkosten, laufender Pflegebedarf, mögliche Fehlerfolgen und die Zustimmung der verantwortlichen Stelle benötigt.


Fachliches Bewertungsraster und Niveaudifferenzierung

Kriterium Maximalpunkte Fachliche Leistung für volle Punktzahl
Daten- und Anforderungsanalyse 20 Ist/Soll, drei klare Prüfkriterien, Datenherkunft, Datensparsamkeit und Schutzbedarf nachvollziehbar
Modell und Integritätsregeln 20 Zwei korrekte Tabellen, PK/FK, 1:n, Statuswerte und Betragsprüfung begründet
Abfrage und Rechenweg 20 Richtiger Filter, Zuordnung, Summen 200000 und 43000 Cent sowie 33,33 % mit Einheiten
Test und Fehlerdiagnose 20 Mindestens fünf aussagekräftige Fälle, Soll/Ist getrennt, Negativtest und plausible Fehlerursachen
Dokumentation und Transfer 20 Datenwörterbuch, begründete Entscheidung, Wirtschaftlichkeitsvorbehalt, Rückfall- und Freigabehinweis
Gesamt 100 Jede Punktevergabe wird mit überprüfbaren Belegen begründet

Niveau leicht: Tabellen lesen, Schlüssel markieren, offene Aufträge addieren. Niveau Standard: Statusfilter und Testfälle erläutern, Regeln begründen, Summen kontrollieren. Niveau schwer: Migrationsrisiko analysieren, Validierung an mehreren Schichten prüfen und Nutzen mit Unsicherheiten bewerten. Die Rubrik ist eine didaktische Musterbewertung, kein offizieller IHK-Bewertungsmaßstab.


Interaktive Aufgaben


Multiple-Choice-Quiz: Prüfe dein Fachwissen

Welche Eigenschaft ist für eine Kundennummer als Primärschlüssel entscheidend? (Sie identifiziert jeden Kunden eindeutig und stabil) (!Sie besteht immer aus dem vollständigen Kundennamen) (!Sie darf für jeden Auftrag neu vergeben werden) (!Sie enthält zwingend eine Telefonnummer)



Rückmeldung: Ein Primärschlüssel identifiziert einen Datensatz eindeutig; ein Name ist dafür häufig nicht stabil oder eindeutig genug.

Welche Aufgabe hat die kunde_id in der Tabelle Auftrag? (Sie verweist als Fremdschlüssel auf den zugehörigen Kunden) (!Sie berechnet automatisch den Nettobetrag) (!Sie ersetzt den Primärschlüssel des Auftrags) (!Sie legt ohne Prüfung alle Zugriffsrechte fest)



Rückmeldung: Ein Fremdschlüssel stellt die Beziehung zum Kundendatensatz her; die Auftragskennung bleibt ein eigener Schlüssel.

Welcher SQL-Verbund liefert nur Aufträge mit passenden Kundeneinträgen? (INNER JOIN mit passender Verknüpfungsbedingung) (!CROSS JOIN ohne Bedingung) (!Ein Sortieren nach dem Kundennamen) (!Ein Umbenennen der Auftragstabelle)



Rückmeldung: INNER JOIN mit der richtigen ON-Bedingung liefert passende Zeilenpaare; Sortieren allein verknüpft keine Datensätze.

Warum braucht ein CSV-Import zusätzliche Prüfungen? (Weil CSV keine verbindlichen Datentypen und Fremdschlüsselregeln mitliefert) (!Weil CSV niemals von Tabellenprogrammen gelesen werden kann) (!Weil CSV sämtliche Inhalte automatisch verschlüsselt) (!Weil CSV nur Bilddateien enthalten darf)



Rückmeldung: CSV transportiert Textfelder, aber die Zielanwendung muss Struktur, Pflichtwerte, Datentypen und Beziehungen prüfen.

Welche Maßnahme vermeidet eine typische Änderungsanomalie? (Kundennamen einmal in der Kundentabelle pflegen) (!Kundennamen in jeder Auftragszeile unabhängig überschreiben) (!Alle Aufträge ohne Kennung speichern) (!Beliebige Kundennamen als eindeutige IDs erzwingen)



Rückmeldung: Wiederholte Stammdaten können auseinanderlaufen; eine getrennte Kundentabelle hilft, solche Widersprüche zu vermeiden.

Was bedeutet Datenminimierung in einer Auftragsanwendung? (Nur Datenfelder vorsehen die für den festgelegten Zweck notwendig sind) (!Sämtliche verfügbaren Personendaten vorsorglich speichern) (!Alle Berechtigungen für sämtliche Rollen freischalten) (!Backups ohne Prüfung dauerhaft aufheben)



Rückmeldung: Datensparsame Modelle reduzieren unnötige personenbezogene Informationen und verlangen eine konkrete Zweckprüfung.

Welche SQLite-Einstellung ist für die Fremdschlüsselprüfung der Verbindung wichtig? (PRAGMA foreign_keys = ON) (!ORDER BY foreign_keys) (!SELECT foreign_keys FROM Datum) (!DELETE foreign_keys)



Rückmeldung: In SQLite muss die Fremdschlüsselprüfung zuverlässig für die jeweilige Verbindung aktiviert beziehungsweise kontrolliert werden.

Wie bindest du einen vom Nutzer gewählten Status sicherer in eine SQL-Abfrage ein? (Mit einem gebundenen Parameter und Prüfung des erlaubten Wertebereichs) (!Durch direktes Aneinanderfügen von Nutzereingabe und SQL-Text) (!Indem du Eingabewerte ungeprüft als Tabellennamen verwendest) (!Indem du alle Fehlermeldungen unterdrückst)



Rückmeldung: Parametrisierte Abfragen behandeln Eingaben als Werte; die fachliche Prüfung des Status bleibt zusätzlich notwendig.

Was ist ein geeigneter Negativtest im Übungsmodell? (Einen Auftrag mit negativem Centbetrag eingeben und Ablehnung erwarten) (!Einen gültigen Auftrag lesen und Erfolg voraussetzen) (!Die Nutzeroberfläche ohne Eingabe ansehen) (!Die bereits berechnete Summe als Ist-Ergebnis abschreiben)



Rückmeldung: Ein Negativtest prüft gezielt unzulässige Eingaben und vergleicht die tatsächliche Reaktion mit der vorher formulierten Erwartung.

Welcher Gesamtwert ergibt sich aus den sechs synthetischen Aufträgen? (200000 Cent entsprechen 2000 Euro) (!43000 Cent entsprechen 2000 Euro) (!118000 Cent entsprechen 2000 Euro) (!9000 Cent entsprechen 2000 Euro)



Rückmeldung: Die Summe aller sechs Beträge lautet 200000 Cent, während 43000 Cent nur die zwei offenen Aufträge betreffen.


Memory: Fachbegriff und Erklärung

Finde die acht fachlich passenden Paare; jeder Begriff und jede Erklärung kommt nur einmal vor.

Primärschlüssel Eindeutige Kennung eines Datensatzes
Fremdschlüssel Verweis auf einen passenden Schlüssel einer anderen Tabelle
Anforderungsanalyse Ermittlung und Beschreibung des fachlichen Sollzustands
Datenminimierung Begrenzung auf für den Zweck erforderliche Daten
Normalisierung Strukturierung zur Verminderung unnötiger Datenwiederholungen
Positivtest Prüfung eines erlaubten Eingabefalls
Negativtest Prüfung einer unzulässigen Eingabe
Datenwörterbuch Dokumentation von Feldnamen Typen Regeln und Bedeutung




Drag-and-drop: Änderungsschritte zuordnen

Ordne jeder Tätigkeit das passende fachliche Ergebnis zu.

Tätigkeit zuordnen Passendes Ergebnis
Fachbedarf erheben Priorisierte und prüfbare Anforderungen
Datenschema entwerfen Tabellen Beziehungen und Integritätsregeln
Softwareänderung umsetzen Funktionierender Prototyp in isolierter Umgebung
Systematisch testen Protokoll mit Soll-Ist-Abgleich
Übergabe dokumentieren Änderungsbeschreibung und Bedienhinweise




Kreuzworträtsel: Sechs Schlüsselbegriffe

Tabelle Wie heißt eine geordnete Sammlung von Zeilen und Spalten im relationalen Datenmodell?
Attribut Wie heißt eine beschriebene Eigenschaft eines Datensatzes?
Primärschlüssel Welcher Schlüssel identifiziert Datensätze einer Tabelle eindeutig?
Fremdschlüssel Welcher Schlüssel verweist auf eine passende Zeile in einer anderen Tabelle?
Validierung Wie heißt die Prüfung eingegebener Daten gegen festgelegte Regeln?
Anomalie Wie nennt man einen unerwünschten Widerspruch etwa bei mehrfach gespeicherten Kundendaten?




LearningApps: Weitere Übungen finden

Nutze die thematische Suche und kontrolliere bei fremden Lernbausteinen Inhalt, Aktualität und Lizenz; eine Suche ist keine Qualitätsempfehlung für jede gefundene App.


Lückentext: Vom Datenbedarf zum Nachweis

Ergänze die fachlich passenden Begriffe.
Zu Beginn einer Softwareänderung klärst du die fachlichen

. Eine eindeutige Kennung innerhalb einer Tabelle heißt

. Eine Referenz auf einen Datensatz einer anderen Tabelle ist ein

. Die Verringerung unnötiger Datenwiederholungen gelingt durch

. Eine Abfragesprache für relationale Datenbanksysteme ist

. Einen zulässigen Eingabefall untersuchst du mit einem

. Einen verbotenen Eingabewert überprüfst du mit einem

. Der Vergleich von erwartetem und beobachtetem Ergebnis heißt

. Daten einer konkreten Person dürfen im Schulmodell durch

ersetzt werden. Die durchgeführte Softwareänderung hältst du in einer

fest.



Offene Aufgaben

Erstelle zu jeder Aufgabe ein erkennbares Arbeitsprodukt. Die folgenden zwölf Arbeitsaufträge sind genau viermal leicht, viermal Standard und viermal schwer. Alle Beispiele bleiben fiktiv.


Leicht

  1. Datenanalyse: Markiere in der Auftragstabelle vier Kundennummern, sechs Auftragsnummern, zwei Stammdatenattribute und zwei Bewegungsdatenattribute. Erkläre deine Zuordnung in einem kurzen Steckbrief. Musterkriterium: Stammdaten und Vorgangsdaten sind sinnvoll abgegrenzt.
  2. Datenbank: Zeichne die beiden Tabellen Kunde und Auftrag auf Papier oder digital; kennzeichne Primär- und Fremdschlüssel farblich und notiere „1:n“. Musterkriterium: jeder Auftrag gehört genau einem Kunden.
  3. Prozentrechnung: Addiere die offenen Nettoauftragswerte in Cent und berechne den Anteil offener Aufträge. Musterwerte: 43000 Cent und gerundet 33,33 %.
  4. Datenqualität: Sammle fünf mögliche Datenfehler beim CSV-Import und verfasse für jeden eine verständliche Rückmeldung an den Nutzer. Musterkriterien: fehlende Kennung, ungültiger Status, negative Summe, falsches Datumsformat, doppelter Schlüssel.


Standard

  1. Anforderungsanalyse: Formuliere drei funktionale und zwei nichtfunktionale Anforderungen mit überprüfbaren Akzeptanzkriterien für die Statusfilterung. Musterkriterium: Kriterien sind beobachtbar und nicht nur Wunschformulierungen.
  2. SQL: Schreibe eine JOIN-Abfrage, die Auftrag-ID, Kundenname und Status für alle offenen Aufträge ausgibt. Beschreibe die erwarteten zwei Zeilen und begründe die JOIN-Art.
  3. Softwaretest: Entwirf fünf Testfälle mit Eingangsdaten, Erwartung und freier Spalte für Beobachtungen; decke gültige Eingaben, ungültigen Status und unbekannte Kundenkennung ab.
  4. Wirtschaftlichkeitsrechnung: Berechne mit 40 Vorgängen pro Woche die angenommene Zeiteinsparung und den wöchentlichen Zeitwert. Begründe, weshalb 74,67 € noch keine Gewinnangabe ist.


Schwer

  1. Datenmigration: Entwirf einen sicheren Migrationsplan für Bestandsaufträge ohne Statusfeld. Erläutere, warum eine automatische Kennzeichnung aller Altaufträge als offen fachlich riskant ist, und beschreibe Abgleich, Sicherung und Rückfall.
  2. Informationssicherheit: Erstelle eine Rollen- und Berechtigungsmatrix für Sachbearbeitung, Leitung und Revision. Leite Schutzmaßnahmen gegen unbefugten Export und Datenverlust ab.
  3. Fehleranalyse: Untersuche ein simuliertes Protokoll, in dem ein Auftrag mit K999 gespeichert werden konnte. Entwickle mehrere mögliche Ursachen und passende Gegenprüfungen, darunter die SQLite-Verbindungseinstellung.
  4. Softwaredokumentation: Gestalte ein vollständiges Übergabepaket mit Datenwörterbuch, ER-Schema, Testbericht, Kosten-Nutzen-Notiz, Versionsstand und fiktivem Abnahmeformular. Begründe eine Entscheidung zur Einsatzreife ohne reale Freigabe.




Text bearbeiten Bild einfügen Video einbetten Interaktive Aufgaben erstellen



Lernkontrolle

Bearbeite diese zusätzlichen Transferaufgaben unabhängig vom Multiple-Choice-Quiz und dokumentiere deinen Lösungsweg.

  1. Datenmanagement: Du erhältst eine Tabelle, in der jeder Auftrag dieselbe Kundenadresse erneut enthält. Erläutere zwei mögliche Anomalien und stelle ein verbessertes Modell vor. Erwartung: Trennung Kunde/Auftrag und erklärter Fremdschlüssel.
  2. Datensicherheit: Ein Team möchte zur Fehlersuche eine vollständige Kundenliste an eine private E-Mail-Adresse senden. Bewerte das Vorhaben mit Schutzbedarf, Rollenprüfung und datensparsamem Testkonzept. Erwartung: keine Übertragung realer Kundendaten.
  3. SQL: Eine Auswertung zeigt nach einem JOIN plötzlich acht statt sechs Auftragszeilen. Erkläre, wie Mehrfachtreffer durch eine fehlerhafte Join-Bedingung entstehen können, und entwirf eine prüfbare Diagnose.
  4. Testmanagement: Eine Anwendung akzeptiert den Status „fertig“ und zeigt ihn nicht im Dropdown. Beurteile die Fehlerkette von der Oberfläche bis zur Datenbankregel und formuliere einen reproduzierbaren Negativtest.
  5. Fachrechnen: Bei 50 statt 40 Vorgängen pro Woche und gleicher angenommenen Einsparung von vier Minuten je Vorgang: Berechne 200 Minuten = 3 Stunden 20 Minuten und bei 28 €/h einen Zeitwert von rund 93,33 € pro Woche. Kennzeichne die Annahmen.
  6. Datenmigration: Ein historischer Auftrag hat keinen dokumentierten Bearbeitungsstatus. Vergleiche „pauschal offen setzen“, „ungeklärt kennzeichnen“ und „anhand fachlicher Belege klären“ und begründe die verantwortbare Reihenfolge.
  7. Qualitätssicherung: Nenne drei konkrete Belege, die du vor einer durch Verantwortliche erteilten Freigabe anfordern würdest. Beurteile, was ein fehlender Ist-Testnachweis für die Einsatzentscheidung bedeutet.

Lösungshinweise zur Selbstkontrolle: Erkläre bei jeder Antwort den zugrunde liegenden Sachverhalt, nutze passende Fachwörter, dokumentiere Rechenoperationen mit Einheiten, benenne Annahmen und sichere Ergebnisse durch einen Gegencheck. Ein korrektes Ergebnis ohne Begründung ist für schwierige Aufgaben nur teilweise aussagekräftig.


Lernnachweis

Ein geeigneter Lernnachweis besteht aus dem selbst erstellten Anforderungsblatt, einem Datenflussbild, einem ER-Modell mit Schlüsselbeziehungen, der lauffähigen Übungsabfrage oder nachvollziehbaren Pseudocode-Alternative, einem Testplan mit tatsächlichen Testbeobachtungen, dem Rechenblatt und einer kurzen Reflexion. Reiche ausschließlich synthetische Daten ein. Markiere im Testprotokoll deutlich, ob Ergebnisse vorhergesagt, selbst im Übungsprogramm beobachtet oder nur aus der Musterlösung übernommen wurden.

Checkliste für den Kompetenznachweis: (a) Datenquellen und Datentypen korrekt zuordnen; (b) Datenschutz und Sicherheitsziele berücksichtigen; (c) Anforderungen prüfbar formulieren; (d) Datenmodell mit Primär- und Fremdschlüsseln begründen; (e) Filter und Datenregeln beschreiben oder implementieren; (f) mindestens fünf Tests samt Ist-Ergebnissen dokumentieren; (g) mindestens zwei Zahlenwerte nachrechnen; (h) Verbesserungsmöglichkeiten und offene Risiken nachvollziehbar darlegen.

Selbstreflexion: Was war fachlich schwerer als erwartet? Welcher Test hat eine neue Erkenntnis geliefert? Welcher Datenfehler hätte im Betrieb besonders hohe Folgen? Was würdest du beim nächsten Änderungsauftrag zuerst anders planen? Vergleiche deine Antworten mit dem 100-Punkte-Raster des Modellfalls, ohne daraus eine offizielle Prüfungsnote abzuleiten.


OER und Wikipedia

Verifizierte fachliche Ausgangsquellen:

  1. KMK: Rahmenlehrplan, Lernfeld 5, Seite 14 – amtliche Lernzielgrundlage.
  2. BIBB: Kaufmann/Kauffrau für Digitalisierungsmanagement – Berufsprofil, Ausbildungsdauer und Einsatzgebiete.
  3. Ausbildungsordnung DigiManKflAusbV – geltende amtliche Ausbildungsstruktur.
  4. SQLite: Foreign Key Support – Dokumentation zur referenziellen Integrität und PRAGMA.
  5. SQLite: SELECT – Abfrage- und JOIN-Semantik.
  6. Wikipedia: Relationale Datenbank – ergänzender offener Überblick; Nachnutzungsbedingungen auf der Originalseite beachten.

Wikimedia-Commons-Abbildungen mit Rechteangaben:

Verwendete Mediendatei Autorenschaft Lizenzhinweis Verifizierte Dateiseite
File:Data-flow-diagram-example.svg AutumnSnow nach Ilario CC BY-SA 3.0 oder angebotene Alternativlizenz Wikimedia Commons
File:Entity-Relationship-Modell.svg Fleshgrinder Public Domain Wikimedia Commons
File:Database normalization.svg LimoWreck, SVG-Bearbeitung Beao CC BY-SA 3.0 Wikimedia Commons
File:SQL Joins.svg Arbeck CC BY 3.0 Wikimedia Commons
File:Join (SQL) Syntaxdiagramm.svg Paul Setzer CC BY-SA 4.0 Wikimedia Commons
File:Testing Pyramid.svg Abbe98 CC BY-SA 4.0 Wikimedia Commons

Die Abbildungen werden unverändert verlinkt bzw. eingebunden; bei Weitergabe oder Bearbeitung sind die jeweiligen Lizenzanforderungen, insbesondere Namensnennung und gegebenenfalls Weitergabe unter gleichen Bedingungen, einzuhalten. Im Kurs selbst erstellte Tabellen, Fallzahlen und Rechenbeispiele sind didaktische Modelle ohne echte Geschäftsgeheimnisse.

Videonachweise:

Video Anbieter/Kanal Thema Rechte
Normalisierung und Normalformen Frank Dopatka Normalformen im Datenmodell Externes YouTube-Video, Rechte beim Anbieter
Beziehungen in relationalen Datenbanken Patrick Boekhoven Schlüssel und Kardinalitäten Externes YouTube-Video, Rechte beim Anbieter
SQL Tutorial Deutsch Fabian Rappert / Data Science Institute SQL-Abfragen und JOIN Externes YouTube-Video, Rechte beim Anbieter

Die Videos werden nur über öffentlich verfügbare Einbettungen gezeigt; keine OER-Lizenz oder Erlaubnis zur Bearbeitung wird unterstellt. Keine Medien aus Sofatutor.

Wikipedia-Ergänzung in deutscher Sprache:


Verknüpfte Lernbereiche

Die Fachübungen verbinden Informatik, betriebliche Geschäftsprozesse, Datenschutz, Informationssicherheit, Projektmanagement, Prozentrechnung und Qualitätssicherung. Einstieg und weitere Lernfelder findest du über das Berufsportal Ausbildung – Kaufmann für Digitalisierungsmanagement. Als thematisch anschließende Kurslinks dienen Betriebliche Rolle, Arbeitsplatzausstattung, Netzwerkintegration und Schutzbedarfsanalyse. Der Veröffentlichungsstand verknüpfter Kursseiten ist unabhängig vom vorliegenden Modul zu prüfen.


aiMOOC Projekte



Schulfach+




aiMOOCs



aiMOOC Projekte









MOOCwiki · Deutsch

Nach dem Lernen ist vor dem Lernen

Entdecke direkt den nächsten Lernkurs. Weitere Inhalte erscheinen, wenn Du weiter nach unten scrollst.

Zur MOOCwiki-Hauptseite

Mediathek

Suche verfeinern

Dein Lernplan bestimmt, was oben steht. Alle anderen Inhalte bleiben erreichbar. Seitenaufrufe beeinflussen die Auswahl nicht.

Inhalte werden geladen ...

Mediathek wird aus dem Wiki geladen ...