Skip to content

画面設計: 管理者 試験成績管理・採点入力

関連: requirements.md F-A-05 / api.md §4 / data-model.md

スコープ

M1 は 紙試験の結果記録を主とする(F-A-05)。オンライン試験機能(F-A-05b)は Should で、本画面では項目としての切替のみ保持。

URL

  • /admin/exam — 試験一覧
  • /admin/exam/new — 作成
  • /admin/exam/:id — 詳細・採点
  • /admin/exam/:id/results — 結果一覧・入力

1. 一覧 /admin/exam

  • カラム:試験名/対象コホート/実施日/提出者数/平均/ステータス
  • 作成ボタン(TA 担当クラス/OA 自組織)
  • 検索・フィルタ

2. 作成 /admin/exam/new

  • 試験名、説明、対象コホート、実施日、満点
  • 採点方式(合計のみ/セクション別)
  • 表示制御:結果公開可否、公開日時

3. 詳細 /admin/exam/:id

  • メタ情報、対象学習者一覧、提出状況
  • タブ:
    • 受験者一覧・採点入力
    • 統計(平均、ヒストグラム、分布)
    • 問題別正答率(セクションごと)

4. 結果入力 /admin/exam/:id/results

  • インライン編集のテーブル(学習者 × 点数/セクション)
  • 一括 CSV インポート(書式テンプレート提供)
  • 保存時バリデーション(0-満点、必須欄)
  • 誤入力訂正履歴を監査ログに記録

API(api.md §4 の既存 POST /admin/exams / POST /admin/exams/:id/results を拡張・追補)

  • GET /admin/exams(追加)
  • POST /admin/exams(既存)
  • GET /admin/exams/:id(追加)
  • PATCH /admin/exams/:id(追加)
  • GET /admin/exams/:id/results(追加)
  • POST /admin/exams/:id/results(既存。個別・一括両対応)
  • PATCH /admin/exams/:id/results/:resultId(追加、訂正)

追加分は api.md の改訂 issue で正式に追補する(未追補は本書参照)。

データモデル追補

既存 Exam / ExamResult(data-model.md §1 一覧)に以下カラムを追補対象とする:

Exam

カラム備考
iduuidPK
cohort_iduuid対象コホート
nametext
descriptiontext
held_ondate実施日
total_pointsint満点
grading_modetexttotal_only / by_section
sectionsjsonb[{ id, name, maxPoints }, ...]by_section 時)
results_publicitytextprivate / after_date / immediate
published_attimestamptz公開日時

ExamResult

カラム備考
iduuidPK
exam_iduuidFK
user_iduuidFK
statustextpending / scored / absent
total_scoreint
section_scoresjsonb{ sectionId: score }by_section 時)
graded_byuuidFK → User
graded_attimestamptz

data-model.md 正式更新は別 issue で対応。

RBAC

  • TA:担当コホートの作成・採点
  • OA:自組織全試験の閲覧・編集・削除
  • TM:引継ぎ学習者の結果閲覧のみ
  • LR:自分の結果のみ閲覧(画面は /app/exam、別 issue)
  • EM:該当候補者の要約のみ(生点数は開示範囲に従う)
  • SA:集計のみ(/org/reports
  • SU:本画面不可

バリデーション・エッジ

  • 実施日未来:ステータス「予定」、採点不可
  • 未入力の学習者はステータス「未採点」
  • 点数が満点超過:422

文言

  • 成績は学習支援目的。賞罰的掲示は避ける
  • 公開時は学習者本人に通知

モック(M1)

  • 3 試験サンプル(予定/進行中/完了)
  • 採点入力 UI 動作(保存はモック)

未確定

  • F-A-05b(オンライン試験)の仕様:別 issue で設計
  • 試験問題プール管理(Exam ↔ QuestionBank)の有無

Internal — thriveJobs