Please disable Adblockers and enable JavaScript for domain CEWebS.cs.univie.ac.at! We have NO ADS, but they may interfere with some of our course material.
Higher Education Processes
ZIP «http://www.wst.univie.ac.at/~mangler/BUS/data.zip», [73.6 MiB]
Beim entpacken wird auch das richtige Modifikationsdatum fuer jedes File gesetzt. Bitte darauf achten, dass dieses nicht veraendert wird (also nicht oeffnen und speichern), weil sonst eventuell Informationen verloren gehen.
Zu diesem Dokument
In diesem Dokument werden Regulaere Ausdruecke (regex) zur Beschreibung von mustern verwendet. Z.b.
- \d{2} bedeutet dass zwei zahlen hintereinander kommen, also 00, 01, 09, 90, …
- . bedeutet ein beliebiges Zeichen
- .+ bedeutet 1 oder mehrere beliebige Zeichen
- .* bedeutet 0 oder mehrere beliebige Zeichen
- \w bedeutet ein beliebiger Buchstabe
Fuer mehr info lesen Sie bitte in der «Wikipedia» nach. Sie werden regex beim extrahieren der Daten brauchen (ebenso wie XML).
In diesem Dokument werden XPath Ausdruecke zur Beschreibung von Pfaden in XML Dateien verwenden.
Allgemeine Informationen
- data/Forum/
- Forumsdaten, in einer Forumsinstany koennen mehrere Themen (themes) enthalten sein, pro Thema viele verschachtelte Nachrichten. Pro Lehrveranstaltung gibts meistens nur 1 Forum.
- data/Register/
- Benutzer koennen aus einer Liste von Themen oder Terminen aussuchen. Z.b. verwendet fuer Seminarthemenwahl oder zur Auswahl eines Abgabegespraechstermins.
- data/Abgabe/
- Abgaben pro Uebungstermin. Zu jedem Termin mehrere Aufgaben und Subaufgaben. Deadlines. Kommentare durch Tutoren. Erfassung der Punkte von Tests, und von Plus/Minus in Uebungseinheiten. Pro LV sind mehrere Abgabenbereiche moeglich, z.b. wenn Aufgaben parallel erledigt werden muessen.
- data/Code/
- Abgabetool speziell fuer AlgoDat. Hochladen von Code, automatischer Test ob alle Anforderungen erfuellt sind, Performancemessungen.
Diese Funktionalitaeten (Services) sind im Rahmen von Lehrveranstaltungen lose verknuepft: sie kommen in einer Lehrveranstaltung vor und greifen auf gemeinsame Informationen zu, z.b. Benutzer, Gruppen, Teams, Identitaet der LV-Leiter und Tutoren.
Alle Daten wurden sorgfaeltig anonymisiert:
- Benutzer (ids, matrnr)
- Benutzernamen
- Kursnamen
- Semester
Sollten Sie ein Sicherheitsproblem finden (Rueckschluesse auf Personen ziehen koennen) teilen Sie uns das Problem bitte mit, damit wir das in Zukunft vermeiden koennen. Respektieren Sie in diesem Fall bitte die Privatsphaere ihrer Kollegen (Daten nicht veroeffentlichen, weitergeben, verwenden, …).
Instanzen
Jedes Service hat mehrere Instanzen. Eine oder mehrere Instanzen sind einer LV zugeordnet. Z.b.
data/Forum/1
data/Forum/3
data/Abgabe/70
Wichtig ist fuer jedes Service die Datei data/.*/description.xml. In ihr sind die Instanzen einzelnen Lehrveranstaltungen zugeordnet. Eine Zuordnung hat folgende Form.
http://www.pri.univie.ac.at:80/courses/KURS04/ue/se00
In dieser Url steckt sowohl der Kursname (immer hinter /courses/) als auch das semester (immer im format se..). Alle instanzen mit der selben URL wurden in der selben LV verwendet.
Innerhalb der Instanzen (i.e. im Verzeichnis data/.*/\d+) befinden sich zwei Arten von Informationen:
- Konfigurationsinformation (z.b. die Namen der Themen in einem Forum)
- Laufzeitinformationen (z.b. Eintraege die Studierende im Forum produziert haben)
Direkt im Verzeichnis data/.*/\d+/ befinden sich die Konfigurationsdateien. Die Datei aman.xml beschreibt, wofuer die einzelnen Dateien gut sind. Konfigurationsdateien kommen immer paarweise:
- .xml
- Die Konfiguration
- .rng
- Eine detailierte Beschreibung der Struktur der Konfigurationsdatei im RelaxNG schema Format mit Annotationen die die Semantik beschreiben.
Vorgehensweise, anhand eines Beispiels:
- Lesen Sie die aman.xml um die Dateien zu identifizieren
- Lesen Sie parallel die persons.xml, und persons.rng um fuer jedes element und Attribut zu erfahren wie es gemeint ist.
- Lesen Sie die Spezialsektionen in diesem Dokument zu den einzelnen Services.
- Tipp: meistens sind die XML dateien Selbserklaerend.
Dateien die NICHT paarweise kommen (keine .rng datei) sind keine Konfigurationsdaten, sondern enthalten von Usern generierte Daten (z.B. data/Abgabe/0/assessments.xml). Diese Dateien werden in diesem Dokument (weiter unten) genauer erklaert.
Personen
Wie bereits erklaert sind Personendaten wichtig fuer jedes Service. Es existieren 3 Quellen:
- Jedes Service hat in jeder Instanz eine Datei data/.*/.*/persons.xml. Wenn mehrere Instanzen in der selben LV vorkommen sollten (!) diese Dateien identisch sein.
- User koennen Admin sein, haben eine ID, einen Namen und eine Mailadresse.
- User gehoeren zu einer Gruppe (e.g. 050013/1, 050013/2) und/oder zu einem Team (2-3 Studenten im Rahmen einer Gruppenarbeit).
- Manche Services haben eine Datei data/.*/.*/course.xml. Diese speichert, welcher der User ein LV-Leiter/Tutor ist (admin bedeutet nicht automatisch LV-Leiter).
- In der Datei data/meta.csv befinden sich Informationen zu Name und Geschlecht von Usern.
Die Daten zu Usern sind in den einzelnen LVs und Instanzen redundant vorhanden, koennen sich aber auch zwischen den Semestern aendern.
Services
Forum
Innerhalb des Forum gibt es zwei Verzeichnisse mit Laufzeitinformationen:
data/Forum/.*/User: In diesem Verzeichnis finden sie Textdateien mit dem Namen <<matrnr>>. In diesen Dateien finden sie eine Liste von Message ID's mit Zeilenumbruch getrennt. Das sind alle Messages, die ein bestimmter User gelesen hat.
data/Forum/.*/Data: In diesem Verzeichnis finden sie XML Dateien, die das eigentliche Forum speichern. Pro Thema gibt es eine xml Datei mit der ThemenID als name (siehe data/Forum/.*/issues.xml fuer eine Liste der Themen).
Abgabe
Innerhalb des Abgabe Services gibt es nur ein Verzeichnis mit Laufzeitinformationen.
data/Abgabe/.*/Data: In diesem Verzeichnis liegen die hinaufgeladenen Dateien in folgender Struktur vor data/Abgabe/.*/Data/<<matrnr>>/<taskid>/<subtaskid>/<dateiname>.<extension>. Fuer Informationen welche tasks und subtasks es gibt, sehen sie bitte in die Datei tasks data/Abgabe/.*/tasks.xml.
Weiters gibt es:
data/Abgabe/.*/assessment.xml: Bewertungen fuer alle Studenten.
<assessments>
<person id="<<matrnr>>">
<result id="1">9.0</result>
<plus date="2009-10-20"/>
<result id="2">6.0</result>
...
</person>
- Plus und Minus pro Datum. Manchmal sind dieser einer Abgabe bzw. Uebungseinheit zuordenbar. Uebungseiheiten finden Sie in data/Abgabe/.*/tasks.xml unter /tasks/group/task/@presence.
- Results sind Test oder Uebungsklausuren, die waehrend einer LV stattfinden koennen. Die ID bezeichnet den genauen Test, welcher in data/Abgabe/.*/tasks.xml unter /tasks/group/test zu finden ist.
Bitte beachten Sie dass sie natuerlich immer die richtige Gruppe verwenden muessen, um die informationen richtig zuzuordnen (pro person in data/Abgabe/.*/persons.xml.
data/Abgabe/.*/feedback.xml: Feedback von Tutoren und LV-Leitern an Studierende zu Tasks und Subtasks.
<feedback>
<person id="...">
<comment author="..." subtask="1" task="1">
Der Feedback ist immer zur gesamten Abgabe Task/Subtask, nicht pro File. Die Beschreibungen zu Tasks und Subtasks finden sie unter data/Abgabe/.*/tasks.xml.
Es ist WICHTIG zu erwaehnen dass der Abgabezeitpunkt nicht in einem XML File steht, sondern eine Eigenschaft der abgegebenen Datei ist. Lesen sie die Fileeigenschaften der Dateien data/Abgabe/.*/Data/<<matrnr>>/<taskid>/<subtaskid>/<dateiname>.<extension>.
Code
Im Unterverzeichnis data/Code/.*/Data finden Sie
data/Abgabe/.*/Data/common: Gemeinsame Dateien fuer alle Gruppen. Codestücke die zum Testen gegen die hochgeladenen Programme verwendet werden.
data/Abgabe/.*/Data/\d+: Die LV-Gruppen (siehe data/Code/.*/persons.xml).
Innerhalb der Gruppen sehen Sie ein Verzeichnis pro Student, innerhalb des Studentenverzeichnisses:
data/Abgabe/.*/Data/\d+/<<matrnr>>/.* Dateien: Aktueller Upload. Zeitpunkt des Versuchs aus den Filemetadaten.
data/Abgabe/.*/Data/\d+/<<matrnr>>/.* Verzeichnise: vorherige Uploads, durchnumeriert. Den Zeitpunkt des Uploads kann man fuer einzelne Dateien wieder aus den Fileeigenschaften abgelesen werden.
Register
Dieses Service ist das einfachste der Gruppe. Alle Eingaben der Studenten werden in der Datei data/Register/.*/registrations.xml gespeichert:
<registrations>
<registration unit="1" group="1" slot="1"><<matrnr>></registration>
...
Pro Gruppe und Unit (siehe data/Register/.*/custom.xml) kann sich ein Studierender zu einem Slot anmelden. Die Anzahl der leeren Slots kann im Umkehrschluss hergeleitet werden.
Noise
In den Daten sind jede Menge Probleme versteckt. Beispielprobleme sind:
- Studenten die nichts abgegeben haben (Dropout)
- Abgaben, fuer die sich keine Personendaten finden lassen (waehrend der LV entfernt weil Dropout)
- Wiederspruechliche Informationen in zusammengehoerigen Instanzen (von uns eingefuegt ;-)
Diese Probleme sollten Sie nicht einfach ignorieren, sondern versuchen die Daten wenn moeglich zu komplettieren, also die fehlende Information wiederherzustellen.
Last Change: 22.11.2016, 09:56 | 1198 Words