View and Submit Assignment › Course Player
๐ŸŽฌ Simulate: Failure ยท AR-6 Reset
Exercise โ€” Data Visualization Overdue

Analyze the specified dataset and create a summary dashboard using Power BI or Tableau.

Max Score: 50 Due: 10 Mar 2026 (passed)
๐Ÿ“ Spec notes โ€” UC-LMS.09 / SCR-LMS.27 (fields, actions, requirements)
Identity
  • Screen: SCR-LMS.27 โ€” Course Player (Assignment: Submit / Closed / View Result modes)
  • Use case: UC-LMS.09 โ€” View and Submit Assignment
Brief description

Course content player page with 2 main sections โ€” sidebar (course structure + lesson status) and content area. When an Assignment-type lesson is selected, the system checks readiness/deadline/eligibility first (step 3), then renders 3 modes in the content area automatically based on status: Submit mode (assignment_view_mode=submit โ€” steps 4โ€“6, or resubmit via AF-1D.2A); Closed mode (assignment_view_mode=closed โ€” deadline passed and never submitted, per additional requirement #6, read-only notice, no form); View Result mode (assignment_view_mode=view โ€” AF-1D, read-only feedback panel). All 3 modes render in the same content area โ€” the sidebar remains visible.

Fields โ€” Sidebar
  • course_title โ€” text ยท Course.title ยท read-only ยท always
  • lesson_completion_pct โ€” number ยท Enrollment.lesson_completion_pct ยท read-only
  • lesson_title โ€” text ยท computed from CourseVersion.snapshot ยท read-only
  • lesson_status โ€” enum {completed, in_progress, not_started, locked} ยท LessonAttempt.completion_status
Fields โ€” Assignment detail (read-only, all modes)
  • assignment_max_grade_display โ€” number ยท Assignment.max_grade ยท visible when current_lesson_type=assignment
  • assignment_rubric โ€” textarea ยท Assignment.rubric ยท visible when rubric != null
Fields โ€” Assignment submission form (submit mode only)
  • submission_text_input โ€” textarea ยท editable ยท loads draft if exists ยท visible when assignment_view_mode=submit
  • submission_file_upload โ€” file ยท editable ยท visible when assignment_view_mode=submit
  • draft_saved_at โ€” datetime ยท read-only ยท visible when assignment_view_mode=submit && draft exists
  • submission_closed_notice "Submission Closed" โ€” text ยท fallback: "The submission deadline for this assignment has passed." ยท visible when assignment_view_mode=closed (new field โ€” 2026-07-12)
Fields โ€” Assignment feedback panel (view mode / AF-1D)
  • submission_content โ€” textarea ยท AssignmentSubmission.text_content (โš  pending /analyze-entities) ยท read-only
  • submission_files โ€” text ยท AssignmentSubmissionFile list ยท read-only
  • submission_status โ€” enum {pending_grade, graded}
  • submission_score โ€” number ยท AssignmentSubmission.score ยท visible when graded
  • submission_max_grade โ€” number ยท AssignmentSubmission.max_grade ยท visible when graded
  • submission_feedback โ€” textarea ยท AssignmentSubmission.feedback (โš  pending /analyze-entities) ยท visible when graded
Actions
  • select_lesson "Select lesson" โ€” enabled when lesson_status != locked ยท triggers UC-LMS.09-A-1D-2
  • view_my_score "My Score" โ€” always enabled ยท triggers UC-LMS.09-A-1A-1 โ†’ SCR-LMS.30
  • save_draft "Save Draft" โ€” enabled when assignment_view_mode=submit ยท inline auto-save (no UC step)
  • submit_assignment "Submit" โ€” enabled when submit mode && (text != '' || file != null) ยท triggers UC-LMS.09-M-5
  • resubmit_assignment "Resubmit" โ€” enabled when graded && allow_resubmit=true && !past_due ยท triggers UC-LMS.09-A-1D.2A-1
  • back_to_my_learning "Back to My Courses" โ€” always enabled โ†’ SCR-LMS.26
  • view_grade_result "View Grade Result" โ€” enabled when course_completed=true
  • view_certificate "View Certificate" โ€” enabled when course_completed=true && grade_finalized=true
Additional requirements
  1. Learners always see content in the CourseVersion bound to their Enrollment, even when a new version is published. [refs: SS-LMS.03]
  2. Locked lessons โ€” show a lock icon in the sidebar with a prerequisite message; selection is disabled.
  3. Completion banner appears immediately after criteria are met (UC-LMS.08 AF 8A); "View Certificate" button is disabled until grade is finalized. [refs: SS-LMS.01]
  4. Assignment content area switches automatically between 3 modes: Submit (not submitted / resubmit allowed and within deadline), Closed (never submitted and deadline passed โ€” read-only notice, no form), View Result (pending_grade / graded โ€” read-only feedback panel). All 3 render in the same content area; sidebar stays visible. (3rd "Closed mode" added 2026-07-12)
  5. "Discussion Board" button is shown in the sidebar only when has_forum=true.
Mode notes

Submit mode โ€” shown when not yet submitted and within deadline, or resubmission allowed (AF-1D.2A). Editable form; draft pre-loads if one was saved.

Closed mode โ€” shown when the deadline has passed and the learner never submitted. No submission form; read-only notice only. Corresponds to UC-LMS.09 additional requirement #6 (AF 1C was folded into this requirement on 2026-07-12 โ€” no longer a separate alternative flow).

View Result mode โ€” shown when status is pending_grade or graded (AF-1D). Read-only feedback panel; "Resubmit" button appears only when allow_resubmit=true and within deadline (AF-1D.2A).

โš  Open issues
  • Uploaded file size and type limits โ€” defined at Assignment level or global config?
  • Late submission grace period โ€” reject immediately, or accept with a "late" flag?
  • AssignmentSubmission.text_content and .feedback โ€” require /analyze-entities.
  • Group assignment โ€” not in scope for v1?
  • "Assignment not yet ready" (UC-LMS.09 additional requirement #5) has no dedicated screen state in SCR-LMS.27 โ€” assumed to block at the point of clicking "Submit" on SCR-LMS.26 (My Learning), before the Course Player loads. Confirm with stakeholders.