A learning management system for Forvis Mazars — built so that a certificate means what it says. Every minute watched is verified on the server, every quiz is drawn fresh from a question pool, and every attempt is on the record.
The platform is built from five connected parts. Each is described in detail below, with the confirmed rules from your written answers of August 2026 built into the design.
Server-verified watch tracking. Free seeking within watched content, locked beyond it, auto-pause when the window loses focus.
Randomised multiple choice at 100% pass. Seven attempts, a 24-hour lock, one final attempt — then permanent lockout.
Nine confirmed breakdowns, clustered column charts, Excel export, and a monthly report the administrator downloads on demand.
A ten-question star-rating form per course. No trainee identity is ever shown to an administrator, in any view or export.
Up to four administrators. Course and video management, question pools, trainee accounts by admin creation or self-registration.
Both portals ship bilingual. Trainees and administrators switch language at any time; the choice persists to their account.
Most platforms record progress by asking the browser how far the trainee has watched. That is a claim, not evidence. This player reports watched intervals continuously, and the server merges them and refuses to mark a video complete unless the coverage is genuinely continuous from start to finish.
Illustrative prototype — shown for reference only. Final UI will be confirmed during Phase 02.
The rail is locked beyond the furthest point reached. Content never watched cannot be jumped past.
Within content already watched, trainees seek freely and rewatch as often as they wish.
If the training window is no longer the active screen, playback stops. Progress is saved at that point.
A session can be stopped and resumed any number of times. Long courses may be split across videos.
Seek-locking and watch verification are enforced on the server and are reliable. Auto-pause on focus loss is enforced in the browser and is best-effort — it stops the common case of a trainee leaving the video running in a background tab, but it cannot detect a second monitor or a trainee who leaves the room. We state this plainly so the control is not later mistaken for a guarantee of attention.
Every attempt draws a fresh set of multiple-choice questions from the course pool, so a retake is a genuine reassessment rather than a memory test. A pass requires every answer correct.
Illustrative prototype — shown for reference only. Final UI will be confirmed during Phase 02.
A certificate is issued automatically the moment both conditions are met — full video completion and a 100% quiz pass. Submitting the evaluation is not required.
Courses are versioned. If a video is replaced later, certificates already issued remain valid and continue to reference the version the trainee actually completed.
The dashboard is built to your confirmed list. It is a Power BI–styled dashboard built into the platform — not a Power BI integration, so it carries no Microsoft licensing cost on the Forvis Mazars side.
Illustrative prototype — shown for reference only. Final UI will be confirmed during Phase 02.
Administrators see both an aggregate view per course and each individual response, exactly as you asked. What they never see — in any screen, report, or Excel export — is which trainee wrote it. Responses are labelled Respondent 1, Respondent 2, and so on.
Upload and reorder videos, write the training page, manage the question pool, and preview the certificate — all from a single course screen. Up to four administrator accounts.
Illustrative prototype — shown for reference only. Final UI will be confirmed during Phase 02.
Upload, reorder, and replace. Long courses split across multiple videos in a fixed sequence.
All seven confirmed fields — description, standards date, duration, language, material and evaluation links, organiser message.
Write multiple-choice questions with four to five options. Set how many are drawn per attempt.
Created by an administrator or by self-registration. Assign courses individually or in bulk.
Every component below is a mature, widely deployed technology with a long support horizon. Nothing here is experimental. The result is a platform your IT team can assess quickly and maintain without specialist knowledge.
Argon2id password hashing, server-side sessions, and role checks on every request. Trainee and administrator boundaries are enforced on the server, never in the browser.
Your team asked what the maximum available storage is. There is no fixed ceiling — storage scales on demand and is inexpensive. The figure that actually matters for a video platform is monthly transfer, not capacity, which is why we recommend Cloudflare R2.
The full delivery scope, set out plainly. Every rule described here reflects the written confirmations provided by your training team, so what is built matches what was asked for.
| Capability | What is delivered |
|---|---|
| Administrator panel | Secure login and access management for up to four administrator accounts. Course and video management, question pools, trainee accounts, dashboard, and exports. |
| Trainee portal | Secure login, assigned course list, integrated video player, quiz, certificates, and evaluation forms. |
| Trainee accounts | Two onboarding paths — created by an administrator, or by self-registration. Courses assigned individually or in bulk. |
| Video management | Upload, reorder, and replace course videos. Courses may hold multiple videos in a fixed sequence, so long sessions can be split. |
| Anti-skip enforcement | Fast-forwarding into unwatched content is blocked. Free seeking within content already watched. Playback pauses automatically when the training window is no longer the active screen. Unlimited resumes. |
| Completion tracking | Watched intervals are verified on the server. A video is marked complete only when coverage is genuinely continuous from start to finish, across every video in the course. |
| Quiz engine | Multiple-choice questions with four to five options, drawn at random from a per-course pool for each attempt. Pass mark of 100%. No open-text answers. |
| Attempt and lockout rules | Seven attempts available immediately, then a 24-hour lock, then one final attempt. After eight attempts the course locks permanently, with administrator reset and an audit record. |
| E-certificate generation | Issued automatically on full video completion plus a 100% quiz pass. Carries course title, trainee name, training duration, and completion date. Evaluation submission is not required. |
| Certificate integrity | Courses are versioned. If a video is replaced later, certificates already issued remain valid and continue to reference the version the trainee completed. |
| Evaluation forms | Ten questions per course on a one-to-five scale. Administrators see aggregate results per course and each individual response, with trainee identity suppressed in every view and export. |
| Statistics dashboard | Registered trainees, completion rate, in progress, not started, and certificates issued — plus the nine confirmed breakdowns, presented with clustered column charts and filters. |
| Reporting and export | Excel export covering all nine breakdowns, and a monthly report the administrator downloads on demand. |
| Training page | Seven fields per course — description, effective date of the standards covered, duration, video language, link to training material, link to the evaluation form, and a message to the trainer or organiser. |
| Trainee messaging | Trainees leave messages about course content or technical issues. Administrators read and reply within the portal. |
| Bilingual interface | Both portals in English and Traditional Chinese throughout, with the language choice persisting to each account. |
| Deployment and hosting | Production environment setup, domain and email cutover, initial system configuration, administrator training, and documentation. |
| Post-launch support | Three months from go-live, covering defect resolution within the delivered scope. |
Stated plainly, so there is no ambiguity at delivery.
Each phase ends with something you can see and sign off. Nothing moves to the next stage until the previous one is agreed.
Support covers correcting faults in what has been delivered. It does not cover loading course content, writing quiz questions, or building new features — these can be scoped separately at any time.
Thank you for the detailed answers to our questions — they made it possible to scope this system precisely rather than approximately. We are ready to start whenever you are; reach out through any of the channels on the right.