Skip to main content

UC-BEH-POP-001 — Popupoverzicht bekijken

1. Kerngegevens

VeldWaarde
Usecase-IDUC-BEH-POP-001
NaamPopupoverzicht bekijken
DomeinBeheerder / Popupbeheer
Primaire actorBeheerder
Secundaire actor(en)Frontend, backend, autorisatiecomponent, database
RolcontextActieve beheerdercontext; combinatierollen geven geen extra rechten binnen popupbeheer
Betrokken schermenSite Instellingen > Popups beheren
Gerelateerde usecasesUC-BEH-POP-002, UC-BEH-POP-005, generieke usecases met PopupKey-verwijzingen
Primaire entiteitenPopupDetails, PopupDetailsHistory
Secundaire entiteiten / eventsPopupType, PopupVariant, PopupInputType, ButtonTheme, Users, popup-register, popup-themes
Gerelateerde popupsNiet van toepassing
PopupregisterOntwerpbronnen — Popup-register
MoSCoWMust

2. Omschrijving

De beheerder opent het popupoverzicht met bestaande popuprecords. Het systeem toont alleen records die al door code en database-migraties bekend zijn en ondersteunt zoeken of filteren op technische sleutel, domein, titel en tekst.

Popupbeheer is geen vrije popupbuilder. Het beheer werkt binnen bestaande popuprecords en respecteert de scheiding tussen beheerbare inhoud en codegedreven structuur. Popupteksten, knopteksten, acties, inputvelden en themekeuzes worden niet in usecases gedupliceerd.

3. Scope

Deze usecase beschrijft:

  • Openen van het overzicht Popups beheren.
  • Server-side controleren dat de gebruiker beheerder is.
  • Tonen van bestaande popuprecords met technische sleutel, domein, variant, theme, titel en korte tekstpreview.
  • Zoeken en filteren binnen de bestaande dataset.
  • Tonen welke records detail- of geschiedenisacties ondersteunen.
  • Veilige lege-staat- en toegang-geweigerdafhandeling.

Deze usecase beschrijft niet:

  • Nieuwe popuprecords aanmaken via de GUI.
  • Popuprecords verwijderen of deactiveren via de GUI.
  • PopupKey, Variant, ThemeKey, knopacties of CustomRendererKey wijzigen.
  • Popup-themes beheren.
  • Runtime bepalen wanneer popups in gebruikersflows verschijnen.
  • Popupteksten of knopteksten buiten het popupregister dupliceren.
  • Onderliggende code, migraties of seeddefinities wijzigen via de beheerinterface.

4. Pre-condities

IDVoorwaarde
PRE-001De gebruiker is ingelogd en heeft een actief intern OefenHub-account.
PRE-002De gebruiker heeft server-side een actieve beheerderrol.
PRE-003De route of actie ligt binnen Site Instellingen > Popups beheren.
PRE-004De frontend gebruikt actuele serverrespons en vertrouwt niet op oude clientstate.
PRE-005Popupregister en popup-themes zijn als bronafspraak beschikbaar voor interpretatie van popuprecords.

5. Post-condities

IDResultaat
POST-001De beheerder ziet het popupoverzicht of een veilige blokkade.
POST-002Alle getoonde records zijn bestaande popuprecords.
POST-003Technische velden zijn zichtbaar als read-only metadata waar functioneel relevant.
POST-004Er is geen popuprecord, historyrecord of runtimegebruikersdata gewijzigd.

6. Trigger

De beheerder opent Site Instellingen > Popups beheren.

7. Normale processtroom

StapActorScherm / componentActieSysteemresponsData / regel
1BeheerderSite InstellingenKiest Popups beheren.Frontend vraagt het overzicht op.Server-side autorisatie verplicht.
2BackendAutorisatiecomponentControleert account en beheerderrol.Alleen actieve beheerdercontext krijgt toegang.Users, Roles, UserRoles.
3BackendPopupserviceLaadt bestaande popuprecords.Nieuwe of onbekende sleutels worden niet geconstrueerd.PopupDetails.
4BackendReadmodelBepaalt standaardsortering, filteropties en previewvelden.Overzicht bevat technische metadata en beheerbare samenvatting.Readmodel.
5FrontendOverzichtRendert lijst, zoekveld en filtermogelijkheden.Beheerder ziet bestaande records of veilige lege staat.Geen mutatie.
6BeheerderOverzichtZoekt of filtert.Backend levert gefilterde dataset.Read-only query.
7FrontendOverzichtToont acties Open detail en Geschiedenis waar beschikbaar.Vervolgacties starten aparte usecases.UC-BEH-POP-002, UC-BEH-POP-005.

8. Alternatieve en exceptionele processtromen

IDVanaf stapSituatieSysteemgedragPopup / meldingDatamutatie
ALT-0012Geen actieve beheerderrol.Backend blokkeert beheerdata.Inline toegang geweigerd of veilige redirect.Geen.
ALT-0023Er zijn geen popuprecords beschikbaar.Het overzicht toont een neutrale lege staat.Niet van toepassing.Geen.
ALT-0033Databasequery faalt.Het systeem toont een veilige foutmelding zonder interne details.Inline foutmelding.Geen.
ALT-0046Zoekopdracht levert geen resultaten op.Het overzicht toont een lege resultaatstaat met behoud van zoekcontext.Niet van toepassing.Geen.
ALT-0056Zoekwaarde bevat onveilige invoer.De backend behandelt invoer als zoektekst en voert geen actieve inhoud uit.Inline validatie waar nodig.Geen.

9. Business rules

IDRegel
BR-UC-BEH-POP-001-001Het overzicht toont uitsluitend bestaande popuprecords.
BR-UC-BEH-POP-001-002Zoeken, filteren en sorteren wijzigen geen popupdata.
BR-UC-BEH-POP-001-003Het overzicht mag geen nieuwe popupdefinitie aanmaken, activeren of verwijderen.
BR-UC-BEH-POP-001-004Technische sleutels en codegedreven velden worden herkenbaar als read-only metadata behandeld.
BR-UC-BEH-POP-001-005Popupbeheer blijft gekoppeld aan het centrale popupregister en popup-themes.

10. Datavalidatie

Veld / objectValidatie
BeheerdercontextServer-side actieve beheerderrol verplicht.
PopuprecordHet record moet bestaan en als bestaand popuprecord bekend zijn.
PopupKeyMoet bestaan en blijft read-only.
VariantMoet een bekende PopupVariant zijn en blijft read-only.
ThemeKeyBlijft read-only en moet verwijzen naar een bestaande themedefinitie.
KnopactiesActionCallMethod en technische actie-identifiers zijn read-only.
CustomRendererKeyAlleen relevant bij Custom-popups en blijft read-only.
TitelMaximaal 50 tekens wanneer beheerbaar.
TekstMaximaal 1000 tekens wanneer beheerbaar.
KnoptekstMaximaal 20 tekens per zichtbare knop wanneer beheerbaar.
InputlabelAlleen beheerbaar wanneer de bestaande variant een inputveld ondersteunt.
RenderingBeheerbare tekst mag geen actieve of onveilige inhoud veroorzaken.
TijdstipWijzigingsmomenten worden in UTC vastgelegd.

11. Datamutaties en events

StapTypeEntiteit / eventMutatie
Alle stappenDatabaseNiet van toepassingDeze usecase is read-only en wijzigt geen popuprecords of historyrecords.

12. Geen datamutaties

EntiteitReden
PopupDetailsAlleen gelezen; de usecase wijzigt geen popuprecord.
PopupDetailsHistory en PopupDetailsHistoryItemsAlleen gelezen wanneer geschiedenisindicaties of historydetails nodig zijn.
Users, Roles en UserRolesAlleen gebruikt voor autorisatiecontrole.
PopupKey, Variant, ThemeKey, ActionCallMethod en CustomRendererKeyTechnische ankers blijven read-only en codegedreven.
Popupregister en popup-themesOntwerpbronnen blijven bronhoudend en worden niet door de beheer-UI gewijzigd.
Runtime gebruikersdataLeerling-, docent-, ouder-/voogddata, oefenruns, meldingen, relaties en berichten worden niet gewijzigd.

13. State diagram

Deze usecase heeft geen persistent state diagram. Het openen, zoeken en filteren van het popupoverzicht is read-only readmodelgedrag.

14. Decision flow

15. Data lifecycle diagram

16. Sequence diagrammen

17. Popupverwijzingen

Usecases verwijzen alleen naar PopupKey. Popupteksten, knopteksten, acties, inputvelden en themakeuzes worden centraal beheerd in het popupregister en de popup-themes.

PopupKeyMomentDoel
Niet van toepassingGeen bevestigings- of invoerpopup in de normale processtroom.Inline meldingen, lege staten of veilige redirects volstaan.

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

DoeldocumentAfleiding
Functioneel OntwerpBeschrijft welke popupvelden beheerbaar zijn, welke velden read-only blijven en hoe de beheerder bestaande popuprecords raadpleegt of wijzigt.
Technisch OntwerpTechnisch Ontwerp: domeinmodel en admin-eigenaarschap, databaseontwerp en frontendcompositie beschrijven de technische uitwerking. Beschrijf server-side autorisatie, readmodelopbouw en geen command- of eventregisteruitbreiding voor read-only raadpleegacties, inclusief bescherming van technische sleutels en codegedreven velden.
Software Requirements SpecificatieBeschrijft requirements voor toegangscontrole, validatiegrenzen, veilige foutafhandeling, immutable history en de scheiding tussen beheerbare tekst en technische popupdefinities.
Database-informatieControleer aansluiting van PopupDetails, PopupDetailsHistory en PopupDetailsHistoryItems, inclusief veldlengtes, concurrency en auditvelden.
Ontwerpbronnen en registersHoud popupregister, popup-themes, autorisatiematrix, usecase-popup-matrix en usecase-requirement-matrix consistent met deze usecase.

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-POP-001-001SRS-ADM-002
SRS-ADM-001
AC-ADM-002
AC-ADM-001
De actie uitsluitend toestaan aan gebruikers met een actieve beheerderrol
REQ-UC-BEH-POP-001-002SRS-AUTH-001
SRS-AUTH-002
SRS-ADM-002
SRS-ADM-001
AC-AUTH-001
AC-AUTH-002
AC-ADM-002
AC-ADM-001
Alle beheerautorisatie server-side controleren en mag niet vertrouwen op clientstate of routeparameters
REQ-UC-BEH-POP-001-003SRS-AUTH-004
SRS-ACC-003
SRS-ACC-005
SRS-ADM-001
SRS-POP-001
SRS-NFR-SEC-001
AC-AUTH-004
AC-ACC-003
AC-ACC-005
AC-ADM-001
AC-POP-001
AC-NFR-SEC-001
Onbekende, ontbrekende of niet-toegankelijke popuprecords veilig afhandelen zonder technische details te tonen
REQ-UC-BEH-POP-001-004SRS-ADM-001
SRS-POP-001
AC-ADM-001
AC-POP-001
PopupKey, Variant, ThemeKey, knopacties en CustomRendererKey read-only houden in de beheerinterface
REQ-UC-BEH-POP-001-005SRS-ADM-001
SRS-POP-001
AC-ADM-001
AC-POP-001
Popupteksten, knopteksten, inputlabels en themekeuzes niet dupliceren buiten het centrale popupregister en popup-themes
REQ-UC-BEH-POP-001-006SRS-ADM-002
SRS-ADM-001
SRS-POP-001
SRS-NFR-AUD-001
AC-ADM-002
AC-ADM-001
AC-POP-001
AC-NFR-AUD-001
Deze raadpleeg- of controleflow uitvoeren zonder PopupDetails of historyrecords te wijzigen
REQ-UC-BEH-POP-001-007SRS-RDM-001
SRS-ADM-001
AC-RDM-001
AC-ADM-001
Zoek-, filter-, selectie- en detailacties behandelen als read-only readmodelgedrag
REQ-UC-BEH-POP-001-009SRS-ADM-001
AC-ADM-001
Titel, tekst, knopteksten en inputlabels valideren op de vastgestelde maximale lengtes wanneer deze velden beheerbaar zijn
REQ-UC-BEH-POP-001-010SRS-RDM-001
SRS-RDM-004
SRS-ADM-001
SRS-POP-001
AC-RDM-001
AC-RDM-004
AC-ADM-001
AC-POP-001
De usecase Popupoverzicht bekijken uitvoeren binnen de afbakening van Beheerder / Popupbeheer