What This Template Is For
Virtual classrooms are not video calls with a different label. A Zoom meeting and a virtual classroom share infrastructure, but the interaction model, feature priorities, and user expectations diverge significantly. Instructors need tools for real-time engagement: polls, breakout rooms, collaborative whiteboards, hand-raising, and content sharing that works without fumbling through screen share menus. Learners need a focused interface that minimizes distractions and makes participation frictionless.
This template helps product managers spec virtual classroom features for EdTech platforms, corporate LMS products, and online course providers. It covers the core feature set (video, audio, chat, screen share), engagement features (polls, quizzes, reactions), collaboration features (breakout rooms, whiteboards, co-annotation), and the recording and playback system. Use it to define requirements, write acceptance criteria, and align engineering and design around what "live learning" means in your product.
If you are planning the broader course structure that these live sessions fit into, start with the Course Design Template. For the engagement metrics you will track during live sessions, see the Learning Analytics Template. For general feature specification approaches, explore the product requirements document concept.
How to Use This Template
- Start with the Session Model. Define how live sessions fit into your product's learning experience.
- Spec the Core Infrastructure. Video, audio, screen share, and chat requirements.
- Define Engagement Features. Polls, quizzes, hand-raising, reactions, and attention tracking.
- Plan Collaboration Features. Breakout rooms, whiteboards, co-annotation, and file sharing.
- Spec Recording and Playback. What gets recorded, how it is processed, and how learners access it.
- Document Accessibility and Performance. Bandwidth requirements, device support, and accessibility compliance.
The Template
Section 1: Session Model
Define how virtual classroom sessions fit into your product.
- ☐ Specify session types (live lecture, seminar, workshop, office hours, study group, lab)
- ☐ Define participant roles (instructor, teaching assistant, learner, observer, guest)
- ☐ Set capacity limits per session type
- ☐ Document scheduling requirements (calendar integration, timezone handling, recurring sessions)
- ☐ Specify how sessions connect to the broader course structure (linked to module, standalone, on-demand)
| Session Type | Max Participants | Roles | Duration | Recording |
|---|---|---|---|---|
| Lecture | 500 | 1 instructor, N learners | 60-90 min | Auto-record |
| Seminar | 30 | 1 instructor, N learners | 45-60 min | Optional |
| Workshop | 20 | 1 instructor, 2 TAs, N learners | 90-120 min | Auto-record |
| Office Hours | 10 | 1 instructor, drop-in learners | 60 min | Not recorded |
| Study Group | 8 | Peer-only, no instructor | Flexible | Not recorded |
- ☐ Define the join experience (lobby, pre-session checklist, early join window)
- ☐ Specify the post-session flow (survey, next steps, recording availability)
Section 2: Core Infrastructure
Spec the foundational video, audio, and communication layer.
Video and Audio
- ☐ Define video quality tiers (720p standard, 1080p for instructor, adaptive bitrate)
- ☐ Specify the maximum simultaneous video feeds (instructor + N learners)
- ☐ Document audio requirements (echo cancellation, noise suppression, spatial audio for breakouts)
- ☐ Define the speaker detection and spotlight behavior
- ☐ Specify bandwidth requirements per quality tier
| Feature | Requirement | Acceptance Criteria |
|---|---|---|
| Video Quality | 720p minimum, 1080p instructor | Stable at 2 Mbps down, 1.5 Mbps up |
| Simultaneous Feeds | Instructor + up to 25 learner videos | No degradation up to 25 feeds |
| Audio | Echo cancellation, noise suppression | No echo in 2-person and 30-person rooms |
| Latency | < 300ms end-to-end | Measured P95 across session |
| Adaptive Bitrate | Auto-downgrades on poor connection | Drops to audio-only below 500 Kbps |
Screen Sharing
- ☐ Specify sharing options (full screen, application window, browser tab)
- ☐ Define who can share (instructor only, instructor + TAs, any participant with permission)
- ☐ Document annotation capabilities during screen share (draw, highlight, pointer)
- ☐ Specify the resolution and frame rate for shared content
Chat
- ☐ Define chat scope options (public to all, private to instructor, private DM)
- ☐ Specify moderation tools (mute participant chat, delete messages, slow mode)
- ☐ Document rich content support (links, code snippets, images, file attachments)
- ☐ Define chat persistence (available during session only, archived with recording, exportable)
Section 3: Engagement Features
Define the tools instructors use to keep learners actively participating.
Polling and Quizzes
- ☐ Specify poll types (multiple choice, true/false, word cloud, rating scale, open text)
- ☐ Define quiz capabilities (timed questions, auto-graded, score displayed)
- ☐ Document the instructor workflow for creating polls (pre-session prep vs live creation)
- ☐ Specify how results are displayed (real-time bar chart, after-close reveal, anonymous vs named)
Hand Raising and Reactions
- ☐ Define the hand-raise queue (FIFO, instructor-managed, auto-lower after speaking)
- ☐ Specify reaction types (thumbs up, clap, confused, speed up, slow down)
- ☐ Document how reactions are displayed (floating overlay, aggregated count, instructor-only view)
- ☐ Define the "agree/disagree" quick poll for informal temperature checks
Attention and Participation Tracking
- ☐ Specify what signals indicate active participation (video on, responding to polls, chat activity, tab focus)
- ☐ Define the instructor dashboard (who is engaged, who is idle, participation heatmap)
- ☐ Document privacy constraints (opt-in tracking, anonymized aggregates, no individual surveillance)
- ☐ Plan the participation score calculation and how it feeds into the gradebook
For understanding which engagement metrics matter most, the Learning Analytics Template covers the full metrics taxonomy for live learning sessions.
Section 4: Collaboration Features
Spec the features that enable interactive, hands-on learning.
Breakout Rooms
- ☐ Define room creation options (automatic random, manual assignment, learner self-select)
- ☐ Specify the instructor's ability to move between rooms, broadcast messages, and recall participants
- ☐ Document content sharing within breakout rooms (own whiteboard, own chat, shared files)
- ☐ Set time limits and auto-return behavior
- ☐ Specify the maximum number of simultaneous breakout rooms
| Feature | Specification |
|---|---|
| Room Creation | Auto-random, manual drag-drop, or learner self-select |
| Max Rooms | 50 simultaneous rooms |
| Instructor Access | Join any room, broadcast message to all rooms |
| Timer | Visible countdown, auto-return to main room |
| Persistence | Room assignments saved for recurring sessions |
Collaborative Whiteboard
- ☐ Define the drawing tools (pen, shapes, text, sticky notes, connector lines)
- ☐ Specify collaboration mode (real-time multi-user, turn-based, instructor-only with view)
- ☐ Document template support (pre-loaded diagrams, grids, frameworks)
- ☐ Define export options (PNG, PDF, shareable link)
- ☐ Specify undo/redo and version history
Co-Annotation
- ☐ Define annotation capabilities on shared content (highlight, draw, stamp, comment)
- ☐ Specify who can annotate (instructor only, all participants, permission-based)
- ☐ Document annotation persistence (live only, saved with recording, exportable)
Section 5: Recording and Playback
Spec the system that captures and delivers session recordings.
- ☐ Define what is recorded (video feeds, screen share, chat, whiteboard, polls)
- ☐ Specify the recording layout (speaker view, gallery view, content + speaker, switchable)
- ☐ Document processing requirements (transcription, chapter markers, searchable index)
- ☐ Define the playback experience (speed control, skip silence, jump to poll, jump to question)
- ☐ Specify storage and retention policies (how long recordings are kept, storage quotas)
| Recording Feature | Requirement |
|---|---|
| Auto-Record | Configurable per session type (default on for lectures) |
| Layout | Active speaker + content side-by-side, switchable in playback |
| Transcription | Auto-generated, editable by instructor, searchable |
| Chapter Markers | Auto-detect topic changes, manual markers by instructor |
| Availability | Within 2 hours of session end |
| Playback Speed | 0.5x, 1x, 1.25x, 1.5x, 2x |
| Retention | Configurable: 90 days default, unlimited for paid plans |
- ☐ Define access control for recordings (enrolled learners only, public, time-limited link)
- ☐ Plan for editing (trim start/end, remove segments, add instructor commentary)
Section 6: Instructor Tools
Define the instructor's control panel and preparation workflow.
- ☐ Spec the pre-session setup (upload slides, prepare polls, configure breakout rooms, test A/V)
- ☐ Define the live session control panel (participant list, mute controls, engagement dashboard, timer)
- ☐ Document the post-session summary (attendance report, participation scores, poll results, recording link)
- ☐ Specify the class roster integration (sync from LMS, automatic enrollment, waitlist management)
The instructor experience is where most virtual classroom products succeed or fail. For broader insights on designing tool experiences for professional users, the Product Strategy Handbook covers user workflow analysis in depth.
Section 7: Accessibility and Performance
Document the accessibility and technical requirements.
- ☐ Specify WCAG compliance level (AA minimum, AAA target)
- ☐ Define screen reader support for all interactive elements
- ☐ Document keyboard navigation for all features (join, mute, raise hand, chat, polls)
- ☐ Specify closed captioning (auto-generated real-time, manual, multi-language)
- ☐ Define minimum device requirements (OS versions, browser versions, mobile support)
| Requirement | Specification |
|---|---|
| WCAG Level | AA (AAA for captioning) |
| Screen Reader | Full support for NVDA, VoiceOver, JAWS |
| Keyboard Nav | All features accessible without mouse |
| Captions | Real-time auto-generated, < 3 second delay |
| Languages | Captioning in [X] languages |
| Mobile | iOS 15+, Android 12+, responsive web |
| Bandwidth | Audio-only fallback at < 500 Kbps |
- ☐ Plan for low-bandwidth environments (audio-only mode, reduced video quality, chat-only participation)
- ☐ Document the connection quality indicator shown to participants
Section 8: Integration Points
Define how the virtual classroom connects to the rest of your platform.
- ☐ Specify LMS integration (grade passback, attendance sync, assignment submission)
- ☐ Document calendar integration (Google Calendar, Outlook, iCal)
- ☐ Define single sign-on requirements (SAML, OAuth, LTI)
- ☐ Plan analytics data export (session data to your analytics pipeline)
- ☐ Specify third-party tool integration (Google Docs, Miro, Figma, code editors)
