Skip to main content

UC-DOC-FP-003 — Leerlingenoverzichtsamenvatting tonen

1. Kerngegevens

VeldWaarde
Usecase-IDUC-DOC-FP-003
NaamLeerlingenoverzichtsamenvatting tonen
DomeinDocent / Frontpage en context
Primaire actorDocent
Secundaire actor(en)OefenHub frontend, OefenHub backend, database, leerlingen-readmodel, autorisatielaag
RolcontextIngelogde gebruiker met actieve docentcontext.
Betrokken schermenDocent-frontpage, blok Leerlingenoverzicht, navigatie naar leerlingenpagina.
Gerelateerde usecasesUC-DOC-FP-001 — Docent-frontpage bekijken; UC-DOC-FP-002 — Docentcontext bepalen; UC-DOC-LLN-001 — Leerlingenoverzicht bekijken; UC-DOC-LLN-004 — Niveau-autorisaties van leerling bekijken; UC-DOC-LLN-007 — Bulk-niveau-autorisaties beheren
Primaire entiteitenUsers, UserRelationships, TeacherStudentAuthorizations, TeacherLevels, RelationshipInvitations
Secundaire entiteiten / eventsleerlingensamenvatting-readmodel, veilige lege staat, routeverwijzing naar leerlingencontext
Gerelateerde popupsNiet van toepassing
PopupregisterNiet van toepassing
MoSCoWMust

2. Omschrijving

Deze usecase beschrijft hoe de docent-frontpage een compacte samenvatting toont van leerlingen binnen de actuele docentcontext. Het blok helpt de docent oriënteren op gekoppelde leerlingen en autorisatiestatus, zonder rechtstreeks autorisaties te wijzigen.

De samenvatting mag bijvoorbeeld aantallen tonen voor gekoppelde leerlingen, leerlingen met actieve niveauautorisaties en leerlingen die nog aandacht vragen. De exacte waarden moeten eenduidig uit bronrecords en statusfilters worden afgeleid.

Nog niet geaccepteerde uitnodigingen blijven onderdeel van het relatiedomein en worden niet als actieve leerlingen gepresenteerd. De frontpage mag hoogstens compacte contextinformatie tonen en verwijst voor details naar de reguliere leerlingenroute.

3. Scope

Deze usecase omvat wel:

  • tonen van compacte leerlinggerelateerde aantallen op de docent-frontpage
  • afleiden van aantallen binnen de actuele docentcontext
  • onderscheiden van actieve leerlingrelaties en openstaande uitnodigingscontext
  • tonen van een veilige lege staat wanneer er geen gekoppelde leerlingen zijn
  • verwijzen naar de reguliere leerlingenroute voor verdere acties
  • voorkomen dat de frontpage autorisaties wijzigt

Deze usecase omvat niet:

  • wijzigen van niveaukerngegevens, categorieën of oefeningen
  • toekennen of intrekken van niveau-autorisaties
  • openen van volledige leerlinggeschiedenis of resultaatdetails
  • starten van live meekijken of het tonen van live voortgang
  • beheer van relaties of uitnodigingen tussen docent en leerling
  • beheer van ouder-/voogdfunctionaliteit buiten de gecombineerde frontpageweergave
  • uitwerken van systeemnotificaties; die lopen via de generieke notificatie-usecases

DRY-afbakening: deze usecase beschrijft alleen de docent-frontpage- of contextlaag. De bronwaarheid voor leerlingenbeheer, oefenaanbodbeheer, live meekijken, relaties, profielinstellingen en systeemnotificaties blijft bij de daarvoor bedoelde usecases en ontwerpbronnen.

4. Pre-condities

IDVoorwaarde
PRE-001De docentcontext is server-side vastgesteld.
PRE-002De relevante relatie- en autorisatiegegevens zijn uitleesbaar.
PRE-003De betekenis van elk getoond aantal is eenduidig gedefinieerd.
PRE-004De frontpage is niet bedoeld voor mutaties aan leerlingautorisaties.

5. Post-condities

IDResultaat
POST-001De docent ziet alleen leerlinginformatie binnen de eigen docentcontext.
POST-002De frontpage heeft geen leerlingrelaties of niveauautorisaties aangemaakt of gewijzigd.
POST-003Nog niet geaccepteerde uitnodigingen zijn niet als actieve leerlingen geteld.
POST-004De docent kan via reguliere navigatie naar de leerlingenpagina doorgaan.

6. Trigger

De usecase start wanneer de docent-frontpage het blok Leerlingenoverzicht moet samenstellen.

7. Normale processtroom

StapActorScherm / componentActieSysteemresponsData / regel
1OefenHub backendDocentcontextOntvangt de vastgestelde docentcontext.Backend gebruikt alleen actuele server-side context.UC-DOC-FP-002.
2OefenHub backendRelatie-readmodelBepaalt actieve docent-leerlingrelaties.Alleen actieve relaties tellen mee als gekoppelde leerlingen.Geen open uitnodigingen als actieve leerling.
3OefenHub backendAutorisatie-readmodelBepaalt leerlingen met actieve niveauautorisaties.Teller wordt beperkt tot autorisaties van deze docentcontext.Geen informatie over andere docenten.
4OefenHub backendAutorisatie-readmodelBepaalt leerlingen zonder of met aandacht vragende autorisatie.Samenvatting kan aangeven dat opvolging nodig is.Geen mutatie.
5OefenHub backendFrontpage readmodelStelt compacte samenvatting samen.Alle waarden krijgen duidelijke betekenis.Geen aparte frontpagetabel.
6OefenHub frontendBlok LeerlingenoverzichtRendert de samenvatting.Docent ziet aantallen en vaste route naar leerlingenpagina.Geen directe autorisatieknoppen.
7DocentDocent-frontpageKiest eventueel vervolgroute.Systeem opent reguliere leerlingenroute.Vervolgflow buiten deze usecase.

8. Alternatieve en exceptionele processtromen

IDVanaf stapSituatieSysteemgedragPopup / meldingDatamutatie
ALT-0012Geen actieve docent-leerlingrelatiesBlok toont veilige lege staat.Componentmelding / lege staatGeen
ALT-0022Er zijn alleen pending uitnodigingenDeze worden niet als actieve leerlingen geteld.Componentmelding / toelichtingGeen
ALT-0033Leerlingen hebben geen actieve niveauautorisatieSamenvatting mag dit als aandachtspunt tonen.Componentmelding / tellerGeen
ALT-0045Tellerdefinitie kan niet eenduidig worden bepaaldWaarde wordt niet misleidend getoond; systeem gebruikt veilige foutafhandeling.Generieke foutafhandelingGeen

9. Business rules

IDRegel
BR-001De docent-frontpage is een overzichts- en oriëntatiepagina en geen beheer- of mutatiepagina.
BR-002Contextafhankelijke acties waarvoor eerst een leerling, niveau, categorie of oefening gekozen moet worden, starten niet als losse generieke frontpageactie.
BR-003Alle getoonde aantallen en samenvattingen worden server-side afgeleid uit bestaande brondata.
BR-004Clientstate, routeparameters of oude browsercontext mogen niet bepalen welke docentcontext actief is.
BR-005Systeemnotificaties blokkeren het laden van de frontpage niet en worden pas na normale weergave gecontroleerd.
BR-006De frontpage introduceert geen aparte frontpagecache als bron van waarheid.
BR-007Een gebruiker met de rol Leerling kan niet tegelijk docent zijn binnen dezelfde accountcontext.
BR-008Docent- en ouder-/voogdcontext mogen wel gecombineerd voorkomen en worden volgens vaste prioriteit samengesteld.
BR-009De specifieke flow UC-DOC-FP-003 mag alleen gegevens tonen of bepalen die binnen de actuele docent- of gecombineerde rolcontext vallen.
BR-010Lege staten mogen functioneel informatief zijn, maar mogen geen automatische domeinmutaties starten.
BR-011Vervolgacties vanaf de frontpage moeten opnieuw server-side worden gevalideerd op de doelroute.

10. Datavalidatie

Veld / objectValidatie
SessiegebruikerMoet server-side bekend, ingelogd en actief zijn.
RolcontextMoet worden afgeleid uit actieve UserRoles en Roles.
DocentcontextMag alleen actief zijn wanneer de gebruiker de actieve rol Docent bezit.
ClientstateMag alleen ondersteunend zijn en nooit als autorisatiebron gelden.
SamenvattingswaardenMoeten een eenduidige definitie hebben van bronrecords, statusvoorwaarden en contextfilters.
FrontpageweergaveMag geen gegevens tonen buiten de actuele docent- of gecombineerde rolcontext.
DocentfrontpageblokMoet alleen informatie tonen die als compacte samenvatting is toegestaan.
VervolgrouteMoet opnieuw via routeguard en autorisatielaag worden gecontroleerd.
Lege staatMoet duidelijk zijn en mag geen gegevens uit andere contexten tonen.

11. Datamutaties en events

Deze usecase toont een afgeleide leerlingenoverzichtsamenvatting. Er worden geen relaties, uitnodigingen, leerlingen of autorisaties gewijzigd.

OnderdeelGedrag
Gekoppelde leerlingenWorden geteld vanuit actieve docent-leerlingrelaties binnen de actuele docentcontext.
Actieve niveauautorisatiesWorden geteld op basis van bestaande autorisatierecords binnen dezelfde docentcontext.
Nog te autoriseren leerlingenWorden afgeleid uit actieve relaties zonder passende actieve niveauautorisatie volgens de tellerdefinitie.
Lege staatWordt als presentatietoestand getoond en veroorzaakt geen uitnodiging, relatie- of autorisatieflow.
DomeineventsNiet van toepassing; de samenvatting is readmodel- en presentatielogica.

12. Geen datamutaties

EntiteitReden
UsersDe frontpage- of contextflow wijzigt geen accountgegevens.
UserRolesRollen worden gelezen maar niet toegekend of ingetrokken.
RolesRoldefinities worden gelezen maar niet gewijzigd.
UserRelationshipsRelaties worden hoogstens gelezen voor context of samenvatting.
TeacherLevelsNiveaus worden gelezen of geteld, maar niet aangemaakt of gewijzigd.
TeacherLevelCategoriesCategorie-koppelingen worden gelezen of geteld, maar niet aangepast.
ExercisesOefeningen worden gelezen of geteld, maar niet geconfigureerd.
TeacherStudentAuthorizationsAutorisaties worden gelezen of geteld, maar niet aangepast.
SystemMessagesDeze usecase maakt geen systeemberichten aan.
SystemNotificationsSysteemnotificaties worden niet door deze usecase gemuteerd.

13. State diagram

Niet van toepassing als statusdiagram. De leerlingenoverzichtsamenvatting wijzigt geen persistente status van relaties, uitnodigingen of niveauautorisaties.

14. Decision flow

15. Data lifecycle diagram

16. Sequence diagrammen

16.1 Frontpage- of contextweergave

16.2 Vervolgroute vanaf frontpage

17. Popupverwijzingen

PopupKeyMomentDoel
Niet van toepassingGehele usecaseDeze frontpage- en contextafhandeling gebruikt routeguardgedrag, componentmeldingen, lege staten en bestaande generieke flows; er is geen domeinspecifieke popupregister-popup.

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

DoeldocumentAfleiding
Functioneel OntwerpBeschrijft het leerlingenoverzichtsblok als compacte frontpagesamenvatting zonder leerlingselectie of autorisatiemutatie.
Technisch OntwerpTechnisch Ontwerp: technische rolflows, readmodels en tellers en frontendcompositie beschrijven de technische uitwerking. Leg tellerdefinities vast voor gekoppelde leerlingen, leerlingen met actieve niveauautorisatie en leerlingen waarvoor actie nodig is.
Software Requirements SpecificationBeschrijft requirements voor contextgebonden tellingen, uitsluiten van pending uitnodigingen als actieve leerlingen en veilige lege staten.
Database-informatieBeschrijft dat relaties, uitnodigingen en niveauautorisaties voldoende statusvelden hebben om de samenvatting eenduidig af te leiden.
Ontwerpbronnen/registersVerwerk business rules, autorisatiematrix en usecase-matrices; er is geen uitbreiding van command- of eventregister nodig.

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-DOC-FP-003-001SRS-LRN-009
SRS-TCH-001
AC-LRN-009
AC-TCH-001
Leerlinggerelateerde frontpage-aantallen beperken tot de actuele docentcontext
REQ-UC-DOC-FP-003-002SRS-REL-001
SRS-LRN-009
SRS-TCH-001
AC-REL-001
AC-LRN-009
AC-TCH-001
Pending uitnodigingen niet als actieve gekoppelde leerlingen tellen
REQ-UC-DOC-FP-003-003SRS-AUTH-001
SRS-CAT-001
SRS-LRN-009
SRS-TCH-003
AC-AUTH-001
AC-CAT-001
AC-LRN-009
AC-TCH-003
Leerlingen met actieve niveauautorisaties apart kunnen samenvatten
REQ-UC-DOC-FP-003-004SRS-RDM-001
SRS-RDM-002
SRS-RDM-003
SRS-TCH-001
AC-RDM-001
AC-RDM-002
AC-RDM-003
AC-TCH-001
Frontpage-samenvattingen read-only tonen
REQ-UC-DOC-FP-003-005SRS-RDM-001
SRS-RDM-005
SRS-RDM-009
SRS-LRN-009
SRS-TCH-001
SRS-NFR-SEC-001
AC-RDM-001
AC-RDM-005
AC-RDM-009
AC-LRN-009
AC-TCH-001
AC-NFR-SEC-001
Bij ontbrekende leerlingen een veilige lege staat tonen
REQ-UC-DOC-FP-003-006SRS-LRN-009
SRS-TCH-001
AC-LRN-009
AC-TCH-001
De reguliere leerlingenroute gebruiken voor vervolgacties