Zum Ende der Metadaten springen
Zum Anfang der Metadaten

Der Einsatz von Variablen ermöglicht die Erstellung von dynamischen Aufgabentexten. Der Aufgabeninhalt kann dabei zufällig oder angepasst an den Nutzer, seine bisherigen Antworten und Bewertungen generiert werden. Zur Umsetzung werden zwei verschiedene Typen von Variablen im gleichnamigen Tab angeboten:

  • Vor Anzeige verarbeitete Variablen
    Die Pre-Variablen werden vor Anzeige der Aufgabe belegt und ermöglichen somit den Aufgabentext sowie die vorgegebenen und korrekten Antworten dynamisch anzupassen. Auf diese Weise können mit Hilfe von Platzhaltern Aufgabenschablonen definiert werden. Die Platzhalter werden pro Testdurchlauf auf Basis definierter Intervalle, Wertauswahllisten oder Berechnungsvorschriften durch konkrete Zufallswerten ersetzt. Für unterschiedliche Teilnehmer und Testdurchläufe entstehen somit verschiedene, aber gleichartige Testaufgaben.
  • Nach Abgabe verarbeitete Variablen
    Die Post-Variablen werden nach Beantwortung, Abgabe und automatischer Bewertung der Aufgabe belegt und ermöglichen somit Zugriff auf antwortspezifische Werte, wie die Lernerantwort oder Punkteinformationen. Auf diese Weise können adaptive Feedbackinhalte, Folgeversuche und Aufgabenserien erreicht werden. Mit Hilfe von Bedingungen und MAXIMA-Anweisungen können Lernerantworten analysiert und typische Fehler identifiziert werden. Auf diese kann durch entsprechendes Feedback oder angepasste Übungsaufgaben in Folge reagiert werden.

 

Tab Variablen

Vor Anzeige verarbeitete Variablen

Definieren Sie Variablen, welche vor der Anzeige der Aufgabe ermittelt werden, um in Ihren Aufgaben Zufallsparameter zu nutzen. Variablen werden in ONYX für alle Aufgabentypen unterstützt und bieten insbesondere für Berechnungsaufgaben vielfältige Möglichkeiten. Durch Variablen können Aufgabenschablonen erstellt werden, welche automatisch zur Testlaufzeit unbegrenzt viele, unterschiedliche Test- und Prüfungsdurchläufe ermöglichen.

Variablen verwenden

Beispiel "Transport" - Einsatz von Zufallsparametern

Als Beispiel wird eine typische Anwendungsaufgabe erstellt. Es soll der zurückgelegte Weg eines beliebigen Fahrzeugs auf Grundlage der Geschwindigkeit und der Zeit berechnet werden. Die Geschwindigkeit ist dabei abhängig vom Fahrzeugtyp.

Beispielaufgaben mit Variablen im Editor

Im Beispiel wird die Text-Variable {transport} zufällig mit einem der Werte "bike", "bus", "car" oder "train" initialisiert. Die Numerische Variable {speed} soll aus einem Wertebereich zufällig gesetzt werden. Dabei soll der Wertebereich für die Geschwindigkeit {speed} in Abhängigkeit von dem gewählten Fahrzeug {transport} gesetzt werden. Schließlich fährt im Allgemeinen ein "bike" langsamer, als ein "train".

 

Beispiel einer Bedingung im Editor Beispiel einer weiteren Bedingung im Editor

Zur abhängigen Wertsetzung nutzen wir die Variablen-Bedingung. In der Bedingung können wir in Abhängigkeit von dem gewählten Wert der Variable {transport} den Wertebereich für die Variable {speed} definieren. Für das Fahrrad ({transport}="bike") wird auf diese Weise ein Wertebereich von 10 bis 30 (km/h) gesetzt.
Variablen in der Aufgabenstellung nutzen

Die gegebenen Werte der Aufgabe werden in den Aufgabentext durch Angabe des Variablen-Namens ({transport}, {speed} und {hours}) eingebunden. Im Beispiel wird die Variable in eine Aufgabe von Typ Berechnung (Lückentext) eingebunden.

An die Lücke wird die Variable mit der korrekten Lösung {distance} gebunden.

 

Beispielaufgabe im TestrunFür den Testdurchlauf wird für jeden Teilnehmer und jeden Versuch zufällig einer der definierten Werte ausgewählt. Im Beispiel wurde zufällig der Wert "bike" eingesetzt und damit eine Geschwindigkeit im Wertebereich von 10 bis 30 (km/h) gewählt.

Nach Abgabe verarbeitete Variablen

Definieren Sie Variablen, welche nach Abgabe der Aufgabe ermittelt werden, um adaptive Aufgaben- und Testszenarien zu erstellen. Nach Abgabe verarbeitete Variablen (kurz: Post-Variablen) ermöglichen Ihnen den Zugriff auf die gegebenen Lernerantworten und erreichten Punkte. Sie können nachfolgende Inhalte wie Feedbacktexte oder den Aufgabentext von Folgeversuchen auf dieser Basis anpassen. Darüber hinaus ist es möglich in die Bewertung einzugreifen und diese individuell nachträglich zu ändern.

Nutzerlösung einer Beispielaufgabe Nutzung einer Post-Variable im Feedback Nutzung einer Post-Variable Lösungshinweis

Beispiel "Transport" - Adaptives Aufgabenfeedback

Adaptives Feedback ermöglicht ein individuelles Feedback auf Basis der eingegebenen Lernerantwort. Dem Teilnehmer können so konkrete Lösungs- oder Fehlerhinweise im Bezug zu seiner eingegebenen Lösung gegeben werden. Die Post-Variablen (Nach Abgabe verarbeitete Variablen) ermöglichen einen Zugriff auf die Lernerantwort bspw. jeder Lücke. Zusätzlich können die Anzahl der Lösungsversuche oder auch vorangegangene Antworten in das Feedback einbezogen werden.

Folgend wird das Beispiel "Transport" um ein einfaches adaptives Feedback ergänzt. Das Feedback soll dem Nutzer einen Hinweis geben, ob seine Antwort kleiner oder größer als die korrekte Lösung war und bei einer falschen Antwort einen Hinweis geben, wie die korrekte Lösung berechnet wird.

Postvariablen und Bedingungen im Editor

Im ersten Schritt wird im Tab Variablen die Text-Variable {div} in einer Bedingung, abhängig davon ob die eingegebene Lerneranwort kleiner oder größer als die korrekte Antwort ist, auf den Wert "less" oder "more" gesetzt.

Zusätzlich wird sich die Lernerantwort in einer Numerische Variable {answer} gespeichert, um auf diese im Feedback auf einfache Weise zugreifen zu können.

 

Nutzung von Post-Variablen im Feedback

Im zweiten Schritt werden die konkreten Feedbacktexte für die Aufgabe hinterlegt. Dem Teilnehmer soll das Feedback nur angezeigt werden, wenn er die Aufgabe falsch beantwortet hat. Hierfür wird im Tab Feedback das allgemeine Feedback "Aufgabe falsch beanwortet" genutzt. Weitere Informationen zum Aufgabenfeedback erhalten Sie auf der Seite Feedback festlegen.

Die individuellen Feedbacktexte und -werte, welche in den Variablen gespeichert wurden, werden durch Angabe des Variablen-Namens ({div}, {answer}) in den Feedbacktext eingebunden.

Weitere Feedbackblöcke können beispielsweise als individuelles Feedback hinzugefügt werden. Für das Beispiel wurde zusätzlich noch ein Lösungshinweis als Feedback hinterlegt, welcher unabhängig von der Lernerantwort immer angezeigt wird. Im Feedback können ebenso detaillierte Musterlösungen und -rechnungen angezeigt werden. Für Aufgaben mit Zufallsparameter können in das Feedback hierfür die vor Anzeige berechneten Variablen eingebunden werden.

Feedback mit Post-Variablen im Testrun

Da die Aufgabe Zufallsparameter enthält werden für jeden Testdurchlauf und Teilnehmer andere Aufgabenwerte angezeigt. Entsprechend der definierten Inhalte wird dem Teilnehmer nun zusätzlich ein individuelles Feedback auf Basis seiner gegebenen Antwort angezeigt.

Sie können die Zufallsparameter einer Aufgabe für weitere Aufgaben-Lösungsversuch beibehalten oder neu ermitteln. Weitere Informationen finden Sie im Abschnitt "Variablen zurücksetzen" auf der Seite Test-Optionen festlegen.

Beispiel "Transport" - Punktabzug pro Lösungsversuch

Stehen dem Teilnehmer mehrere Lösungsversuche zur Verfügung, kann durch individuelle und aufbauende Lösungshinweise eine Hilfestellung zur Aufgabenbearbeitung gegeben werden. Insbesondere in diesen Szenarien kann es gewünscht sein, dass dem Teilnehmer pro Lösungsversuch Punkte abgezogen werden. Ein Teilnehmer, welcher die Aufgabe ohne Lösungsversuche löst erhält die volle Punktzahl. Je mehr Lösungshinweise mit jedem Versuch benötigt werden, um so weniger Punkte erhält der Teilnehmer.

Nachfolgend soll für das Beispiel "Transport" ein Punktabzug pro Lösungsversuch mit Hilfe von Variablen realisiert werden. Dafür wird die maximal mögliche Punktzahl der Aufgabe auf 10 Punkte erhöht. Pro benötigten Lösungsversuch soll die erreichte Punktzahl um einen Punkt reduziert werden. Der Punktabzug erfolgt pro Aufgaben-Lösungsversuch innerhalb eines Testdurchlaufs. Die Anzahl der Testversuche wird nicht berücksichtigt. Um dem Teilnehmer den Punktabzug anzuzeigen werden entsprechende Textbausteine in die Aufgabenstellung und das Feedback eingebaut.

Ansicht der Variablen zum Punktabzug in der  Beispielaufgabe

Zur Umsetzung werden folgende Variablen definiert:

  • Die Numerische Variable {deduction_attempt} speichert der Punktabzug pro Versuch.
    Im Beispiel soll die Gesamtpunktzahl um einen Punkt reduziert werden. Daher wird {deduction_attempt} auf den statischen Wert 1 gesetzt.
    Da es sich um einen statischen Wert handelt, kann dieser als Pre-Variable (Vor Anzeige verarbeitete Variable) angelegt werden.
  • Die Numerische Variable {deduction} speichert den aktuellen Punktabzug in Abhängigkeit vom Lösungsversuch.
    Der Punktabzug {deduction} berechnet sich als Produkt aus der Anzahl der bisherigen Lösungsversuche (Systemvariable NUMATTEMPTS) und dem Punktabzug pro Versuch {deduction_attempt}.
    Da es sich um einen pro Lösungsversuch berechneten Wert handelt, muss dieser als Post-Variable (Nach Abgabe verarbeitet Variable) berechnet werden.

Zusätzlich muss die Punktzahl der Aufgabe entsprechend des Punktabzugs durch Setzen der Systemvariable SCORE neu berechnet und durch den Autor explizit werden. Hierzu wird eine neue Bedingung definiert: Wenn der Punktabzug größer 0 ist, wird die Punktzahl der Aufgabe um den aktuellen Punktabzug minimiert.

Hinweis: Zur Vereinfachung wurden im abgebildeten Screenshot alle Variablen zur Generierung der allgemeinen Aufgaben- und Feedbackinhalte ausgeblendet.

Hinweis in der Aufgabenstellung:

Hinweis zum Punktabzug in der Aufgabenstellung der Aufgabe

Hinweis als individuelles Feedback:

Hinweis als individuelles Feedback

Um dem Lerner den Punktabzug kenntlich zu machen, wird zum einen in die Aufgabenstellung ein genereller Hinweis zum Punktabzug eingefügt und zum anderen wird als Feedback ein individueller Hinweis eingebunden, wenn ein Punktabzug erfolgt ist.

 

Hinweis: Bitte beachten Sie, dass ein Punktabzug im Folgeversuch dazu führt, dass die Aufgabe nicht mehr als vollständig richtig gewertet wird, da die maximale Punktzahl nicht erreicht wurde. Dies hat Auswirkungen auf die Anzeige der erreichten Punkte (farbliche Kennzeichnung), sowie die Symbolik der Richtig/Falsch-Auswertung. Ebenso betroffen ist das allgemeine Aufgaben-Feedback, welches auf Basis der Bedingung ob der Teilnehmer die maximale Punktzahl der Aufgabe erreicht hat, gesteuert wird. Durch Nutzung des individuellen Feedbacks kann die Logik zur Anzeige der Feedbackinhalte individuell an die Aufgabe angepasst werden.

Beispielaufgabe in unterschiedlichen Versuchen

Entsprechend der Anzahl der notwendigen Lösungsversuche werden nun Punkte pro Lösungsversuch abgezogen:

  • Teilnehmer, welche im ersten Lösungsversuch die richtige Antwort eingeben, erhalten die volle Punktzahl.
  • Teilnehmer, welche in einem der Folgeversuche die richtige Antwort eingeben, erhalten Teilpunkte. Durch entsprechendes Feedback können diesen Teilnehmern individuelle Lösungshinweise und damit Unterstützung zur eigenständigen Weiterbearbeitung der Aufgabe gegeben werden.


Beispiel "Transport" - Wertung der maximal erreichten Punktzahl

Werden mehrere Lösungsversuche pro Aufgabe angeboten, kann es dazu kommen, dass ein Teilnehmer in Folgeversuchen weniger Punkte erreicht, als er bereits für einen vorangegangenen Versuch erhalten hat. Wenn gewünscht, kann sich die maximal erreichte Punktzahl über alle Antwortversuche gemerkt und für die Wertung genutzt werden. Der Teilnehmer sollte auh hier durch Hinweise entsprechend informiert werden und sowohl die Wertung des aktuellen Versuchs, als auch die maximale Wertung über alle Versuche angezeigt bekommen.

Folgend wird für das Beispiel "Transport" erläutert wie die Wertung der maximal erreichten Punktzahl realisiert werden kann.


Variablenbelegung zum Aufgabenbeispiel

Zur Umsetzung werden folgende Variablen definiert:

Die gesamte Umsetzung erfolgt durch Post-Variablen (Nach Abgabe verarbeitete Variablen), da u.a. auf die Wertung des aktuellen Lösungsversuches zugegriffen wird.
Hinweis: Zur Vereinfachung wurden im abgebildeten Screenshot alle anderen Variablen zur Generierung der Aufgaben- und Feedbackinhalte ausgeblendet.

  • Die Numerische Variable {best_score} speichert die maximal erreichte Punktzahl über alle Aufgabenversuche.
    Die Variable {best_score} wird ohne Wertsetzung initialisiert und später durch eine Bedingung gesteuert:
    • Beim ersten Lösungsversuch, ist {best_score} noch nicht initialisiert (NULL) und wird auf die aktuelle Punktzahl {current_score} gesetzt.
      Bedingung: IF best_score = NULL THEN best_score = Wert: current_score 
    • Für jeden folgenden Lösungsversuch wird geprüft, ob die aktuell erreichte Punktzahl {current_score} größer als die maximal erreichte Punktzahl {best_score} ist und nur in diesem Fall angepasst.
      Bedingung : IF current_score > best_score  THEN best_score = Wert: current_score
  • Die Numerische Variable {current_score} speichert die aktuell erreichte Punktzahl für den aktuellen Aufgabenversuch.
    Die aktuelle Punktzahl kann durch die Systemvariable SCORE ausgelesen werden. Da dieser Wert durch den Autor manuell verändert wird, soll der Wert in einer Variable zwischengespeichert werden. Dies ermöglicht in jedem Fall einen Zugriff auf die aktuell erreichte Punktzahl und beispielsweise die Ausgabe dieses Wertes in Hinweis- und Feedbacktexten.
    • Die Variable {current_score} wird mit jedem Versuch auf den Wert der Systemvariable SCORE gesetzt.
      Bedingung :  IF best_score = NULL THEN best_score = Wert: current_score
  • Die Numerische Variable {best_score_is_used} speichert ob die Aufgabenbewertung manuell geändert wurde
    Für das Beispiel soll dem Teilnehmer ein zusätzlicher Hinweis zur Bewertung angezeigt werden, wenn statt der aktuell erreichten Punktzahl die maximale Punktzahl für die Aufgabenbewertung genutzt wurde. Hierfür wird die Hilfsvariable {best_score_is_used} genutzt, welche auf den Wert 1 gesetzt wird, wenn die Aufgabenbewertung manuell geändert wurde.

    • Die Variable {best_score_is_used} wird auf den Wert 1 gesetzt, wenn die aktuellen Punkte kleiner der bisher maximal erreichten Punkte sind, ansonsten erhält die Variable den Wert 0.
      Bedingung : IF best_score > current_score THEN best_score_is_used = Wert: 1 ELSE best_score_is_used = Wert: 0

Hinweis in der Aufgabenstellung:

Hinweis zur Wertung in Aufgabenstellung

Um dem Lerner das aktuelle Wertungsverfahren zu erläutern, wird zum einen in die Aufgabenstellung ein genereller Hinweis zur Bewertung eingefügt. Zum anderen soll ein individuelles Feedback angezeigt werden, wenn die Aufgabenbewertung manuell geändert und auf die maximale Punktzahl gesetzt wurde.

 

 

Hinweis als individuelles Feedback:

Hinweistext in Aufgabenstellung einbetten

Zur Feedback-Steuerung wird auf die Hilfsvariable {best_score_is_used} zugegriffen und in Abhängigkeit von deren Wert (0 oder 1) ein individuelles Feedback für den Teilnehmer angezeigt. Das Feedback enthält einen Hinweis zur aktuellen Punktzahl {current_score}, sowie zur maximal erreichten {max_score}. Zusätzlich wird die Systemvariable MAXSCORE genutzt, um die maximal mögliche Punktzahl in den Hinweistext zu integrieren.

Sollte der Teilnehmer nun in einem Folgeversuch weniger Punkte erreichen, als er bereits in einem vorangegangenen Versuch erhalten hat, wird immer die maximale Punktzahl gewertet. Im abgebildeten Beispiel ist die Übungsaufgabe so konfiguriert, dass mit jedem Versuch neue Aufgabenwerte gesetzt werden. Der Teilnehmer hat die Aufgabe im zweiten Versuch bereits richtig gelöst und die volle Punktzahl erhalten. Im dritten Versuch erhält der Teilnehmer daher trotz falscher Antwort für die gesamte Aufgabe die volle Punktzahl. Zusätzlich wird dem Teilnehmer im Feedback angezeigt, dass er für den aktuellen Versuch 0 Punkte erhalten hat, aber die bisher maximal erreichte Punktzahl von 10 Punkten gewertet wird.

Diese Aufgabenbeispiel ist mit den voranbeschriebenen Anwendungsszenarien kombinierbar:

Definition einer Variable

Klicken Sie im Tab Variablen auf den Button Neue Variable hinzufügen, um eine neue Variable zu definieren. Die neue Variable wird direkt hinzugefügt und in der Übersichtstabelle angezeigt. Unterhalb öffnet sich für die neue Variable ein Bearbeitungsfenster.

Beispielaufgabe Wertung in unterschiedlichen Versuchen

Vergeben Sie einen eindeutigen Variablen-Namen für ihre Variable. Der Variablen-Name dient als Identifier und ermöglicht Ihnen die Nutzung der Variable im Aufgabentext. Bitte beachten Sie, dass im Variablen-Namen keine Umlaute, Sonder- und Leerzeichen verwendet werden dürfen. Die Groß- und Kleinschreibung muss beachtet werden. Wird eine Variable mit dem Namen "a" definiert, kann mit dem Platzhalter {a} darauf zugegriffen werden.

Wählen Sie den Variablen-Typ. Folgende Variablen-Typen werden bereitgestellt:

Abhängig vom gewählten Variablen-Typ stehen Ihnen unterschiedliche Möglichkeiten zur Wert-Ermittlung bereit:

  • Wert
  • Wertebereich
  • Zufällige Auswahl
  • Berechnung (MAXIMA)

Variablen können auch ohne Wert-Setzung angelegt werden, um den Wert beispielsweise später in Abhängigkeit anderer Variablen zu setzen (vgl. Bedingungen).

Verwendung von Variablen

Definierte Variablen können durch Angabe des Variablen-Namens in die Aufgabenstellung und in Antworttexte eingefügt werden. Ebenfalls ist die direkte Integration in LaTeX-Formeln möglich. Der definierte Variablenname muss in geschweiften Klammern stehen. ONYX erkennt automatisch, ob eine Variablen-Deklaration mit entsprechendem Namen vorliegt. Wird ein Bezeichner verwendet, der nicht definiert ist, wird dieser ignoriert und als Text ausgegeben.

Im Beispiel wurden die Variablen {VAR1}, {VAR2} und {VAR3} deklariert:

Einfügen von Variablen in den Aufgabentext

Definition einer Bedingung

Im Tab Variablen können Sie zudem Bedingungen verwenden. Eine Bedingung ermöglicht das Setzen eines Variablen-Wertes, abhängig von anderen Variablen-Werten.

Klicken Sie auf den Button  Neue Bedingung hinzufügen , um eine neue Bedingung zu definieren. Die neue Bedingung wird direkt hinzugefügt und in der Übersichtstabelle angezeigt. Unterhalb öffnet sich für die Bedingung ein Bearbeitungsfenster.

Eine neue Bedingung anlegen

Variablen können mit anderen Variablen gleichen Typs oder mit festen Werten verglichen werden. Die Vergleichsoperatoren richten sich nach dem Variablentyp. So können Sie beispielsweise prüfen, ob Werte gleich (=) oder ungleich (!=) zu einem anderen Wert sind.

Vergleichsoperatoren einer Bedingung

Bitte beachten Sie: Eine Variable die innerhalb einer Bedingung verwendet wird, muss vor der Bedingung initialisiert werden. Die in der Bedingung oder in der Anweisung verwendete Variable, muss als einzelne Variable vor der Bedingung hinzugefügt werden. Wird der Wert einer Variablen innerhalb einer oder mehrerer Bedingungen gesetzt, ist eine Wertsetzung für die Variable selbst nicht notwendig. Wählen Sie den leeren Eintrag in der Wert-Auswahlliste.

Sie können beliebig viele alternative Bedingungen (ELSE IF - Zweige) hinzufügen. In den Bedingungen können unterschiedliche Variablen gesetzt werden. Pro Bedingung kann im einfachen Modus nur eine Variable gesetzt werden. Für komplexere Regeln können Sie in den Expertenmodus wechseln. Eine detaillierte Beschreibung erhalten Sie in der Hilfe-Beschreibung zum Expertenmodus.

Expertenmodus (IMS QTI)

Die Variablen-Abbildung in den Test- und Aufgabeninhalten basiert auf dem Prinzip der Template-Declaration und dem Template-Processing der  IMS QTI 2.1 Spezifikation. Das Template-Processing von IMS QTI 2.1 bietet weitaus mehr Möglichkeiten zum Setzen von Variablen, insbesondere durch die Verschachtelung logischer Ausdrücke und Bedingungen. Die im Expertenmodus eingegebene Beschreibung wird direkt in das XML der Aufgabe, als einzelner Template-Processing-Ausdruck, übernommen.

Variable im Expertenmodus

Bitte beachten Sie, dass nach einer Änderung der eingegebenen Beschreibung im Expertenmodus, keine Möglichkeit besteht, in den einfachen Modus zurück zu wechseln.

Weitere Hinweise zur XML-Definition des Template-Processing erhalten Sie in der IMS QTI 2.1 Spezifikation. Aktuell unterstützt die ONYX Testsuite bereits ein weites Set der IMS QTI Expressions und Möglichkeiten. Bei Nutzung des Expertenmodus empfehlen wir dennoch eine genaue Prüfung zur korrekten Funktionsweise der Aufgabenvorlage.

Variablen-Belegung einsehen

Bei der Erprobung Ihrer Testinhalte können Sie die Variablen-Belegung in der Vorschau jederzeit einsehen. Ebenso stehen dem Betreuer oder Bewerter diese Detailinformationen in den Ergebniseinsichten zu Verfügung. Neben der Variablen-Belegung werden Ihnen auch Informationen zu den MAXIMA-Aufgaben und möglichen Systemfehlern angezeigt.

Detaillierte Informationen finden Sie in den jeweiligen Hilfeabschnitten zur Ergebniseinsicht für den Betreuer:

  • Keine Stichwörter