\documentclass{bschlangaul-aufgabe} \begin{document} \bAufgabenMetadaten{ Titel = {Aufgabe 5: Entity-Relationship-Modell}, Thematik = {Multiple-Choice}, Referenz = DB.Datenbankentwurf.Entity-Relation-Modell.Multiple-Choice, RelativerPfad = Module/10_DB/20_Datenbankentwurf/01_Entity-Relation-Modell/Aufgabe_Multiple-Choice.tex, ZitatSchluessel = db:ab:7, ZitatBeschreibung = {Aufgabe 5}, BearbeitungsStand = nur Angabe, Korrektheit = unbekannt, Ueberprueft = {unbekannt}, Stichwoerter = {Entity-Relation-Modell}, } Multiple-Choice-Online-Tests für Nachqualifizierungskurse sollen datenbankgestützt erfolgen. Dabei liegt folgende Situation vor: \index{Entity-Relation-Modell} \footcite[Aufgabe 5]{db:ab:7} Ein Kurs (Kursname, verantwortliche Universität), der aus höchstens 30 Teilnehmern (Teilnehmernummer, Name, Passwort) besteht, behandelt mindestens ein Themenmodul. Ein Themenmodul kann aber in mehreren verschiedenen Kursen behandelt werden. Ein Teilnehmer besucht genau einen Kurs. Jeder Kurs wird von genau einem Tutor betreut, vom dem Personalnummer, Name und Spezialgebiet abgespeichert werden sollen. Ein Tutor kann maximal zwei Kurse parallel betreuen. Jedes Themenmodul ist eindeutig durch seine Modulnummer charakterisiert. Von jedem Modul soll der Modultitel abgespeichert werden. Die Kursteilnehmer können Multiple-ChoiceTests durchführen. Es soll gespeichert werden, welcher Test von welchem Teilnehmer unter Angabe des Datums bereits bearbeitet wurde. Die Bearbeitung eines bestimmten Tests ist aber pro Person nur einmal möglich. Außerdem will der Tutor wissen, wie viele Tests ein Teilnehmer bereits durchgeführt hat. Ein Test hat eine Nummer und eine kurze Beschreibung und gehört zu einem eindeutig bestimmten Themenmodul. Jeder Test besteht aus einer Menge von Aufgaben. Eine Aufgabe besteht dabei aus einer Frage und möglichen Antworten. Ein Test kann eine beliebige Anzahl von Aufgaben haben und jede Aufgabe kann eine beliebige Zahl von möglichen Antworten haben, von denen aber mindestens eine richtig sein muss. Bei einer Antwort muss natürlich vermerkt sein, ob sie richtig oder falsch ist. Jede Aufgabe gehört zu genau einem Test und jede Antwort genau zu einer Aufgabe. Bei der Bearbeitung eines Tests soll gespeichert werden, welche Antworten von einem Prüfling angekreuzt werden, um daraus das Testergebnis berechnen zu können. Erstellen Sie ein ER-Modell! Verarbeiten Sie dabei nur die unbedingt notwendigen Informationen. Geben Sie aber an, wie die nicht in Ihrem ER-Modell auftauchenden Informationen bestimmt werden können. Für im Text nicht näher spezifizierte Funktionalitäten besteht keine Einschränkung. Formulieren Sie eventuell auftauchende Integritätsbedingungen, die nicht in das Modell eingebaut werden können, extra und geben Sie jeweils eine Möglichkeit zur Gewährleistung dieser Bedingung an. \end{document}