11. Autoriseer niveau
11.1 Schermafbeelding

11.2 Scherm meta data
| Veld | Waarde |
|---|---|
| Scherm-ID | SCH-DOC-09-01 |
| Schermnaam | Autoriseer niveau — Bulkview |
| Doelgroep / onderdeel | Docent |
| Bronbestand | oefenhub_docent_09_autoriseer_niveau_v1_14.html |
| Mockupversie | V1.14 |
| Screenshotbestand | oefenhub_docent_09_autoriseer_niveau_v1_14.png |
| Processtap / context | Docent koppelt of ontkoppelt in bulk leerlingen aan één geselecteerd niveau. |
| Documentatiestatus | Uitgewerkt op basis van HTML-mockup, PNG-screenshot, Functioneel Ontwerp, Technisch Ontwerp, Software Requirements Specification en ondersteunende documentatie. |
| Opmerkingen | De mockup toont dynamische voorbeeldwaarden. Niveaunaam, eigenaar, collaboratoraantal, aantallen gekoppelde/beschikbare leerlingen en leerlingnamen verschillen per docentcontext, geselecteerd niveau en actuele autorisatiestatus. |
| Route / URL-patroon | Geopend vanuit een geselecteerd niveau binnen Oefenaanbod. Functioneel routepatroon: /docent/oefenaanbod/niveaus/{levelId}/leerlingen-autoriseren of een gelijkwaardige server-side beveiligde routecontext. |
| Autorisatie / vereiste rol-context | Actieve docentcontext met autorisatierecht op het geselecteerde niveau. De leerlinglijsten zijn altijd beperkt tot leerlingen waarmee de docent zelf een actieve docent-leerlingrelatie heeft. |
| Primair domeinobject / hoofdentiteit | Niveauautorisaties op niveau-laag voor meerdere leerlingen. |
| Gerelateerde schermen / navigatie | 03_niveaus_en_categorieen, 06_leerlingen, 10_autoriseer_leerling. |
11.3 Functionele beschrijving
Dit scherm ondersteunt bulkbeheer van leerlingtoegang tot één geselecteerd niveau. De docent opent het scherm vanuit een niveau binnen Oefenaanbod en ziet vervolgens links de leerlingen die binnen de eigen docentcontext beschikbaar zijn om aan dit niveau te koppelen. Rechts staan de leerlingen die al toegang hebben tot het geselecteerde niveau. Tussen beide lijsten staan acties om geselecteerde leerlingen te koppelen of te ontkoppelen. De wijzigingen worden pas definitief nadat de docent kiest voor Wijzigingen opslaan.
De pagina is bedoeld voor bulkbeheer wanneer meerdere leerlingen tegelijk toegang moeten krijgen tot hetzelfde niveau of wanneer toegang voor meerdere leerlingen tegelijk moet worden ingetrokken. Voor uitzonderingen, controles en correcties op één specifieke leerling blijft het individuele scherm Autoriseer leerling de secundaire route.
De docent ziet op dit scherm geen algemene leerlingadministratie en geen autorisaties van andere docenten. De beschikbare leerlingen zijn uitsluitend leerlingen waarmee de docent zelf een actieve docent-leerlingrelatie heeft. De gekoppelde leerlingen zijn uitsluitend leerlingen uit diezelfde docentcontext die op dit moment actief toegang hebben tot het geselecteerde niveau.
Interpretatie van mockupwaarden
De waarden in de mockup zijn voorbeelddata. Dit geldt onder meer voor de vermelding Groep 7, de eigenaar, het aantal collaborators, de aantallen Gekoppeld en Beschikbaar, en alle zichtbare leerlingnamen in de linker- en rechterlijst.
Deze waarden mogen niet als vaste businessdata, testdata of seeddata worden geïnterpreteerd. In de applicatie worden zij dynamisch bepaald op basis van:
- het geselecteerde niveau;
- de actieve docentcontext;
- de autorisatierechten van de docent op dit niveau;
- de actieve docent-leerlingrelaties van deze docent;
- bestaande actieve en ingetrokken niveauautorisaties;
- de actuele online status wanneer de filteroptie Alleen actief online wordt gebruikt;
- de gekozen sortering en eventuele tijdelijke, nog niet opgeslagen verplaatsingen tussen de lijsten.
Ook de niveaunaam in titel, breadcrumb, introtekst en sectietitel is dynamisch. Wanneer een ander niveau wordt geopend, moeten alle contextteksten, aantallen en leerlinglijsten opnieuw worden opgebouwd voor dat niveau.
Belangrijkste business rules
- Het scherm werkt altijd voor precies één geselecteerd niveau.
- De docent moet in een actieve docentcontext werken.
- De docent moet voor het geselecteerde niveau autorisatierechten hebben; dit recht volgt niet automatisch uit een generieke rol alleen.
- Een docent-docent collaboratorrelatie geeft op zichzelf geen toegang tot leerlingen van een andere docent. Leerlingen verschijnen alleen wanneer er ook een eigen actieve docent-leerlingrelatie bestaat.
- De linker lijst Beschikbare leerlingen bevat leerlingen uit de eigen docentcontext die nog geen actieve autorisatie voor dit niveau hebben.
- De rechter lijst Gekoppeld aan dit niveau bevat leerlingen uit de eigen docentcontext die een actieve autorisatie voor dit niveau hebben.
- Een leerling mag nooit tegelijk als actief beschikbaar en actief gekoppeld voor hetzelfde niveau worden opgeslagen.
- De acties Koppel geselecteerd en Ontkoppel geselecteerd verplaatsen leerlingen in de UI eerst naar een niet-opgeslagen wijziging.
- De niet-opgeslagen wijziging wordt pas definitief opgeslagen na de actie Wijzigingen opslaan.
- Opslaan moet als één consistente bulktransactie worden uitgevoerd: gedeeltelijke verwerking mag niet leiden tot half opgeslagen autorisaties.
- Bij koppelen ontstaat of heractiveert een niveauautorisatie voor de betreffende leerling binnen de docentcontext.
- Bij ontkoppelen wordt de niveauautorisatie ingetrokken of gedeactiveerd; bestaande oefengeschiedenis blijft behouden.
- Actieve oefeningen die na autorisatie aan dit niveau worden toegevoegd, worden automatisch beschikbaar voor gekoppelde leerlingen, voor zover de overige zichtbaarheidseisen kloppen.
- Leerlingen ontvangen bij toevoegen of intrekken van autorisaties een systeembericht, tenzij de berichtflow tijdelijk wordt uitgesteld omdat de leerling actief oefent.
- Aantallen, leerlingnamen en niveauvermeldingen worden nooit hardcoded uit de mockup overgenomen.
11.4 UI-elementen en velddefinities
| Element-ID | Type | GUI-verwijzing | Omschrijving | Zichtbaar label | Opmerking | Technische naam |
|---|---|---|---|---|---|---|
| SCH-DOC-09-01-S01 | Section | Pagina / hoofdcontainer | Hoofdweergave voor bulkautorisatie van leerlingen op één geselecteerd niveau. | Leerlingen aan niveau koppelen | Bevat breadcrumb, introkaart, contextchips, transferlijsten en opslaanactie. | LevelStudentAuthorizationPage |
| SCH-DOC-09-01-A01 | Action / Navigation | Breadcrumb | Navigatiepad naar Home, Oefenaanbod, het geselecteerde niveau en de huidige autorisatiepagina. | Home > Oefenaanbod > <niveaunaam> > Leerlingen autoriseren | Niveaunaam is dynamisch; breadcrumb toont geen technische ID's. | LevelAuthorizationBreadcrumb |
| SCH-DOC-09-01-S02 | Section | Introkaart | Legt uit dat meerdere leerlingen in één keer aan het geselecteerde niveau gekoppeld kunnen worden. | Leerlingen aan niveau koppelen | Introkaart toont ook dynamische contextchips en samenvattende aantallen. | LevelAuthorizationIntroCard |
| SCH-DOC-09-01-F01 | Field | Introkaart | Naam van het geselecteerde niveau in de toelichtende tekst. | <niveaunaam> | In de mockup is dit voorbeeldmatig Groep 7. | SelectedLevelName |
| SCH-DOC-09-01-F02 | Field / Chip | Contextchips | Dynamische chip met de geselecteerde niveaunaam. | Niveau: <niveaunaam> | Afgeleid uit het geselecteerde niveau. | SelectedLevelChip |
| SCH-DOC-09-01-F03 | Field / Chip | Contextchips | Naam van de actuele eigenaar van het geselecteerde niveau. | Eigenaar: <docentnaam> | Dynamisch; kan wijzigen bij eigendomsoverdracht. | LevelOwnerDisplayName |
| SCH-DOC-09-01-F04 | Field / Chip | Contextchips | Aantal actieve collaborators op het geselecteerde niveau. | Collaborators: <aantal> | Aantal is dynamisch en contextafhankelijk. | ActiveCollaboratorCount |
| SCH-DOC-09-01-F05 | Field / Counter | Introkaart rechts | Telt leerlingen met actieve toegang tot dit niveau binnen de eigen docentcontext. | Gekoppeld <aantal> | In de mockup is 18 voorbeelddata. | LinkedStudentCount |
| SCH-DOC-09-01-F06 | Field / Counter | Introkaart rechts | Telt leerlingen uit de eigen docentcontext die nog aan dit niveau gekoppeld kunnen worden. | Beschikbaar <aantal> | In de mockup is 7 voorbeelddata. | AvailableStudentCount |
| SCH-DOC-09-01-S03 | Section | Bulkkaart | Bevat de feitelijke bulkautorisatie-interface. | Bulk autoriseren - <niveaunaam> | Titel bevat dynamische niveaunaam. | BulkAuthorizationCard |
| SCH-DOC-09-01-F07 | Field | Bulkkaart tekst | Toelichting dat links leerlingen geselecteerd worden om toegang te geven en rechts al gekoppelde leerlingen staan. | Selecteer links één of meerdere leerlingen... | Functionele uitleg; geen databron. | BulkAuthorizationInstructionText |
| SCH-DOC-09-01-FORM01 | Form | Toolbar | Filter- en sorteervelden voor de lijst met beschikbare leerlingen. | Filter beschikbare leerlingen / Sorteer beschikbare leerlingen | Werkt volgens de mockup alleen op de linker lijst. | AvailableStudentsToolbar |
| SCH-DOC-09-01-F08 | Filter | Toolbar | Filter voor beschikbare leerlingen. | Filter beschikbare leerlingen | Opties: Alle beschikbare leerlingen, Alleen actief online, Alleen nog niet gekoppeld. | AvailableStudentFilter |
| SCH-DOC-09-01-F09 | Sort | Toolbar | Sorteerkeuze voor beschikbare leerlingen. | Sorteer beschikbare leerlingen | Opties: Achternaam (A-Z), Voornaam (A-Z), Recent toegevoegd. | AvailableStudentSortOrder |
| SCH-DOC-09-01-M01 | Message / Helptext | Toolbar | Legt uit dat filteren en sorteren alleen de beschikbare lijst beïnvloedt. | Filteren en sorteren werkt alleen op de lijst met beschikbare leerlingen. | Voorkomt verwarring omdat de rechterlijst niet door deze toolbar wordt gesorteerd of gefilterd. | AvailableToolbarScopeMessage |
| SCH-DOC-09-01-S04 | Section | Linker transferpaneel | Paneel met leerlingen die aan de docent gekoppeld zijn, maar nog geen toegang hebben tot dit niveau. | Beschikbare leerlingen | De lijst is dynamisch en kan visueel scrollbaar zijn. | AvailableStudentsPanel |
| SCH-DOC-09-01-B01 | Button | Linker transferpaneel | Selecteert alle op dat moment zichtbare leerlingen in de linker lijst. | Selecteer alles | Selecteert alleen zichtbare/gefilterde items binnen het paneel. | SelectAllAvailableStudentsButton |
| SCH-DOC-09-01-T01 | List / Form | Linker transferpaneel | Lijst met beschikbare leerlingen, elk met checkbox en naam. | Beschikbare leerlingen | Leerlingnamen zijn dynamisch; mockupnamen zijn voorbeelddata. | AvailableStudentsList |
| SCH-DOC-09-01-F10 | Field | Beschikbare leerlingregel | Checkbox om een beschikbare leerling te selecteren voor koppelen. | Checkbox | User input; nog geen persistente mutatie. | AvailableStudentSelected |
| SCH-DOC-09-01-F11 | Field | Beschikbare leerlingregel | Naam van de beschikbare leerling. | <leerlingnaam> | Komt uit het leerlingprofiel; geen e-mailadres of technische ID zichtbaar. | AvailableStudentDisplayName |
| SCH-DOC-09-01-S05 | Section | Middenkolom | Acties om geselecteerde leerlingen tussen de twee lijsten te verplaatsen. | Koppel geselecteerd / Ontkoppel geselecteerd | Acties werken op geselecteerde checkboxregels. | TransferActionsSection |
| SCH-DOC-09-01-B02 | Button | Middenkolom | Verplaatst geselecteerde leerlingen uit de linker lijst naar de gekoppelde niet-opgeslagen lijstweergave. | Koppel geselecteerd → | Maakt nog geen definitieve databasewijziging vóór opslaan. | LinkSelectedStudentsButton |
| SCH-DOC-09-01-B03 | Button | Middenkolom | Verplaatst geselecteerde leerlingen uit de rechter lijst terug naar de beschikbare niet-opgeslagen lijstweergave. | ← Ontkoppel geselecteerd | Maakt nog geen definitieve databasewijziging vóór opslaan. | UnlinkSelectedStudentsButton |
| SCH-DOC-09-01-S06 | Section | Rechter transferpaneel | Paneel met leerlingen die toegang hebben tot het geselecteerde niveau. | Gekoppeld aan dit niveau | De lijst is dynamisch en kan visueel scrollbaar zijn. | LinkedStudentsPanel |
| SCH-DOC-09-01-B04 | Button | Rechter transferpaneel | Selecteert alle op dat moment zichtbare leerlingen in de rechter lijst. | Selecteer alles | Selecteert alleen items binnen het gekoppelde paneel. | SelectAllLinkedStudentsButton |
| SCH-DOC-09-01-T02 | List / Form | Rechter transferpaneel | Lijst met gekoppelde leerlingen, elk met checkbox en naam. | Gekoppeld aan dit niveau | Leerlingnamen zijn dynamisch; mockupnamen zijn voorbeelddata. | LinkedStudentsList |
| SCH-DOC-09-01-F12 | Field | Gekoppelde leerlingregel | Checkbox om een gekoppelde leerling te selecteren voor ontkoppelen. | Checkbox | User input; nog geen persistente mutatie. | LinkedStudentSelected |
| SCH-DOC-09-01-F13 | Field | Gekoppelde leerlingregel | Naam van de gekoppelde leerling. | <leerlingnaam> | Komt uit het leerlingprofiel; geen e-mailadres of technische ID zichtbaar. | LinkedStudentDisplayName |
| SCH-DOC-09-01-B05 | Button | Onder bulkkaart | Slaat alle niet-opgeslagen wijzigingen in één bulkactie op. | Wijzigingen opslaan | Past niveauautorisaties aan, schrijft historie en triggert systeemberichten. | SaveBulkLevelAuthorizationsButton |
| SCH-DOC-09-01-M02 | Message / Empty state | Transferpanelen | Melding wanneer een lijst leeg is. | Geen beschikbare leerlingen / Geen gekoppelde leerlingen | Melding is afhankelijk van queryresultaat en filtercontext. | TransferListEmptyState |
| SCH-DOC-09-01-M03 | Message / Error | Formulier | Functionele foutmelding bij verlopen rechten, conflicten of mislukte opslag. | <foutmelding> | Moet begrijpelijk zijn en geen technische stacktrace tonen. | BulkAuthorizationErrorMessage |
11.5 Waardelagen
| Element-ID | GUI-verwijzing | Zichtbaar label | Technische naam | Databron | Waardebron | Datatype | Bewerkbaar | Validatie / regel |
|---|---|---|---|---|---|---|---|---|
| SCH-DOC-09-01-A01 | Breadcrumb | Home > Oefenaanbod > <niveaunaam> > Leerlingen autoriseren | LevelAuthorizationBreadcrumb | Routering + TeacherLevels | Afgeleid | Tekst / navigatie | Nee | Mag geen GUID's of interne ID's tonen. |
| SCH-DOC-09-01-F01 | Introkaart | <niveaunaam> | SelectedLevelName | TeacherLevels.Name | Database | Tekst | Nee | Naam wordt bepaald door het geselecteerde levelId en mag niet hardcoded worden. |
| SCH-DOC-09-01-F02 | Contextchip | Niveau: <niveaunaam> | SelectedLevelChip | TeacherLevels | Database / afgeleid | Tekst | Nee | Moet overeenkomen met het niveau waarvoor bulkbeheer wordt uitgevoerd. |
| SCH-DOC-09-01-F03 | Contextchip | Eigenaar: <docentnaam> | LevelOwnerDisplayName | TeacherLevels.OwnerTeacherUserId, Users | Database / afgeleid | Tekst | Nee | Eigenaar kan wijzigen door eigendomsoverdracht. |
| SCH-DOC-09-01-F04 | Contextchip | Collaborators: <aantal> | ActiveCollaboratorCount | TeacherLevelCollaborators | Berekend | Integer | Nee | Telt actieve collaborator-records voor het geselecteerde niveau. |
| SCH-DOC-09-01-F05 | Introkaart rechts | Gekoppeld <aantal> | LinkedStudentCount | TeacherStudentLevelAccess / niveauautorisaties | Berekend | Integer | Nee | Telt actieve autorisaties voor dit niveau binnen de eigen docentcontext. |
| SCH-DOC-09-01-F06 | Introkaart rechts | Beschikbaar <aantal> | AvailableStudentCount | UserRelationships, TeacherStudentLevelAccess | Berekend | Integer | Nee | Telt actieve eigen docent-leerlingrelaties zonder actieve autorisatie voor dit niveau. |
| SCH-DOC-09-01-F08 | Toolbar | Filter beschikbare leerlingen | AvailableStudentFilter | UI-keuze + runtime aanwezigheidssignaal indien onlinefilter actief | User input + afgeleid | Enum | Ja | Filtert alleen de linker lijst; filterwaarden mogen geen rechterlijst beïnvloeden. |
| SCH-DOC-09-01-F09 | Toolbar | Sorteer beschikbare leerlingen | AvailableStudentSortOrder | UI-keuze + Users / relatiegegevens | User input + afgeleid | Enum | Ja | Sorteert alleen de linker lijst op achternaam, voornaam of recent toegevoegd. |
| SCH-DOC-09-01-T01 | Linker lijst | Beschikbare leerlingen | AvailableStudentsList | UserRelationships, Users, TeacherStudentLevelAccess | Database + afgeleid | Lijst | Deels | Bevat alleen leerlingen met actieve docent-leerlingrelatie en zonder actieve toegang tot dit niveau. |
| SCH-DOC-09-01-F10 | Linker lijst | Checkbox | AvailableStudentSelected | UI-state | User input | Boolean | Ja | Selectie is tijdelijk tot koppelen en opslaan. |
| SCH-DOC-09-01-F11 | Linker lijst | <leerlingnaam> | AvailableStudentDisplayName | Users / applicatieprofiel | Database | Tekst | Nee | Naam is dynamisch; e-mailadres en technische identifiers worden niet getoond. |
| SCH-DOC-09-01-B02 | Middenkolom | Koppel geselecteerd → | LinkSelectedStudentsButton | UI-state | User action | Actie | Ja | Alleen actief wanneer ten minste één leerling links is geselecteerd. Verplaatst naar niet-opgeslagen UI-status gekoppeld. |
| SCH-DOC-09-01-B03 | Middenkolom | ← Ontkoppel geselecteerd | UnlinkSelectedStudentsButton | UI-state | User action | Actie | Ja | Alleen actief wanneer ten minste één leerling rechts is geselecteerd. Verplaatst naar niet-opgeslagen UI-status beschikbaar. |
| SCH-DOC-09-01-T02 | Rechter lijst | Gekoppeld aan dit niveau | LinkedStudentsList | TeacherStudentLevelAccess, Users, TeacherLevels | Database + afgeleid | Lijst | Deels | Bevat alleen actieve toegang tot dit niveau binnen eigen docentcontext. |
| SCH-DOC-09-01-F12 | Rechter lijst | Checkbox | LinkedStudentSelected | UI-state | User input | Boolean | Ja | Selectie is tijdelijk tot ontkoppelen en opslaan. |
| SCH-DOC-09-01-F13 | Rechter lijst | <leerlingnaam> | LinkedStudentDisplayName | Users / applicatieprofiel | Database | Tekst | Nee | Naam is dynamisch; technische identifiers worden niet getoond. |
| SCH-DOC-09-01-B01 | Linker paneel | Selecteer alles | SelectAllAvailableStudentsButton | Gefilterde AvailableStudentsList | User action | Actie | Ja | Selecteert alleen zichtbare/gefilterde regels in de linker lijst. |
| SCH-DOC-09-01-B04 | Rechter paneel | Selecteer alles | SelectAllLinkedStudentsButton | Zichtbare LinkedStudentsList | User action | Actie | Ja | Selecteert alleen zichtbare regels in de rechter lijst. |
| SCH-DOC-09-01-B05 | Onder bulkkaart | Wijzigingen opslaan | SaveBulkLevelAuthorizationsButton | TeacherStudentLevelAccess, autorisatiehistorie, SystemMessages | User action | Actie | Ja | Valideert docentcontext, niveau, leerlingrelaties en rechten server-side voordat mutaties worden opgeslagen. |
| SCH-DOC-09-01-M01 | Toolbar | Filteren en sorteren werkt alleen op de lijst met beschikbare leerlingen. | AvailableToolbarScopeMessage | Codevaste of contentbeheerbare tekst | Content / codevast | Tekst | Nee | Moet zichtbaar maken dat de rechterlijst niet door toolbarfilter wordt beïnvloed. |
| SCH-DOC-09-01-M02 | Lijsten | Geen beschikbare leerlingen / Geen gekoppelde leerlingen | TransferListEmptyState | Queryresultaat + filtercontext | Berekend | Tekst | Nee | Tonen wanneer een lijst leeg is door data of filter. |
| SCH-DOC-09-01-M03 | Formulier | <foutmelding> | BulkAuthorizationErrorMessage | Validatie- of opslagresultaat | Berekend | Tekst | Nee | Bij fouten geen gedeeltelijke inconsistentie opslaan; melding blijft functioneel begrijpelijk. |
11.6 Schermtrace naar SRS en acceptatiecriteria
De onderstaande tabel legt per schermrequirement de koppeling naar het centrale schermrequirements-trace-register, SRS-requirements en acceptatiecriteria vast. De normatieve requirementtekst staat in de SRS; dit schermdocument beschrijft alleen de lokale schermcontext.
Deze tabel bevat alleen schermtraceability. De normatieve requirementtekst en acceptatiecriteria staan centraal in de SRS.
| Schermrequirement | Dekt | Schermcontext |
|---|---|---|
REQ-SCH-DOC-09-01-01 | SRS-AUTH-001 SRS-TCH-008 AC-AUTH-001 AC-TCH-008 | Het bulk-autorisatiescherm tonen voor precies één geselecteerd niveau binnen de actieve docentcontext |
REQ-SCH-DOC-09-01-02 | SRS-AUTH-001 SRS-TCH-001 AC-AUTH-001 AC-TCH-001 | Vóór het tonen van data server-side controleren dat de gebruiker in een actieve docentcontext werkt |
REQ-SCH-DOC-09-01-03 | SRS-AUTH-001 SRS-TCH-008 AC-AUTH-001 AC-TCH-008 | Controleren dat de docent autorisatierechten heeft voor het geselecteerde niveau voordat leerlinglijsten worden opgehaald |
REQ-SCH-DOC-09-01-04 | SRS-TCH-008 AC-TCH-008 | Het systeem mag leerlingen alleen tonen wanneer zij een actieve docent-leerlingrelatie hebben met de huidige docent |
REQ-SCH-DOC-09-01-05 | SRS-TCH-008 AC-TCH-008 | Het systeem mag collaboratorinformatie tonen als niveaucontext, maar mag collaboratorrechten niet gebruiken om leerlingen van andere docenten zichtbaar te maken |
REQ-SCH-DOC-09-01-06 | SRS-AUTH-001 SRS-TCH-008 AC-AUTH-001 AC-TCH-008 | De linker lijst vullen met leerlingen uit de eigen docentcontext die nog geen actieve autorisatie voor het geselecteerde niveau hebben |
REQ-SCH-DOC-09-01-07 | SRS-AUTH-001 SRS-TCH-008 AC-AUTH-001 AC-TCH-008 | De rechter lijst vullen met leerlingen uit de eigen docentcontext die een actieve autorisatie voor het geselecteerde niveau hebben |
REQ-SCH-DOC-09-01-08 | SRS-TCH-008 AC-TCH-008 | Voorkomen dat dezelfde leerling voor hetzelfde niveau gelijktijdig als beschikbaar en gekoppeld wordt opgeslagen |
REQ-SCH-DOC-09-01-09 | SRS-RDM-005 SRS-RDM-002 SRS-RDM-001 SRS-TCH-008 AC-RDM-005 AC-RDM-002 AC-RDM-001 AC-TCH-008 | De aantallen Gekoppeld en Beschikbaar dynamisch berekenen uit de actuele niveau- en leerlingcontext |
REQ-SCH-DOC-09-01-10 | SRS-TCH-008 AC-TCH-008 | De niveaunaam dynamisch tonen in breadcrumb, intro, contextchip en bulkkaarttitel |
REQ-SCH-DOC-09-01-11 | SRS-RDM-005 SRS-RDM-002 SRS-RDM-001 SRS-TCH-008 AC-RDM-005 AC-RDM-002 AC-RDM-001 AC-TCH-008 | De eigenaar en het aantal collaborators dynamisch tonen op basis van het geselecteerde niveau |
REQ-SCH-DOC-09-01-12 | SRS-TCH-008 AC-TCH-008 | Filteren op beschikbare leerlingen ondersteunen met minimaal de opties Alle beschikbare leerlingen, Alleen actief online en Alleen nog niet gekoppeld |
REQ-SCH-DOC-09-01-13 | SRS-TCH-008 AC-TCH-008 | De filterwerking beperken tot de lijst Beschikbare leerlingen |
REQ-SCH-DOC-09-01-14 | SRS-TCH-008 AC-TCH-008 | Sortering van beschikbare leerlingen ondersteunen op achternaam, voornaam en recent toegevoegd |
REQ-SCH-DOC-09-01-15 | SRS-TCH-008 AC-TCH-008 | De sortering beperken tot de lijst Beschikbare leerlingen, tenzij een aparte sortering voor gekoppelde leerlingen expliciet is gespecificeerd |
REQ-SCH-DOC-09-01-16 | SRS-TCH-008 AC-TCH-008 | Per lijst selectie van één of meerdere leerlingen via checkbox ondersteunen |
REQ-SCH-DOC-09-01-17 | SRS-TCH-001 AC-TCH-001 | Per lijst een actie Selecteer alles aanbieden die alleen de op dat moment zichtbare regels binnen die lijst selecteert |
REQ-SCH-DOC-09-01-18 | SRS-TCH-008 AC-TCH-008 | Koppel geselecteerd alleen uitvoeren wanneer ten minste één beschikbare leerling is geselecteerd |
REQ-SCH-DOC-09-01-19 | SRS-TCH-008 AC-TCH-008 | Ontkoppel geselecteerd alleen uitvoeren wanneer ten minste één gekoppelde leerling is geselecteerd |
REQ-SCH-DOC-09-01-20 | SRS-TCH-001 AC-TCH-001 | Koppel- en ontkoppelacties eerst als niet-opgeslagen wijziging in de UI verwerken en niet direct als definitieve databasewijziging opslaan |
REQ-SCH-DOC-09-01-21 | SRS-TCH-001 AC-TCH-001 | Niet-opgeslagen wijzigingen pas definitief maken wanneer de docent kiest voor Wijzigingen opslaan |
REQ-SCH-DOC-09-01-22 | SRS-AUTH-001 SRS-TCH-008 AC-AUTH-001 AC-TCH-008 | Bij opslaan nieuwe niveauautorisaties aanmaken of bestaande inactieve autorisaties heractiveren voor leerlingen die naar de gekoppelde lijst zijn verplaatst |
REQ-SCH-DOC-09-01-23 | SRS-AUTH-001 SRS-TCH-008 AC-AUTH-001 AC-TCH-008 | Bij opslaan actieve niveauautorisaties intrekken of deactiveren voor leerlingen die naar de beschikbare lijst zijn verplaatst |
REQ-SCH-DOC-09-01-24 | SRS-TCH-001 AC-TCH-001 | De bulkopslag als één consistente transactie verwerken, zodat geen half opgeslagen toestand ontstaat bij fouten |
REQ-SCH-DOC-09-01-25 | SRS-AUTH-001 SRS-TCH-008 AC-AUTH-001 AC-TCH-008 | Bij opslaan opnieuw server-side valideren dat alle betrokken leerlingen nog een actieve docent-leerlingrelatie met de docent hebben |
REQ-SCH-DOC-09-01-26 | SRS-AUTH-001 SRS-TCH-008 AC-AUTH-001 AC-TCH-008 | Bij opslaan opnieuw server-side valideren dat de docent nog autorisatierechten heeft voor het geselecteerde niveau |
REQ-SCH-DOC-09-01-27 | SRS-AUTH-001 SRS-TCH-008 AC-AUTH-001 AC-TCH-008 | Voorkomen dat gemanipuleerde requestdata autorisaties wijzigt voor leerlingen of niveaus buiten de toegestane docentcontext |
REQ-SCH-DOC-09-01-28 | SRS-AUTH-001 SRS-NFR-AUD-001 AC-AUTH-001 AC-NFR-AUD-001 | Autorisatiewijzigingen auditbaar vastleggen met minimaal leerling, docent, niveau, actietype, uitvoerder en tijdstip |
REQ-SCH-DOC-09-01-29 | SRS-AUTH-001 SRS-TCH-008 AC-AUTH-001 AC-TCH-008 | Bij toevoegen of intrekken van niveauautorisaties systeemberichten voor betrokken leerlingen aanmaken of klaarzetten volgens de berichtregels van OefenHub |
REQ-SCH-DOC-09-01-30 | SRS-AUTH-001 SRS-TCH-008 AC-AUTH-001 AC-TCH-008 | Bij systeemberichten over autorisatiewijzigingen correcte enkelvoud/meervoud-tekst ondersteunen wanneer één of meerdere leerlingen of niveaus geraakt worden |
REQ-SCH-DOC-09-01-31 | SRS-TCH-008 AC-TCH-008 | Bestaande oefengeschiedenis en afgeronde exercise runs behouden wanneer een leerling van een niveau wordt ontkoppeld |
REQ-SCH-DOC-09-01-32 | SRS-AUTH-001 SRS-TCH-008 AC-AUTH-001 AC-TCH-008 | Actieve oefeningen die na autorisatie aan een geautoriseerd niveau worden toegevoegd automatisch beschikbaar maken voor gekoppelde leerlingen, voor zover de overige zichtbaarheidseisen kloppen |
REQ-SCH-DOC-09-01-33 | SRS-TCH-008 AC-TCH-008 | Een begrijpelijke lege staat tonen wanneer er geen beschikbare leerlingen voor dit niveau zijn |
REQ-SCH-DOC-09-01-34 | SRS-TCH-008 AC-TCH-008 | Een begrijpelijke lege staat tonen wanneer er geen gekoppelde leerlingen voor dit niveau zijn |
REQ-SCH-DOC-09-01-35 | SRS-TCH-001 AC-TCH-001 | Bij mislukte opslag door verlopen rechten, gewijzigde relaties of conflicten een functionele foutmelding tonen en geen technische details tonen |
REQ-SCH-DOC-09-01-36 | SRS-AUTH-001 SRS-AUTH-004 AC-AUTH-001 AC-AUTH-004 | Voorkomen dat technische identifiers zoals GUID's, interne relatie-id's of autorisatie-id's zichtbaar worden in breadcrumb, contextchips, leerlinglijsten of meldingen |
REQ-SCH-DOC-09-01-37 | SRS-RDM-005 SRS-RDM-002 SRS-RDM-001 SRS-TCH-008 AC-RDM-005 AC-RDM-002 AC-RDM-001 AC-TCH-008 | Alle zichtbare niveau-, leerling-, teller- en lijstwaarden dynamisch bepalen uit actuele database- en contextgegevens en mag mockupwaarden nooit als vaste data gebruiken |
11.7 Technische koppeling
Voor technische uitwerking zijn vooral relevant:
- 05 Autorisatie, policies en server-side contextcontrole voor bevoegdheidscontrole op docent, leerlinggroep en niveauautorisatie.
- 08 Oefencatalogus, niveaus, categorieën, oefeningen en modules voor niveaucontext, categorieën en gekoppelde oefeningen.
- 11 Rolflows technisch voor docentflows rond niveauautorisatie.
- 17 Readmodels, tellers, badges, caching en materialisatie voor actualisatie van toegangs- en voortgangsoverzichten na niveauautorisatie.
- 24 Frontend, Blazor, routing, state en componentopbouw voor selectie, bulkachtige scherminteractie en validatiestate.
- 25 Privacy, retentie, anonimisering en gegevensbescherming voor minimale leerlinggegevens in niveauautorisaties.