UML-Lernplattform

E-Learning ist in aller Munde. Das nachfolgende Konzept zeigt ein Online-Lernprogramm für angehende Informatiker, welche die Unified Modeling Language (UML) lernen wollen oder sollen. Dabei wird auch auf psychologische Lerntheorien Rücksicht genommen.

Motivation

Der Inhalt des hier vorgestellten Lernprogrammes orientiert sich primär an der Lehrveranstaltung »VU Objektorientierte Modellierung« (wie sie 2011 abgehalten wurde). Diese Veranstaltung bietet sich für ein eigens zugeschnittenes Programm besonders an, weil sie bereits in der aktuellen Form nicht mehr dem klassischen Vorlesungsbetrieb folgt, sondern auf Elemente des E-Learning setzt, wobei aber noch viel Verbesserungsbedarf besteht.

Zentrales Element der bestehenden E-Learning-Struktur sind Videos, die im Web abgerufen werden können. Diese enthalten zum überwiegenden Teil die Vorlesungsfolien und einen dazu eingesprochenen Text – nur in wenigen Fällen werden auch kleine Animationen zur Veranschaulichung benutzt. Alternativ zu diesen Videos wird aber auch eine PDF-Datei mit allen Folien und dem Gesprochenen in Textform angeboten. Als ich die Lehrveranstaltung besuchte, merkte ich sehr schnell, dass ich mir den Unterrichtsstoff allein mit den Unterlagen in Textform wesentlich schneller erarbeiten konnte und nutzte die Videos nicht mehr, weil diese keinen Mehrwert brachten. Ein Hauptziel in der Verbesserung sollte deshalb darin liegen, den Einsatz zeitabhängiger Medien auf Elemente zu reduzieren, die in einer solchen Form tatsächlich vorteilhaft sind.

Leistungsüberprüfungen finden in der besprochenen Lehrveranstaltung noch in klassischen Präsenzveranstaltungen auf Papier statt. Fragen sind dabei aber in vielen Fällen schon so gestellt, dass die erwartete Antwort eindeutig definiert ist – beispielsweise in Form von Multiple-Choice-Fragen oder genauen Vorgaben zu Namenskonventionen. Somit kann die Auswertung nach einer entsprechenden Änderung des Systems relativ einfach automatisiert werden.

Insgesamt bietet sich natürlich das Thema UML an sich schon für E-Learning an, da es sich hier um einen Aspekt der Software-Entwicklung handelt und diese zum wesentlichen Teil auf Computern stattfindet. Die meisten Entwickler werden ihre Diagramme nicht von Hand zeichnen, sondern aufgrund der höheren Flexibilität und Austauschbarkeit von Daten UML-Editoren benutzen. Dieser Praxisbezug soll auch im vorgestellten Lernprogramm nicht nur beachtet werden, sondern den grundlegenden Kern, insbesondere in der Übungsabwicklung, bilden.

Ziele

Ganz wesentlich ist – wie schon erwähnt – der Praxisbezug des Gelernten. Das Programm soll Lernenden also die notwendigen Fähigkeiten vermitteln, um UML-Diagramme nach gegebenen Spezifikationen erstellen, Diagramme anderer Entwickler lesen und bestehende Diagramme an veränderte Anforderungen anpassen zu können.

Die Vermittlung theoretischer Grundlagen erfolgt dabei nur in dem Ausmaß, das für die praktische Anwendung notwendig ist. Historische Aspekte und andere Hintergrundinformationen sind nicht Bestandteil des Lernprogrammes.

Zielgruppe

Mit dem Lernprogramm sollen Personen angesprochen werden, die bereits über Programmierkenntnisse verfügen und denen das allgemeine Konzept objektorientierter Programmierung geläufig ist. Bezugnehmend auf die ursprüngliche Motivation zur Erstellung dieses speziellen Lernprogrammes bilden insbesondere Studenten der Informatik die Hauptzielgruppe, darüberhinaus sollen aber auch andere Interessierte wie Hobbyprogrammierer oder Personen, die sich beruflich im Fachgebiet der Programmierung weiterbilden wollen, das Programm nutzen können.

Allgemein soll davon ausgegangen werden, dass diese Benutzer als Programmieranfänger bereits grundsätzlich im Umfeld von Personalcomputern mit aktuellen technischen Gegebenheiten wie dem Web vertraut sind, sodass man ihnen grundlegende Konzepte wie das Hypertextmodell nicht mehr erklären muss.

Kontext

Das Lernprogramm ist so konzipiert, dass es grundsätzlich in der Lehrveranstaltung »Objektorientierte Modellierung« oder einer vergleichbaren Schulung benutzt werden könnte.

Da es sich hierbei um eine Massenveranstaltung handelt, ist auch das Programm darauf ausgerichtet eine große Menge an Lernenden ohne großen Aufwand verwalten zu können. Alle Übungen sind deshalb so konzipiert, dass sie automatisch auf Korrektheit geprüft werden und eine manuelle Kontrolle durch Lehrende nicht notwendig ist.

Alle Inhalte sind in Form von Hypertext innerhalb des Lernprogrammes abrufbar. Zusätzliche Bücher, Skripten oder Vorlesungen sind aus diesem Grund nicht notwendig.

Um den Lernenden dennoch eine Möglichkeit zur Kommunikation zu geben, gibt es innerhalb des Systems Diskussionsseiten, auf denen sie sich untereinander austauschen können. Bei Bedarf kann das Forum auch von Tutoren betreut werden. Eine nähere Auseinandersetzung mit dem Thema der Kommunikation erfolgt in einem späteren Kapitel.

Technisch ist das Lernprogramm als Webanwendung konzipiert, sodass es flexibel von verschiedenen Geräten aus aufgerufen werden kann. Die Übungen innerhalb des Programmes dienen vorwiegend der Selbstüberprüfung und können daher von einem beliebigen Ort aus absolviert werden. Um letztendlich aber eine Leistung vorliegen zu haben, von der gesichert ist, dass der entsprechende Lernende sie selbst erbracht hat, bleibt trotz dieses Lernprogramms zusätzlich eine separate Prüfung – oder zumindest ein Abgabegespräch – in Form eines Präsenztermins erforderlich.

Durch die Konzeption als Webanwendung und auch durch den geringen Betreuungsaufwand kann die Nutzung des Lernprogrammes grundsätzlich auch unabhängig von einer Lernveranstaltung interessierten Internetbenutzern zur Verfügung gestellt werden – in diesem Fall ohne Tutorenbetreuung und zusätzliche Abschlussprüfung.

Lerntheorien

UML ist grundsätzlich ein System mit klar definierten Regeln. In der Lehrveranstaltung, die Vorbild für dieses Lernprogramm ist, werden überdies Übungs- und Prüfungsfragen so gestellt, dass die erwartete Antwort weitgehend eindeutig ist. Um eine automatische Auswertung zu ermöglichen, soll dieser Aufgabencharakter auch im vorgestellten Lernprogramm beibehalten werden. Damit bleibt grundsätzlich nicht viel Raum für eigenständige Interpretationen, wie das in konstruktivistischen Lernmethoden vorgesehen ist.

Wie schon betont wurde, soll als Lernziel aber die praktische Anwendung im Vordergrund stehen. Damit ist reiner Behaviorismus als Lernform ungeeignet, weil hier der Kontext ausgeblendet würde. Stattdessen benötigt man auf der einen Seite einen objektivistischen Ansatz, um eindeutige Übungsergebnisse ermitteln zu können – auf der anderen Seite muss aber auch das mentale Modell der Lernenden berücksichtigt werden, sodass die Lehrinhalte in das bereits vorhandene Wissen eingeordnet werden können. Man benötigt also eine Mischform aus behavioristischen und konstruktivistischen Elementen: Instructional Design.

Während sich die objektivistischen Elemente aus technischen Gründen vor allem in der Eindeutigkeit der Übungen zeigen müssen, soll der theoretische Teil so gestaltet sein, dass bedeutungsvolles Lernen unterstützt wird. Dazu ist es wichtig, gut strukturierte Übersichten zu geben und in einführenden Kapiteln und Absätzen kurz darzulegen, wozu die nachfolgenden Informationen benötigt werden (Advance Organizer). Die Theorieteile bauen dabei auf Wissen auf, das die Lernenden bereits aus ihrer vorangegangenen Programmiererfahrung haben und betten das neue Wissen somit in einen bestehenden Kontext ein.

Da man als Programmierer bei den meisten Arbeiten Computer oder andere Hilfsmittel nutzt, soll außerdem das Prinzip der Distributed Cognition gezielt unterstützt werden. In der Praxis hat man für gewöhnlich einen UML-Editor zur Verfügung, der allein druch sein Interface schon die Anzahl möglicher Formen einschränkt und damit Hinweise auf korrekte Diagramme gibt. Daneben hat man in der heutigen Zeit durch die ständige Anbindung an das Web auch permanent die Möglichkeit Informationen nachzuschlagen. UML-Editor und der Zugriff auf Informationen sollen deshalb auch innerhalb des Lernprogrammes für die Übungen zur Verfügung stehen, um ein praxisnahes Szenario zu vermitteln.

Prototyp

In den nachfolgenden Kapiteln werden die wesentlichsten Seiten des Prototypen vorgestellt. Manche Seiten, die sich kaum voneinander unterscheiden (zum Beispiel Diskussionsseiten in verschiedenem Kontext oder mit Moderatorrechten) oder nichts Wesentliches zum Lernaspekt des Programmes beitragen (zum Beispiel die Login-Seite), werden nicht gezeigt, sondern nur im Text angedeutet.

Übersichtsseite

Prototyp-Screenshot der Übersichtsseite

Um den Übungsfortschritt dauerhaft speichern zu können, ist es notwendig, dass für jeden Lernenden ein eigener Account mit eindeutigen Zugangsdaten eingerichtet wird. Meldet man sich damit im System an, gelangt man vorerst auf eine Übersichtsseite.

Hier hat man ein Inhaltsverzeichnis der Hauptkapitel vor sich. Rechts davon gibt es zu jedem Kapitel einen Kurzstatus darüber, wie viele Übungen dieses Kapitels man bereits positiv absolviert hat und wie viele noch zu erledigen sind. Neben einer Angabe in Zahlwerten wird auch jede Übung je nach ihrem Status (abgeschlossen oder noch nicht abgeschlossen) entweder durch einen grünen Haken oder ein rotes Kreuz repräsentiert.

Die Anzahl der Übungen kann je nach Umfang des entsprechenden Kapitels unterschiedlich ausfallen. Weil das Lernprogramm auf Praxisbezug ausgerichtet ist, gibt es zu dem allgemeinen Einführungskapitel keine Übungen. Dieses Kapitel soll nur vorab darüber informieren, wozu UML überhaupt genutzt wird, um auch Lernenden, die nur wenig Vorinformationen haben, von Anfang an bedeutungsvolles Lernen zu ermöglichen.

Von dieser Übersichtsseite aus gelangt man entweder zu einer Theorieseite, wenn man eine Kapitelüberschrift anklickt, oder direkt zu einer Übung, indem man das zugehörige Symbol (in der Praxis zumeist wohl eine noch nicht gelöste Aufgabe – also ein Kreuz) anklickt. Weil sich die Anwählbarkeit der Symbole nur schwer durch einen direkten Aufforderungscharakter am Bild darstellen lässt, wird textlich auf diese Möglichkeit hingewiesen.

Grundsätzlich haben Lernende freie Wahl, in welcher Reihenfolge sie die einzelnen Kapitel abarbeiten, da jedes einen anderen Diagrammtyp behandelt und diese Typen zumeist weitgehend unabhängig voneinander sind.

Theorieseite

Prototyp-Screenshot einer Theorieseite

Abgesehen von der Kurzübersicht direkt nach dem Login folgen alle Seiten des Lernprogramms der klassischen Webseiten-Struktur: An der linken Seite befindet sich ein hierarchisches Menü und rechts davon der Inhalt. (Auf der Übersichtsseite wird auf das Menü bewusst verzichtet, weil es ausschließlich redundante Informationen enthielte.)

Befindet man sich in einem bestimmten Kapitel, werden im Menü auch die entsprechenden Unterkapitel angezeigt. In der Regel sind diese Unterkapitel so strukturiert, dass man erst ein allgemeines Einführungskapitel vorliegen hat, in dem – wie schon bei der Einführung zu UML an sich – der Zweck des jeweils beschriebenen Diagramms erläutert wird (Advance Organizer). Danach folgen Kapitel, die einzelne Aspekte behandeln und jeweils mit einer Übung abschließen. Anders als bei den Hauptkapiteln sollte man aber die Unterkapitel immer in der angegebenen Reihenfolge durcharbeiten, da hier die Inhalte und vor allem auch die Übungen aufeinander aufbauen.

Jeder Menüpunkt ist mit einem Symbol versehen, das den Übungsstatus des jeweiligen Kapitels angibt. Neben den schon bekannten Haken und Kreuzen gibt es hier auch schwarze Kreise. Dabei handelt es sich um jene Kapitel, zu denen es keine Übung gibt, beziehungsweise um Menüpunkte, die kein inhaltliches Kapitel abdecken – zum Beispiel ein Link zurück zur Übersichtsseite. (Der leere Kreis symbolisiert hierbei also das Fehlen einer Übung.)

Oberkategorien werden solange durch ein Kreuz repräsentiert, bis all ihre Unterkapitel positiv absolviert sind.

Neben den roten Kreuzen und den grünen Haken werden Hyperlinks in blau dargestellt, sodass in Bezug auf die Farbgebung die Erwartungshaltung durch bestehende Konventionen eingehalten wird. Davon abgesehen sind Inhaltsseiten weitgehend farblos gehalten, da farbige UML-Diagramme unüblich sind, sofern man nicht bestimmte Elemente gezielt voneinander unterscheiden möchte.

Der Text ist so aufbereitet, wie es üblich ist, um Webdokumente gut lesbar zu gestalten. Sätze und Absätze werden eher kurz gehalten und wichtige Begriffe in höherem Schriftgewicht hervorgehoben, sodass das Auge gute Ankerpunkte hat.

Einzelne Begriffe im Fließtext verlinken auf andere Seiten. Es ist aber nicht so wie im Web, dass große Mengen an Zusatz-Informationen miteinander verknüpft sind; stattdessen führen nur wichtige Schlüsselbegriffe zurück zu jenen Seiten, auf denen ebendiese Begriffe erläutert werden. Man kann also alle Unterkapitel der Reihe nach durcharbeiten und liest dabei alle Informationen, die im System vorhanden sind. Erinnert man sich aber nicht mehr daran, was ein bestimmter Begriff aus einem vorangegangen Kapitel bedeutet, kann man dem entsprechenden Link folgen und muss die Definition nicht manuell nachschlagen.

Ein großer Vorteil der Hypertextdarstellung von UML-Lehrmaterialien ist die erleichterte Einbindung von Grafiken gegenüber klassischen Skripten. Da UML sich mit dem Erstellen, Bearbeiten und Lesen von Diagrammen befasst, ist es unumgänglich, solche auch zahlreich in den Unterlagen einzusetzen.

Wie eingangs schon einmal erwähnt gibt es in der Lehrveranstaltung »Objektorientierte Modellierung« Online-Videos, die zum größten Teil keinen Mehrwert gegenüber schriftlichen Unterlagen bieten, weil nur statische Inhalte vorgetragen werden. Wesentlich zum Verständnis tragen dabei nur jene Teile bei, in denen Abläufe dargestellt sind – zum Beispiel der Verlauf eines Tokens an einem Knotenpunkt.

Für solche Darstellungen benötigt man aber keine aufwändigen, vertonten Videos, sondern kann die Darstellung auf ein Minimum reduzieren. Eine stumme Animation, die keine großen Abmessungen hat, nicht länger als ein paar Sekunden dauert und nur als Veranschaulichung neben einem erklärenden Text steht, ist vollkommen ausreichend. Wer schon durch den Text das erklärte Konzept versteht, muss die Animation gar nicht beachten und wer sie sich ansieht, verliert auch nicht viel Zeit dadurch.

Wichtig ist, dass solche Animationen trotz ihrer Kürze über Basis-Steuerelemente verfügen und nicht automatisch starten. Da Animationen Aufmerksamkeit auf sich ziehen, würde sonst nämlich das Lesen des Textes sehr erschwert werden.

Scrollt man auf einer Theorieseite bis ans Ende, findet man dort einen Link zu der zugehörigen Übung, falls eine solche existiert. Der Hyperlink ist dort angebracht, weil davon auszugehen ist, dass ein Lernender sich erst dann an einer Übung versuchen wird, wenn er das zugehörige Kapitel gelesen hat. Leute, die schon Erfahrung haben oder lieber erst mehrere Kapitel lesen, können stattdessen besser die Direktlinks auf der Übersichtsseite nutzen, da diese schneller erreichbar sind.

Diskussionsseite

Prototyp-Screenshot einer Diskussionsseite

Ähnlich wie bei Wikipedia verfügt in dem vorgestellten Lernprogramm jede Theorieseite über eine zugehörige Diskussionsseite, die durch eine eigene Registerkarte am oberen Seitenende erreicht werden kann.

Da viele Theorieseiten voraussichtlich nur sehr selten Fragen aufwerfen, wird schon im Reiter angezeigt, wie viele Beiträge auf der Diskussionsseite vorhanden sind. Gibt es noch keine Beiträge, weiß ein Lernender sofort, dass seine Frage dort noch nicht beantwortet wurde ohne die Diskussionsseite selbst aufrufen zu müssen. In vielen Fällen ist das sinnvoll – zum Beispiel wenn jemandem eine Frage nicht so wichtig ist, dass man sie selbst stellen möchte oder wenn jemand nur an einer Antwort interessiert ist, wenn auf diese nicht mehrere Stunden oder Tage gewartet werden muss. Umgekehrt ist eine große Anzahl an Diskussionsbeiträgen ein gutes Indiz dafür, dass ähnliche Probleme wie das eigene bereits ausführlich diskutiert wurden und man auf der Diskussionsseite nach einer passenden Antwort suchen kann.

Die Diskussion selbst wird in klassischer Baumstruktur für Foren abgebildet. Alle Fragen, die gestellt werden, sind in umgekehrt chronologischer Reihenfolge sortiert, sodass die neuesten Fragen ganz oben gelistet sind und man bei wiederholtem Besuch der Diskussion nicht nach unten scrollen muss, um herauszufinden, ob es neue Fragen gibt. Antworten auf diese Fragen oder andere Beiträge werden jeweils eingerückt dargestellt, sodass sich optisch nachvollziehen lässt, auf welchen Beitrag sich eine Antwort bezieht.

Am unteren Ende der Seite wird ein einfaches Textfeld angezeigt, in das man eine neue Frage eingeben kann. Die Position dieses Feldes ist bewusst am Seitenende gewählt, sodass man dazu motiviert ist erst in den bestehenden Beiträgen nachzusehen, ob die eigene Frage schon beantwortet wurde. Eventuell stößt man dabei auch auf andere Fragen, die man wiederum selbst beantworten kann. Sind dagegen noch keine Diskussionsbeiträge vorhanden, lädt das Textfeld als einziges Seitenelement dazu ein, die erste Frage zu stellen.

Jeder Beitrag verfügt über einen Link, der es ermöglicht eine Antwort darauf zu verfassen. Klickt man diesen an, öffnet sich direkt unter dem entsprechenden Beitrag ein Textfeld, in welches man seine Antwort schreiben kann.

Diskussionsseiten stellen – wie in einem vorangegangenem Kapitel schon erwähnt – die einzige Kommunikationsform im System dar, weil abgesehen von einer Abschlussprüfung keine Präsenztermine vorgesehen sind. Da sich Lernende in E-Learning-Plattformen oft beobachtet fühlen und Angst haben eine ungeschickte Frage zu stellen, sollte aber schon bei Beginn der Lehrveranstaltung zum Senken der Hemmschwelle klar vermittelt werden, dass die Diskussionsseiten vor allem der gegenseitigen Hilfe dienen und von Tutoren betreut werden, die selbst Studenten sind. Ist das Lernprogramm unabhängig von einer Bildungseinrichtung für Interessierte frei zugänglich, sollte diese Hemmung von vornherein nicht im selben Ausmaß gegeben sein.

Um die Beiträge von Kollegen von denen geschulter Betreuer wie Tutoren unterscheiden zu können, wird neben deren Benutzernamen jeweils in Klammer ihr Status angezeigt.

Die Diskussionen sollen neben der Hilfestellung auch einen kleinen Anreiz zum Lernen darstellen. Da sonst kein Kontakt zu anderen Kursteilnehmern vorgesehen ist, muss man viel Eigenmotivation aufbringen, um sich durch das Lernprogramm zu arbeiten. Wenn man ein neues Theorie-Kapitel aufschlägt und sieht, dass Kollegen dort schon diskutiert haben, kann das zu dem Wunsch führen, eventuelle Rückstände aufzuholen, um mit den anderen Teilnehmern wieder gleichauf zu sein.

Übungsangabe

Prototyp-Screenshot einer Übungsangabe

Der wichtigste Teil des Lernprogrammes sind die Übungsbeispiele, da in diesen das vermittelte Wissen praktisch angewendet wird. Wie schon erwähnt gibt es zu den meisten Unterkapiteln jeweils ein praktisches Beispiel zu lösen. Zusätzlich gibt es zu jedem Diagrammtyp eine komplexe Abschlussübung, in die alles Gelernte aus den Unterkapiteln einfließt.

Die Beispiele innerhalb einer Kategorie bauen grundsätzlich aufeinander auf. Es kann also sein, dass eine Übung des vierten Kapitels zum Bestehen auch Wissen über etwas erfordert, was man bereits im zweiten Kapitel gelernt hat – trotzdem muss auch die Übung des zweiten Kapitels positiv absolviert werden, um die Lehrveranstaltung insgesamt positiv abzuschließen.

Grundsätzlich gibt es zu jedem Kapitel mehrere mögliche Übungsangaben, aus denen nach dem Zufallsprinzip eine ausgewählt wird. Schlägt der erste Lösungsversuch fehl, wird dem Lernenden danach eine andere Übung zugewiesen, damit er auch bei seinem neuen Versuch tatsächlich die erlernten Techniken anwendet und nicht nur die Auswertung auswendig lernt, die man nach einem fehlgeschlagenen Versuch erhält.

Um eine größtmögliche Praxisnähe zu erreichen, sind alle Übungen in einem einfachen UML-Editor zu lösen, der direkt in das Lernprogramm integriert ist. Oberhalb dieses Editors findet man die Angabe, was genau man umzusetzen hat.

Gemäß der unterschiedlichen Lernziele kann man hier zwischen zwei unterschiedlichen Arten von Übungen unterscheiden.

Zum einen gibt es Übungen, die – wie in der Abbildung dargestellt – mit einem leeren Bearbeitungsfeld beginnen. Der Lernende soll hier gemäß der in der Angabe beschriebenen Spezifikation ein Diagramm von Grund auf selbst erstellen.

Auf der anderen Seite soll Lernenden aber auch die Fähigkeit vermittelt werden Diagramme lesen und verändern zu können. Aus diesem Grund gibt es auch Übungen, in denen bereits ein Diagramm im Editor vorgegeben ist. Hierbei sind verschiedene Aufgabenstellungen möglich. Der Lernende kann aufgefordert werden, Fehler gemäß einer vorgegebenen Spezifikation oder logische Fehler zu finden und auszubessern, kann aber auch damit beauftragt werden ein bestehendes Diagramm zu erweitern oder an veränderte Spezifikationen anzupassen. Diese Aufgaben sind immer so gestaltet, dass das anzupassende Diagramm mehr Elemente enthält als man aus der Angabe herauslesen kann. Dadurch wird verhindert, dass Lernende statt Bestehendes zu interpretieren einfach alles Bestehende löschen und gemäß der Angabe neu erstellen.

Die Zufallsübungen werden vom Lernprogramm so selektiert, dass jeder Lernende zu jedem Diagrammtyp sowohl bestehende Diagramme zu verändern als auch neue Diagramme von Grund auf zu erstellen hat.

Das Hauptmenü bleibt auch während der Übung erhalten, sodass man in weiteren Browsertabs noch einmal die Theorie nachlesen kann, wenn man sich unsicher ist. Das entspricht zum einen dem Kontext in der Alltagspraxis und andererseits ließe sich das Nachlesen während der Übung auch gar nicht effektiv verhindern, da diese ohne persönliche Präsenz stattfindet.

Hat man eine Übung fertig bearbeitet, gelangt man über die Schaltfläche »Lösung abgeben« im Editor zur Auswertung.

Übungsauswertung

Prototyp-Screenshot einer Übungsauswertung

In der Lehrveranstaltung »Objektorientierte Modellierung« sind alle Übungs- und auch Testangaben so klar formuliert, dass die erwartete Lösung weitgehend eindeutig ist. Ähnlich müssen auch die Angaben in diesem Lernprogramm formuliert sein, damit die Übungen automatisch ausgewertet werden können. Dazu gehört zum Beispiel, dass bei mehreren Modellierungsmöglichkeiten vorgegeben wird, welche Strukur im Zweifelsfall verwendet werden soll.

Sind einzelne Teile dennoch auf verschiedene Art lösbar, kann für die entsprechende Übung auch definiert sein, dass unterschiedliche Lösungen als gültig gewertet werden.

Die Auswertungsseite ist in ihrer Grundstruktur ähnlich zu der ursprünglichen Angabe. Im unteren Bereich findet man den UML-Editor mit der bearbeiteten Aufgabe, die sich jetzt nicht mehr verändern lässt. Die ursprüngliche Schaltfläche »Übung abgeben« hat sich je nach Erfolg verändert – entweder zu »Neuer Versuch«, um sich an einem anderen Beispiel zu versuchen oder zu »nächstes Kapitel«, um zur nächsten Theorieseite zu gelangen.

Oberhalb des UML-Editors findet man Informationen, die sich nun auf drei Registerkarten verteilen.

Standardmäßig ist das Register »Auswertung« selektiert. Auf dieser Seite wird man textlich und bildlich (Haken oder Kreuz) darüber informiert, ob man die Übung bestanden hat oder ob man es erneut versuchen muss. Unter diesem Gesamtergebnis findet man eine Auflistung aller Fehler, die das Programm automatisch festgestellt hat. Angezeigt wird jeweils nur die Information zu einem einzelnen Fehler, weil zu diesem gleichzeitig auch im Diagramm in Warnfarben (um den Fehlercharakter zu unterstreichen) das betroffene Element hervorgehoben wird. Durch zwei Steuerelemente kann man einzeln durch alle Fehler vor- und zurücksteuern und sich diese anzeigen lassen.

Mögliche Fehler wären zum Beispiel falsch gewählte oder fehlende Strukturen. Fehler können im Programm mit unterschiedlicher Gewichtung hinterlegt sein, sodass nicht jede Kleinigkeit sofort zu einer Negativbewertung der gesamten Übung führt. Ohne eine solche Gewichtung wäre es beispielsweise ärgerlich, wenn ein aufwändiges Programm nur aufgrund eines einzelnen Attributes mit Tippfehler negativ bewertet würde.

Neben der Übungsauswertung bleibt auch weiterhin eine Registerkarte erhalten, auf der man sich die Angabe ansehen und damit eventuell begangene Fehler besser nachvollziehen kann.

Als dritte Registerkarte findet sich hier wie schon auf den Theorieseiten ein Link auf eine zugehörige Diskussionsseite. Vor der Auswertung war es natürlich noch nicht zielführend eine solche Diskussion zu dem Beispiel anzubieten, weil sie sonst sehr dazu motiviert hätte sich von anderen Diskutanten beeinflussen zu lassen statt die Übung selbständig zu lösen. Im Nachhinein ist eine Diskussion aber sehr sinnvoll, um ein besseres Verständnis für eventuell gemachte Fehler zu entwickeln. Da die Auswertung nämlich automatisiert erfolgt, kann es mitunter zu Fehlermeldungen kommen, die nicht ganz klar verständlich machen, worin genau der Fehler liegt. Es ist zu erwarten, dass sich in einigen Fällen ähnliche Situationen ergeben wie zum Beispiel bei der Validierung einer HTML-Seite, wo oft ein falsch gesetztes Zeichen zu einer Vielzahl an Folgefehlern führt. In solchen Fällen ist die Kommunikation mit anderen Teilnehmern oder Tutoren klar von Vorteil, um aus seinen Fehlern zu lernen.

Im Lernprogramm, wie es bisher vorgestellt wurde, hätte eine solche Diskussionsseite für ein seinzelnes Übungsbeispiel noch ein schwerwiegendes Problem: Durch den Umstand, dass einem bei einem nächsten Versuch ein neues Beispiel zugewiesen wird, wäre die alte Übungsangabe und damit auch die Diskussionsseite nicht mehr auffindbar und man könnte Antworten auf die eigenen Beiträge nicht mehr lesen.

Aus diesem Grund wird beim ersten Beitrag, den man irgendwo innerhalb des Lernsystems schreibt, automatisch ein zusätzlicher Punkt mit der Bezeichnung »Meine Diskussionen« im Hauptmenü angelegt. Sobald das passiert, wird man auch textlich noch einmal auf den neuen Menüpunkt hingewiesen. Der Punkt ist nicht von vornherein vorhanden, weil viele Lernende die Diskussionen nie nutzen werden und ihn deshalb als störend empfinden könnten.

Diese spezielle Diskussionsseite ist grundsätzlich genauso aufgebaut wie alle anderen, enthält aber nur jene Fragen, in denen man selbst einmal einen Beitrag geschrieben hat. Oberhalb jeder Frage befindet sich ein Hyperlink auf die ursprüngliche Diskussionsseite, von der aus man auch wieder zur zugehörigen Theorieseite oder Übungsangabe gelangt.