Learning

Working in Learning

Day-to-day workflows for operating Learning.

Daily Operating Model

Learning works best when teams treat the module record as the source of truth and use tasks, tickets, workflows, and reports as supporting surfaces. The flows below are the common day-to-day paths to validate during setup and train users on after go-live.

Flow 1: Create and publish a course

  1. Open Admin Courses and create a new course.
  2. Set category, instructor, tags, description, image, and visibility.
  3. Add course sections and content items.
  4. Create quizzes and questions when assessment is required.
  5. Preview the learner course page.
  6. Publish the course after content review.
  7. Enroll learners directly or through a learning path.
  8. Monitor CourseEnrollment and CourseProgress after launch.

Flow 2: Enroll and support learners

  1. Open Courses, Learning Paths, or Admin Enrollments.
  2. Assign learners to the course or learning path.
  3. Learners open My Courses and start lessons.
  4. Progress and LessonProgress update as content is completed.
  5. Quiz attempts capture scores and pass/fail outcomes.
  6. Issue certificates when completion criteria are met.
  7. Use My Progress and admin reports to find stuck learners.
  8. Create tasks or notifications for overdue required learning.

Flow 3: Import and run standards content

  1. Open Content Library and register the SCORM or standards-based package.
  2. Run the import job and resolve metadata errors.
  3. Attach the registered content to a course item.
  4. Learner launches the content from the course route.
  5. LearningLaunchSession and LearningAttempt track runtime activity.
  6. ScormRuntimeData and XapiStatement capture detailed progress.
  7. CanonicalLearningEvent normalizes raw runtime events for reporting.
  8. Review learner state projections before marking compliance complete.

Flow 4: Manage learning paths and portal

  1. Create a learning path and add ordered courses.
  2. Enroll learners or groups into the path.
  3. Review path progress and course completion dependencies.
  4. Update homepage configuration, pillars, testimonials, and platform stats.
  5. Audit inactive, outdated, or duplicate content.
  6. Collect course reviews and instructor feedback.
  7. Archive retired courses without deleting historical completions.
  8. Report completion by role, department, or compliance requirement.

Day-To-Day Controls

  • Start from the launchpad route, then use filters and saved views to focus on records needing action.
  • Use status fields and lifecycle actions instead of free-text notes for important state changes.
  • Attach documents, comments, or related records when a decision needs evidence.
  • Create tasks when work leaves the current owner or needs a due date.
  • Create tickets when the work is customer-facing or belongs in a support/service queue.
  • Use workflows for predictable notifications, approvals, escalations, and cross-module updates.
  • Use reports for recurring team reviews rather than exporting ad hoc lists every time.
  • Keep permissions tight enough that users see the records they need but not sensitive configuration.
  • Review rejected, cancelled, failed, or overdue records every week.
  • Keep integrations aligned with the same lifecycle users follow in the UI.

Exception Handling

  • If a record is stuck, check owner, status, required fields, approvals, and linked records before editing downstream data.
  • If a workflow did not run, confirm the event name, trigger filter, record permissions, and service-user access.
  • If reports look wrong, inspect whether the source record is draft, cancelled, archived, or missing a required dimension.
  • If an integration created bad data, fix the source mapping and then repair the affected records through supported actions.
  • If users cannot see a route, review launchpad access, module roles, page permissions, and tenant feature flags.
  • If a public or embedded route exposes too much, disable exposure first and then correct permissions or filters.
  • If two modules disagree, choose the module that owns the lifecycle as the source of truth and update the other from it.
  • If a record supports audit, void, archive, or cancel it instead of deleting it whenever possible.

Reporting Rhythm

  • Daily: review new, overdue, failed, rejected, and pending-approval records.
  • Weekly: review owner workload, aging, status changes, and recurring exceptions.
  • Monthly: review configuration, permissions, integration failures, and report definitions.
  • Quarterly: review whether custom pages, workflows, and API access still match real operating practice.
  • After major process changes: rerun one end-to-end flow with a pilot record before enabling it broadly.

Cross-Module Handoffs

  • To Base objects: pass stable identifiers, owner, status, dates, and any dimensions required for reports.
  • To tasks: include a precise action, due date, source record link, and escalation owner.
  • To tickets: include requester, priority, support context, and the module record link.
  • To workflows: prefer explicit create, update, approval, and status-change triggers.
  • To reports: keep dimensions consistent across records so dashboards can group accurately.
  • To integrations: use /reference/learning for namespace and intent details.