Skip to main content

UC-BEH-DOCSUP-005 — Categorie-detail binnen docentcontext bekijken

1. Kerngegevens

VeldWaarde
Usecase-IDUC-BEH-DOCSUP-005
NaamCategorie-detail binnen docentcontext bekijken
DomeinBeheerder / Docentondersteuning
Primaire actorBeheerder
Secundaire actor(en)Frontend, backend, database, autorisatiecomponent, docentondersteuningcomponent, historiecomponent
RolcontextActieve beheerdercontext; server-side bepaald vanuit de ingelogde gebruiker
Betrokken schermenContent > Docent ondersteuning
Gerelateerde usecasesUC-BEH-DOCSUP-001, UC-BEH-DOCSUP-002, UC-BEH-DOCSUP-003, UC-BEH-DOCSUP-004, UC-BEH-DOCSUP-006, UC-BEH-DOCSUP-007, UC-BEH-DOCSUP-008, UC-BEH-DOCSUP-009, UC-BEH-DOCSUP-010, UC-BEH-DOCSUP-011, UC-BEH-DOCSUP-012, UC-BEH-DOCSUP-013, UC-BEH-DOCSUP-014
Primaire entiteitenUsers, UserRoles, Roles, TeacherLevels, TeacherLevelCategories, TeacherLevelCategoryExercises, Exercises, ExerciseModules, ExerciseHistory, LevelCollaborators, LevelStudentAuthorizations, UserRelationships
Secundaire entiteiten / eventsRelationshipEvents, SystemMessages, beheerlog, docentondersteuning-readmodels, autorisatiecomponent
Gerelateerde popupsNiet van toepassing
PopupregisterOntwerpbronnen — Popup-register
MoSCoWMust

2. Omschrijving

Deze usecase beschrijft hoe een beheerder vanuit de structuurboom het readonly supportdetail van een categorie binnen het gekozen docentniveau bekijkt.

De detailweergave toont minimaal de centrale categorie-identiteit, het aantal concrete oefeningen binnen het gekozen niveau en de functionele zichtbaarheid voor leerlingen binnen dit niveau.

Centrale categorie-eigenschappen zoals naam, kleur en icoon worden hier niet gewijzigd. Voor centrale wijzigingen verwijst de beheerder naar Categorieën beheren.

Uitgangspunten

  • Docentondersteuning werkt altijd vanuit één gekozen docentcontext.
  • De beheerder heeft supportgerichte inzage, maar mutaties blijven beperkt tot expliciete beheeracties met audit.
  • Centrale categorie- en module-identiteit worden niet vanuit deze pagina beheerd.
  • Server-side autorisatie is leidend; clientstate mag geen objecttoegang afdwingen.
  • Historische runs, resultaten en PDF-contexten worden niet herschreven.

3. Scope

Deze usecase beschrijft:

  • Tonen van centrale categorie-identiteit binnen docentcontext.
  • Tonen van aantal concrete oefeningen onder de categorie in het gekozen niveau.
  • Tonen van leerlingzichtbaarheid binnen dit niveau.
  • Duidelijk onderscheiden van centraal categoriebeheer.
  • Blokkeren van categoriegebruik buiten de gekozen docentcontext.

Deze usecase beschrijft niet:

  • Centraal categoriebeheer; dat blijft bronhoudend in Beheerder / Categorieën beheren.
  • Centraal technisch modulebeheer; dat blijft bronhoudend in Beheerder / Modules beheren.
  • Volledig account- en rolbeheer; dat blijft bronhoudend in Beheerder / Accountbeheer.
  • Reguliere docentflows vervangen; docentondersteuning is supportgericht en niet de primaire docentinterface.
  • Live meekijken tijdens actieve oefeningen; beheerders mogen geschiedenis analyseren, maar niet live meekijken.
  • Popupteksten, knopteksten of inputlabels specificeren; usecases verwijzen uitsluitend naar PopupKey.

3.1 Afbakening met aangrenzende domeinen

OnderdeelAfbakening
Docent / OefenaanbodDocenten beheren hun eigen niveaus, categorieën en oefeningen via de reguliere docentflows; docentondersteuning biedt beheerderinzage en gerichte correctie.
Beheerder / Categorieën beherenCentrale categorie-identiteit, migratie en statuswijziging worden daar beheerd, niet in docentondersteuning.
Beheerder / Modules beherenTechnische modulemetadata en modulemigraties worden daar beheerd; docentondersteuning kan alleen concrete oefeningcontext inspecteren.
Beheerder / AccountbeheerRollen, accountstatus en account lifecycle horen daar; docentondersteuning gebruikt bestaande account- en relatiecontext.
Generiek / RelatiesRelaties en uitnodigingen blijven bronhoudend in het relatiedomein; docentondersteuning kan alleen bestaande geldige context gebruiken of een expliciete beheeractie auditen.

4. Pre-condities

IDVoorwaarde
PRE-001De gebruiker is succesvol ingelogd in OefenHub.
PRE-002De backend heeft server-side vastgesteld dat de gebruiker een actieve beheerderrol heeft.
PRE-003De beheerder bevindt zich binnen de beheeromgeving via Content > Docent ondersteuning.
PRE-004De pagina gebruikt actuele serverdata; clientstate, routeparameters of verborgen formuliervelden bepalen geen autorisatie, docentcontext, niveaucontext of oefeningcontext.
PRE-005De tab Structuur is geopend.
PRE-006Er is één categorie binnen een niveau van de geselecteerde docentcontext gekozen.

5. Post-condities

IDResultaat
POST-001De beheerder ziet readonly categoriegebruik binnen het docentniveau.
POST-002De centrale categorie-identiteit wordt alleen gelezen.
POST-003Leerlingzichtbaarheid wordt afgeleid uit actieve oefeningen en toegangregels.
POST-004Geen centrale categorie, categoriekoppeling of oefening is gewijzigd.
POST-005De beheerder kan waar nodig navigeren naar centrale categoriebeheercontext zonder bronlogica te dupliceren.

6. Trigger

De usecase start wanneer de beheerder in de structuurboom een categorie binnen een niveau selecteert.

7. Normale processtroom

StapActorComponent / contextHandelingResultaatBelangrijke gegevens
1BeheerderStructuurboomKlikt een categorie.De frontend vraagt het categorie-detail op.TeacherLevelCategoryId of LevelId + CategoryId.
2BackendAutorisatiecomponentControleert beheerdercontext.Alleen beheerder mag supportdetail openen.Server-side rolcontext.
3BackendDocentContextServiceValideert categoriegebruik binnen niveau en docentcontext.Categorie buiten context wordt geweigerd.TeacherLevelCategories.
4BackendCategorieReadModelLaadt centrale categorie-identiteit.Naam, kleur en icoon worden readonly getoond.Categories.
5BackendCategorieReadModelBerekent oefeningen en zichtbaarheid.Aantal concrete oefeningen en leerlingzichtbaarheid worden afgeleid.TeacherLevelCategoryExercises, Exercises.
6FrontendDetailpaneelToont categorie-detail.De beheerder ziet supportanalyse zonder mutatie.Readonly detailpaneel.

8. Alternatieve en exceptionele processtromen

StapSituatieAfhandelingPopupKeyDatamutatie
2Beheerdercontext is ongeldig.De backend weigert de actie en toont een veilige blokkade.POP-BEH-DOCSUP-NO-ACCESSGeen.
3De geselecteerde docent bestaat niet of is niet toegankelijk.De ondersteuningsweergave wordt niet geopend of wordt veilig teruggezet naar het overzicht.POP-BEH-DOCSUP-SAVE-ERRORGeen.
4Het gekozen object bestaat niet meer.De pagina toont dat het object niet beschikbaar is en ververst de context.Niet van toepassingGeen.
5De readmodeldata is tijdelijk incompleet.De beschikbare gegevens worden getoond met veilige ontbrekend-status; ontbrekend wordt niet als nul geïnterpreteerd.Niet van toepassingGeen.
6De beheerder gebruikt een oude route of clientstate.De backend negeert de clientcontext en herleidt de actuele context opnieuw.Niet van toepassingGeen.

9. Business rules

IDBusiness rule
BR-UC-BEH-DOCSUP-005-001Categorie-detail in docentondersteuning is readonly.
BR-UC-BEH-DOCSUP-005-002Centrale categorie-identiteit wordt niet vanuit docentondersteuning gewijzigd.
BR-UC-BEH-DOCSUP-005-003Leerlingzichtbaarheid wordt afgeleid uit actieve onderliggende oefeningen binnen het niveau.
BR-UC-BEH-DOCSUP-005-004Een categorie zonder actieve oefeningen is niet normaal zichtbaar voor leerlingen binnen dat niveau.
BR-UC-BEH-DOCSUP-005-005Categoriemigratie en statuswijziging horen bij Categorieën beheren.
BR-UC-BEH-DOCSUP-005-006Deze view mag geen nieuwe categorie aanmaken of koppelen.

10. Datavalidatie

IDValidatie
VAL-UC-BEH-DOCSUP-005-001TeacherLevelCategoryId of combinatie LevelId + CategoryId is verplicht.
VAL-UC-BEH-DOCSUP-005-002De categorie moet gekoppeld zijn aan een niveau binnen de gekozen docentcontext.
VAL-UC-BEH-DOCSUP-005-003Centrale categoriegegevens worden server-side geladen.
VAL-UC-BEH-DOCSUP-005-004Zichtbaarheid voor leerlingen wordt server-side afgeleid.
VAL-UC-BEH-DOCSUP-005-005Aantal oefeningen telt concrete oefeningen binnen het gekozen niveau, niet globaal over alle docenten.
VAL-UC-BEH-DOCSUP-005-006Routeparameters mogen geen centrale categorie buiten de context als docentgebruik presenteren.

11. Datamutaties en events

Object / eventMutatie
Geen functionele mutatieDeze usecase raadpleegt of navigeert zonder inhoudelijke domeinwijziging.
Geen eventEr wordt geen historyrecord geschreven voor alleen raadplegen.

12. Geen datamutaties

ObjectWaarom geen mutatie
UsersAlleen gelezen voor actor- en docentcontext.
TeacherLevelsAlleen gelezen tenzij deze usecase expliciet anders beschrijft.
TeacherLevelCategoriesAlleen gelezen tenzij deze usecase expliciet anders beschrijft.
TeacherLevelCategoryExercisesAlleen gelezen tenzij deze usecase expliciet anders beschrijft.
ExercisesAlleen gelezen tenzij deze usecase expliciet anders beschrijft.
ExerciseRunsHistorische runs worden nooit herschreven.

13. State diagram

Niet van toepassing.

Deze usecase wijzigt geen persistent statusobject. De getoonde selectie-, detail-, zoek- of navigatietoestand is uitsluitend tijdelijke UI-state binnen de beheerderweergave en wordt niet als domeinstatus opgeslagen.

14. Decision flow

15. Data lifecycle diagram

16. Sequence diagrammen

17. Popupverwijzingen

PopupKeyGebruik
Niet van toepassingDeze usecase gebruikt geen popupregister-popup.

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

OnderdeelAfleiding
Functioneel OntwerpFO beschrijft categorie-detail binnen docentondersteuning als readonly supportanalyse.
Technisch OntwerpTechnisch Ontwerp: technische rolflows, oefencatalogus, relatiebeheer en logging en historie beschrijven de technische uitwerking. TO vereist afleiding van leerlingzichtbaarheid uit actieve oefeningen binnen het niveau.
Software Requirements SpecificationSRS moet het onderscheid tussen centrale categorie-identiteit en categoriegebruik binnen docentcontext vastleggen.
DatabaseLeest TeacherLevelCategories, Categories, TeacherLevelCategoryExercises en Exercises; schrijft niets.

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-BEH-DOCSUP-005-001SRS-CAT-001
SRS-TCH-002
SRS-ADM-001
AC-CAT-001
AC-TCH-002
AC-ADM-001
Categoriedetail alleen tonen voor categoriegebruik binnen de gekozen docentcontext
REQ-UC-BEH-DOCSUP-005-002SRS-CAT-002
SRS-ADM-001
AC-CAT-002
AC-ADM-001
Centrale categorie-identiteit readonly tonen
REQ-UC-BEH-DOCSUP-005-003SRS-AUTH-001
SRS-RDM-001
SRS-RDM-005
SRS-CAT-001
SRS-LRN-005
SRS-ADM-001
AC-AUTH-001
AC-RDM-001
AC-RDM-005
AC-CAT-001
AC-LRN-005
AC-ADM-001
Leerlingzichtbaarheid binnen het niveau server-side afleiden
REQ-UC-BEH-DOCSUP-005-004SRS-CAT-001
SRS-LRN-009
SRS-ADM-001
AC-CAT-001
AC-LRN-009
AC-ADM-001
Het aantal concrete oefeningen binnen het gekozen niveau tonen
REQ-UC-BEH-DOCSUP-005-005SRS-CAT-002
SRS-TCH-002
SRS-ADM-008
SRS-ADM-001
AC-CAT-002
AC-TCH-002
AC-ADM-008
AC-ADM-001
Centrale categoriegegevens niet vanuit docentondersteuning wijzigen
REQ-UC-BEH-DOCSUP-005-006SRS-CAT-002
SRS-ADM-001
AC-CAT-002
AC-ADM-001
Voor centrale categorieaanpassingen verwijzen naar Categorieën beheren
REQ-UC-BEH-DOCSUP-005-007SRS-AUTH-001
SRS-CAT-001
SRS-TCH-002
SRS-ADM-001
AC-AUTH-001
AC-CAT-001
AC-TCH-002
AC-ADM-001
Categorieën buiten de docentcontext blokkeren