Skip to main content

Ouder/voogd — Online en live meekijken

Dit subdomein beschrijft hoe een ouder/voogd online gekoppelde kinderen ziet en live meekijkt met een actieve oefenrun. De meekijkfunctie is volledig read-only. De ouder/voogd kan de actuele voortgang volgen, door vragen bladeren en terugkeren naar de actuele livevraag, maar kan geen antwoord, score, voortgang, oefenstatus of resultaat wijzigen.

De server-side opgeslagen voortgang van de oefenrun blijft de bron van waarheid. SignalR of gelijkwaardige realtimecommunicatie is uitsluitend transport voor updates. Het starten en beëindigen van een live-meekijksessie wordt auditbaar vastgelegd via LiveViewAudit.

Usecases

UsecaseNaamOmschrijving
UC-OVG-LIVE-001Online kinderenoverzicht bekijkenToont gekoppelde kinderen met online- en oefenstatus.
UC-OVG-LIVE-002Live meekijken-beschikbaarheid bepalenBepaalt server-side of Kijk live mee beschikbaar is.
UC-OVG-LIVE-003Live meekijksessie startenStart een read-only live-meekijksessie en maakt LiveViewAudit aan.
UC-OVG-LIVE-004Live voortgang van kind volgenToont voortgangsupdates uit de opgeslagen oefenvoortgang.
UC-OVG-LIVE-005Door vragen bladeren tijdens live meekijkenLaat de ouder/voogd lokaal door vragen bladeren zonder de run te beïnvloeden.
UC-OVG-LIVE-006Terugkeren naar actuele live vraagZet de weergave terug naar de actuele livevraag.
UC-OVG-LIVE-007Live meekijksessie beëindigenBeëindigt een live-meekijksessie auditbaar en idempotent.
UC-OVG-LIVE-008Live verbinding verbroken afhandelenHandelt verbindingsverlies, herverbindingspogingen en veilige beëindiging af.

Relevante schermdocumentatie

SchermRelevantie
Ouder/voogd — OnlineHoofdingang voor online kinderen en live meekijken.
Ouder/voogd — Live meekijkweergaveRead-only weergave van actuele vraag, voortgang en vraaglijst.
Ouder/voogd — KinderenContext voor gekoppelde kinderen; relatievorming en kinddetails vallen buiten dit subdomein.
Generiek — Systeemnotificaties / PopupsAlleen relevant voor veilige feedback bij niet-beschikbaarheid, sessie-einde of verbindingsverlies.

Domeinafbakening

OnderdeelAfbakening
Leerling / Oefenen en voortgangDe leerlingflow schrijft antwoorden, voortgang, runstatus en resultaten. Ouder/voogd kijkt alleen mee.
Docent / Online en live meekijkenDe technische liveweergave kan gedeelde componenten gebruiken, maar docentautorisatie blijft beperkt tot docentcontext en niveauautorisaties.
Ouder/voogd / Kinderen en koppelingenBeheert overzicht, kindinformatie en ontkoppelen. Live meekijken gebruikt alleen de bestaande actieve ouder-/voogdrelatie.
Generiek / RelatiesRelatie-uitnodigingen, acceptatie en relatie-lifecycle blijven bronhoudend in het generieke relatiedomein.
Beheerder / Features en systeemnotificatiesDe sitebrede featuretoggle voor live meekijken wordt daar beheerd; ouder/voogd-usecases lezen alleen de actuele beschikbaarheid.

Uitgangspunten

OnderwerpRegel
AutorisatieEen actieve ouder-/voogdrelatie is vereist voor online inzage en live meekijken.
ContextDe ouder-/voogdcontext wordt server-side bepaald en mag niet uit clientstate worden afgeleid.
Scope van zichtbaarheidEen ouder/voogd mag live meekijken bij alle actieve oefeningen van gekoppelde kinderen, ongeacht welke docent de oefening heeft aangeboden.
Read-onlyDe ouder/voogd kan geen antwoord, score, voortgang, runstatus, oefenconfiguratie of resultaat wijzigen.
Bron van waarheidExerciseRuns en ExerciseRunProgress blijven leidend voor actuele voortgang en resultaten.
RealtimeSignalR transporteert updates; SignalR is geen opslaglaag en geen autorisatiebron.
AuditDaadwerkelijk gestarte live sessies worden vastgelegd via LiveViewAudit met rolcontext en snapshotnaam.
FeaturetoggleWanneer live meekijken sitebreed is uitgeschakeld, worden liveacties niet beschikbaar gemaakt.

Readmodel- en tellerdefinities

WaardeDefinitie
Online kindActief gekoppeld kind met een recente sessie of realtime aanwezigheid volgens het online-readmodel.
Actieve oefenrunNiet-afgeronde run waarbij het kind zich actueel in de oefencontext bevindt.
Live beschikbaarActieve ouder-/voogdrelatie, actieve live-feature en actieve oefenrun bij het gekoppelde kind.
Open live sessieLiveViewAudit-record met StartedAtUtc en zonder EndedAtUtc.
Beëindigde live sessieLiveViewAudit-record waarbij EndedAtUtc is gevuld.
Browse-modusLokale UI-stand waarin de meekijker een andere vraag bekijkt dan de actuele livevraag.
Live-modusUI-stand waarin de meekijker de actuele vraag volgt volgens server-side voortgang.

Bijzondere regels

  • Het openen van het online-overzicht start geen live-meekijksessie.
  • Het bepalen van livebeschikbaarheid maakt geen LiveViewAudit aan.
  • Een ouder/voogd zonder online kinderen ziet een geldige lege toestand.
  • Een gekoppeld kind dat online is maar niet oefent, krijgt geen actieve liveknop.
  • Een live-start herhaalt altijd de autorisatie en vertrouwt niet op een eerder getoonde knopstatus.
  • Gelijktijdige bevoegde meekijkers zijn toegestaan.
  • Verbindingsverlies, terugnavigeren, logout en run-einde beëindigen de meekijksessie zonder de oefenrun te wijzigen.
  • Het beëindigen van live meekijken is idempotent: een reeds beëindigde sessie wordt niet opnieuw beëindigd.
  • Popupteksten, knopteksten, inputlabels en themakeuzes worden niet in usecases gedupliceerd; usecases verwijzen alleen naar PopupKey.

Diagramgebruik

DiagramtypeToepassing binnen dit subdomein
State diagramAlleen inhoudelijk gebruikt bij de lifecycle van een daadwerkelijke live-meekijksessie of verbinding. Read-only overzichts- en beschikbaarheidsflows wijzigen geen persistent statusobject.
Decision flowGebruikt voor autorisatie, beschikbaarheid, live-start, browsegedrag, sessie-einde en reconnect-beslissingen.
Data lifecycle diagramGebruikt om te tonen welke bestaande brondata wordt gelezen en waar echte mutaties plaatsvinden, zoals LiveViewAudit.
Sequence diagrammenGebruikt voor interacties tussen ouder/voogd, frontend, backend, database en realtime service.