Skip to main content

UC-DOC-LLN-004 - Niveau-autorisaties van leerling bekijken

1. Kerngegevens

VeldWaarde
Usecase-IDUC-DOC-LLN-004
NaamNiveau-autorisaties van leerling bekijken
DomeinDocent
SubdomeinLeerlingen en niveau-autorisaties
Primaire actorDocent
Secundaire actor(en)Systeem
RolcontextActieve docentcontext met bestaande docent-leerlingrelatie of toegestane inzage op de eigen docentdataset
Betrokken schermenDocent - Leerling autorisaties
Gerelateerde usecasesUC-DOC-LLN-001, UC-DOC-LLN-003, UC-DOC-LLN-005, UC-DOC-LLN-006, UC-DOC-LLN-007, UC-LLN-TOEG-001, UC-LLN-TOEG-002
Primaire entiteitenUsers, UserRelationships, TeacherStudentLevelAccess, TeacherLevels
Secundaire entiteiten / eventsAutorisatie-readmodel, actieve niveaus, ingetrokken eigen autorisaties, contextuele auditregels
Gerelateerde popupsNiet van toepassing
PopupregisterNiet van toepassing
MoSCoWMust

2. Omschrijving

Deze usecase beschrijft hoe een docent voor één geselecteerde leerling bekijkt welke niveaus binnen de eigen docentcontext geautoriseerd zijn. Het gaat om een read-only inzageflow; het wijzigen van autorisaties gebeurt in vervolgusecases.

Deze usecase maakt expliciet onderscheid tussen de docentcontext als zichtbare werkcontext en het onderliggende generieke relatiedomein. De docent mag in deze flow alleen gegevens zien die voortkomen uit de eigen actieve relatie- en niveauautorisatiecontext. Informatie over andere docenten, andere docentrelaties of niet-relevante accountgegevens blijft buiten beeld.

De usecase is onderdeel van het docentdomein, maar dupliceert geen generieke relatie-, profiel-, account- of berichtprocessen. Waar vervolgacties nodig zijn, verwijst de usecase naar de bronhoudende usecases in het betreffende domein.

3. Scope

3.1 Binnen scope

  • Openen van het individuele autorisatiescherm voor één leerling.
  • Server-side controleren van docent-leerlingrelatie.
  • Tonen welke niveaus door deze docent aan de leerling zijn geautoriseerd.
  • Tonen welke relevante niveaus nog niet gekoppeld zijn wanneer dit als keuzecontext nodig is.
  • Tonen van eigen audit- of wijzigingscontext voor deze docent-leerlingcombinatie.
  • Duidelijk scheiden van inzage en vervolgacties voor wijziging.

3.2 Buiten scope

  • Autorisaties opslaan of wijzigen.
  • Bulk-autorisaties uitvoeren.
  • Systeemberichten versturen naar de leerling.
  • Niveaus aanmaken of beheren.
  • Autorisaties van andere docenten tonen.
  • Relatie-uitnodigingen of docent-leerlingrelaties aanmaken.

3.3 DRY-afbakening

  • De docent ziet uitsluitend leerlingen binnen de eigen docentcontext.
  • Een actieve docent-leerlingrelatie is de basis voor zichtbaarheid in dit subdomein.
  • Niveau-autorisaties worden vastgelegd via TeacherStudentLevelAccess en blijven gescheiden van de relatietabel.
  • Een collaborator op een niveau krijgt hierdoor geen toegang tot leerlingen, resultaten, geschiedenis of live meekijken.
  • Zoeken, filteren, paginering en tellingen zijn afgeleide readmodelwaarden en veroorzaken geen datamutaties.
  • Gegevens over andere docentrelaties van dezelfde leerling worden niet zichtbaar gemaakt aan de docent.
  • Account-, profiel-, relatie- en systeemnotificatieflows blijven bronhoudend in hun eigen domeinen.

4. Pre-condities

IDVoorwaarde
PRE-001De gebruiker is succesvol ingelogd.
PRE-002De gebruiker heeft een actieve docentrol.
PRE-003De OefenHub-sessiecontext is server-side opgebouwd.
PRE-004De docentcontext is beschikbaar en geldig.
PRE-005De betrokken leerlinggegevens worden uitsluitend via geautoriseerde backendqueries opgehaald.

5. Post-condities

IDResultaat
POST-001De gevraagde docentcontextweergave is getoond of veilig geblokkeerd.
POST-002Er zijn geen datamutaties uitgevoerd binnen deze inzageflow.
POST-003De docent heeft geen gegevens buiten de eigen docentcontext gezien.
POST-004Vervolgacties worden alleen als route of actie aangeboden en voeren nog geen wijziging uit.

6. Trigger

De docent kiest bij een leerling de actie Autorisaties.

7. Normale processtroom

StapActorScherm / componentActieSysteemresponsData / regel
1DocentLeerlingenoverzichtKlikt op Autorisaties bij een leerlingFrontend opent autorisatieschermStudentUserId
2SysteemRouteguardControleert docentrolBlokkeert zonder actieve docentrolUserRoles
3SysteemRelatieserviceControleert actieve docent-leerlingrelatieBepaalt toegestane contextUserRelationships
4SysteemNiveaureadmodelHaalt niveaus van deze docent opGeeft relevante niveaus terugTeacherLevels.OwnerTeacherUserId
5SysteemAutorisatiereadmodelHaalt actieve autorisaties voor leerling opMarkeert geautoriseerde niveausTeacherStudentLevelAccess.IsActive = true
6SysteemAutorisatiereadmodelHaalt ingetrokken eigen autorisaties op indien nodigToont alleen relevante eigen historieRevokedAtUtc, RevokedByUserId
7FrontendAutorisatieschermRendert autorisatielijstToont actieve en niet-actieve keuzecontextGeen andere docenten
8DocentAutorisatieschermBekijkt autorisatiesGeen datamutatieRead-only
9FrontendActiesToont toegestane vervolgactiesWijzigacties starten vervolgusecasesUC-DOC-LLN-005/006/007

8. Alternatieve en exceptionele processtromen

IDVanaf stapSituatieSysteemgedragPopup / meldingDatamutatie
ALT-0012Gebruiker heeft geen docentrolSysteem blokkeert het autorisatiescherm.Niet van toepassingGeen
ALT-0023Geen actieve docent-leerlingrelatieSysteem toont geen autorisatiegegevens.Niet van toepassingGeen
ALT-0034Docent heeft geen actieve niveausSysteem toont lege niveaucontext en geen koppelbare niveaus.Niet van toepassingGeen
ALT-0045Leerling heeft geen actieve autorisaties bij deze docentSysteem toont dat geen niveau is gekoppeld binnen deze docentcontext.Niet van toepassingGeen
ALT-0055Leerling heeft autorisaties via andere docentenSysteem toont deze niet.Niet van toepassingGeen
ALT-0066Audit bevat acties van andere docentenSysteem toont deze niet in het individuele docentscherm.Niet van toepassingGeen

9. Business rules

IDRegel
BR-001Een docent ziet alleen niveau-autorisaties die door deze docentcontext relevant zijn.
BR-002Andere docenten en hun autorisaties worden niet getoond.
BR-003Het individuele autorisatiescherm blijft bestaan als secundaire route voor uitzonderingen, controles en kleine correcties.
BR-004Autorisatie-audit op dit scherm toont uitsluitend relevante acties van de huidige docent richting deze leerling.
BR-005Het bekijken van autorisaties wijzigt geen TeacherStudentLevelAccess-records.
BR-006Een leerling kan meerdere niveaus tegelijk geautoriseerd hebben.
BR-007Nieuw toegevoegde actieve oefeningen binnen een geautoriseerd niveau worden automatisch beschikbaar voor de leerling.
BR-008De daadwerkelijke wijziging van autorisaties hoort bij aparte wijzig-usecases.

10. Datavalidatie

Veld / objectValidatie
StudentUserIdMoet binnen actieve docent-leerlingrelatie vallen.
TeacherLevelIdMoet behoren tot de relevante docentcontext.
TeacherStudentLevelAccessAlleen records binnen deze docent-leerlingrelatie worden getoond.
AuditweergaveMag uitsluitend relevante acties binnen deze docentcontext tonen.
WijzigactiesMogen pas in vervolgusecases muteren na aparte validatie.

11. Datamutaties en events

StapTypeEntiteit / eventMutatie
--Niet van toepassingDeze usecase is read-only en voert geen datamutaties uit.

12. Geen datamutaties

EntiteitReden
TeacherStudentLevelAccessDeze usecase leest autorisaties maar wijzigt ze niet.
SystemMessagesBekijken van autorisaties verstuurt geen bericht.
TeacherLevelsNiveaus worden niet aangemaakt of aangepast.
UserRelationshipsRelaties worden niet gewijzigd.
PrivateMessagesDeze docent-inzageflow start geen privébericht.
SystemMessagesSysteemberichten worden alleen aangemaakt in expliciete communicatieflows.
LiveViewAuditLive meekijken wordt niet gestart in deze usecase.

13. State diagram

Deze usecase wijzigt geen persistent statusobject. De zichtbaarheid en de getoonde gegevens worden afgeleid uit actieve rollen, actieve docent-leerlingrelaties, niveaucontext en eventuele niveau-autorisaties. Er is daarom geen state diagram van een persistent object opgenomen.

14. Decision flow

15. Data lifecycle diagram

Deze usecase maakt geen nieuwe lifecycleobjecten aan. Autorisaties worden uitsluitend gelezen en vertaald naar een contextgebonden overzicht.

16. Sequence diagrammen

16.1 Niveau-autorisaties lezen

16.2 Wijzigactie wordt apart afgehandeld

17. Popupverwijzingen

PopupKeyMomentDoel
Niet van toepassingGehele usecaseDeze flow gebruikt geen domeinspecifieke popupregister-popup. Routeguard-, validatie-, lege-staat- en niet-beschikbaarafhandeling verlopen via componentmelding of bestaande generieke foutafhandeling.

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

DoeldocumentAfleiding
Functioneel OntwerpBeschrijft de docent-leerlingenpagina als contextgebonden overzicht waarin alleen leerlingen en leerlinginformatie binnen de eigen docentcontext zichtbaar zijn.
Functioneel OntwerpBeschrijft dat zoeken, filteren, detailweergave en autorisatie-inzage geen gegevens van andere docenten tonen.
Technisch OntwerpTechnisch Ontwerp: autorisatie en contextcontrole, technische rolflows, relatiebeheer en readmodels en tellers beschrijven de technische uitwerking. Beschrijft server-side filtering op actieve docent-leerlingrelatie, actieve docentrol en TeacherStudentLevelAccess uit.
Technisch OntwerpTechnisch Ontwerp: autorisatie en contextcontrole, technische rolflows, relatiebeheer en readmodels en tellers beschrijven de technische uitwerking. Beschrijft dat routeparameters en clientstate nooit leidend zijn voor zichtbaarheid.
Software Requirements SpecificationBeschrijft requirements voor contextbeperkte inzage, read-only gedrag, paginering en privacygrenzen.
Database-informatieGeen nieuwe tabel nodig; gebruik bestaande Users, UserRelationships, TeacherLevels en TeacherStudentLevelAccess.
OntwerpbronnenBeschrijven business rules, autorisatiematrix, domeinobjecten en usecase-matrices bij.

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-LLN-004-001SRS-AUTH-001
SRS-CAT-001
SRS-LRN-009
SRS-TCH-003
AC-AUTH-001
AC-CAT-001
AC-LRN-009
AC-TCH-003
Niveau-autorisaties per leerling kunnen tonen binnen de actieve docentcontext
REQ-UC-DOC-LLN-004-002SRS-AUTH-001
SRS-CAT-001
SRS-TCH-002
AC-AUTH-001
AC-CAT-001
AC-TCH-002
Actieve autorisaties en relevante beschikbare niveaus onderscheiden
REQ-UC-DOC-LLN-004-003SRS-AUTH-001
SRS-TCH-001
AC-AUTH-001
AC-TCH-001
Geen autorisaties van andere docenten tonen
REQ-UC-DOC-LLN-004-004SRS-AUTH-001
SRS-TCH-001
AC-AUTH-001
AC-TCH-001
Bij inzage geen autorisatierecords wijzigen
REQ-UC-DOC-LLN-004-005SRS-AUTH-001
SRS-TCH-001
AC-AUTH-001
AC-TCH-001
Wijzigacties pas via aparte autorisatie-usecases verwerken