Files

5.4 KiB

LF 5: Software zur Verwaltung von Daten anpassen

1. Ausbildungsjahr | Zeitrichtwert: 80 Stunden

Kernkompetenz

Die Schülerinnen und Schüler verfügen über die Kompetenz, Informationen mittels Daten abzubilden, diese Daten zu verwalten und dazu Software anzupassen.


Lernziele

Nach diesem Lernfeld kannst du:

  • Informationen als Daten abbilden und strukturieren
  • Datenbankmodelle unterscheiden und anwenden
  • ER-Diagramme erstellen
  • SQL-Abfragen erstellen und ausführen
  • Datenformate unterscheiden
  • Software zur Datenverwaltung anpassen
  • Testfälle entwickeln und Tests durchführen

Datenbank-Grundlagen

Datenbankmodelle

Datenbankmodelle
├── Hierarchisch
├── Netzwerkartig
├── Relational (am häufigsten)
├── Objektorientiert
└── NoSQL

Relationales Datenbankmodell

Grundbegriffe:

Begriff Erklärung
Tabelle (Relation) Sammlung von Datensätzen
Spalte (Attribut) Eigenschaft eines Datensatzes
Zeile (Tupel) Ein Datensatz
Primärschlüssel Eindeutige Identifikation
Fremdschlüssel Verweis auf andere Tabelle

ER-Diagramm (Entity-Relationship)

Elemente

┌─────────────┐       ┌─────────────┐
│   Entity    │       │    Entity   │
│   (Typ)     │       │   (Typ)     │
├─────────────┤       ├─────────────┤
│ Attribute   │       │ Attribute   │
│ PK: id     │       │ PK: id     │
└─────┬───────┘       └──────┬──────┘
      │ N                    │ M
      │                      │
      └──────────┬───────────┘
                 │
          ┌──────┴──────┐
          │ Relationship │
          │  (Beziehung) │
          └──────────────┘

Beziehungsgrade

  • 1:1 (One-to-One)
  • 1:N (One-to-Many) - am häufigsten
  • M:N (Many-to-Many)

Normalisierung

Normalformen

NF Regel Ziel
1NF Atomare Werte Keine wiederholenden Gruppen
2NF Keine partielle Abhängigkeit Vollständige funktionale Abhängigkeit vom PK
3NF Keine transitiven Abhängigkeiten Keine Abhängigkeiten zwischen Nicht-Schlüsselattributen

Beispiel: 1NF → 2NF

Nicht normalisiert:

Bestellung(BestellID, Kunde, {Artikel, Menge})

Normalisiert (1NF/2NF):

Bestellung(BestellID, Kunde)
Bestellposition(BestellID, Artikel, Menge)

SQL (Structured Query Language)

DDL (Data Definition Language)

-- Tabelle erstellen
CREATE TABLE Kunde (
    KundenID INT PRIMARY KEY,
    Name VARCHAR(100) NOT NULL,
    Email VARCHAR(255) UNIQUE,
    ErstelltAm DATETIME DEFAULT CURRENT_TIMESTAMP
);

-- Tabelle ändern
ALTER TABLE Kunde ADD Telefon VARCHAR(20);

-- Tabelle löschen
DROP TABLE Kunde;

DML (Data Manipulation Language)

-- Daten einfügen
INSERT INTO Kunde (Name, Email)
VALUES ('Max Mustermann', 'max@example.com');

-- Daten aktualisieren
UPDATE Kunde
SET Email = 'neue@email.de'
WHERE KundenID = 1;

-- Daten löschen
DELETE FROM Kunde WHERE KundenID = 1;

-- Daten abfragen
SELECT * FROM Kunde;

DQL (Data Query Language)

-- Einfache Abfrage
SELECT Name, Email FROM Kunde;

-- Mit Bedingung
SELECT * FROM Kunde
WHERE Name LIKE 'M%'
ORDER BY Name ASC;

-- Mit JOIN
SELECT b.BestellID, k.Name, a.Artikelname
FROM Bestellung b
JOIN Kunde k ON b.KundenID = k.KundenID
JOIN Bestellposition bp ON b.BestellID = bp.BestellID
JOIN Artikel a ON bp.ArtikelID = a.ArtikelID;

-- Aggregatfunktionen
SELECT COUNT(*) AS Anzahl,
       SUM(Betrag) AS Gesamt
FROM Bestellung
WHERE YEAR(Datum) = 2024;

Datenformate

Strukturierte Daten

Format Beschreibung
CSV Komma-separierte Werte
JSON JavaScript Object Notation
XML eXtensible Markup Language
YAML YAML Ain't Markup Language

Beispiel: CSV

ID;Name;Email
1;Max Mustermann;max@example.com
2;Anna Schmidt;anna@example.com

Beispiel: JSON

{
  "kunden": [
    {
      "id": 1,
      "name": "Max Mustermann",
      "email": "max@example.com"
    }
  ]
}

Software-Anpassung

Vorgehen

  1. Anforderungen analysieren
  2. Datenmodell erweitern
  3. SQL-Skripte erstellen
  4. Anwendung anpassen
  5. Testfälle definieren
  6. Testen und dokumentieren

Testmethoden

  • Unit-Tests: Einzelne Komponenten testen
  • Integrationstests: Zusammenspiel testen
  • Systemtests: Gesamtsystem testen
  • Abnahmetests: Mit Kunden testen

Handlungsphasen

  1. Informieren: Daten analysieren, Anforderungen erheben
  2. Planen: Datenmodell entwerfen, Testfälle definieren
  3. Durchführen: Software anpassen, Tests durchführen
  4. Überprüfen: Funktion prüfen, Qualität sichern
  5. Reflektieren: Prozess evaluieren

Prüfungsrelevanz

  • Fundament für LF 8 (Daten bereitstellen)
  • Wichtig für Teil 1 der Abschlussprüfung
  • SQL-Kenntnisse werden vorausgesetzt

Querverweise


Stand: 2024 | Quelle: KMK Rahmenlehrplan 13.12.2019