Online leerlingen en live meekijken
Dit subdomein beschrijft de docentflows rond het bekijken van online leerlingen en het live meekijken met een actieve oefening van een leerling. De docent handelt altijd binnen een geldige docentcontext: er moet een actieve docent-leerlingrelatie bestaan en de oefening moet binnen een niveau vallen waarvoor de docent de leerling toegang heeft gegeven.
Live meekijken is nadrukkelijk alleen-lezen. De docent kan de oefening van de leerling niet pauzeren, beantwoorden, corrigeren of afronden. De leerling-oefenflows blijven bronhouder voor antwoordverwerking, voortgangsopslag, onderbreken en afronden. Dit subdomein gebruikt die voortgang uitsluitend als realtime weergavebron.
Usecase-overzicht
| Usecase-ID | Bestand | Korte beschrijving |
|---|---|---|
| UC-DOC-LIVE-001 | Online leerlingenoverzicht bekijken | Docent ziet welke gekoppelde leerlingen online zijn en welke oefencontext eventueel actief is. |
| UC-DOC-LIVE-002 | Live meekijken beschikbaarheid bepalen | Systeem bepaalt of de actie live meekijken beschikbaar, uitgeschakeld of geblokkeerd moet zijn. |
| UC-DOC-LIVE-003 | Live meekijksessie starten | Docent start een geautoriseerde live-meekijksessie voor één actieve leerlingrun. |
| UC-DOC-LIVE-004 | Live voortgang van leerling volgen | Docent volgt realtime de actuele voortgang van de leerling. |
| UC-DOC-LIVE-005 | Door vragen bladeren tijdens live meekijken | Docent bekijkt tijdelijk eerdere of toekomstige vragen zonder de leerlingrun te beïnvloeden. |
| UC-DOC-LIVE-006 | Terugkeren naar actuele live vraag | Docent keert vanuit browsemodus terug naar de actuele livevraag. |
| UC-DOC-LIVE-007 | Live meekijksessie beëindigen | Docent beëindigt de eigen meekijksessie; de leerlingrun blijft onaangetast. |
| UC-DOC-LIVE-008 | Live verbinding verbroken afhandelen | Systeem probeert de realtime verbinding te herstellen en handelt definitief verbindingsverlies veilig af. |
Relevante documentatie
| Documentatie | Relevantie |
|---|---|
| Schermdocumentatie docent Online | Bron voor de zichtbare online- en live-meekijkweergave. |
| Leerling oefenflows | Bron voor antwoordverwerking, server-side voortgang, onderbreken en afronden. |
| Docent leerlingen en autorisaties | Bron voor de vraag welke leerling en welk niveau binnen de docentcontext vallen. |
| Database-informatie | Bron voor LiveViewAudit, ExerciseRuns, voortgangsopslag en autorisatiemodellen. |
| FO/TO/SRS | Bron voor SignalR, realtime updates, live meekijkgrenzen en alleen-lezen gedrag. |
Domeinafbakening
Binnen dit subdomein vallen het online-overzicht, beschikbaarheidsbepaling, starten van live meekijken, volgen van voortgang, browsen door vragen, terugkeren naar de livevraag, beëindigen van een meekijksessie en foutafhandeling bij verbindingsverlies.
Buiten dit subdomein vallen het maken van oefeningen door leerlingen, geschiedenis en resultaten na afronding, relatiebeheer, niveauautorisaties beheren, accountbeheer en meldingen. Deze processen worden alleen aangeroepen of geraadpleegd wanneer dat nodig is voor autorisatie of vervolgroutering.
Belangrijke regels
- Een docent mag alleen live meekijken binnen de eigen docentcontext.
- Een docent mag alleen oefeningen volgen waarvoor de leerling via die docent en het betreffende niveau geautoriseerd is.
- Live meekijken is alleen-lezen en wijzigt geen antwoorden, scores of voortgang.
- Meerdere geautoriseerde meekijkers mogen tegelijk dezelfde actieve run volgen.
- Een beheerder mag niet vanuit beheercontext live meekijken.
- LiveViewAudit registreert meekijksessies op sessieniveau met start- en eindmoment.
- SignalR of een gelijkwaardig realtime-kanaal levert updates, maar is niet de persistente bron van waarheid.
- Bij verbindingsverlies worden maximaal vijf herverbindingspogingen uitgevoerd.
- Bij definitief verbroken verbinding wordt de liveweergave veilig beëindigd.
Diagramgebruik
De live-meekijkusecases gebruiken vooral sequence diagrams en decision flows, omdat interactie plaatsvindt tussen docent, frontend, backend, database, realtime-kanaal en leerlingrun. State diagrams worden alleen gebruikt wanneer een persistent statusobject geraakt wordt. Voor live meekijken is de toestand grotendeels sessie- en realtime-afgeleid; de persistente auditgrens ligt bij LiveViewAudit.