====== LU02f - LB3 - Projektauftrag ======
===== Einleitung =====
Sie haben sich rund 2/3 der 40 Lektionen des Moduls 290 mit dem Thema "Datenbanken" in einer 3-Schichten-Architektur (Frontend, Backend, DB) beschäftigt. Bei der dritten und letzten Leistungsbeurteilung im Modul 290 geht es darum diese Daten nicht nur auf der Datenbank zu verwalten, sondern die sogenannten CRUD-Operationen mittels Server anzuwenden.
===== Auftrag =====
Nachfolgend finden Sie eine Reihe von Projektbeschreibungen. Bearbeiten Sie das Ihnen zugewiesene Projekt, d.h. programmieren Sie einen Prototypen und präsentieren Ihre Resultate am Ende des Moduls als **Video-Tutorial** von ca. 15 Minuten Länge. D.h. erstellen Sie ein Video-Tutorial für Ihre "Unterstifte" aus dem 2. Lehrjahr zu den Themen
* Daten
* Datenbanken
* Zugriff auf Daten in einer 3 Schichten-Architektur
Das Tutorial muss im Kern die CRUD-Operationen auf Server und Datenbank erklären und demonstrieren.
===== Inhalt des Videotutorials =====
Das Video muss die nachfolgenden Bestandteile enthalten:
- Einleitung, Auftrag + Analyse
- Herleitung des ERM, basierend auf den gegebenen UseCases
- Herleitung des ERD basierend auf dem ERM
- Physisches Anlegen der Datenbank und der relevanten Tabellen als SQL-Script (CRUD)
- Import der Initialdaten (Startdaten) als SQL-Script (CRUD)
- Anlegen und Berechtigen eines entsprechenden AppUsers zur DB
- Nachweis der CRUD-Operationen im Server, durchgeführt auf der Commandline/Terminal (CRUD)
- Nachweis der CRUD-Operationen im Frontend, durchgeführt durch die Frontend-Simulations-Software POSTMAN (CRUD)
- Kurze individuelle Reflexion der Teammates mit je 2 Learnings (positiv, negativ)
- Schluss
===== Wichtige Hinweise =====
* **Frontend**: Die Programmierung eines Frontend ist kein Bestandteil des Auftrags, da dieses durch die Software Postman simuliert wird. D.h. es wird keine vollständige Applikation erwartet, sondern lediglich der JavaScript-Server welcher mit der Datenbank kommunizieren kann.
* **CRUD**: Ihr Prototyp muss die CRUD-Operationen auf der DB-Ebene (SQL) und im Server ausführen können. Es reicht also, wenn Sie mittels Server Daten in der Datenbank schreiben, lesen, updaten und löschen können.
* **UseCases**: Um diese nachzuweisen, orientieren Sie sich an den gegebenen UseCases. D.h. Sie müssen nicht alle Anforderungen erfüllen, sondern nur die CRUD-Operationen via Postman auf das Backend und der Datenbank anwenden können.
===== Abgabe - Zu liefernden Lernprodukte =====
Das Projekt ist als ein ZIP-File in Moodle abzugeben. In diesem ZIP-File sind die nachfolgenden Daten enthalten:
- Video-Tutorial von 15 Minuten Länge
- ERM als PDF-Datei
- ERD als PDF-Datei
- SQL-Script DDL-Anweisungen: Anlegen der Tabellenstruktur
- SQL-Script-DML-Anweisungen: Import der Initialdaten
- SQL-Script-DCL-Anweisungen: Anlegen und Berechtigen eines entsprechenden AppUsers zur DB (DCL-Script mit den Credentials des AppUsers zur DB)
- Server-File, programmiert in JavaScript