Skip to main content

UC-DOC-FP-001 — Docent-frontpage bekijken

1. Kerngegevens

VeldWaarde
Usecase-IDUC-DOC-FP-001
NaamDocent-frontpage bekijken
DomeinDocent / Frontpage en context
Primaire actorDocent
Secundaire actor(en)OefenHub frontend, OefenHub backend, routeguard, autorisatielaag, database, frontpage-readmodel
RolcontextIngelogde gebruiker met een actieve docentrol.
Betrokken schermenDocent-frontpage, docentnavigatie, profielmenu, frontpageblokken, systeemnotificatiecomponent na laden.
Gerelateerde usecasesUC-DOC-FP-002 — Docentcontext bepalen; UC-DOC-FP-003 — Leerlingenoverzichtsamenvatting tonen; UC-DOC-FP-004 — Niveaus- en inhoudsamenvatting tonen; UC-DOC-FP-005 — Gecombineerde docent-ouder-frontpage tonen; UC-GEN-ACC-002 — Inloggen en sessie verwerken; UC-GEN-NOT-001 — Systeemnotificatie tonen
Primaire entiteitenUsers, UserRoles, Roles, UserSettings, TeacherLevels, TeacherLevelCategories, Exercises, TeacherStudentAuthorizations
Secundaire entiteiten / eventsfrontpage-readmodel, routeguardbeslissing, systeemnotificatiecontrole na laden
Gerelateerde popupsNiet van toepassing
PopupregisterNiet van toepassing
MoSCoWMust

2. Omschrijving

Deze usecase beschrijft hoe een docent na succesvolle sessieverwerking de docent-frontpage bekijkt. De docent-frontpage geeft overzicht en oriëntatie, maar voert geen inhoudelijke beheeractie uit.

De pagina toont compacte samenvattingsblokken, zoals een leerlingenoverzicht en een niveaus-en-inhoudsamenvatting. Die blokken helpen de docent kiezen waar verder gewerkt wordt, maar zij vervangen niet de achterliggende routes voor leerlingen, autorisaties, oefenaanbod, geschiedenis of live meekijken.

De frontpage wordt server-side samengesteld op basis van de actuele docentcontext. De frontend mag de rol of context niet afleiden uit oude browserstate. Na normale weergave mag de generieke systeemnotificatiecomponent controleren of een notificatie getoond moet worden.

3. Scope

Deze usecase omvat wel:

  • openen van de docent-frontpage na geldige sessieverwerking
  • controleren dat de gebruiker een actieve docentcontext heeft
  • samenstellen van frontpageblokken als afgeleid readmodel
  • tonen van compacte navigatie- en oriëntatie-informatie
  • veilig omgaan met lege toestanden wanneer nog geen leerlingen, niveaus of oefeningen bestaan
  • doorverwijzen naar vaste routes zonder zelf beheer uit te voeren

Deze usecase omvat niet:

  • wijzigen van niveaukerngegevens, categorieën of oefeningen
  • toekennen of intrekken van niveau-autorisaties
  • openen van volledige leerlinggeschiedenis of resultaatdetails
  • starten van live meekijken of het tonen van live voortgang
  • beheer van relaties of uitnodigingen tussen docent en leerling
  • beheer van ouder-/voogdfunctionaliteit buiten de gecombineerde frontpageweergave
  • uitwerken van systeemnotificaties; die lopen via de generieke notificatie-usecases

DRY-afbakening: deze usecase beschrijft alleen de docent-frontpage- of contextlaag. De bronwaarheid voor leerlingenbeheer, oefenaanbodbeheer, live meekijken, relaties, profielinstellingen en systeemnotificaties blijft bij de daarvoor bedoelde usecases en ontwerpbronnen.

4. Pre-condities

IDVoorwaarde
PRE-001De gebruiker is succesvol ingelogd.
PRE-002De gebruiker heeft een actief intern OefenHub-account.
PRE-003De gebruiker heeft de actieve rol Docent.
PRE-004De backend kan de docentcontext server-side bepalen.
PRE-005De frontpageconfiguratie en brondata zijn beschikbaar voor uitlezing.

5. Post-condities

IDResultaat
POST-001De docent ziet alleen frontpageblokken die binnen de actuele docentcontext zichtbaar mogen zijn.
POST-002Er zijn geen leerlingen, autorisaties, niveaus, categorieën of oefeningen aangemaakt of gewijzigd.
POST-003Vervolgacties blijven afhankelijk van hun eigen route- en autorisatiecontrole.
POST-004Lege toestanden zijn veilig en lekken geen gegevens uit andere docentcontexten.
POST-005Systeemnotificaties kunnen na het laden via de generieke notificatieflow worden afgehandeld.

6. Trigger

De usecase start wanneer een ingelogde docent naar de docent-frontpage navigeert of na login automatisch op deze frontpage uitkomt.

7. Normale processtroom

StapActorScherm / componentActieSysteemresponsData / regel
1DocentDocent-frontpageOpent de docentomgeving.Frontend vraagt de docent-frontpagecontext op.Geen autorisatie op basis van clientstate.
2OefenHub frontendRouteguardStuurt request met de huidige route.Backend ontvangt sessiecontext en routecontext.UserId komt uit de server-side sessie.
3OefenHub backendAutorisatielaagControleert actieve gebruiker en rol.Alleen actieve docentcontext mag de docent-frontpage laden.UserRoles en Roles zijn leidend.
4OefenHub backendContextresolverBepaalt de beschikbare docentcontext.Docentcontext wordt voor deze request vastgesteld.UC-DOC-FP-002.
5OefenHub backendFrontpage readmodelBepaalt leerlingenoverzichtsamenvatting.Compacte teller- en statusinformatie wordt klaargezet.UC-DOC-FP-003.
6OefenHub backendFrontpage readmodelBepaalt niveaus- en inhoudsamenvatting.Compacte informatie over niveaus, categorieën en oefeningen wordt klaargezet.UC-DOC-FP-004.
7OefenHub backendFrontpage readmodelBepaalt welke vaste navigatiepunten zichtbaar zijn.Vervolgpunten verwijzen naar reguliere routes.Geen directe mutaties vanaf de frontpage.
8OefenHub frontendDocent-frontpageRendert de frontpage.Docent ziet intro, samenvattingsblokken en vaste navigatie.Geen datamutatie.
9OefenHub frontendSysteemnotificatiecomponentControleert na normale weergave op notificaties.Eventuele notificatie volgt generieke notificatieflow.UC-GEN-NOT-001.

8. Alternatieve en exceptionele processtromen

IDVanaf stapSituatieSysteemgedragPopup / meldingDatamutatie
ALT-0013Gebruiker heeft geen actieve docentrolFrontpage wordt niet geladen; routeguard leidt naar juiste context- of toegangafhandeling.Niet van toepassingGeen
ALT-0025Er zijn nog geen gekoppelde leerlingenLeerlingenblok toont veilige lege samenvatting.Componentmelding / lege staatGeen
ALT-0036Er zijn nog geen beheerde niveaus of oefeningenNiveaus-en-inhoudblok toont veilige lege samenvatting.Componentmelding / lege staatGeen
ALT-0048Frontpagebrondata is tijdelijk niet uitleesbaarSysteem toont foutafhandeling zonder gedeeltelijke of oude gegevens als waarheid te presenteren.Generieke foutafhandelingGeen
ALT-0059Er is een actieve systeemnotificatieNotificatie wordt na frontpageload via generieke flow getoond.Niet via popupregisterGeen frontpagemutatie

9. Business rules

IDRegel
BR-001De docent-frontpage is een overzichts- en oriëntatiepagina en geen beheer- of mutatiepagina.
BR-002Contextafhankelijke acties waarvoor eerst een leerling, niveau, categorie of oefening gekozen moet worden, starten niet als losse generieke frontpageactie.
BR-003Alle getoonde aantallen en samenvattingen worden server-side afgeleid uit bestaande brondata.
BR-004Clientstate, routeparameters of oude browsercontext mogen niet bepalen welke docentcontext actief is.
BR-005Systeemnotificaties blokkeren het laden van de frontpage niet en worden pas na normale weergave gecontroleerd.
BR-006De frontpage introduceert geen aparte frontpagecache als bron van waarheid.
BR-007Een gebruiker met de rol Leerling kan niet tegelijk docent zijn binnen dezelfde accountcontext.
BR-008Docent- en ouder-/voogdcontext mogen wel gecombineerd voorkomen en worden volgens vaste prioriteit samengesteld.
BR-009De specifieke flow UC-DOC-FP-001 mag alleen gegevens tonen of bepalen die binnen de actuele docent- of gecombineerde rolcontext vallen.
BR-010Lege staten mogen functioneel informatief zijn, maar mogen geen automatische domeinmutaties starten.
BR-011Vervolgacties vanaf de frontpage moeten opnieuw server-side worden gevalideerd op de doelroute.

10. Datavalidatie

Veld / objectValidatie
SessiegebruikerMoet server-side bekend, ingelogd en actief zijn.
RolcontextMoet worden afgeleid uit actieve UserRoles en Roles.
DocentcontextMag alleen actief zijn wanneer de gebruiker de actieve rol Docent bezit.
ClientstateMag alleen ondersteunend zijn en nooit als autorisatiebron gelden.
SamenvattingswaardenMoeten een eenduidige definitie hebben van bronrecords, statusvoorwaarden en contextfilters.
FrontpageweergaveMag geen gegevens tonen buiten de actuele docent- of gecombineerde rolcontext.
DocentfrontpageblokMoet alleen informatie tonen die als compacte samenvatting is toegestaan.
VervolgrouteMoet opnieuw via routeguard en autorisatielaag worden gecontroleerd.
Lege staatMoet duidelijk zijn en mag geen gegevens uit andere contexten tonen.

11. Datamutaties en events

Deze usecase is read-only voor domeindata. De backend voert alleen contextcontrole en readmodelopbouw uit.

OnderdeelGedrag
DocentcontextWordt per request server-side bepaald op basis van actieve gebruiker en actieve roltoekenningen.
Frontpage-readmodelWordt afgeleid uit bestaande brondata voor leerlingen, niveaus, categorieën, oefeningen en autorisaties.
NavigatiemodelWordt samengesteld als toegestane routeverwijzing; het opent nog geen vervolgusecase.
SysteemnotificatiecontroleVindt pas plaats nadat de frontpage normaal is geladen en hoort inhoudelijk bij UC-GEN-NOT-001.
DomeineventsNiet van toepassing; er wordt geen frontpage-, docent-, leerling-, niveau- of autorisatierecord gewijzigd.

12. Geen datamutaties

EntiteitReden
UsersDe frontpage- of contextflow wijzigt geen accountgegevens.
UserRolesRollen worden gelezen maar niet toegekend of ingetrokken.
RolesRoldefinities worden gelezen maar niet gewijzigd.
UserRelationshipsRelaties worden hoogstens gelezen voor context of samenvatting.
TeacherLevelsNiveaus worden gelezen of geteld, maar niet aangemaakt of gewijzigd.
TeacherLevelCategoriesCategorie-koppelingen worden gelezen of geteld, maar niet aangepast.
ExercisesOefeningen worden gelezen of geteld, maar niet geconfigureerd.
TeacherStudentAuthorizationsAutorisaties worden gelezen of geteld, maar niet aangepast.
SystemMessagesDeze usecase maakt geen systeemberichten aan.
SystemNotificationsSysteemnotificaties worden niet door deze usecase gemuteerd.

13. State diagram

Niet van toepassing als statusdiagram. Deze usecase wijzigt geen persistent statusobject. De tijdelijke requesttoestand bestaat alleen uit routecontrole, server-side contextbepaling, readmodelopbouw en rendering.

14. Decision flow

15. Data lifecycle diagram

16. Sequence diagrammen

16.1 Frontpage- of contextweergave

16.2 Vervolgroute vanaf frontpage

17. Popupverwijzingen

PopupKeyMomentDoel
Niet van toepassingGehele usecaseDeze frontpage- en contextafhandeling gebruikt routeguardgedrag, componentmeldingen, lege staten en bestaande generieke flows; er is geen domeinspecifieke popupregister-popup.

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

DoeldocumentAfleiding
Functioneel OntwerpBeschrijft de docent-frontpage als overzichts- en oriëntatiepagina met compacte, contextgebonden samenvattingsblokken.
Technisch OntwerpTechnisch Ontwerp: technische rolflows, readmodels en tellers en frontendcompositie beschrijven de technische uitwerking. Beschrijft dat docentcontext en frontpageblokken server-side worden afgeleid en geen aparte frontpagebron, sessietabel of commandflow vereisen.
Software Requirements SpecificationBeschrijft requirements voor actieve docentrol, server-side contextcontrole, read-only samenvattingsblokken, veilige lege toestanden en routeguardcontrole bij vervolgacties.
Database-informatieBeschrijft dat de gebruikte bronrecords en tellerdefinities eenduidig zijn beschreven zonder nieuwe frontpage-entiteiten.
Ontwerpbronnen/registersVerwerk business rules, autorisatiematrix en usecase-matrices; command- en eventregisters hoeven voor deze read-only flow niet te worden uitgebreid.

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-FP-001-001SRS-TCH-001
AC-TCH-001
De docent-frontpage alleen tonen aan gebruikers met een actieve docentrol
REQ-UC-DOC-FP-001-002SRS-AUTH-001
SRS-TCH-001
AC-AUTH-001
AC-TCH-001
De docent-frontpage server-side samenstellen op basis van actuele rol- en contextinformatie
REQ-UC-DOC-FP-001-003SRS-RDM-001
SRS-RDM-003
SRS-RDM-005
SRS-TCH-001
AC-RDM-001
AC-RDM-003
AC-RDM-005
AC-TCH-001
De docent-frontpage beperken tot overzichts- en oriëntatie-informatie
REQ-UC-DOC-FP-001-004SRS-TCH-001
SRS-ADM-001
AC-TCH-001
AC-ADM-001
Vanaf de docent-frontpage geen contextafhankelijke beheeractie uitvoeren zonder eerst naar de reguliere detailroute te gaan
REQ-UC-DOC-FP-001-005SRS-CAT-001
SRS-LRN-009
SRS-TCH-003
SRS-NFR-SEC-001
AC-CAT-001
AC-LRN-009
AC-TCH-003
AC-NFR-SEC-001
Veilige lege toestanden tonen wanneer nog geen leerlingen, niveaus of oefeningen bestaan
REQ-UC-DOC-FP-001-006SRS-TCH-001
SRS-POP-002
AC-TCH-001
AC-POP-002
Systeemnotificaties pas na normale frontpageload verwerken