Skip to main content

Ouder/voogd-frontpage en context

Dit subdomein beschrijft de usecases rond de ouder-/voogd-frontpage en de contextbepaling die nodig is om deze frontpage veilig en voorspelbaar samen te stellen.

De ouder-/voogd-frontpage is een overzichts- en oriëntatiepagina. De pagina toont compacte samenvattingsblokken voor gekoppelde kinderen en resultaten, maar voert geen detailacties uit waarvoor eerst een kind, resultaat, geschiedenisregel of live sessie gekozen moet worden. Zulke acties blijven onderdeel van de achterliggende ouder-/voogd-usecases.

Usecases

Usecase-IDNaamBestand
UC-OVG-FP-001Ouder-/voogd-frontpage bekijkenuc-ovg-fp-001_ouder-voogd-frontpage-bekijken
UC-OVG-FP-002Ouder-/voogdcontext bepalenuc-ovg-fp-002_ouder-voogdcontext-bepalen
UC-OVG-FP-003Kinderenoverzichtsamenvatting tonenuc-ovg-fp-003_kinderenoverzichtsamenvatting-tonen
UC-OVG-FP-004Resultatenoverzichtsamenvatting tonenuc-ovg-fp-004_resultatenoverzichtsamenvatting-tonen
UC-OVG-FP-005Gecombineerde docent-ouder-frontpage tonenuc-ovg-fp-005_gecombineerde-docent-ouder-frontpage-tonen

Relevante context

De ouder-/voogdnavigatie bevat onder meer Kinderen en Online. De frontpage vervangt deze routes niet, maar biedt een rustige startpagina met samenvattingen en oriëntatiepunten.

Een ouder/voogd mag gekoppelde kinderen ondersteunen, geschiedenis bekijken en live meekijken, maar kan geen oefeningen namens een kind starten of voortgang wijzigen. De zichtbare kinderen en resultaten worden altijd server-side afgeleid uit actieve ouder-/voogdrelaties.

Voor gecombineerde rollen geldt dat Ouder/voogd en Docent samen in één account mogen voorkomen. In dat geval wordt één gecombineerde frontpage getoond met één gezamenlijk introblok. Binnen die gecombineerde frontpage worden eerst de docentblokken getoond en daarna de ouder-/voogdblokken. Wanneer ook een beheerderrol aanwezig is, gelden de bredere prioriteitsregels waarbij beheerderblokken voor docentblokken komen.

Domeinafbakening

Dit subdomein omvat wel:

  • bepalen van de actieve ouder-/voogdcontext;
  • tonen van de ouder-/voogd-frontpage;
  • tonen van compacte samenvattingsblokken voor gekoppelde kinderen en resultaten;
  • samenstellen van een gecombineerde docent-ouder-frontpage;
  • veilig omgaan met lege of beperkte frontpagetoestanden;
  • verwijzen naar achterliggende routes zonder die routes opnieuw uit te werken.

Dit subdomein omvat niet:

  • aanmaken, accepteren, afwijzen of beëindigen van relaties;
  • beheren van berichten of systeemberichten;
  • openen van kinddetails;
  • tonen van volledige resultaten, geschiedenis of PDF-export;
  • starten of volgen van live meekijken;
  • uitvoeren van oefeningen namens een kind;
  • beheren van docent- of beheerderfunctionaliteit.

Hoofdobjecten en brondata

De frontpage gebruikt bestaande brondata, waaronder:

  • Users;
  • UserRoles;
  • Roles;
  • UserSettings;
  • UserRelationships;
  • ExerciseRuns;
  • Levels;
  • Categories;
  • Exercises;
  • SystemNotifications.

Er wordt geen aparte ouder-/voogd-frontpage-entiteit of frontpagecache als bron van waarheid geïntroduceerd. De frontpageweergave is een afgeleid readmodel.

Bijzondere regels

  • De ouder-/voogd-frontpage is read-only voor domeindata.
  • Alle samenvattingswaarden moeten eenduidig gedefinieerd zijn.
  • Een ouder/voogd ziet alleen kinderen met een actieve ouder-/voogdrelatie.
  • Beëindigde relaties, verlopen uitnodigingen en pending uitnodigingen tellen niet als actieve kindrelatie.
  • Een ouder/voogd ziet resultaten over alle niveaus van een actief gekoppeld kind.
  • Niet-afgeronde runs en docenttestruns tellen niet mee als afgeronde kindresultaten.
  • Clientstate mag nooit bepalen welke ouder-/voogdcontext of kindscope actief is.
  • Ouder-/voogd- en docentcontext blijven bij gecombineerde frontpages functioneel gescheiden.
  • Systeemnotificaties worden pas na normale frontpageload gecontroleerd.

Popupverwijzingen

Voor dit subdomein worden geen domeinspecifieke popupregister-popups gebruikt. Routeguardgedrag, lege toestanden en generieke foutafhandeling worden via componentgedrag of bestaande generieke flows verwerkt.

UsecasePopupKeyToelichting
UC-OVG-FP-001Niet van toepassingFrontpage bekijken gebruikt geen popupregister-popup.
UC-OVG-FP-002Niet van toepassingContextbepaling gebruikt routeguard- en toegangafhandeling.
UC-OVG-FP-003Niet van toepassingKinderenoverzichtsamenvatting gebruikt componentweergave en lege staten.
UC-OVG-FP-004Niet van toepassingResultatensamenvatting gebruikt componentweergave en lege staten.
UC-OVG-FP-005Niet van toepassingGecombineerde frontpage gebruikt runtime-samenstelling.

Teller- en readmodelregels

Regel-IDRegel
TR-001Een frontpagewaarde mag alleen worden getoond wanneer de bronrecords, statusvoorwaarden en contextfilters eenduidig zijn vastgelegd.
TR-002Alle kindgerelateerde aantallen worden beperkt tot de actuele ouder-/voogdcontext.
TR-003Soft-deactivated relaties, inactieve roltoekenningen en verlopen of afgehandelde uitnodigingen tellen niet als actieve context.
TR-004Pending uitnodigingen tellen niet als gekoppelde kinderen.
TR-005Resultatensamenvattingen tellen uitsluitend afgeronde, niet-test exercise runs van actief gekoppelde kinderen.
TR-006Een lege toestand is een geldige readmodeluitkomst en mag geen automatische herstel- of mutatieflow starten.
TR-007Een frontpage-readmodel is afgeleid en mag geen tweede bron van waarheid worden.
TR-008Gecombineerde frontpages worden runtime samengesteld en niet als losse rolcombinatiepagina opgeslagen.

Diagramgebruik

De individuele usecases gebruiken vooral decision flows, data lifecycle diagrams en sequence diagrams om contextcontrole, readmodelopbouw en routeguardgedrag te verduidelijken. State diagrams blijven beperkt tot de expliciete vaststelling dat deze frontpageflows geen persistent statusobject wijzigen.