Oefenaanbod, niveaus en categorieën
Dit subdomein beschrijft hoe een docent het eigen oefenaanbod opbouwt vanuit niveaus en categorieën. Het domein vormt de basis voor concrete oefeningconfiguratie, leerlingautorisaties en leerlingtoegang. De docent werkt steeds binnen een server-side bepaalde docentcontext. Een docent kan eigenaar zijn van een niveau of als actieve collaborator binnen een niveau meewerken.
Categorieën zijn centrale gedeelde domeinobjecten. Een docent kan een bestaande centrale categorie aan een niveau koppelen of via de docentflow een nieuwe centrale categorie aanmaken. Een docent beheert in deze flow niet vrij de centrale categorie-identiteit nadat deze in gebruik is. Centraal categoriebeheer, migratie, samenvoegen, deactiveren en correcties blijven onderdeel van beheerderflows en centrale ontwerpbronnen.
Usecase-overzicht
| Usecase-ID | Bestand | Naam |
|---|---|---|
| UC-DOC-AANB-001 | uc-doc-aanb-001_oefenaanbod-openen | Oefenaanbod openen |
| UC-DOC-AANB-002 | uc-doc-aanb-002_niveau-selecteren | Niveau selecteren |
| UC-DOC-AANB-003 | uc-doc-aanb-003_nieuw-niveau-aanmaken | Nieuw niveau aanmaken |
| UC-DOC-AANB-004 | uc-doc-aanb-004_niveaukerngegevens-wijzigen | Niveaukerngegevens wijzigen |
| UC-DOC-AANB-005 | uc-doc-aanb-005_categorieen-binnen-niveau-bekijken | Categorieën binnen niveau bekijken |
| UC-DOC-AANB-006 | uc-doc-aanb-006_bestaande-categorie-aan-niveau-koppelen | Bestaande categorie aan niveau koppelen |
| UC-DOC-AANB-007 | uc-doc-aanb-007_nieuwe-centrale-categorie-aanmaken-via-docentflow | Nieuwe centrale categorie aanmaken via docentflow |
| UC-DOC-AANB-008 | uc-doc-aanb-008_categoriegebruik-en-zichtbaarheid-afleiden | Categoriegebruik en zichtbaarheid afleiden |
Relevante documentatie
- Schermdocumentatie docent: oefenaanbod, niveaus, categorieën en vervolgschermen.
- Mockups HTML voor docentpagina’s.
- Ontwerpbronnen voor business rules, autorisatie, domeinobjecten, statusmodellen, command-register en event-register.
- Database-informatie voor niveaus, categorieën, oefeningen, collaborators en audit/history.
- Generieke relatie-usecases voor docent-docentrelaties en docent-leerlingrelaties.
- Leerling-usecases voor oefenaanbod en toegang, waarin de leerlingzijde van zichtbaarheid en toegang is uitgewerkt.
Domeinafbakening
Binnen dit subdomein vallen:
- openen van de docentpagina Oefenaanbod;
- selecteren van een niveau;
- aanmaken van een nieuw niveau;
- wijzigen van niveaukerngegevens;
- bekijken van categorieën binnen een niveau;
- koppelen van bestaande centrale categorieën;
- aanmaken van een nieuwe centrale categorie via de docentflow;
- afleiden van categoriegebruik en leerlingzichtbaarheid.
Niet binnen dit subdomein vallen:
- configureren, bewerken, activeren en testen van concrete oefeningen;
- leerlingniveau-autorisaties beheren;
- resultaten en geschiedenis bekijken;
- online leerlingen en live meekijken;
- collaboratorbeheer en eigendomsoverdracht;
- beheerdermigratie of samenvoegen van centrale categorieën;
- technische modulemigratie.
Hoofdobjecten
| Object | Rol binnen dit subdomein |
|---|---|
| Level | Onderwijscontext waarin de docent categorieën en oefeningen beheert. |
| Category | Centrale gedeelde categorie-identiteit met naam, kleur en icoon. |
| LevelCategory | Koppeling tussen een niveau en een centrale categorie. |
| Exercise | Onderliggende concrete oefening die de leerlingzichtbaarheid van een categorie kan activeren. |
| LevelCollaborator | Geeft een docent bewerkrechten binnen een niveau zonder eigenaar te zijn. |
| CategoryHistory | Legt centrale categorieaanmaak of beheerwijzigingen auditbaar vast. |
Bijzondere regels
- Een docent werkt altijd binnen een server-side gevalideerde docentcontext.
- Een niveau heeft precies één actuele eigenaar.
- Een actieve collaborator kan binnen een niveau meewerken aan categorieën en oefeningen volgens de collaboratorrechten.
- Categorieën zijn centrale gedeelde objecten, geen privé-objecten van een docent.
- Hergebruik van bestaande categorieën heeft de voorkeur boven het aanmaken van doublures.
- Een nieuwe categorie via docentflow wordt direct centrale categorie en wordt aan het geselecteerde niveau gekoppeld.
- Centrale categorienaam, kleur en icoon vormen gedeelde identiteit en worden niet vrij gewijzigd door docenten nadat de categorie in gebruik is.
- Een categorie wordt voor leerlingen alleen zichtbaar wanneer binnen het actieve niveau minimaal één actieve toegankelijke oefening aanwezig is.
- Docentbeheerzichtbaarheid en leerlingzichtbaarheid zijn verschillende afleidingen.
- Afgeleide aantallen en zichtbaarheid mogen technisch gecachet worden, maar cache is geen bron van waarheid.
Popupverwijzingen
| PopupKey | Gebruik |
|---|---|
| POP-DOC-AANB-CATEGORY-ALREADY-LINKED | Voorkomt dubbele koppeling van dezelfde categorie aan hetzelfde niveau. |
| POP-DOC-AANB-CATEGORY-LINK-FAILED | Geeft veilige foutafhandeling wanneer koppeling niet kan worden opgeslagen. |
| POP-DOC-AANB-NEW-CATEGORY-WARNING | Waarschuwt dat een nieuwe categorie centrale gedeelde identiteit krijgt. |
| POP-DOC-AANB-CATEGORY-CREATE-FAILED | Geeft veilige foutafhandeling wanneer categorieaanmaak of directe koppeling faalt. |
Popupteksten, knopteksten en themakeuzes staan centraal in het popup-register en worden niet in usecases gedupliceerd.
Diagramgebruik
De afzonderlijke usecases gebruiken vooral sequence diagrams en decision flows. State diagrams zijn alleen opgenomen wanneer een statusobject daadwerkelijk wordt geraakt. Voor dit subdomein zijn de meeste processen koppel-, readmodel- of afleidingsflows en geen zelfstandige statuslifecycle. ERD’s worden niet in usecases opgenomen; die horen in database-informatie en domeinobjecten.