Flexible
LaTeX-based
Automatic
Making of
Exercise Sheets &
Sessions
FLAMES ist ein Generator für Übungsblätter und
für Inhalte, die für die Durchführung von
Übungsveranstaltungen oder Tutorien benötigt
werden. Besonders geeignet ist FLAMES für
Lehrveranstaltungen mit "Testatbetrieb", d.h. einer
regelmäßigen (im Regelfall wöchentlichen)
Präsentation der bearbeiteten Übungsaufgaben durch
die Teilnehmer, bei der eine entsprechende
Überprüfung und Bewertung durch beauftragte Tutoren
erfolgt.
Die Verwendung kann auch in ähnlichen Szenarien eine
große Hilfe sein, in denen ggf. nicht alle
Funktionalitäten von FLAMES eingesetzt werden. Sinnvoll
ist der Einsatz immer dann, wenn eine flexible
Übungsblattgenerierung und automatisierte Vorbereitung
der jeweils benötigten Inhalte für eine
Lehrveranstaltung gewünscht werden.
Die Bedienung erfolgt über die Kommandozeile.
Benötigt wird eine Unix-basierte Betriebssystemumgebung
(z.B. Linux oder Mac OS X). FLAMES basiert im Wesentlichen
auf dem Schriftsatzsystem "LaTeX" und dem Build-Werkzeug "Make".
Ziel ist es, mit wenigen aber leistungsfähigen Werkzeugen
in einer Standardumgebung einen möglichst effizienten und
komfortablen Einsatz zu gewährleisten. Dies bedeutet
insbesondere, eine möglichst flexible und kurzfristig
änderbare Gestaltung von Übungsblättern zu
ermöglichen, sowie die Automatisierung wiederkehrender
Arbeits- und Anpassungsvorgänge sicherzustellen.
-
Übungsaufgaben und Musterlösungen werden in einem
Dokument vorhalten, getrennte Erzeugung nach Bedarf
-
einfaches und flexibles Verschieben von Übungsaufgaben
auf unterschiedliche Übungsblätter innerhalb eines
Master-Dokuments
-
automatisches Aktualisieren der Hyperlinks auf
Übungsblättern
-
Ausgabe der Übungsblätter und Musterlösungen
als PDF, PostScript (zwecks Ausdruck) und HTML
-
für jedes Übungsblatt bzw. für jedes Testat
kann ein separater Fragenkatalog vorgehalten und eingebunden
werden
-
spezielle Berücksichtung und Ablage von Quellcode, der
für die Übungsveranstaltung in einer integrierten
Entwicklungsumgebung (IDE) vorgehalten werden muss
-
Datei-Ablageschema mit Namens- und Verzeichniskonvention
für einzelne Übungsaufgaben
-
Berücksichtigung der mit einem Übungsblatt
auszugebenen Dateien, die für die Bearbeitung der
Aufgaben benötigt werden (Ordnername: ausgabe)
-
Berücksichtigung von Dateien, die für die
Übungen benötigt werden, wie z.B.
Beispieldateien, Vorlagen etc. (Ordnername: uebung)
-
Berücksichtigung der zu den Musterlösungen
gehörenden Dateien (Ordnername: mlsg)
-
Zusammenstellen der vorbereiteten Notizen für die Vor-
und Nachbesprechungen aller Aufgaben für eine
Übungsveranstaltung
-
Zusammenstellen der vorbereiteten Bewertungsschemata aller
Aufgaben für die Bewertung der Aufgaben durch die Tutoren
-
Zusammenstellen und Vorhalten der für
Übungsveranstaltungen benötigten Dateien wie
z.B. Quellcode-Dateien und Abbildungen bzw. Diagramme
-
automatische Erstellung von Archiven mit Dateien der
Übungsveranstaltungen
-
automatische Erstellung von Archiven für die Tutoren
mit allen für die Vorbereitung von Testaten
benötigten Dateien
-
automatische Erstellung einer druckbaren PDF/PS-Datei mit
komplett allen für Testate benötigten
Inhalten
-
einfache Backup-Funktion, die ein auch in andere Umgebungen
übertragbares, voll funktionsfähiges Archiv mit
allen Inhalten der jeweiligen Lehrveranstaltung erstellt
-
aktuelles Archiv (siehe unten) herunteraden und entpacken
-
auf der Kommandozeile mit "cd" in den
Ordner ".../Aufgaben/" wechseln
-
durch Eingabe von "make" oder "make help"
wird eine Übersicht über die Funktionen ausgegeben
-
mit den folgenden Befehlen:
$ make b01
$ make ueb01
$ make tut01
... wird das erste Übungsblatt und alles dazugehörige
generiert
-
alternativ dasselbe etwas kürzer mit den folgenden
Befehlen:
$ make 01
$ make tut01
-
Die Schritte für die Generierung wurden so aufgeteilt,
weil es sich als praktikabel erwiesen hat: Das
Übungsblatt ("make b01") und die Übungen
("make ueb01") wurden öfters einzeln oder auch
zusammen ("make 01") erstellt. Das Tutorenarchiv
("make tut01") relativ selten, meist nur einmalig
direkt vor Ausgabe an die Tutoren.
-
Es bietet sich an, FLAMES in Kombination mit einem
Versionskontrollsystem (VCS) wie z.B. Subversion (SVN)
einzusetzen. Neben den Vorteilen, den der Einsatz eines VCS
bereits für einen einzelnen Benutzer bietet
(Versionshistorie, zentrales Repository zum Synchronisieren
unterschiedlicher Arbeitsrepositories etc.) ist dadurch
auf einfache Weise ein leistungsfähiger
Mehrbenutzerbetrieb gewährleistet.
- Bash (inkl. find, tar, gzip)
- Make
- LaTeX, inkl. pdfLaTeX und Tex4ht
- pdftops, pstops, ps2pdf, a2ps, gs, epstopdf
- dvipng und ggf. dvips und convert (ImageMagick)
Getestet mit: Ubuntu Linux 12.04.2 LTS und der darin
enthaltenen TeX-Distribution "TeX Live 2009-15"