Requirements Specification

Overview

Problem Statement

The trainee landing page uses outdated code, which adds technical debt, and it doesn't focus on what trainees need when they sign in. Trainees spend too long on the landing page before getting into a course or seeing urgent items.

Goal

Show trainees what needs their attention and get them back into learning in one click. Success means a shorter time from sign-in to course launch and less time spent on the landing page.

Success Metrics

Metric Target How measured
Time to launch Reduced vs. baseline Timestamp: sign-in → course launch
Time to task Reduced vs. baseline Time on landing page before first action
Overdue required training Reduced vs. baseline % of assigned items completed after their due date

Out of Scope

  • Course player changes (other than resuming where the trainee left off).
  • Manager and administrator authoring tools for messages and assignments.
  • Full catalog search and browse pages.

Users

Persona Description Primary Need
Trainee Signs in to take assigned and self-enrolled training between other work Get back into a course quickly and not miss deadlines
Manager Assigns and recommends training to their team (secondary user) Make sure assigned training and updates are seen
System Administrator Runs the platform (secondary user) Communicate system events and required actions

Assumptions & Constraints

  • Assumptions:
    • Trainees are already signed in when they reach the landing page.
    • Course progress, due dates and credential expiry dates are available from existing data.
  • Constraints:
    • Must fit within the existing design system without new components where possible.
    • Must replace the outdated landing page code.
    • Must meet WCAG 2.1 AA.
  • Dependencies:
    • Course, enrollment and progress data.
    • Credential data.
    • Recommendation data (role-based and peer-based).
    • Course player support for resuming playback state.

User Stories

Epic A: Actionable Items & Compliance

US-01: See what needs my attention

As a trainee, I want urgent items shown at the top of the page, so that I don't miss due dates or let credentials expire.

Priority: Must

Acceptance Criteria

  • AC1: Given I have required training due soon, when I open the landing page, then it is shown with its due date.
  • AC2: Given I have required training due soon, when I open the landing page, then I have a quick action button to direct me where I can address it.
  • AC3: Given I have a certification expiring soon, when I open the landing page, then it is shown with how long until it expires.
  • AC4: Given I have a certification expiring soon, when I open the landing page, then I have a quick action button to direct me where I can address it.
  • AC5: Given there are urgent items, when I view the section, then I see a count of items due soon.
  • AC6: Given I have no urgent items, when I open the landing page, then the section is hidden or shows that I'm all caught up.

Epic B: Resume & Recently Active Courses

US-02: Resume my most recent course

As a trainee, I want to resume my most recent course in one click, so that I can pick up exactly where I left off.

Priority: Must

Acceptance Criteria

  • AC1: Given I have a course in progress, when I open the landing page, then my most recently active course is shown first under a continue section.
  • AC2: Given I select resume, when the course opens, then my scroll and video position are restored.
  • AC3 (error case): Given my saved position can't be restored, when the course opens, then it starts at the beginning of the last module I was in.

US-03: See my progress on active courses

As a trainee, I want clear progress on each active course card, so that I know how much is left.

Priority: Must

Acceptance Criteria

  • AC1: Given a course is in progress, when I view its card, then I see percent complete, modules completed out of total, and a marker for each module.
  • AC2: Given a course card, when I view it, then I see the course name, instructor, short description, estimated duration, module count, level and skills taught.

US-04: Tell assigned training from self-enrolled training

As a trainee, I want assigned and required courses clearly marked, so that I can prioritize what my manager or company requires.

Priority: Must

Acceptance Criteria

  • AC1: Given a course card, when I view it, then it has a badge for Assigned or Self-enrolled, and Required where it applies.
  • AC2: Given a course card, when I view it, then its status (Not started, In progress) is shown as a badge.
  • AC3: Given badges are shown, when read by a screen reader, then their meaning is announced as text, not color alone.

Epic C: Discovery & Credentials

As a trainee, I want recommendations based on my role and what my peers take, so that I can find useful courses without searching.

Priority: Should

Acceptance Criteria

  • AC1: Given recommendations exist, when I view recommended, then each course shows its level, duration, module count and skills.
  • AC2: Given a recommended course, when I select its action, then I can start it (assigned) or explore it (self-enroll).

US-06: See my certifications

As a trainee, I want to see my certifications, so that I know what I've earned and when it expires.

Priority: Should

Acceptance Criteria

  • AC1: Given I have earned certifications, when I view them, then each shows the date earned and the date it is valid until.

Epic D: Post-MVP

US-07: See announcements from managers and admins

As a trainee, I want to see system events and messages from my manager or admins, so that I don't miss important updates.

Priority: Could

Acceptance Criteria

  • AC1: Given an announcement is active, when I open the landing page, then it is shown without pushing urgent items out of view.

Non-Functional Requirements

ID Category Requirement Acceptance Criteria
NFR-01 Accessibility Meets WCAG 2.1 AA Passes WCAG audit with 0 critical issues
NFR-02 Performance Page loads quickly LCP < 2.5s on 4G
NFR-03 Maintainability Replaces outdated landing page code Built only from existing design system components; legacy landing page code removed
NFR-04 Responsive Works on desktop, tablet and phone Layout stacks to one column on narrow screens with no horizontal scroll
NFR-05 Browser support Latest 2 versions of major browsers Verified in Chrome, Safari, Firefox, Edge

Prioritized MVP List

The smallest set of stories that shortens time to launch and keeps trainees on track.

Rank ID Story Priority Why it's in MVP
1 US-02 Resume my most recent course Must Core job; directly reduces time to launch
2 US-01 See what needs my attention Must Prevents missed deadlines and expired credentials
3 US-03 See my progress on active courses Must Helps trainees choose what to work on next
4 US-04 Tell assigned training from self-enrolled training Must Needed for compliance priorities
5 US-06 See my certifications Should Low effort; supports compliance
6 US-05 See recommended courses Should Helps trainees with no active courses

Post-MVP Backlog

ID Story Priority Reason deferred
US-07 See announcements from managers and admins Could Needs authoring tools for managers and admins first

MVP Release Criteria

  • All Must stories meet their acceptance criteria
  • All NFRs pass
  • Product owner sign-off