Skip to main content

UC-DOC-LLN-001 - Leerlingenoverzicht bekijken

1. Kerngegevens

VeldWaarde
Usecase-IDUC-DOC-LLN-001
NaamLeerlingenoverzicht 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 - Leerlingen
Gerelateerde usecasesUC-DOC-FP-003, UC-DOC-LLN-002, UC-DOC-LLN-003, UC-DOC-LLN-004, UC-DOC-RES-001, UC-DOC-LLN-005, UC-DOC-LLN-007
Primaire entiteitenUsers, UserRoles, Roles, UserRelationships, TeacherStudentLevelAccess, TeacherLevels
Secundaire entiteiten / eventsLeerlingen-readmodel, niveau-autorisatiesamenvatting, docentcontext, paginering, zoekcontext
Gerelateerde popupsNiet van toepassing
PopupregisterNiet van toepassing
MoSCoWMust

2. Omschrijving

Deze usecase beschrijft hoe een docent het overzicht van leerlingen opent die binnen de eigen docentcontext relevant zijn. Het overzicht toont compacte regels met functionele acties naar geschiedenis en autorisaties, zonder gegevens van andere docentrelaties zichtbaar te maken.

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 leerlingenoverzicht binnen docentcontext.
  • Server-side bepalen welke leerlingen via actieve docent-leerlingrelaties zichtbaar zijn.
  • Tonen van compacte leerlingregels met naam, autorisatietags en acties.
  • Tonen van samenvattende aantallen zoals gekoppelde leerlingen en leerlingen met actieve niveaus.
  • Verbergen van gegevens over andere docenten en andere docentrelaties.
  • Beschikbaar maken van doorklikacties naar geschiedenis en autorisaties.
  • Toepassen van paginering als primaire techniek bij grotere aantallen leerlingen.

3.2 Buiten scope

  • Nieuwe docent-leerlingrelaties uitnodigen of accepteren.
  • Niveau-autorisaties wijzigen.
  • Resultaten of geschiedenis inhoudelijk bekijken.
  • Live meekijken of online-status volgen.
  • Profielgegevens van de leerling wijzigen.
  • Beheerderondersteuning of accountbeheer.

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 in de docentnavigatie voor Leerlingen.

7. Normale processtroom

StapActorScherm / componentActieSysteemresponsData / regel
1DocentNavigatieOpent LeerlingenStart laden van leerlingenpaginaActieve docentcontext
2FrontendRouteguardVraagt docentcontext opStuurt verzoek naar backendGebruiker moet docentrol hebben
3SysteemAutorisatieserviceControleert actieve docentrolBlokkeert bij ontbrekende rolUserRoles, Roles
4SysteemRelatieserviceHaalt actieve docent-leerlingrelaties opBepaalt toegestane leerlingenUserRelationships.IsActive = true
5SysteemAutorisatiereadmodelBerekent autorisatiesamenvatting per leerlingGeeft tags terugTeacherStudentLevelAccess
6SysteemQuerylaagPast standaard sortering en paginering toeGeeft eerste pagina terugMinimaal 10 leerlingen netjes ondersteunen
7FrontendLeerlingenoverzichtRendert compacte leerlingregelsToont naam, tags en actiesGeen andere docentrelaties zichtbaar
8DocentLeerlingenoverzichtBekijkt de lijstGeen datamutatieRead-only
9FrontendActiesToont Geschiedenis en Autorisaties per leerlingDoorklikacties zijn beschikbaarServer-side hercontrole bij openen
10SysteemSamenvattingToont aantallen bovenaanAantallen zijn afgeleidGeen aparte tellerbron

8. Alternatieve en exceptionele processtromen

IDVanaf stapSituatieSysteemgedragPopup / meldingDatamutatie
ALT-0013Gebruiker heeft geen actieve docentrolToegang tot het leerlingenoverzicht wordt geblokkeerd.Niet van toepassingGeen
ALT-0024Er zijn geen actieve docent-leerlingrelatiesSysteem toont een lege staat zonder fout.Niet van toepassingGeen
ALT-0035Leerling heeft nog geen actieve niveau-autorisatie bij deze docentLeerling kan als gekoppeld zichtbaar zijn met tag Te autoriseren.Niet van toepassingGeen
ALT-0046Aantal leerlingen is groter dan paginaformaatSysteem toont paginering.Niet van toepassingGeen
ALT-0057Leerling heeft ook relaties met andere docentenDeze relaties worden niet getoond of geteld in docentdetailinformatie.Niet van toepassingGeen
ALT-0069Docent opent via oude clientstate een leerling buiten contextBackend blokkeert bij vervolgactie opnieuw.Niet van toepassingGeen

9. Business rules

IDRegel
BR-001Het leerlingenoverzicht is altijd docentcontextgebonden.
BR-002Alleen actieve docent-leerlingrelaties leveren zichtbare leerlingen op.
BR-003Nog niet geaccepteerde uitnodigingen zijn domeinhistorie, maar worden niet als actieve leerlingregel gepresenteerd.
BR-004Autorisatietags worden afgeleid uit TeacherStudentLevelAccess binnen de huidige docentcontext.
BR-005Andere docentrelaties van dezelfde leerling zijn niet zichtbaar.
BR-006De acties Geschiedenis en Autorisaties zijn doorklikacties en voeren in deze usecase geen mutatie uit.
BR-007Paginering, zoeken en filters zijn readmodelgedrag en geen afzonderlijke opslagbron.
BR-008Samenvattingsaantallen boven het overzicht moeten exact gedefinieerd zijn en mogen geen verborgen andere docentcontexten meetellen.

10. Datavalidatie

Veld / objectValidatie
DocentrolMoet actief zijn op het moment van openen.
DocentcontextWordt server-side bepaald uit sessie, rollen en relaties.
LeerlingdatasetBevat uitsluitend leerlingen met actieve docent-leerlingrelatie met de huidige docent.
AutorisatietagsWorden afgeleid uit actieve TeacherStudentLevelAccess-records van deze docent.
PagineringMoet geldig paginaformaat en geldige paginanummers gebruiken.
RouteparametersMogen geen zichtbaarheid afdwingen zonder server-side autorisatie.

11. Datamutaties en events

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

12. Geen datamutaties

EntiteitReden
UsersHet bekijken van leerlingen wijzigt geen accountgegevens.
UserRelationshipsRelaties worden alleen gelezen.
TeacherStudentLevelAccessAutorisaties worden alleen samengevat.
SystemMessagesSysteemberichten worden alleen aangemaakt in expliciete communicatieflows.
PrivateMessagesDeze docent-inzageflow start geen privébericht.
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. De gebruikte data bestaat al vóór het openen van de pagina en blijft na sluiten ongewijzigd bestaan.

16. Sequence diagrammen

16.1 Leerlingenoverzicht laden

16.2 Route geblokkeerd

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-001-001SRS-AUTH-001
SRS-RDM-001
SRS-RDM-005
SRS-LRN-009
SRS-TCH-001
AC-AUTH-001
AC-RDM-001
AC-RDM-005
AC-LRN-009
AC-TCH-001
Het leerlingenoverzicht server-side beperken tot leerlingen binnen de actieve docentcontext
REQ-UC-DOC-LLN-001-002SRS-AUTH-001
SRS-LRN-009
SRS-TCH-001
AC-AUTH-001
AC-LRN-009
AC-TCH-001
Leerlingen compact tonen met relevante autorisatietags en doorklikacties
REQ-UC-DOC-LLN-001-003SRS-REL-001
SRS-LRN-009
SRS-TCH-001
AC-REL-001
AC-LRN-009
AC-TCH-001
Geen informatie over andere docentrelaties van dezelfde leerling tonen
REQ-UC-DOC-LLN-001-004SRS-RDM-001
SRS-RDM-002
SRS-RDM-005
SRS-LRN-009
SRS-TCH-001
SRS-NFR-PER-001
AC-RDM-001
AC-RDM-002
AC-RDM-005
AC-LRN-009
AC-TCH-001
AC-NFR-PER-001
Paginering ondersteunen voor grotere aantallen leerlingen
REQ-UC-DOC-LLN-001-005SRS-AUTH-001
SRS-RDM-001
SRS-RDM-002
SRS-RDM-005
SRS-TCH-001
AC-AUTH-001
AC-RDM-001
AC-RDM-002
AC-RDM-005
AC-TCH-001
Samenvattingsaantallen afleiden uit de geautoriseerde docentdataset
REQ-UC-DOC-LLN-001-006SRS-RDM-001
SRS-TCH-001
AC-RDM-001
AC-TCH-001
Bij bekijken van het overzicht geen domeindata wijzigen