Modulbezeichnung: Datenmodellierung und Datenbanksysteme Modulnummer: Semester: Dauer: IDBS -- Minimaldauer 1 Semester Modultyp: Regulär angeboten im: Pflicht WS, SS Workload: 150 h ECTS Punkte: 5 Zugangsvoraussetzungen: Unterrichtssprache: keine Deutsch Kurse im Modul: Workload: Datenmodellierung und Datenbanksysteme (IDBS01) Selbststudium: 90h Selbstüberprüfung: 30h Tutorien: 30h Kurskoordinatoren/Tutoren: Modulverantwortliche(r): Siehe aktuelle Liste der Tutoren im Learning Management System Prof. Dr. Tobias Brückmann Bezüge zu anderen Programmen: Bezüge zu anderen Modulen im Programm: keine Grundlagen der industriellen Softwaretechnik Qualifikations- und Lernziele des Moduls: Die Studierenden • können die Grundkonzepte des relationalen Datenmodells (Relationenalgebra) beschreiben und voneinander abgrenzen. • können Datenschemas visuell modellieren. • kennen SQL-Anfragen, um Daten aus Datenbanken zu lesen und den Datenbestand zu ändern und haben Erfahrungen in deren Einsatz. • können SQL-Anfragen und Datenschemas für SQL-Datenbanken konzipieren, erstellen und ändern und haben Erfahrungen in deren Einsatz. • können zur Lösung konkreter Probleme selbstständig Datenbankschemas entwerfen und Datenbankabfragen erstellen. • kennen die wichtigsten NoSQL-Konzepte und können sie voneinander abgrenzen. Lehrinhalt des Moduls: 1. Grundlagen von relationalen Datenbanken 2. Einfache Datenbankanfragen 3. Entity/Relationship (E/R)-Diagramme 4. Komplexe Datenbankanfragen über mehrere Tabellen 5. Ändern von Daten in Datenbanken 6. Vertiefende Konzepte 7. Datenbanksysteme Lehrmethoden: Siehe Kursbeschreibung Literatur: Siehe Literaturliste der vorliegenden Kursbeschreibungen Stand: 28.03.2017 Anteil der Modulnote an der Gesamtabschlussnote des Programms: Prüfungszulassungsvoraussetzung: Abschlussprüfungen: -- Begleitende Online-Lernkontrolle als Prüfungszulassungsvoraussetzung Klausur 90 Min. (100%) Stand: 28.03.2017 Kurs Nr.: Kursname: Gesamtstunden: IDBS01 Datenmodellierung und Datenbanksysteme 150 h ECTS Punkte: 5 ECTS Kurstyp: Pflicht Zugangsvoraussetzungen: Kursangebot: keine Kursdauer: Minimaldauer 1 Semester Kurskoordinator / Dozenten / Lektoren: Bezüge zu anderen Modulen: Siehe aktuelle Liste der Tutoren im Learning Management System Siehe Modulbeschreibung Stand: 28.03.2017 Beschreibung des Kurses: Gespeicherte Daten bilden die Grundlage von vielen Wertschöpfungsketten einer Informations- und Wissensgesellschaft. Daher bildet die methodische Strukturierung von Datenschemas als „Formgeber“ gespeicherter Daten eine wichtige Grundlage, um gespeicherte Informationen so abzulegen, dass ein einfaches Wiederfinden und Bearbeiten möglich ist. Neben dem strukturierten Speichern von Daten muss auch ein strukturierter Zugriff auf große Datenmengen möglich sein. In diesem Kurs wird vermittelt, wie Daten in relationalen Datenmodellen gespeichert werden und wie auf gespeicherte Daten mit SQL zugegriffen werden kann. Weiterhin werden neben relationalen Datenbanksystemen auch moderne DB-Systeme (NoSQL) zum Speichern und Zugreifen von bzw. auf Daten vorgestellt. Kursziele: Die Studierenden können die Grundkonzepte des relationalen Datenmodells (Relationenalgebra) beschreiben und voneinander abgrenzen. können Datenschemas visuell modellieren. kennen SQL-Anfragen, um Daten aus Datenbanken lesen und den Datenbestand zu ändern und haben Erfahrungen in deren Einsatz. können SQL-Anfragen und Datenschemas für SQL-Datenbanken konzipieren, erstellen und ändern und haben Erfahrungen in deren Einsatz. können zur Lösung konkreter Probleme selbstständig Datenbankschemas entwerfen und Datenbankabfragen erstellen. kennen die wichtigsten NoSQL-Konzepte und können sie voneinander abgrenzen. Lehrmethoden: Die Lehrmaterialien enthalten einen kursabhängigen Mix aus Skripten, Video-Vorlesungen, Übungen, Podcasts, (Online)Tutorien, Fallstudien. Sie sind so strukturiert, dass Studierende sie in freier Ortswahl und zeitlich unabhängig bearbeiten können. Inhalte des Kurses: 1 Grundlagen von relationalen Datenbanken 1.1 Grundkonzepte des relationalen Datenmodells 1.2 Elemente der rationalen Datenmodellierung 1.3 Datensatz, Tabellen (Table), Spalte (Column) 1.4 Primary Key (Primärschlüssel), Foreign Key (Fremdschlüssel) 1.5 Normalformen 2 Einfache Datenbankanfragen 2.1 SELECT FROM, WHERE, ORDER BY, GROUP BY, HAVING 3 Entity/Relationship (E/R)-Diagramme 4 Komplexe Datenbankanfragen 4.1 JOIN, INNER JOIN, OUTER JOIN, LEFT/RIGHT JOIN 4.2 Mengenoperationen und relationale Algebra, Unterabfragen mit Subselects 5 Ändern von Daten in Datenbanken 5.1 Einfügen, Verändern und Löschen von Datensätzen und -tabellen 5.2 Transaktionen 6 Vertiefende Konzepte 6.1 Funktionen für SELECT-Befehle 6.2 Data Control Language 6.3 Stored Procedures 6.4 Datenbanksicherheit 7 Datenbanksysteme 7.1 SQL-Datenbanken 7.2 Dokumentenorientierte Datenbanken 7.3 Graphendatenbanken 7.4 Key-Value-Speicher 7.5 Objektdatenbanken Stand: 28.03.2017 Literatur: • Adams, R. (2012): SQL. Eine Einführung mit vertiefenden Exkursen. Hanser, München. ISBN-13: 978-3446432000. • Brauer, B. et al. (2011): NoSQL. Einstieg in die Welt nichtrelationaler Web 2.0 Datenbanken. 2. Auflage, Hanser, München. ISBN-13: 978-3446427532. • Geisler, F. (2011): Datenbanken. Grundlagen und Design. 4. Auflage, mitp, Wachtendonk. ISBN-13: 978-3826690884. • Throll, M/Bartosch, O. (2010): Einstieg in SQL. Verstehen, einsetzen, nachschlagen. 4. Auflage, Galileo Computing, Bonn. ISBN13: 978-3836216999. • Steiner, R. (2011): Grundkurs Relationale Datenbanken. Einführung in die Praxis der Datenbankentwicklung für Ausbildung, Studium und IT-Beruf. 7. Auflage, Vieweg+Teubner, Wiesbaden. ISBN-13: 978-3834807106. Prüfungsleistung: Klausur, 90 Min. Zeitaufwand Studierenden (in Std.): 150 Selbststudium (in Std.): 90 Selbstüberprüfung (in Std.) 30 Tutorien (in Std.): 30 Stand: 28.03.2017