Skip to main content

Usecases

Deze sectie bevat de procesgerichte usecasebeschrijvingen van OefenHub. Usecases beschrijven functioneel gedrag, autorisatie, server-side controles, beslismomenten, datamutaties, events, readmodels, audit en de samenhang tussen schermen en domeinobjecten.

Usecases zijn bewust niet primair per scherm geordend. Eén proces kan meerdere schermen gebruiken en één scherm kan in meerdere processen voorkomen. De koppeling tussen usecases, schermen, popups en requirements wordt vastgelegd in de centrale matrices en registers.

Domeinen

DomeinOmschrijving
GeneriekRoloverschrijdende en applicatiebrede processen, zoals accounttoegang, profiel, relaties, berichten, meldingen en systeemnotificaties.
LeerlingLeerlingprocessen rond oefenaanbod, niveaucontext, oefenen, voortgang, resultaten, geschiedenis en gedeelde oefeningen.
Ouder/voogdOuder-/voogdprocessen rond gekoppelde kinderen, resultaten, geschiedenis en live meekijken.
DocentDocentprocessen rond frontpage, oefenaanbod, niveaus, categorieën, oefeningen, leerlingen, autorisaties, resultaten en live meekijken.
BeheerderBeheerprocessen rond site-instellingen, content, templates, systeemnotificaties, modules, categorieën, accountbeheer, docentondersteuning en beheerlogging.

Opbouw van usecases

Iedere uitgewerkte usecase gebruikt dezelfde 19-hoofdstukkenstructuur:

  1. Kerngegevens
  2. Omschrijving
  3. Scope
  4. Pre-condities
  5. Post-condities
  6. Trigger
  7. Normale processtroom
  8. Alternatieve en exceptionele processtromen
  9. Business rules
  10. Datavalidatie
  11. Datamutaties en events
  12. Geen datamutaties
  13. State diagram
  14. Decision flow
  15. Data lifecycle diagram
  16. Sequence diagrammen
  17. Popupverwijzingen
  18. Afleiding naar Functioneel Ontwerp / Technisch Ontwerp / Software Requirements Specification
  19. SRS-trace

Acceptatiecriteria worden niet in usecases opgenomen. Hoofdstuk 19 bevat voortaan alleen SRS-trace: de usecase verwijst naar centrale SRS-*- en AC-*-items en bevat geen tweede normatieve requirementtekst.

Documentatieregels

OnderwerpRegel
SchermenUsecases verwijzen naar officiële scherm-ID’s en schermdocumentatie, maar beschrijven geen volledige schermopbouw opnieuw.
PopupsUsecases verwijzen uitsluitend naar PopupKey; popupteksten, knopteksten, inputlabels, acties en thema’s blijven centraal in popupregister en popup-themes.
AutorisatieServer-side autorisatie is leidend; clientstate, routeparameters of browsercontext mogen toegang nooit verruimen.
DatamutatiesMuterende flows benoemen expliciet welke records wijzigen en welke events of historyregels ontstaan.
Read-only flowsRead-only flows benoemen expliciet dat zij geen domeinmutaties uitvoeren.
DiagrammenMermaid-diagrammen worden functioneel gebruikt en afgestemd op de concrete usecase; generieke of decoratieve diagrammen worden vermeden.
AfbakeningUsecases verwijzen naar andere domeinen wanneer die bronhoudend zijn en dupliceren die flows niet.
SRS-traceUsecase-afleidingen zijn traceankers naar centrale SRS/AC-items; normatieve requirements en acceptatiecriteria staan uitsluitend in de SRS.

Registers en matrices

Ontwerpbronnen

Template

Nieuwe usecases worden opgezet volgens het centrale template: