Skip to main content

UC-DOC-SAM-001 - Collaborators van niveau bekijken

1. Kerngegevens

VeldWaarde
Usecase-IDUC-DOC-SAM-001
NaamCollaborators van niveau bekijken
DomeinDocent
SubdomeinSamenwerking, collaborators en eigenaarschap
Primaire actorDocent
Secundaire actor(en)Systeem
RolcontextDocentcontext als actuele eigenaar van het niveau of als actieve collaborator met inzagerecht op de samenwerkingscontext
Betrokken schermenDocent - Oefenaanbod, niveau-detail, Collaborators op niveau
Gerelateerde usecasesUC-DOC-AANB-001, UC-DOC-AANB-002, UC-DOC-AANB-004, UC-DOC-SAM-002, UC-DOC-SAM-003, UC-DOC-SAM-004, UC-DOC-SAM-005
Primaire entiteitenLevels, LevelCollaborators, Users, UserRoles, Roles, UserRelationships
Secundaire entiteiten / eventsReadmodel collaborators, actieve docent-docentrelatie, eigenaarcontext, laatste wijziging, samenwerkingshistorie
Gerelateerde popupsNiet van toepassing
PopupregisterNiet van toepassing
MoSCoWMust

2. Omschrijving

Deze usecase beschrijft hoe een docent binnen een geselecteerd niveau de huidige collaborators en beschikbare samenwerkingscontext bekijkt. De weergave maakt duidelijk welke docenten actief als collaborator aan het niveau gekoppeld zijn en welke docent de actuele eigenaar is. De usecase is bewust read-only: het bekijken van collaborators wijzigt geen relaties, leerlingtoegang, oefeningconfiguraties of eigenaarschap. Samenwerking op niveau-laag geeft uitsluitend rechten op onderwijsinhoud binnen dat niveau. Het geeft geen toegang tot leerlingen, resultaten, geschiedenis of live meekijken.

3. Scope

3.1 Binnen scope

  • Openen van de collaboratorweergave voor een geselecteerd niveau.
  • Tonen van actuele eigenaar en actieve collaborators.
  • Tonen van beschikbare acties op basis van eigenaar- of collaboratorcontext.
  • Server-side controleren of de docent de samenwerkingscontext van dit niveau mag bekijken.
  • Afleiden welke docenten op basis van actieve docent-docentrelatie beschikbaar zijn voor koppeling.
  • Zichtbaar maken dat collaborators geen leerling-, resultaat- of live-meekijkrechten krijgen.

3.2 Buiten scope

  • Nieuwe docent-docentrelaties aanmaken.
  • Relatie-uitnodigingen versturen of accepteren.
  • Collaborators toevoegen of verwijderen.
  • Eigenaarschap overdragen.
  • Leerlingen of niveau-autorisaties beheren.
  • Centrale beheerderondersteuning voor collaborators.

4. Pre-condities

IDVoorwaarde
PRE-001De gebruiker is succesvol ingelogd.
PRE-002De gebruiker heeft een actieve docentrol.
PRE-003Er is een geselecteerd niveau.
PRE-004Het niveau bestaat en is niet logisch verwijderd.
PRE-005De gebruiker is actuele eigenaar van het niveau of actieve collaborator met inzagerecht op de niveaucontext.

5. Post-condities

IDResultaat
POST-001De collaboratorweergave is getoond.
POST-002Er zijn geen datamutaties uitgevoerd.
POST-003De gebruiker ziet alleen samenwerkingsinformatie binnen de geautoriseerde niveaucontext.
POST-004Niet-toegestane acties zijn verborgen of uitgeschakeld.

6. Trigger

De docent opent vanuit Oefenaanbod of het niveau-detail de sectie Collaborators.

7. Normale processtroom

StapActorScherm / componentActieSysteemresponsData / regel
1DocentOefenaanbodSelecteert een niveauLaadt niveaucontextLevels.Id
2SysteemBackend autorisatieControleert docentcontextBepaalt eigenaar/collaboratorrechtenUserRoles, LevelCollaborators
3SysteemCollaborator-readmodelHaalt actuele eigenaar opGeeft eigenaarregel terugLevels.OwnerUserId
4SysteemCollaborator-readmodelHaalt actieve collaborators opGeeft lijst met collaborators terugLevelCollaborators.IsActive = true
5SysteemRelatiecontextBepaalt beschikbare docenten voor koppelingToont alleen kandidaten met actieve docent-docentrelatieUserRelationships
6FrontendCollaborators op niveauRendert eigenaar, collaborators en beschikbare actiesToont contextuele actiesAutorisatie-uitkomst
7DocentCollaborators op niveauBekijkt de lijstGeen datamutatieRead-only
8SysteemUI-stateVerbergt of blokkeert niet-toegestane actiesVoorkomt clientside bypassServer-side autorisatie blijft leidend

8. Alternatieve en exceptionele processtromen

IDVanaf stapSituatieSysteemgedragPopup / meldingDatamutatie
ALT-0012Gebruiker heeft geen actieve docentrolToegang tot de pagina wordt geblokkeerd.Niet van toepassingGeen
ALT-0022Gebruiker is geen eigenaar of collaborator van het niveauSysteem toont geen collaboratorinformatie en blokkeert de route.Niet van toepassingGeen
ALT-0033Niveau bestaat niet meer of is niet beschikbaarSysteem toont niet-beschikbaarafhandeling.Niet van toepassingGeen
ALT-0045Er zijn geen actieve collaboratorsSysteem toont lege collaboratorlijst met eigenaarregel.Niet van toepassingGeen
ALT-0055Er zijn geen beschikbare docenten om toe te voegenSysteem toont geen kandidatenlijst of een lege statusmelding.Niet van toepassingGeen
ALT-0066Docent is collaborator maar geen eigenaarSysteem toont inhoudelijke samenwerkingscontext maar blokkeert beheeracties zoals toevoegen, verwijderen en eigendom overdragen.Niet van toepassingGeen

9. Business rules

IDRegel
BR-001Collaborators worden altijd per niveau vastgelegd.
BR-002Alleen actieve collaboratorrecords tellen mee voor huidige samenwerkingsrechten.
BR-003De actuele eigenaar van een niveau is geen gewone collaborator, maar mag wel in dezelfde context zichtbaar zijn.
BR-004Een collaborator krijgt geen toegang tot leerlingen, resultaten, geschiedenis of live meekijken.
BR-005Het bekijken van collaborators wijzigt geen relatie- of autorisatierecords.
BR-006Beschikbare kandidaten voor koppeling worden afgeleid uit actieve docent-docentrelaties.
BR-007Clientstate of routeparameters mogen niet bepalen welke niveaucontext zichtbaar is zonder server-side controle.

10. Datavalidatie

Veld / objectValidatie
LevelIdMoet bestaan en toegankelijk zijn binnen docentcontext.
DocentrolMoet actief zijn op het moment van openen.
CollaboratorstatusAlleen actieve records tellen mee.
Docent-docentrelatieAlleen actieve relaties mogen kandidaten opleveren.
ActiesActies worden afgeleid uit server-side autorisatie, niet uit zichtbare knoppen.

11. Datamutaties en events

StapTypeEntiteit / eventMutatie
1ReadLevelsNiveaucontext ophalen.
2ReadUserRoles/RolesActieve docentrol controleren.
3ReadLevelCollaboratorsActieve collaborators ophalen.
4ReadUserRelationshipsBeschikbare docent-docentrelaties bepalen.

12. Geen datamutaties

EntiteitReden
LevelCollaboratorsBekijken maakt geen collaboratorrecord aan en wijzigt geen status.
UserRelationshipsRelaties worden niet aangemaakt of aangepast.
StudentLevelAuthorizationsCollaboratorinzage wijzigt geen leerlingtoegang.
ExercisesOefeningen worden niet gewijzigd.
LiveViewAuditBekijken van collaborators start geen live meekijksessie.

13. State diagram

Niet van toepassing. De usecase bekijkt collaboratorrecords maar wijzigt geen statusobject.

14. Decision flow

De decision flow bepaalt of de docent de collaboratorcontext van het gekozen niveau mag zien en welke acties in het readmodel zichtbaar mogen worden.

15. Data lifecycle diagram

Er ontstaan geen nieuwe records. De usecase leest bestaande niveau-, relatie- en collaboratorgegevens en toont een afgeleid readmodel.

16. Sequence diagrammen

16.1 Collaborators bekijken

17. Popupverwijzingen

PopupKeyMomentDoel
Niet van toepassingDe usecase gebruikt geen domeinspecifieke popup.Autorisatie en weergave verlopen via routeguard, readmodel of bestaande pagina-afhandeling.

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

DoeldocumentAfleiding
Functioneel OntwerpVastleggen dat collaboratorweergave niveaugebonden is en geen leerling-, resultaat- of live-meekijkrechten geeft.
Technisch OntwerpTechnisch Ontwerp: oefencatalogus, autorisatie en logging en historie beschrijven de technische uitwerking. Server-side autorisatie op niveaucontext, eigenaarstatus en actieve collaboratorstatus uitwerken.
Software Requirements SpecificationRequirements opnemen voor read-only collaboratorinzage en actieafleiding op basis van rechten.

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-SAM-001-001SRS-AUTH-001
SRS-CAT-001
SRS-TCH-006
AC-AUTH-001
AC-CAT-001
AC-TCH-006
Collaborators per niveau kunnen tonen aan bevoegde docenten
REQ-UC-DOC-SAM-001-002SRS-CAT-001
SRS-TCH-002
AC-CAT-001
AC-TCH-002
De actuele eigenaar van een niveau zichtbaar kunnen maken in de samenwerkingscontext
REQ-UC-DOC-SAM-001-003SRS-LRN-006
SRS-TCH-004
SRS-LIVE-001
AC-LRN-006
AC-TCH-004
AC-LIVE-001
Collaboratorinzage geen leerling-, resultaat- of live-meekijkrechten geven
REQ-UC-DOC-SAM-001-004SRS-AUTH-001
SRS-TCH-006
AC-AUTH-001
AC-TCH-006
Niet-toegestane collaboratoracties server-side blokkeren