Skip to main content

UC-OVG-FP-005 — Gecombineerde docent-ouder-frontpage tonen

1. Kerngegevens​

VeldWaarde
Usecase-IDUC-OVG-FP-005
NaamGecombineerde docent-ouder-frontpage tonen
DomeinOuder/voogd / Frontpage en context
Primaire actorOuder/voogd met docentrol
Secundaire actor(en)Frontend, backend, autorisatiecomponent, database
RolcontextActieve ouder-/voogdcontext; server-side bepaald vanuit de ingelogde gebruiker
Betrokken schermenGecombineerde frontpage Docent + Ouder/voogd
Gerelateerde usecasesUC-OVG-FP-001, UC-OVG-FP-002, UC-DOC-FP-005
Primaire entiteitenUsers, UserRoles, UserSettings, UserRelationships, TeacherLevels, ExerciseRuns
Secundaire entiteiten / eventsGecombineerd frontpage-readmodel; geen domeinevents
Gerelateerde popupsNiet van toepassing
PopupregisterOntwerpbronnen — Popup-register
MoSCoWShould

2. Omschrijving​

De usecase beschrijft de ouder-/voogdkant van een gecombineerde frontpage voor gebruikers met zowel Docent als Ouder/voogd. De pagina gebruikt één gezamenlijke intro en toont daarna eerst de docentblokken en vervolgens de ouder-/voogdblokken.

De gecombineerde frontpage is runtime samengesteld. Er wordt geen zelfstandig persistent frontpageontwerp per rolcombinatie beheerd en de gebruiker kan de volgorde niet vrij omdraaien.

Uitgangspunten

  • Gecombineerde Docent + Ouder/voogd-frontpage gebruikt één gezamenlijk introblok.
  • Docentblokken worden altijd vóór ouder-/voogdblokken getoond.
  • De volgorde is functioneel vast en niet gebruikersconfigureerbaar.
  • Er bestaat geen apart persistent frontpageontwerp voor elke rolcombinatie.
  • Een gecombineerde frontpage wijzigt geen autorisaties of relaties.

3. Scope​

Deze usecase beschrijft:

  • Samenstellen van één gecombineerde Docent + Ouder/voogd-frontpage.
  • Toepassen van vaste volgorde: docentblokken voor ouder-/voogdblokken.
  • Tonen van ouder-/voogdblokken Kinderenoverzicht en Resultatenoverzicht binnen de gecombineerde pagina.
  • Voorkomen van dubbele navigatie-items of dubbele introblokken.

Deze usecase beschrijft niet:

  • Docentfrontpage-blokken inhoudelijk bronhoudend beschrijven; dat hoort bij docent/frontpage-en-context.
  • Vrije pagebuilder of persistent ontwerp voor rolcombinaties.
  • Beheerdercombinaties; die volgen beheerderprioriteit.

3.1 Afbakening met aangrenzende domeinen​

OnderdeelAfbakening
Generiek / RelatiesRelatie-uitnodigingen, acceptatie en algemene relatievorming blijven bronhoudend in het generieke relatiedomein.
Generiek / BerichtenSysteemberichten en leesstatussen blijven bronhoudend in het centrale berichtendomein.
LeerlingDe leerling blijft eigenaar van eigen oefenuitvoering; ouder/voogd kan niet namens het kind oefenen.
DocentDocentautorisaties en docentresultaatinzage blijven begrensd door docentcontext; ouder-/voogdcontext gebruikt eigen relatiegrens.

4. Pre-condities​

IDWaarde
001De gebruiker is ingelogd.
002De gebruiker heeft actieve rollen Docent en Ouder/voogd.
003De gebruiker heeft geen leerlingrol.
004Onderliggende docent- en ouder-/voogdreadmodels zijn raadpleegbaar.

5. Post-condities​

IDWaarde
001De gecombineerde frontpage is getoond met één intro.
002Docentblokken staan boven ouder-/voogdblokken.
003Geen rolcontext, relatie of resultaat is gewijzigd.

6. Trigger​

De usecase start wanneer de ouder/voogd de betreffende ouder-/voogdroute opent of de beschreven actie uitvoert binnen de actieve ouder-/voogdcontext.

7. Normale processtroom​

StapActor / componentActieResultaatData / controle
1BackendLeest actieve rollenDocent + Ouder/voogd wordt vastgesteldUserRoles
2BackendControleert uitsluitingenGeen leerlingrol aanwezigRolregels
3BackendLaadt docentblokkenDocentreadmodel is beschikbaarDocentcontext
4BackendLaadt ouder-/voogdblokkenKinderen- en resultatenoverzicht zijn beschikbaarOuder-/voogdcontext
5BackendStelt pagina samenEén intro, daarna docent en ouder-/voogdVaste volgorde
6FrontendToont gecombineerde frontpagePagina is langer maar volledigViewmodel

7.1 Scherm- en routegedrag​

  • De pagina wordt opgebouwd als overzichts- en oriëntatiepagina, niet als mutatiepagina.
  • Blokken tonen compacte waarden en verwijzen naar onderliggende routes voor detailacties.
  • Bij lege of niet beschikbare data wordt een veilige lege staat getoond in plaats van gedeeltelijk ongeautoriseerde data.
  • De frontend mag visuele keuzes tonen, maar backendautorisatie bepaalt de dataset.

8. Alternatieve en exceptionele processtromen​

IDWaarde
001Docentcontext niet beschikbaar maar ouder-/voogdcontext wel: toon alleen toegestane ouder-/voogdweergave of veilige contextkeuze volgens routering.
002Ouder-/voogdcontext niet beschikbaar: toon docentweergave zonder ouder-/voogdblokken.
003Gebruiker heeft ook beheerderrol: beheerderprioriteit bepaalt de samengestelde frontpage op hoogste laag.
004Onderliggend blok heeft lege staat: het blok blijft op zijn positie maar toont veilige lege inhoud.

8.1 Afhandeling van verouderde of ongeldige clientstate​

  • De backend herhaalt de autorisatiecontrole bij iedere vervolgactie.
  • Oude selectie-, route- of browsercontext wordt genegeerd wanneer de actuele server-side context geen toegang meer geeft.
  • De frontend mag verouderde weergave herstellen door opnieuw het actuele viewmodel op te vragen.

9. Business rules​

IDWaarde
001Gecombineerde Docent + Ouder/voogd-frontpage gebruikt één gezamenlijk introblok.
002Docentblokken worden altijd vóór ouder-/voogdblokken getoond.
003De volgorde is functioneel vast en niet gebruikersconfigureerbaar.
004Er bestaat geen apart persistent frontpageontwerp voor elke rolcombinatie.
005Een gecombineerde frontpage wijzigt geen autorisaties of relaties.

9.1 Readmodel- en tellerdefinities​

WaardeDefinitieUitsluitingen / grenzen
IntroblokEenmalig samengesteld voor de gecombineerde rolweergave.Geen dubbele docent- en ouderintro.
BlokvolgordeDocentblokken eerst, daarna ouder-/voogdblokken.Volgorde is niet gebruikersconfigureerbaar.
Onderliggende scopesElk blok gebruikt eigen rolcontext en autorisatiegrens.Docentdata en ouderdata worden niet samengevoegd tot één domeinrecord.

9.2 Autorisatie- en privacygrenzen​

  • De zichtbare dataset wordt altijd server-side beperkt tot de actieve ouder-/voogdcontext.
  • Persoonsgegevens van kinderen worden alleen getoond zolang er een actieve ouder-/voogdrelatie bestaat.
  • Historische oefenresultaten worden gelezen binnen de toegestane context, maar niet gewijzigd door raadplegen of samenvatten.

10. Datavalidatie​

IDWaarde
001Beide rollen moeten actief zijn.
002Leerlingrol moet afwezig zijn.
003Elk blok moet server-side binnen zijn eigen context gefilterd worden.
004Dubbele intro- of navigatie-elementen moeten worden voorkomen.

11. Datamutaties en events​

IDWaarde
001Geen domeinmutaties.

12. Geen datamutaties​

IDWaarde
001UserRoles worden niet gewijzigd.
002Frontpagecontent wordt niet gewijzigd.
003UserSettings worden niet gewijzigd door de runtime-samenstelling.
004Onderliggende docent- of ouderdata wordt niet gewijzigd.

13. State diagram​

Niet van toepassing. Deze usecase wijzigt geen persistent statusobject. De gecombineerde frontpage is een runtime-samenstelling van onderliggende rolcontexten en wordt niet als zelfstandige rolcombinatiepagina opgeslagen.

14. Decision flow​

15. Data lifecycle diagram​

16. Sequence diagrammen​

17. Popupverwijzingen​

PopupKeyGebruikOpmerking
Niet van toepassingDeze usecase gebruikt geen popupregister-popup.Lege staten en inline meldingen zijn scherminhoud en geen popupdefinitie.

18. Afleiding naar Functioneel Ontwerp / Technisch Ontwerp / Software Requirements Specification​

AspectAfleiding
FO/TO/SRS-001Voor Docent + Ouder/voogd geldt één gecombineerde frontpage.
FO/TO/SRS-002De pagina toont eerst docentblokken en daarna ouder-/voogdblokken.
FO/TO/SRS-003Gecombineerde rolfrontpages worden runtime samengesteld uit basiscontexten.

19. SRS-trace​

Deze usecase bevat geen normatieve requirementtekst. De centrale eis en acceptatiecriteria staan in de SRS; onderstaande tabel koppelt de usecase-afleiding alleen aan centrale SRS-*- en AC-*-items.

Usecase-afleidingDektUsecasecontext
REQ-UC-OVG-FP-005-001SRS-AUTH-003
SRS-TCH-001
SRS-GUA-001
AC-AUTH-003
AC-TCH-001
AC-GUA-001
Bij Docent + Ouder/voogd één gezamenlijke intro tonen
REQ-UC-OVG-FP-005-002SRS-TCH-001
SRS-GUA-001
AC-TCH-001
AC-GUA-001
Docentblokken vóór ouder-/voogdblokken plaatsen
REQ-UC-OVG-FP-005-003SRS-LRN-009
SRS-GUA-001
AC-LRN-009
AC-GUA-001
Rolcombinatiefrontpages runtime samenstellen
REQ-UC-OVG-FP-005-004SRS-GUA-001
AC-GUA-001
Geen persistent ontwerp per rolcombinatie vereisen
REQ-UC-OVG-FP-005-005SRS-AUTH-001
SRS-GUA-001
AC-AUTH-001
AC-GUA-001
Elk blok afzonderlijk server-side autoriseren