Author Course › Export as SCORM Package
Simulate: UC-CCM.08 ยท 2 scenarios
Introduction to Python Programming Draft v1 Published v1.0
Back
Course Outline
▼ Module 1: Getting Started
Lesson 1.1: What is Python?
Lesson 1.2: Installation & Setup
▼ Module 2: Core Concepts
Lesson 2.1: Variables & Types
Lesson 2.2: Control Flow
Lesson 2.3: Functions
► Module 3: Practical Projects
Select a module, lesson, or content item from the outline to start editing.

Screen Flow (UC-CCM.08):

click "Export as SCORM" โ†’ Export SCORM Dialog (embedded modal) AF-4A: cancel โ†’ Content Editor (SCR-CCM.02) Generate and Download โ†’ Content Editor + success toast (embedded, no page change)
Spec notes โ€” SCR-CCM.02 (UC-CCM.08)
Identity: UC-CCM.08 โ€” Export Course as SCORM Package ยท SCR-CCM.02 Content Editor (parent โ€” reused; full spec authored under UC-CCM.01)
Preconditions: User is logged in and has an active instructor account. User is the owner or a co-author of the course to be downloaded. The course is in draft or published status.
Trigger: User opens the Course Content Editor for the course they wish to download as SCORM.
SCR-CCM.02 fields shown in this context:
  • branch_title "Course title" โ€” text ยท read-only ยท always visible
  • draft_version_display "Draft Version" โ€” text ยท read-only ยท always visible (shown as "Draft v{N}")
  • published_version_display "Published Version" โ€” text ยท read-only ยท visible when the course has been approved at least once (shown as "Published v{X.Y}")
SCR-CCM.02 action relevant to this UC:
  • export_scorm "Export as SCORM" โ€” enabled when CoursePublishRequest.status in {draft, published} โ†’ opens SCR-CCM.15 dialog (main flow step 3)
Additional requirements (SCR-CCM.02, relevant to this UC):
  • Export as SCORM action is visible/enabled only when CoursePublishRequest.status โˆˆ {draft, published}. Hidden/disabled if status = pending_review / approved / rejected.
โ†ณ Embedded dialog: SCR-CCM.15 โ€” Export SCORM Dialog
Identity: SCR-CCM.15 Export SCORM Dialog ยท modal opened from SCR-CCM.02 toolbar
Brief description: Modal dialog opened from the Content Editor toolbar when an instructor clicks "Export as SCORM" โ€” displays snapshot info (read-only) + SCORM version selector + estimated size. Buttons: "Generate and Download" / "Cancel". After successful generation โ†’ trigger browser download + close dialog + toast in parent (SCR-CCM.02).
Fields:
  • snapshot_version_label "Snapshot version" โ€” text ยท read-only ยท always visible
  • snapshot_at "Saved at" โ€” datetime ยท read-only ยท always visible
  • estimated_package_size_mb "Estimated size (MB)" โ€” text ยท read-only ยท computed ยท always visible
  • error_message "Error message" โ€” text ยท read-only ยท visible when generation_error != null (not modeled as a distinct alternative flow in the current UC spec โ€” documented here, not demoed live)
  • scorm_version "SCORM standard" โ€” enum ยท required ยท one_of [1.2, 2004] ยท default "1.2"
Actions:
  • generate_and_download "Generate and Download" โ€” enabled when generation_state != generating โ†’ UC-CCM.08-M-4
  • cancel "Cancel" โ€” enabled when generation_state != generating โ†’ UC-CCM.08-A-4A-1
Additional requirements:
  • Error states are displayed inline within the dialog (dialog does not close automatically) โ€” covers missing snapshot / missing media (list displayed) / size exceeds limit / generation failure. [refs: SS-CCM.21, SS-CCM.22]
  • "Generate and Download" and "Cancel" buttons are disabled during generation โ€” prevents double-submit.
UC-CCM.08 additional requirements:
  • AR-3: The generated package must conform to the selected SCORM standard's file structure and include a supplementary data file (tvet-meta) for quizzes and assignments. [refs: SS-CCM.20]
  • AR-4: Package size must not exceed the limit (TBD โ€” confirmed at design phase). [refs: SS-CCM.21]
  • AR-5: Media completeness โ€” if any media item is missing, the download must be stopped; placeholder files must not be used. [refs: SS-CCM.22]
  • AR-6: Every download attempt (successful or failed) must be recorded โ€” history records cannot be edited or deleted. [refs: SS-CCM.23]
Postconditions (success): User receives the SCORM package file on their device (complete and conforming to the selected SCORM standard, including content, media, and quiz data); download history recorded (status "success"); course status unchanged (read-only operation).
Postconditions (failure): (AF-4A) No changes โ€” dialog closes, user returns to Content Editor, no download history recorded. (step 5) No file delivered; download history recorded (status "failed") with reason; course status unchanged.
Open issues (from open-issues.yaml):
  • OI-73 open โ€” Export of subscription/IP-restricted course: can a course with licensing/IP restrictions be downloaded? Confirmation needed from DTVE.
  • OI-72 resolved โ€” Cross-author course export scope.
  • OI-74 resolved โ€” Export-during-unpublish race condition.