小論文(オート評定)の問題タイプ

小論文(オート評定)の問題タイプ
タイプ問題の種類
セット該当なし
ダウンロード https://github.com/gbateson/moodle-qtype_essayautograde
問題点 https://github.com/gbateson/moodle-qtype_essayautograde/issues
討論 https://moodle.org/mod/forum/discuss.php?d=221420
メンテナ ゴードンベイトソン

これはGitHubで現在ホストされているGordon Batesonによる素晴らしいEssay(自動評定)追加プラグインのドラフトです。

概要

小論文(自動採点)問題タイプを使用すると、小論文問題の解答に、次の1つ以上の解答の特性に基づいて自動的に生成される暫定評点を付けることができます。

  • 解答内の単語数
  • 解答の文字数
  • 解答内に1つ以上のターゲットフレーズが存在する

自動評点は後で教師によって上書きすることができます。

さらに、教師はノンリニア評定スキームを提供する評定バンドを設定できます。このようなスキームでは、授与される評点は、単語/文字数が減少する評定バンドの評点です。

サポートされているMoodleブランチ

3.0から3.5

利用可能な言語

英語、スペイン語、メキシコスペイン語

ダウンロード

インストール

(再)素晴らしい作文問題(自動採点)の問題を作成する

  • 合理的な問題名を書いてください(例: "Summer vacation essay writing")
  • 簡単な問題の場合は、問題テキストに次のように書いてください。
Write a short paragraph of 50 words or more about your summer vacation. Try to include the following phrases:
  First
  Next OR Then
  Finally OR In the end
You will get special bonus points, if you use ALL of the above phrases
  • 以下の一般的なフィードバックを入力してください。
You grade is generated automatically. Your teacher may change the grade later.
  • 正しい解答を得るには、次の複合フィードバックを入力してください。
Your essay has been marked as correct. Your teacher will review this mark later.
  • 部分的に正しい解答については、次の複合フィードバックを入力してください。
Good try. Please check to see if you have written enough words and include all the target phrases.
  • 誤った解答がある場合は、次の組み合わせたフィードバックを入力してください。
No essay was received. Please ask you teacher about how to input and submit an essay.
  • 次の解答テンプレートを入力してください。
Type your essay here.
  • オート評定の場合:
Enable automatic grading
Type of countable items: Words
Expected number of items: 50
Show student feedback to teachers and students
Show text statistics for Words, Unique words, long words and lexical density
  • 評定バンドを表示しない
  • 部分評定を表示する
Grade band [1] For 0 items award 0%
Grade band [2] For 50 or more items award 60%
  • ターゲットフレーズを表示しない
Target phrase [1] : If [First] is used, award [10% of the question grade.]
Target phrase [2] : If [Next OR Then] is used, award [10% of the question grade.]
Target phrase [1] : If [Finally] is used, award [10% of the question grade.]
Target phrase [1] : If [First AND (Next OR Then) AND Finally] is used, award [10% of the question grade.]
  • 変更内容を保存
  • それを試してみてください :)

さらに素晴らしい作文問題(オート評定)の問題を作成する

デモの作文問題を表示/非表示にするために、問題テキストを変更して非常に素晴らしい問題にすることができます。

今後のプラグインのバージョンでは、これを選択するための新しい機能があるでしょう。

注:以下の長くて一見複雑な指示はオプションです。それは少し複雑すぎるように思えるかもしれません、しかしあなたは本当にちょうど示されるように、コピーして貼り付ける必要があるだけです。そしてその結果は非常に素晴らしいものになります:-)間違いなく試す価値があります。


さらに素晴らしい作文問題を作成するには、問題テキストの中で、あなたはエディタの高度なツールボタン(AttoまたはTinyMCE)をクリックし、次に<>ボタンをクリックしてHTMLコードを表示し、入力(コピー/ペースト)する必要があります。すべてのシャドウブロック内の次のHTMLコード

 < p > Write a short paragraph of 50 words or more about your summer vacation . Try to include the following phrases :</ p >
< ul >
< li > First </ li >
< li > Next OR Then </ li >
< li > Finally OR In the end </ li >
</ ul >
< p class = "essayautograde_questiontext_lastline" > You will get special bonus points , if you use ALL of the above phrases </ p >
< script type = "text/javascript" >
//<![CDATA[
window . addEventListener ( "load" , function ( ) {
    if ( $ ( "body" ) . is ( "#page-mod-quiz-review" ) ) {
        $ ( ".essayautograde_questiontext_lastline" ) . each ( function ( ) {
            $ ( this ) . closest ( ".qtext" )
                   . next ( ".ablock" )
                   . find ( ".answer .qtype_essay_response" )
                   . css ( { "overflow" : "auto" , "max-width" : "640px" } ) ;
        } ) ;
    } else {
        var txt = "This summer vacation I went back to my hometown. " ;
        txt += "First, I visited my grandparents and told them about my life in Kochi. " ;
        txt += "Then, I went to a firework display near a large river. " ;
        txt += "There many people and lots of food stalls. The fireworks were amazing. " ;
        txt += "Finally, I went to a reunion with some of my old friends from high school." ;
        $ ( ".essayautograde_questiontext_lastline" ) . each ( function ( ) {
            if ( $ ( this ) . find ( ".cheat" ) . length == 0 ) {
                this . appendChild ( document . createTextNode ( " " ) ) ;
                var small = document . createElement ( "SMALL" ) ;
                small . style . fontWeight = "bold" ;
                small . style . color = "red" ;
                small . appendChild ( document . createTextNode ( "[Show example]" ) ) ;
                small . addEventListener ( "click" , function ( ) {
 
                    // Should we show or hide the example
                    if ( $ ( this ) . text ( ) . match ( 'Show' ) ) {
                        $ ( this ) . text ( $ ( this ) . text ( ) . replace ( "Show" , "Hide" ) ) ;
                        $ ( this ) . css ( "color" , "purple" ) ;
                        var newtxt = txt ;
                    } else {
                        $ ( this ) . text ( $ ( this ) . text ( ) . replace ( "Hide" , "Show" ) ) ;
                        $ ( this ) . css ( "color" , "red" ) ;
                        var newtxt = "" ;
                    }
 
                    // locate response element in DOM
                    var r = $ ( this ) . closest ( ".qtext" ) . next ( ".ablock" ) . find ( ".answer .qtype_essay_response" ) ;
                    var editor = null ;
                    if ( r . is ( "[name$='_answer']" ) ) {
                        // Plain text (i.e. no editor)
                        editor = r ;
                    } else {
                        // Atto
                        editor = r . find ( "[contenteditable=true]" ) ;
                        if ( editor . length == 0 ) {
                            // TinyMCE
                            editor = r . find ( "iframe" ) . contents ( ) . find ( "[contenteditable=true]" ) ;
                            if ( editor . length == 0 ) {
                                // Plain text editor
                                editor = r . find ( "[name$='_answer']" ) ;
                            }
                        }
                    }
 
                    if ( editor === null || editor . length == 0 ) {
                        return false ; // shouldn't happen !!
                    }
 
                    if ( editor . prop ( "tagName" ) == "TEXTAREA" ) {
                        editor . val ( newtxt ) . keyup ( ) ;
                    } else {
                        editor . text ( newtxt ) . keyup ( ) ;
                    }
                    return true ;
                } ) ;
                this . appendChild ( small ) ;
            }
        } ) ;
    }
} ) ;
// ]]>
</script> 


  • <>ボタンをもう一度クリックすると、通常の編集モードに戻ります。
  • 問題の新しいバージョンを保存する
  • 試してみて、 'Show example'と 'Hide example'というテキストをクリックしてください。
  • 楽しい

画像

小論文(自動採点)問題タイプ画面01.png


小論文(自動採点)問題タイプ画面02.png


小論文(自動採点)問題タイプ画面03.png


小論文(自動採点)問題タイプ画面04.png


小論文(自動採点)問題タイプ画面05.png


作文問題(自動採点)問題タイプ画面06.png


関連情報

  • これらは非常に強力ですが、追加のプラグインを使用するのはより複雑です。
    • Preg question type - 学生の解答をチェックするために正規表現(regex)を使います(ただし、ヒント機能のためにregexを使わずに使うことができます)。
    • Regular Expression Short-Answer問題タイプ - 解答者が「未解決の」問題に単語または短いフレーズで答えることを期待します。ただし、RegExpシステムシステムを使用すると、より関連性の高い即時のフィードバックを提供することを目的として、学生の解答を分析するためのより強力なシステムにアクセスできます。
    • パターンマッチの問題タイプ - 学生は最大約20語の解答を与えることができます。その後、学生の解答をPMatch構文で表現されたさまざまなパターンと照合することによって自動的に採点することができます。最初の一致パターンはスコアとフィードバックを決定します。