# 課題の明白な手抜きを見抜く機能 (fs_moodle専用)

学生の提出物のオリジナリティを調べる機能です。

学生が提出する不適切な提出物には以下４段階のレベルを想定しています。

- レベル１：内容が完全に一致する提出物が複数存在する
- レベル２：内容が酷似した提出物が複数存在する
- レベル３：内容の一部が類似した提出物が複数存在する
- レベル４：内容が外部情報からのコピー＆ペーストである可能性のある提出物が存在する

提出される課題のファイルの種類はおおよそ以下のものが考えられます。

- プログラム等のソースリスト(TEXT)
- テキストファイルの自由記述文書 (TEXT)
- Word等のリッチな形式の自由記述文書(BINARY)
- WordやExcelなどのバイナリデータ(BINARY)
- 画像や音声などのマルチメディアデータ

現在、実装されている手抜きレベルはレベル１のチェックのみです。 つまりファイルの中身が完全に一致しているものを探し出してリストアップします。 ファイル形式はテキスト、バイナリで区別はありません。 なお、サーバの不可を考慮して、ファイルの厳密なチェック機能は該当する全てのファイルを相互にチェックすることは行っていません。 ファイルサイズ、SHA1ハッシュ値の二段階でグループ化したファイル群のうち、リストの一番上の(1)のファイルとそれ以外のファイルの一致のみをチェックしています。チェック自体はファイル内の情報の完全な一致のチェックを行っています。たとえ1byteでも内容が異なれば表の欄には"No"と表示されます。

ファイルをコピーして提出する学生は特定のグループを形成している確率が高いでしょう。 そのようなグループ（仲良しグループ）をリストアップする機能も持ちます。 ページ最下部にグループ毎に、ユーザID（ユーザ名ではありません）とフルネームをカンマ記号で区切ってリストアップします。 ブラウザ上でコピーして、表計算ソフトに貼り付けることで仲良しグループ（推定）のリストを作成できます。