6. Site instellingen - Frontpage
Dit document beschrijft de beheerpagina waarmee een beheerder frontpage-inhoud per gebruikerscontext beheert. De mockup V1.9 bevat vijf zichtbare contexttabs: Niet ingelogd, Zonder rol, Beheerder, Docent en Leerling. De bredere Functioneel Ontwerp, Technisch Ontwerp, Software Requirements Specification- en databasecontext kent daarnaast de technische contextwaarde Guardian; in de Nederlandstalige interface is dat Ouder/voogd. Omdat de actuele mockup geen aparte Ouder/voogd-tab en geen bijbehorende PNG bevat, wordt die context hier niet als afzonderlijke schermsectie uitgewerkt. Wel geldt dat uitbreiding naar een Ouder/voogd-tab dezelfde structuur moet volgen en technisch ContextType=Guardian gebruikt.
Schermbreed geldt dat header, beheerdernavigatie, berichteningang, profielmenu en footer buiten scope van dit schermdocument vallen. De zichtbare mockupwaarden, namen, datums, publicatiemomenten, historyregels en tekstinhoud zijn dynamische voorbeeldwaarden of beheerbare inhoud; zij mogen niet als vaste productiegegevens worden beschreven.
Frontpagebeheer is geen vrije pagebuilder. Per context worden vooraf bepaalde tekstvelden, knoplabels, zichtbare onderdelen, preview-/publicatie-informatie en geschiedenis getoond. De structurele layout, blokvolgorde, renderlocaties en runtime-afleiding van teller- of samenvattingswaarden blijven codegedreven.
6.1 Niet ingelogd
6.1.1 Schermafbeelding

6.1.2 Scherm meta data
| Veld | Waarde |
|---|---|
| Scherm-ID | SCH-BEH-05-01 |
| Schermnaam | Site instellingen — Frontpage — Tab 01 — Niet ingelogd |
| Doelgroep / onderdeel | Beheerder |
| Bronbestand | oefenhub_beheerder_05_sys_01_frontpage_V1_9.html |
| Mockupversie | V1.9 |
| Screenshotbestand | oefenhub_beheerder_05_sys_01_frontpage_v1_9_tab_01_niet_ingelogd.png |
| Processtap / context | Beheerpagina binnen Site instellingen voor de frontpage-context Niet ingelogd; beheerder configureert hier de openbare startpagina voor bezoekers zonder login. |
| Documentatiestatus | Uitgewerkt op basis van HTML-mockup, PNG-screenshot, Functioneel Ontwerp, Technisch Ontwerp, Software Requirements Specification en ondersteunende documentatie. |
| Opmerkingen | Header, beheerdernavigatie, berichteningang, profielmenu en footer vallen buiten scope. Contexttabs die niet actief zijn, zijn alleen navigatie naar een andere tab binnen dezelfde beheerpagina. |
| Route / URL-patroon | Functioneel routepatroon: site-instellingen/frontpage met actieve contexttab Niet ingelogd; de technische route wordt door de applicatieroutering bepaald. |
| Autorisatie / vereiste rol-context | Actieve beheerdercontext; toegang en opslag worden server-side beperkt tot gebruikers met beheerderrechten. |
| Primair domeinobject / hoofdentiteit | Frontpagebeheer voor context Public / Niet ingelogd, met beheerbare contentblokken, knoplabels en contextspecifieke zichtbaarheid. |
| Gerelateerde schermen / navigatie | Site instellingen, live publieke frontpage, Features voor registratie-/loginrandvoorwaarden en overige frontpage-contexttabs. |
| Data-karakter | Beheerbare content, contextspecifieke zichtbaarheid, runtime-previewinformatie en audit-/geschiedenisinformatie. Zichtbare mockupwaarden zijn dynamisch of voorbeelddata. |
6.1.3 Functionele beschrijving
Deze tab beheert de publieke frontpage die zichtbaar is voordat een bezoeker inlogt of registreert. De inhoud is gericht op uitleg, vertrouwen en de eerste route naar inloggen of registreren.
De beheerder kan tekstuele inhoud en knoplabels aanpassen, maar niet de bestemming van de knoppen, de layout, de volgorde of de visuele opbouw van de publieke frontpage. Die onderdelen blijven codegedreven.
Het registratieblok is een zichtbaar onderdeel van de publieke frontpage, maar de toggle in deze view zet registratie niet zelfstandig aan. Wanneer publieke registratie sitebreed niet beschikbaar is, mag het registratieblok niet alsnog functioneel registreren mogelijk maken.
Bij het openen van deze tab wordt alleen de actieve context inhoudelijk getoond en bewerkt. Wisselen van tab verandert de beheercontext; het is geen gecombineerde weergave van alle frontpages tegelijk. Niet-actieve tabs mogen geen onopgeslagen wijziging van de actieve tab overschrijven. Wanneer er onopgeslagen wijzigingen bestaan, moet de applicatie voorkomen dat die ongemerkt verloren gaan door opslaan, annuleren of een expliciete bevestiging af te dwingen.
De velden in het blok voor tekst en uitleg zijn beheerbaar en worden opgeslagen als frontpagecontent. De schakelaars bij zichtbare onderdelen sturen uitsluitend de aanwezigheid van codevaste blokken binnen deze context. Zij wijzigen niet de inhoud, autorisaties of onderliggende domeindata van die blokken.
De rechterkolom met preview, publicatie-informatie en geschiedenis is ondersteunend. Preview openen toont de frontpagevariant zoals die voor deze context wordt gerenderd, met mockup- en runtimewaarden opnieuw bepaald vanuit de actuele context. Wijzigingen opslaan verwerkt alleen de velden en zichtbaarheid van de actieve tab. De geschiedenis toont auditregels met minimaal actor, tijdstip, gewijzigd veld en oude/nieuwe waarde.
Leegstaten en foutstaten horen expliciet afgehandeld te worden. Wanneer een contentblok nog niet bestaat, blijft de vaste renderlocatie bestaan maar wordt er geen automatisch seedrecord aangemaakt. Wanneer opslaan mislukt door validatie, autorisatie, concurrency of serverfout, blijven invoerwaarden zichtbaar en krijgt de beheerder een duidelijke foutmelding. Wanneer geschiedenis ontbreekt, wordt een lege maar geldige geschiedenisweergave getoond.
Alle opslag en previewacties worden server-side gecontroleerd op actieve beheerdercontext. Frontend-zichtbaarheid van deze beheerpagina of van een tab is niet voldoende beveiliging.
6.1.4 UI-elementen en velddefinities
| Element-ID | Type | GUI-verwijzing | Omschrijving | Zichtbaar label | Opmerking | Technische naam |
|---|---|---|---|---|---|---|
| SCH-BEH-05-01-TAB01 | TAB | Contexttabs | Selecteert de frontpage-context Niet ingelogd binnen Frontpagebeheer. | Niet ingelogd | De andere contexttabs zijn zichtbaar als navigatie, maar niet inhoudelijk actief. | PublicFrontpageTab |
| SCH-BEH-05-01-S01 | S | Doelgroep / Focus / Hoofdacties | Read-only contextsamenvatting die uitlegt voor welke gebruikerssituatie deze frontpagevariant bedoeld is. | DOELGROEP / FOCUS / HOOFDACTIES | Informerende contextkaarten; niet bedoeld als invoer. | PublicFrontpageContextSummarySection |
| SCH-BEH-05-01-S02 | S | Teksten & knoppen | Bewerkbaar hoofdblok voor de tekstuele content van de context Niet ingelogd. | Teksten & knoppen | Beheert alleen vooraf bepaalde tekst- en labelvelden. | PublicFrontpageContentSection |
| SCH-BEH-05-01-F01 | F | Hoofdtitel | Bewerkbaar veld binnen de frontpagecontext Niet ingelogd. | Hoofdtitel | Tekstueel beheerbaar; de renderlocatie en het gebruik van het veld blijven codegedreven. | PublicFrontpageTitleInput |
| SCH-BEH-05-01-F02 | F | Introductietekst | Bewerkbaar veld binnen de frontpagecontext Niet ingelogd. | Introductietekst | Tekstueel beheerbaar; de renderlocatie en het gebruik van het veld blijven codegedreven. | PublicFrontpageIntroTextInput |
| SCH-BEH-05-01-F03 | F | Primaire knop | Bewerkbaar veld binnen de frontpagecontext Niet ingelogd. | Primaire knop | Tekstueel beheerbaar; de renderlocatie en het gebruik van het veld blijven codegedreven. | PublicPrimaryButtonLabelInput |
| SCH-BEH-05-01-F04 | F | Secundaire knop | Bewerkbaar veld binnen de frontpagecontext Niet ingelogd. | Secundaire knop | Tekstueel beheerbaar; de renderlocatie en het gebruik van het veld blijven codegedreven. | PublicSecondaryButtonLabelInput |
| SCH-BEH-05-01-S03 | S | Zichtbare onderdelen | Blok met contextspecifieke zichtbaarheidskeuzes voor de frontpagevariant Niet ingelogd. | Zichtbare onderdelen | Beheert alleen zichtbaarheid van codevaste blokken, niet de layout of volgorde. | PublicFrontpageVisibilitySection |
| SCH-BEH-05-01-CHK01 | FORM | Zichtbare onderdelen > Introblok | Welkomstblok bovenaan de pagina met titel, uitleg en hoofdactie. | Introblok | Toggle binnen de actieve context; zichtbaarheid mag niet als vrij contentblok worden geïnterpreteerd. | PublicShowIntroBlockToggle |
| SCH-BEH-05-01-CHK02 | FORM | Zichtbare onderdelen > Registratieblok | Registratieblok voor publieke registratie, alleen zinvol wanneer registreren ook functioneel beschikbaar is. | Registratieblok | Toggle binnen de actieve context; zichtbaarheid mag niet als vrij contentblok worden geïnterpreteerd. | PublicShowRegistrationBlockToggle |
| SCH-BEH-05-01-CHK03 | FORM | Zichtbare onderdelen > Uitlegblokken | Aanvullende uitlegblokken over werking en doelgroep. | Uitlegblokken | Toggle binnen de actieve context; zichtbaarheid mag niet als vrij contentblok worden geïnterpreteerd. | PublicShowExplanationBlocksToggle |
| SCH-BEH-05-01-S04 | S | Preview & publicatie | Read-only blok met actieve previewcontext en laatste publicatie- of wijzigingsinformatie. | Preview & publicatie | Controle-/inzagefunctie; geen contentveld. | PublicFrontpagePreviewSection |
| SCH-BEH-05-01-B01 | B | Preview openen | Opent de preview voor de actieve frontpagecontext. | Preview openen | Preview moet de actuele context gebruiken en geen andere tab renderen. | OpenPublicFrontpagePreviewButton |
| SCH-BEH-05-01-B02 | B | Wijzigingen opslaan | Slaat wijzigingen in de actieve tab op. | Wijzigingen opslaan | Verwerkt alleen gewijzigde velden en zichtbaarheid van de actieve context. | SavePublicFrontpageChangesButton |
| SCH-BEH-05-01-T01 | T | Geschiedenis | Chronologische lijst van recente wijzigingen voor de actieve frontpagecontext. | Geschiedenis | Read-only historielijst met actor, tijdstip, veld en oude/nieuwe waarde. | PublicFrontpageHistoryList |
6.1.5 Waardelagen
| Element-ID | GUI-verwijzing | Zichtbaar label | Technische naam | Databron | Waardebron | Datatype | Bewerkbaar | Validatie / regel |
|---|---|---|---|---|---|---|---|---|
| SCH-BEH-05-01-F01 | Hoofdtitel | Hoofdtitel | PublicFrontpageTitleInput | ContentBlocks | Databasewaarde uit ContentBlocks met DomainType=FrontPage, ContextType=Public en een codevaste ReferenceKey voor PublicFrontpageTitle. | string / rich text | Ja | Title en/of Text zijn beheerbaar binnen invoergrenzen; HTML/rich-text moet veilig worden gesanitized. De bloklocatie blijft codevast. |
| SCH-BEH-05-01-F02 | Introductietekst | Introductietekst | PublicFrontpageIntroTextInput | ContentBlocks | Databasewaarde uit ContentBlocks met DomainType=FrontPage, ContextType=Public en een codevaste ReferenceKey voor FrontpageIntroText. | string / rich text | Ja | Title en/of Text zijn beheerbaar binnen invoergrenzen; HTML/rich-text moet veilig worden gesanitized. De bloklocatie blijft codevast. |
| SCH-BEH-05-01-F03 | Primaire knop | Primaire knop | PublicPrimaryButtonLabelInput | ContentBlocks | Databasewaarde uit ContentBlocks met DomainType=FrontPage, ContextType=Public en een codevaste ReferenceKey voor PublicPrimaryButtonLabel. | string / rich text | Ja | Title en/of Text zijn beheerbaar binnen invoergrenzen; HTML/rich-text moet veilig worden gesanitized. De bloklocatie blijft codevast. |
| SCH-BEH-05-01-F04 | Secundaire knop | Secundaire knop | PublicSecondaryButtonLabelInput | ContentBlocks | Databasewaarde uit ContentBlocks met DomainType=FrontPage, ContextType=Public en een codevaste ReferenceKey voor PublicSecondaryButtonLabel. | string / rich text | Ja | Title en/of Text zijn beheerbaar binnen invoergrenzen; HTML/rich-text moet veilig worden gesanitized. De bloklocatie blijft codevast. |
| SCH-BEH-05-01-CHK01 | Zichtbare onderdelen > Introblok | Introblok | PublicShowIntroBlockToggle | Applicatieconfiguratie via vooraf bekende frontpage-visibility setting key | Berekende/persistente bool voor DomainType=FrontPage, ContextType=Public en onderdeel Introblok; niet opgeslagen als ContentBlocks.IsVisible. | bool | Ja | Schakelt alleen zichtbaarheid van het codevaste blok binnen deze context. Mag geen onderliggende feature, autorisatie of domeindata aanpassen. |
| SCH-BEH-05-01-CHK02 | Zichtbare onderdelen > Registratieblok | Registratieblok | PublicShowRegistrationBlockToggle | Applicatieconfiguratie via vooraf bekende frontpage-visibility setting key | Berekende/persistente bool voor DomainType=FrontPage, ContextType=Public en onderdeel Registratieblok; niet opgeslagen als ContentBlocks.IsVisible. | bool | Ja | Schakelt alleen zichtbaarheid van het codevaste blok binnen deze context. Mag geen onderliggende feature, autorisatie of domeindata aanpassen. |
| SCH-BEH-05-01-CHK03 | Zichtbare onderdelen > Uitlegblokken | Uitlegblokken | PublicShowExplanationBlocksToggle | Applicatieconfiguratie via vooraf bekende frontpage-visibility setting key | Berekende/persistente bool voor DomainType=FrontPage, ContextType=Public en onderdeel Uitlegblokken; niet opgeslagen als ContentBlocks.IsVisible. | bool | Ja | Schakelt alleen zichtbaarheid van het codevaste blok binnen deze context. Mag geen onderliggende feature, autorisatie of domeindata aanpassen. |
| SCH-BEH-05-01-S04 | Preview & publicatie | Preview & publicatie | PublicFrontpagePreviewSection | ContentBlocks + applicatieconfiguratie + actieve tabstate | Runtime-samenvatting van ContextType=Public, laatste wijziging en previewdoel. | object / composite | Nee | Mockupdatums en namen zijn voorbeelddata; productie toont actuele audit-/gebruikersinformatie. |
| SCH-BEH-05-01-B01 | Preview openen | Preview openen | OpenPublicFrontpagePreviewButton | Niet primair databasegebonden | Applicatieactie die een preview rendert voor ContextType=Public. | action | Ja | Alleen beschikbaar voor beheerder; preview mag geen wijzigingen opslaan. |
| SCH-BEH-05-01-B02 | Wijzigingen opslaan | Wijzigingen opslaan | SavePublicFrontpageChangesButton | ContentBlocks + applicatieconfiguratie + auditvelden | Opslagactie voor gewijzigde contentvelden en zichtbaarheid binnen ContextType=Public. | action | Ja | Valideert verplichte velden, invoergrenzen, beheerderautorisatie en concurrency vóór definitieve opslag. |
| SCH-BEH-05-01-T01 | Geschiedenis | Geschiedenis | PublicFrontpageHistoryList | ContentBlockHistory + relevante auditinformatie van zichtbaarheid/configuratie | Chronologische history voor DomainType=FrontPage en ContextType=Public. | list / collection | Nee | Toont minimaal actor, tijdstip, gewijzigd veld, oude waarde en nieuwe waarde. Historyrecords worden niet aangepast of verwijderd via de GUI. |
6.1.6 Schermtrace naar SRS en acceptatiecriteria
De onderstaande tabel legt per schermrequirement de koppeling naar het centrale schermrequirements-trace-register, SRS-requirements en acceptatiecriteria vast. De normatieve requirementtekst staat in de SRS; dit schermdocument beschrijft alleen de lokale schermcontext.
Deze tabel bevat alleen schermtraceability. De normatieve requirementtekst en acceptatiecriteria staan centraal in de SRS.
| Schermrequirement | Dekt | Schermcontext |
|---|---|---|
REQ-SCH-BEH-05-01-01 | SRS-CNT-001 AC-CNT-001 | Voor de context Niet ingelogd beheerbare velden tonen voor hoofdtitel, introductietekst, primaire knoptekst en secundaire knoptekst |
REQ-SCH-BEH-05-01-02 | SRS-CNT-001 AC-CNT-001 | Voor de context Niet ingelogd de zichtbaarheid van introblok, registratieblok en uitlegblokken contextspecifiek kunnen bepalen |
REQ-SCH-BEH-05-01-03 | SRS-CNT-001 AC-CNT-001 | Publieke registratie alleen functioneel tonen wanneer de zichtbaarheid van het registratieblok én de onderliggende registratiebeschikbaarheid dit toestaan |
REQ-SCH-BEH-05-01-04 | SRS-CNT-001 AC-CNT-001 | Wijzigingen in publieke frontpagecontent opslaan als ContentBlocks met DomainType=FrontPage en ContextType=Public |
REQ-SCH-BEH-05-01-05 | SRS-CNT-001 AC-CNT-001 | Preview, laatste wijzigingsinformatie en geschiedenis tonen voor de actieve publieke context |
REQ-SCH-BEH-05-01-06 | SRS-CNT-001 AC-CNT-001 | De publieke frontpage mag via deze beheerpagina inhoudelijk worden aangepast, maar niet als vrije pagebuilder worden heringericht |
REQ-SCH-BEH-05-01-07 | SRS-CNT-001 AC-CNT-001 | Alle waarden in de context Niet ingelogd dynamisch laden voor de actieve context en mag voorbeeldwaarden uit de mockup niet als vaste productiegegevens gebruiken |
REQ-SCH-BEH-05-01-08 | SRS-AUTH-001 SRS-CNT-001 AC-AUTH-001 AC-CNT-001 | Toegang tot de tab Niet ingelogd en alle opslagacties server-side beperken tot gebruikers met een actieve beheerdercontext |
REQ-SCH-BEH-05-01-09 | SRS-CNT-001 AC-CNT-001 | Voorkomen dat onopgeslagen wijzigingen in de tab Niet ingelogd ongemerkt verloren gaan bij tabwissel, navigatie of reload |
6.2 Zonder rol
6.2.1 Schermafbeelding

6.2.2 Scherm meta data
| Veld | Waarde |
|---|---|
| Scherm-ID | SCH-BEH-05-02 |
| Schermnaam | Site instellingen — Frontpage — Tab 02 — Zonder rol |
| Doelgroep / onderdeel | Beheerder |
| Bronbestand | oefenhub_beheerder_05_sys_01_frontpage_V1_9.html |
| Mockupversie | V1.9 |
| Screenshotbestand | oefenhub_beheerder_05_sys_01_frontpage_v1_9_tab_02_zonder_rol.png |
| Processtap / context | Beheerpagina binnen Site instellingen voor de frontpage-context Zonder rol; beheerder configureert hier de neutrale startpagina voor ingelogde gebruikers zonder actieve rol. |
| Documentatiestatus | Uitgewerkt op basis van HTML-mockup, PNG-screenshot, Functioneel Ontwerp, Technisch Ontwerp, Software Requirements Specification en ondersteunende documentatie. |
| Opmerkingen | Header, beheerdernavigatie, berichteningang, profielmenu en footer vallen buiten scope. Contexttabs die niet actief zijn, zijn alleen navigatie naar een andere tab binnen dezelfde beheerpagina. |
| Route / URL-patroon | Functioneel routepatroon: site-instellingen/frontpage met actieve contexttab Zonder rol; de technische route wordt door de applicatieroutering bepaald. |
| Autorisatie / vereiste rol-context | Actieve beheerdercontext; toegang en opslag worden server-side beperkt tot gebruikers met beheerderrechten. |
| Primair domeinobject / hoofdentiteit | Frontpagebeheer voor context NoRole, met beheerbare contentblokken, rolkeuzetekst en zichtbaarheid van de neutrale startweergave. |
| Gerelateerde schermen / navigatie | Site instellingen, live frontpage Zonder rol, rolkeuzeflow, account-/rolcontexten en overige frontpage-contexttabs. |
| Data-karakter | Beheerbare content, contextspecifieke zichtbaarheid, runtime-previewinformatie en audit-/geschiedenisinformatie. Zichtbare mockupwaarden zijn dynamisch of voorbeelddata. |
6.2.3 Functionele beschrijving
Deze tab beheert de frontpage voor gebruikers die wel zijn aangemeld, maar nog geen actieve rolcontext hebben. De pagina ondersteunt de gebruiker bij het kiezen of activeren van de juiste rolcontext.
De context Zonder rol is functioneel geen foutpagina en ook geen lege tussenpagina. De gebruiker krijgt een neutrale startweergave met uitleg en een duidelijke route naar rolkeuze of rolactivatie.
De beheerbare tekst bepaalt alleen wat de gebruiker in deze begeleidende context leest. De daadwerkelijke rolkeuzelogica, beschikbare rollen en autorisatie worden server-side bepaald op basis van het account en de toegestane rolcontexten.
Bij het openen van deze tab wordt alleen de actieve context inhoudelijk getoond en bewerkt. Wisselen van tab verandert de beheercontext; het is geen gecombineerde weergave van alle frontpages tegelijk. Niet-actieve tabs mogen geen onopgeslagen wijziging van de actieve tab overschrijven. Wanneer er onopgeslagen wijzigingen bestaan, moet de applicatie voorkomen dat die ongemerkt verloren gaan door opslaan, annuleren of een expliciete bevestiging af te dwingen.
De velden in het blok voor tekst en uitleg zijn beheerbaar en worden opgeslagen als frontpagecontent. De schakelaars bij zichtbare onderdelen sturen uitsluitend de aanwezigheid van codevaste blokken binnen deze context. Zij wijzigen niet de inhoud, autorisaties of onderliggende domeindata van die blokken.
De rechterkolom met preview, publicatie-informatie en geschiedenis is ondersteunend. Preview openen toont de frontpagevariant zoals die voor deze context wordt gerenderd, met mockup- en runtimewaarden opnieuw bepaald vanuit de actuele context. Wijzigingen opslaan verwerkt alleen de velden en zichtbaarheid van de actieve tab. De geschiedenis toont auditregels met minimaal actor, tijdstip, gewijzigd veld en oude/nieuwe waarde.
Leegstaten en foutstaten horen expliciet afgehandeld te worden. Wanneer een contentblok nog niet bestaat, blijft de vaste renderlocatie bestaan maar wordt er geen automatisch seedrecord aangemaakt. Wanneer opslaan mislukt door validatie, autorisatie, concurrency of serverfout, blijven invoerwaarden zichtbaar en krijgt de beheerder een duidelijke foutmelding. Wanneer geschiedenis ontbreekt, wordt een lege maar geldige geschiedenisweergave getoond.
Alle opslag en previewacties worden server-side gecontroleerd op actieve beheerdercontext. Frontend-zichtbaarheid van deze beheerpagina of van een tab is niet voldoende beveiliging.
6.2.4 UI-elementen en velddefinities
| Element-ID | Type | GUI-verwijzing | Omschrijving | Zichtbaar label | Opmerking | Technische naam |
|---|---|---|---|---|---|---|
| SCH-BEH-05-02-TAB01 | TAB | Contexttabs | Selecteert de frontpage-context Zonder rol binnen Frontpagebeheer. | Zonder rol | De andere contexttabs zijn zichtbaar als navigatie, maar niet inhoudelijk actief. | NoRoleFrontpageTab |
| SCH-BEH-05-02-S01 | S | Doelgroep / Focus / Hoofdacties | Read-only contextsamenvatting die uitlegt voor welke gebruikerssituatie deze frontpagevariant bedoeld is. | DOELGROEP / FOCUS / HOOFDACTIES | Informerende contextkaarten; niet bedoeld als invoer. | NoRoleFrontpageContextSummarySection |
| SCH-BEH-05-02-S02 | S | Teksten & uitleg | Bewerkbaar hoofdblok voor de tekstuele content van de context Zonder rol. | Teksten & uitleg | Beheert alleen vooraf bepaalde tekst- en labelvelden. | NoRoleFrontpageContentSection |
| SCH-BEH-05-02-F01 | F | Welkomsttitel | Bewerkbaar veld binnen de frontpagecontext Zonder rol. | Welkomsttitel | Tekstueel beheerbaar; de renderlocatie en het gebruik van het veld blijven codegedreven. | NoRoleFrontpageTitleInput |
| SCH-BEH-05-02-F02 | F | Uitlegtekst | Bewerkbaar veld binnen de frontpagecontext Zonder rol. | Uitlegtekst | Tekstueel beheerbaar; de renderlocatie en het gebruik van het veld blijven codegedreven. | NoRoleFrontpageExplanationTextInput |
| SCH-BEH-05-02-F03 | F | Knoptekst rolkeuze | Bewerkbaar veld binnen de frontpagecontext Zonder rol. | Knoptekst rolkeuze | Tekstueel beheerbaar; de renderlocatie en het gebruik van het veld blijven codegedreven. | NoRoleRoleSelectionButtonLabelInput |
| SCH-BEH-05-02-S03 | S | Zichtbare onderdelen | Blok met contextspecifieke zichtbaarheidskeuzes voor de frontpagevariant Zonder rol. | Zichtbare onderdelen | Beheert alleen zichtbaarheid van codevaste blokken, niet de layout of volgorde. | NoRoleFrontpageVisibilitySection |
| SCH-BEH-05-02-CHK01 | FORM | Zichtbare onderdelen > Neutrale welkomstsectie | Korte uitleg in plaats van een lege frontpage. | Neutrale welkomstsectie | Toggle binnen de actieve context; zichtbaarheid mag niet als vrij contentblok worden geïnterpreteerd. | NoRoleShowNeutraleWelkomstsectieToggle |
| SCH-BEH-05-02-M01 | M | Let op | Read-only toelichtingspaneel dat uitlegt dat deze context geen blanco frontpage heeft. | Let op | Read-only helpertekst binnen deze beheercontext. | NoRoleFrontpageNoticeBox |
| SCH-BEH-05-02-S04 | S | Preview & publicatie | Read-only blok met actieve previewcontext en laatste publicatie- of wijzigingsinformatie. | Preview & publicatie | Controle-/inzagefunctie; geen contentveld. | NoRoleFrontpagePreviewSection |
| SCH-BEH-05-02-B01 | B | Preview openen | Opent de preview voor de actieve frontpagecontext. | Preview openen | Preview moet de actuele context gebruiken en geen andere tab renderen. | OpenNoRoleFrontpagePreviewButton |
| SCH-BEH-05-02-B02 | B | Wijzigingen opslaan | Slaat wijzigingen in de actieve tab op. | Wijzigingen opslaan | Verwerkt alleen gewijzigde velden en zichtbaarheid van de actieve context. | SaveNoRoleFrontpageChangesButton |
| SCH-BEH-05-02-T01 | T | Geschiedenis | Chronologische lijst van recente wijzigingen voor de actieve frontpagecontext. | Geschiedenis | Read-only historielijst met actor, tijdstip, veld en oude/nieuwe waarde. | NoRoleFrontpageHistoryList |
6.2.5 Waardelagen
| Element-ID | GUI-verwijzing | Zichtbaar label | Technische naam | Databron | Waardebron | Datatype | Bewerkbaar | Validatie / regel |
|---|---|---|---|---|---|---|---|---|
| SCH-BEH-05-02-F01 | Welkomsttitel | Welkomsttitel | NoRoleFrontpageTitleInput | ContentBlocks | Databasewaarde uit ContentBlocks met DomainType=FrontPage, ContextType=NoRole en een codevaste ReferenceKey voor FrontpageTitle. | string / rich text | Ja | Title en/of Text zijn beheerbaar binnen invoergrenzen; HTML/rich-text moet veilig worden gesanitized. De bloklocatie blijft codevast. |
| SCH-BEH-05-02-F02 | Uitlegtekst | Uitlegtekst | NoRoleFrontpageExplanationTextInput | ContentBlocks | Databasewaarde uit ContentBlocks met DomainType=FrontPage, ContextType=NoRole en een codevaste ReferenceKey voor NoRoleExplanationText. | string / rich text | Ja | Title en/of Text zijn beheerbaar binnen invoergrenzen; HTML/rich-text moet veilig worden gesanitized. De bloklocatie blijft codevast. |
| SCH-BEH-05-02-F03 | Knoptekst rolkeuze | Knoptekst rolkeuze | NoRoleRoleSelectionButtonLabelInput | ContentBlocks | Databasewaarde uit ContentBlocks met DomainType=FrontPage, ContextType=NoRole en een codevaste ReferenceKey voor NoRoleRoleSelectionButtonLabel. | string / rich text | Ja | Title en/of Text zijn beheerbaar binnen invoergrenzen; HTML/rich-text moet veilig worden gesanitized. De bloklocatie blijft codevast. |
| SCH-BEH-05-02-CHK01 | Zichtbare onderdelen > Neutrale welkomstsectie | Neutrale welkomstsectie | NoRoleShowNeutraleWelkomstsectieToggle | Applicatieconfiguratie via vooraf bekende frontpage-visibility setting key | Berekende/persistente bool voor DomainType=FrontPage, ContextType=NoRole en onderdeel NeutraleWelkomstsectie; niet opgeslagen als ContentBlocks.IsVisible. | bool | Ja | Schakelt alleen zichtbaarheid van het codevaste blok binnen deze context. Mag geen onderliggende feature, autorisatie of domeindata aanpassen. |
| SCH-BEH-05-02-M01 | Let op | Let op | NoRoleFrontpageNoticeBox | Codegedreven beheerinterface | Read-only helpertekst die de beheerder informeert over het functionele gedrag van deze context. | message | Nee | Geen beheerbare frontpagecontent; wijzigingen verlopen via code/documentatie. |
| SCH-BEH-05-02-S04 | Preview & publicatie | Preview & publicatie | NoRoleFrontpagePreviewSection | ContentBlocks + applicatieconfiguratie + actieve tabstate | Runtime-samenvatting van ContextType=NoRole, laatste wijziging en previewdoel. | object / composite | Nee | Mockupdatums en namen zijn voorbeelddata; productie toont actuele audit-/gebruikersinformatie. |
| SCH-BEH-05-02-B01 | Preview openen | Preview openen | OpenNoRoleFrontpagePreviewButton | Niet primair databasegebonden | Applicatieactie die een preview rendert voor ContextType=NoRole. | action | Ja | Alleen beschikbaar voor beheerder; preview mag geen wijzigingen opslaan. |
| SCH-BEH-05-02-B02 | Wijzigingen opslaan | Wijzigingen opslaan | SaveNoRoleFrontpageChangesButton | ContentBlocks + applicatieconfiguratie + auditvelden | Opslagactie voor gewijzigde contentvelden en zichtbaarheid binnen ContextType=NoRole. | action | Ja | Valideert verplichte velden, invoergrenzen, beheerderautorisatie en concurrency vóór definitieve opslag. |
| SCH-BEH-05-02-T01 | Geschiedenis | Geschiedenis | NoRoleFrontpageHistoryList | ContentBlockHistory + relevante auditinformatie van zichtbaarheid/configuratie | Chronologische history voor DomainType=FrontPage en ContextType=NoRole. | list / collection | Nee | Toont minimaal actor, tijdstip, gewijzigd veld, oude waarde en nieuwe waarde. Historyrecords worden niet aangepast of verwijderd via de GUI. |
6.2.6 Schermtrace naar SRS en acceptatiecriteria
De onderstaande tabel legt per schermrequirement de koppeling naar het centrale schermrequirements-trace-register, SRS-requirements en acceptatiecriteria vast. De normatieve requirementtekst staat in de SRS; dit schermdocument beschrijft alleen de lokale schermcontext.
Deze tabel bevat alleen schermtraceability. De normatieve requirementtekst en acceptatiecriteria staan centraal in de SRS.
| Schermrequirement | Dekt | Schermcontext |
|---|---|---|
REQ-SCH-BEH-05-02-01 | SRS-CNT-001 AC-CNT-001 | Voor de context Zonder rol beheerbare velden tonen voor welkomsttitel, uitlegtekst en knoptekst voor rolkeuze |
REQ-SCH-BEH-05-02-02 | SRS-CNT-001 AC-CNT-001 | De neutrale welkomstsectie voor de context Zonder rol contextspecifiek zichtbaar of onzichtbaar kunnen maken |
REQ-SCH-BEH-05-02-03 | SRS-CNT-001 AC-CNT-001 | In de beheerweergave duidelijk maken dat Zonder rol een begeleidende startweergave is en geen blanco frontpage |
REQ-SCH-BEH-05-02-04 | SRS-AUTH-001 SRS-CNT-001 AC-AUTH-001 AC-CNT-001 | Rolkeuze of rolactivatie server-side baseren op de accountcontext en niet op de beheerbare tekst van deze pagina |
REQ-SCH-BEH-05-02-05 | SRS-NFR-AUD-001 SRS-CNT-001 AC-NFR-AUD-001 AC-CNT-001 | Wijzigingen in de context Zonder rol historisch herleidbaar zijn per veld, actor en wijzigingsmoment |
REQ-SCH-BEH-05-02-06 | SRS-CNT-001 AC-CNT-001 | De no-role frontpage mag via deze beheerpagina inhoudelijk worden aangepast, maar de structurele route naar rolkeuze blijft codegedreven |
REQ-SCH-BEH-05-02-07 | SRS-CNT-001 AC-CNT-001 | Alle waarden in de context Zonder rol dynamisch laden voor de actieve context en mag voorbeeldwaarden uit de mockup niet als vaste productiegegevens gebruiken |
REQ-SCH-BEH-05-02-08 | SRS-AUTH-001 SRS-CNT-001 AC-AUTH-001 AC-CNT-001 | Toegang tot de tab Zonder rol en alle opslagacties server-side beperken tot gebruikers met een actieve beheerdercontext |
REQ-SCH-BEH-05-02-09 | SRS-CNT-001 AC-CNT-001 | Voorkomen dat onopgeslagen wijzigingen in de tab Zonder rol ongemerkt verloren gaan bij tabwissel, navigatie of reload |
6.3 Beheerder
6.3.1 Schermafbeelding

6.3.2 Scherm meta data
| Veld | Waarde |
|---|---|
| Scherm-ID | SCH-BEH-05-03 |
| Schermnaam | Site instellingen — Frontpage — Tab 03 — Beheerder |
| Doelgroep / onderdeel | Beheerder |
| Bronbestand | oefenhub_beheerder_05_sys_01_frontpage_V1_9.html |
| Mockupversie | V1.9 |
| Screenshotbestand | oefenhub_beheerder_05_sys_01_frontpage_v1_9_tab_03_beheerder.png |
| Processtap / context | Beheerpagina binnen Site instellingen voor de frontpage-context Beheerder; beheerder configureert hier de beheerderfrontpage die na inloggen als overzichtspagina dient. |
| Documentatiestatus | Uitgewerkt op basis van HTML-mockup, PNG-screenshot, Functioneel Ontwerp, Technisch Ontwerp, Software Requirements Specification en ondersteunende documentatie. |
| Opmerkingen | Header, beheerdernavigatie, berichteningang, profielmenu en footer vallen buiten scope. Contexttabs die niet actief zijn, zijn alleen navigatie naar een andere tab binnen dezelfde beheerpagina. |
| Route / URL-patroon | Functioneel routepatroon: site-instellingen/frontpage met actieve contexttab Beheerder; de technische route wordt door de applicatieroutering bepaald. |
| Autorisatie / vereiste rol-context | Actieve beheerdercontext; toegang en opslag worden server-side beperkt tot gebruikers met beheerderrechten. |
| Primair domeinobject / hoofdentiteit | Frontpagebeheer voor context Admin, met beheerbare tekstblokken, zichtbaarheid van beheerdergerichte samenvattingsblokken en publicatie-/geschiedenisinformatie. |
| Gerelateerde schermen / navigatie | Site instellingen, live beheerderfrontpage, meldingenoverzicht, accounts, contentbeheer en overige frontpage-contexttabs. |
| Data-karakter | Beheerbare content, contextspecifieke zichtbaarheid, runtime-previewinformatie en audit-/geschiedenisinformatie. Zichtbare mockupwaarden zijn dynamisch of voorbeelddata. |
6.3.3 Functionele beschrijving
Deze tab beheert de beheerdervariant van de frontpage. De live frontpage zelf blijft een overzichts- en oriëntatiepagina: zij toont samenvattingen en aandachtspunten, maar is geen vervanging voor onderliggende beheerpagina’s.
De beheerder kan de titel en introductietekst van de beheerderfrontpage aanpassen en bepalen of beheerdergerichte blokken zoals het introblok en meldingenoverzicht zichtbaar zijn.
Tellers en samenvattingswaarden die op de live beheerderfrontpage verschijnen, zoals open meldingen of beheeractiviteiten, worden niet als vaste tekst in Frontpagebeheer opgeslagen. Zij worden runtime uit de bijbehorende domeinrecords afgeleid.
Bij het openen van deze tab wordt alleen de actieve context inhoudelijk getoond en bewerkt. Wisselen van tab verandert de beheercontext; het is geen gecombineerde weergave van alle frontpages tegelijk. Niet-actieve tabs mogen geen onopgeslagen wijziging van de actieve tab overschrijven. Wanneer er onopgeslagen wijzigingen bestaan, moet de applicatie voorkomen dat die ongemerkt verloren gaan door opslaan, annuleren of een expliciete bevestiging af te dwingen.
De velden in het blok voor tekst en uitleg zijn beheerbaar en worden opgeslagen als frontpagecontent. De schakelaars bij zichtbare onderdelen sturen uitsluitend de aanwezigheid van codevaste blokken binnen deze context. Zij wijzigen niet de inhoud, autorisaties of onderliggende domeindata van die blokken.
De rechterkolom met preview, publicatie-informatie en geschiedenis is ondersteunend. Preview openen toont de frontpagevariant zoals die voor deze context wordt gerenderd, met mockup- en runtimewaarden opnieuw bepaald vanuit de actuele context. Wijzigingen opslaan verwerkt alleen de velden en zichtbaarheid van de actieve tab. De geschiedenis toont auditregels met minimaal actor, tijdstip, gewijzigd veld en oude/nieuwe waarde.
Leegstaten en foutstaten horen expliciet afgehandeld te worden. Wanneer een contentblok nog niet bestaat, blijft de vaste renderlocatie bestaan maar wordt er geen automatisch seedrecord aangemaakt. Wanneer opslaan mislukt door validatie, autorisatie, concurrency of serverfout, blijven invoerwaarden zichtbaar en krijgt de beheerder een duidelijke foutmelding. Wanneer geschiedenis ontbreekt, wordt een lege maar geldige geschiedenisweergave getoond.
Alle opslag en previewacties worden server-side gecontroleerd op actieve beheerdercontext. Frontend-zichtbaarheid van deze beheerpagina of van een tab is niet voldoende beveiliging.
6.3.4 UI-elementen en velddefinities
| Element-ID | Type | GUI-verwijzing | Omschrijving | Zichtbaar label | Opmerking | Technische naam |
|---|---|---|---|---|---|---|
| SCH-BEH-05-03-TAB01 | TAB | Contexttabs | Selecteert de frontpage-context Beheerder binnen Frontpagebeheer. | Beheerder | De andere contexttabs zijn zichtbaar als navigatie, maar niet inhoudelijk actief. | AdminFrontpageTab |
| SCH-BEH-05-03-S01 | S | Doelgroep / Focus / Hoofdacties | Read-only contextsamenvatting die uitlegt voor welke gebruikerssituatie deze frontpagevariant bedoeld is. | DOELGROEP / FOCUS / HOOFDACTIES | Informerende contextkaarten; niet bedoeld als invoer. | AdminFrontpageContextSummarySection |
| SCH-BEH-05-03-S02 | S | Teksten & uitleg | Bewerkbaar hoofdblok voor de tekstuele content van de context Beheerder. | Teksten & uitleg | Beheert alleen vooraf bepaalde tekst- en labelvelden. | AdminFrontpageContentSection |
| SCH-BEH-05-03-F01 | F | Welkomsttitel | Bewerkbaar veld binnen de frontpagecontext Beheerder. | Welkomsttitel | Tekstueel beheerbaar; de renderlocatie en het gebruik van het veld blijven codegedreven. | AdminFrontpageTitleInput |
| SCH-BEH-05-03-F02 | F | Introductietekst | Bewerkbaar veld binnen de frontpagecontext Beheerder. | Introductietekst | Tekstueel beheerbaar; de renderlocatie en het gebruik van het veld blijven codegedreven. | AdminFrontpageIntroTextInput |
| SCH-BEH-05-03-S03 | S | Zichtbare onderdelen | Blok met contextspecifieke zichtbaarheidskeuzes voor de frontpagevariant Beheerder. | Zichtbare onderdelen | Beheert alleen zichtbaarheid van codevaste blokken, niet de layout of volgorde. | AdminFrontpageVisibilitySection |
| SCH-BEH-05-03-CHK01 | FORM | Zichtbare onderdelen > Introblok | Welkomstblok bovenaan de pagina met titel en korte uitleg. | Introblok | Toggle binnen de actieve context; zichtbaarheid mag niet als vrij contentblok worden geïnterpreteerd. | AdminShowIntroBlockToggle |
| SCH-BEH-05-03-CHK02 | FORM | Zichtbare onderdelen > Meldingenoverzicht | Compact overzicht van open of nieuwe meldingen. | Meldingenoverzicht | Toggle binnen de actieve context; zichtbaarheid mag niet als vrij contentblok worden geïnterpreteerd. | AdminShowTicketsSummaryToggle |
| SCH-BEH-05-03-S04 | S | Preview & publicatie | Read-only blok met actieve previewcontext en laatste publicatie- of wijzigingsinformatie. | Preview & publicatie | Controle-/inzagefunctie; geen contentveld. | AdminFrontpagePreviewSection |
| SCH-BEH-05-03-B01 | B | Preview openen | Opent de preview voor de actieve frontpagecontext. | Preview openen | Preview moet de actuele context gebruiken en geen andere tab renderen. | OpenAdminFrontpagePreviewButton |
| SCH-BEH-05-03-B02 | B | Wijzigingen opslaan | Slaat wijzigingen in de actieve tab op. | Wijzigingen opslaan | Verwerkt alleen gewijzigde velden en zichtbaarheid van de actieve context. | SaveAdminFrontpageChangesButton |
| SCH-BEH-05-03-T01 | T | Geschiedenis | Chronologische lijst van recente wijzigingen voor de actieve frontpagecontext. | Geschiedenis | Read-only historielijst met actor, tijdstip, veld en oude/nieuwe waarde. | AdminFrontpageHistoryList |
6.3.5 Waardelagen
| Element-ID | GUI-verwijzing | Zichtbaar label | Technische naam | Databron | Waardebron | Datatype | Bewerkbaar | Validatie / regel |
|---|---|---|---|---|---|---|---|---|
| SCH-BEH-05-03-F01 | Welkomsttitel | Welkomsttitel | AdminFrontpageTitleInput | ContentBlocks | Databasewaarde uit ContentBlocks met DomainType=FrontPage, ContextType=Admin en een codevaste ReferenceKey voor FrontpageTitle. | string / rich text | Ja | Title en/of Text zijn beheerbaar binnen invoergrenzen; HTML/rich-text moet veilig worden gesanitized. De bloklocatie blijft codevast. |
| SCH-BEH-05-03-F02 | Introductietekst | Introductietekst | AdminFrontpageIntroTextInput | ContentBlocks | Databasewaarde uit ContentBlocks met DomainType=FrontPage, ContextType=Admin en een codevaste ReferenceKey voor FrontpageIntroText. | string / rich text | Ja | Title en/of Text zijn beheerbaar binnen invoergrenzen; HTML/rich-text moet veilig worden gesanitized. De bloklocatie blijft codevast. |
| SCH-BEH-05-03-CHK01 | Zichtbare onderdelen > Introblok | Introblok | AdminShowIntroBlockToggle | Applicatieconfiguratie via vooraf bekende frontpage-visibility setting key | Berekende/persistente bool voor DomainType=FrontPage, ContextType=Admin en onderdeel Introblok; niet opgeslagen als ContentBlocks.IsVisible. | bool | Ja | Schakelt alleen zichtbaarheid van het codevaste blok binnen deze context. Mag geen onderliggende feature, autorisatie of domeindata aanpassen. |
| SCH-BEH-05-03-CHK02 | Zichtbare onderdelen > Meldingenoverzicht | Meldingenoverzicht | AdminShowTicketsSummaryToggle | Applicatieconfiguratie via vooraf bekende frontpage-visibility setting key | Berekende/persistente bool voor DomainType=FrontPage, ContextType=Admin en onderdeel Meldingenoverzicht; niet opgeslagen als ContentBlocks.IsVisible. | bool | Ja | Schakelt alleen zichtbaarheid van het codevaste blok binnen deze context. Mag geen onderliggende feature, autorisatie of domeindata aanpassen. |
| SCH-BEH-05-03-S04 | Preview & publicatie | Preview & publicatie | AdminFrontpagePreviewSection | ContentBlocks + applicatieconfiguratie + actieve tabstate | Runtime-samenvatting van ContextType=Admin, laatste wijziging en previewdoel. | object / composite | Nee | Mockupdatums en namen zijn voorbeelddata; productie toont actuele audit-/gebruikersinformatie. |
| SCH-BEH-05-03-B01 | Preview openen | Preview openen | OpenAdminFrontpagePreviewButton | Niet primair databasegebonden | Applicatieactie die een preview rendert voor ContextType=Admin. | action | Ja | Alleen beschikbaar voor beheerder; preview mag geen wijzigingen opslaan. |
| SCH-BEH-05-03-B02 | Wijzigingen opslaan | Wijzigingen opslaan | SaveAdminFrontpageChangesButton | ContentBlocks + applicatieconfiguratie + auditvelden | Opslagactie voor gewijzigde contentvelden en zichtbaarheid binnen ContextType=Admin. | action | Ja | Valideert verplichte velden, invoergrenzen, beheerderautorisatie en concurrency vóór definitieve opslag. |
| SCH-BEH-05-03-T01 | Geschiedenis | Geschiedenis | AdminFrontpageHistoryList | ContentBlockHistory + relevante auditinformatie van zichtbaarheid/configuratie | Chronologische history voor DomainType=FrontPage en ContextType=Admin. | list / collection | Nee | Toont minimaal actor, tijdstip, gewijzigd veld, oude waarde en nieuwe waarde. Historyrecords worden niet aangepast of verwijderd via de GUI. |
6.3.6 Schermtrace naar SRS en acceptatiecriteria
De onderstaande tabel legt per schermrequirement de koppeling naar het centrale schermrequirements-trace-register, SRS-requirements en acceptatiecriteria vast. De normatieve requirementtekst staat in de SRS; dit schermdocument beschrijft alleen de lokale schermcontext.
Deze tabel bevat alleen schermtraceability. De normatieve requirementtekst en acceptatiecriteria staan centraal in de SRS.
| Schermrequirement | Dekt | Schermcontext |
|---|---|---|
REQ-SCH-BEH-05-03-01 | SRS-CNT-001 AC-CNT-001 | Voor de context Beheerder beheerbare velden tonen voor welkomsttitel en introductietekst van de beheerderfrontpage |
REQ-SCH-BEH-05-03-02 | SRS-CNT-001 AC-CNT-001 | In de context Beheerder ten minste de zichtbaarheid van het introblok en het meldingenoverzicht afzonderlijk beheerbaar maken |
REQ-SCH-BEH-05-03-03 | SRS-RDM-003 SRS-RDM-004 SRS-RDM-007 SRS-RDM-002 SRS-RDM-001 SRS-CNT-001 AC-RDM-003 AC-RDM-004 AC-RDM-007 AC-RDM-002 AC-RDM-001 AC-CNT-001 | Het systeem mag dynamische beheerderfrontpagewaarden zoals meldingtellers en beheersamenvattingen niet als vaste ContentBlocks opslaan |
REQ-SCH-BEH-05-03-04 | SRS-AUTH-001 SRS-CNT-001 AC-AUTH-001 AC-CNT-001 | De beheerdervariant alleen tonen en beheren voor gebruikers met server-side geldige beheerderautorisatie |
REQ-SCH-BEH-05-03-05 | SRS-AUTH-001 SRS-CNT-001 AC-AUTH-001 AC-CNT-001 | Voor de beheerdercontext preview, laatste wijzigingsinformatie en geschiedenis tonen |
REQ-SCH-BEH-05-03-06 | SRS-NFR-AUD-001 SRS-CNT-001 AC-NFR-AUD-001 AC-CNT-001 | Wijzigingen in de context Beheerder als beheerbare contentblok- of zichtbaarheidwijzigingen worden opgeslagen en historisch herleidbaar blijven |
REQ-SCH-BEH-05-03-07 | SRS-CNT-001 AC-CNT-001 | Alle waarden in de context Beheerder dynamisch laden voor de actieve context en mag voorbeeldwaarden uit de mockup niet als vaste productiegegevens gebruiken |
REQ-SCH-BEH-05-03-08 | SRS-AUTH-001 SRS-CNT-001 AC-AUTH-001 AC-CNT-001 | Toegang tot de tab Beheerder en alle opslagacties server-side beperken tot gebruikers met een actieve beheerdercontext |
REQ-SCH-BEH-05-03-09 | SRS-CNT-001 AC-CNT-001 | Voorkomen dat onopgeslagen wijzigingen in de tab Beheerder ongemerkt verloren gaan bij tabwissel, navigatie of reload |
6.4 Docent
6.4.1 Schermafbeelding

6.4.2 Scherm meta data
| Veld | Waarde |
|---|---|
| Scherm-ID | SCH-BEH-05-04 |
| Schermnaam | Site instellingen — Frontpage — Tab 04 — Docent |
| Doelgroep / onderdeel | Beheerder |
| Bronbestand | oefenhub_beheerder_05_sys_01_frontpage_V1_9.html |
| Mockupversie | V1.9 |
| Screenshotbestand | oefenhub_beheerder_05_sys_01_frontpage_v1_9_tab_04_docent.png |
| Processtap / context | Beheerpagina binnen Site instellingen voor de frontpage-context Docent; beheerder configureert hier de docentfrontpage. |
| Documentatiestatus | Uitgewerkt op basis van HTML-mockup, PNG-screenshot, Functioneel Ontwerp, Technisch Ontwerp, Software Requirements Specification en ondersteunende documentatie. |
| Opmerkingen | Header, beheerdernavigatie, berichteningang, profielmenu en footer vallen buiten scope. Contexttabs die niet actief zijn, zijn alleen navigatie naar een andere tab binnen dezelfde beheerpagina. |
| Route / URL-patroon | Functioneel routepatroon: site-instellingen/frontpage met actieve contexttab Docent; de technische route wordt door de applicatieroutering bepaald. |
| Autorisatie / vereiste rol-context | Actieve beheerdercontext; toegang en opslag worden server-side beperkt tot gebruikers met beheerderrechten. |
| Primair domeinobject / hoofdentiteit | Frontpagebeheer voor context Teacher, met beheerbare docentspecifieke contentblokken en zichtbaarheid van contextgebonden overzichtsblokken. |
| Gerelateerde schermen / navigatie | Site instellingen, live docentfrontpage, docentniveaus, leerlingoverzicht, oefenaanbod en overige frontpage-contexttabs. |
| Data-karakter | Beheerbare content, contextspecifieke zichtbaarheid, runtime-previewinformatie en audit-/geschiedenisinformatie. Zichtbare mockupwaarden zijn dynamisch of voorbeelddata. |
6.4.3 Functionele beschrijving
Deze tab beheert de docentvariant van de frontpage. De frontpage ondersteunt docenten met een compacte oriëntatie op leerlingen, niveaus en oefenaanbod, maar vervangt geen detailpagina voor leerlingbeheer, niveaubeheer of oefenconfiguratie.
De beheerder kan tekstuele inhoud en zichtbaarheid van docentgerichte blokken beheren. De inhoud van de blokken zelf blijft runtime afhankelijk van de docentcontext, niveauautorisaties, actieve relaties en beschikbare oefeningen.
TestDocent gebruikt functioneel de docentcontext voor relevante testtoegang, maar vormt geen aparte frontpagecontext in deze mockup. Testspecifieke toegangsregels horen in autorisatie- en modulebeheer, niet als aparte frontpage-tab.
Bij het openen van deze tab wordt alleen de actieve context inhoudelijk getoond en bewerkt. Wisselen van tab verandert de beheercontext; het is geen gecombineerde weergave van alle frontpages tegelijk. Niet-actieve tabs mogen geen onopgeslagen wijziging van de actieve tab overschrijven. Wanneer er onopgeslagen wijzigingen bestaan, moet de applicatie voorkomen dat die ongemerkt verloren gaan door opslaan, annuleren of een expliciete bevestiging af te dwingen.
De velden in het blok voor tekst en uitleg zijn beheerbaar en worden opgeslagen als frontpagecontent. De schakelaars bij zichtbare onderdelen sturen uitsluitend de aanwezigheid van codevaste blokken binnen deze context. Zij wijzigen niet de inhoud, autorisaties of onderliggende domeindata van die blokken.
De rechterkolom met preview, publicatie-informatie en geschiedenis is ondersteunend. Preview openen toont de frontpagevariant zoals die voor deze context wordt gerenderd, met mockup- en runtimewaarden opnieuw bepaald vanuit de actuele context. Wijzigingen opslaan verwerkt alleen de velden en zichtbaarheid van de actieve tab. De geschiedenis toont auditregels met minimaal actor, tijdstip, gewijzigd veld en oude/nieuwe waarde.
Leegstaten en foutstaten horen expliciet afgehandeld te worden. Wanneer een contentblok nog niet bestaat, blijft de vaste renderlocatie bestaan maar wordt er geen automatisch seedrecord aangemaakt. Wanneer opslaan mislukt door validatie, autorisatie, concurrency of serverfout, blijven invoerwaarden zichtbaar en krijgt de beheerder een duidelijke foutmelding. Wanneer geschiedenis ontbreekt, wordt een lege maar geldige geschiedenisweergave getoond.
Alle opslag en previewacties worden server-side gecontroleerd op actieve beheerdercontext. Frontend-zichtbaarheid van deze beheerpagina of van een tab is niet voldoende beveiliging.
6.4.4 UI-elementen en velddefinities
| Element-ID | Type | GUI-verwijzing | Omschrijving | Zichtbaar label | Opmerking | Technische naam |
|---|---|---|---|---|---|---|
| SCH-BEH-05-04-TAB01 | TAB | Contexttabs | Selecteert de frontpage-context Docent binnen Frontpagebeheer. | Docent | De andere contexttabs zijn zichtbaar als navigatie, maar niet inhoudelijk actief. | TeacherFrontpageTab |
| SCH-BEH-05-04-S01 | S | Doelgroep / Focus / Hoofdacties | Read-only contextsamenvatting die uitlegt voor welke gebruikerssituatie deze frontpagevariant bedoeld is. | DOELGROEP / FOCUS / HOOFDACTIES | Informerende contextkaarten; niet bedoeld als invoer. | TeacherFrontpageContextSummarySection |
| SCH-BEH-05-04-S02 | S | Teksten & uitleg | Bewerkbaar hoofdblok voor de tekstuele content van de context Docent. | Teksten & uitleg | Beheert alleen vooraf bepaalde tekst- en labelvelden. | TeacherFrontpageContentSection |
| SCH-BEH-05-04-F01 | F | Welkomsttitel | Bewerkbaar veld binnen de frontpagecontext Docent. | Welkomsttitel | Tekstueel beheerbaar; de renderlocatie en het gebruik van het veld blijven codegedreven. | TeacherFrontpageTitleInput |
| SCH-BEH-05-04-F02 | F | Introductietekst | Bewerkbaar veld binnen de frontpagecontext Docent. | Introductietekst | Tekstueel beheerbaar; de renderlocatie en het gebruik van het veld blijven codegedreven. | TeacherFrontpageIntroTextInput |
| SCH-BEH-05-04-S03 | S | Zichtbare onderdelen | Blok met contextspecifieke zichtbaarheidskeuzes voor de frontpagevariant Docent. | Zichtbare onderdelen | Beheert alleen zichtbaarheid van codevaste blokken, niet de layout of volgorde. | TeacherFrontpageVisibilitySection |
| SCH-BEH-05-04-CHK01 | FORM | Zichtbare onderdelen > Introblok | Welkomstblok bovenaan de pagina met korte toelichting. | Introblok | Toggle binnen de actieve context; zichtbaarheid mag niet als vrij contentblok worden geïnterpreteerd. | TeacherShowIntroBlockToggle |
| SCH-BEH-05-04-CHK02 | FORM | Zichtbare onderdelen > Leerlingenoverzicht | Compact samenvattingsblok op de frontpage. | Leerlingenoverzicht | Toggle binnen de actieve context; zichtbaarheid mag niet als vrij contentblok worden geïnterpreteerd. | TeacherShowStudentsOverviewToggle |
| SCH-BEH-05-04-CHK03 | FORM | Zichtbare onderdelen > Oefenaanbod | Samenvatting van niveaus en inhoud. | Oefenaanbod | Toggle binnen de actieve context; zichtbaarheid mag niet als vrij contentblok worden geïnterpreteerd. | TeacherShowExerciseCatalogToggle |
| SCH-BEH-05-04-S04 | S | Preview & publicatie | Read-only blok met actieve previewcontext en laatste publicatie- of wijzigingsinformatie. | Preview & publicatie | Controle-/inzagefunctie; geen contentveld. | TeacherFrontpagePreviewSection |
| SCH-BEH-05-04-B01 | B | Preview openen | Opent de preview voor de actieve frontpagecontext. | Preview openen | Preview moet de actuele context gebruiken en geen andere tab renderen. | OpenTeacherFrontpagePreviewButton |
| SCH-BEH-05-04-B02 | B | Wijzigingen opslaan | Slaat wijzigingen in de actieve tab op. | Wijzigingen opslaan | Verwerkt alleen gewijzigde velden en zichtbaarheid van de actieve context. | SaveTeacherFrontpageChangesButton |
| SCH-BEH-05-04-T01 | T | Geschiedenis | Chronologische lijst van recente wijzigingen voor de actieve frontpagecontext. | Geschiedenis | Read-only historielijst met actor, tijdstip, veld en oude/nieuwe waarde. | TeacherFrontpageHistoryList |
6.4.5 Waardelagen
| Element-ID | GUI-verwijzing | Zichtbaar label | Technische naam | Databron | Waardebron | Datatype | Bewerkbaar | Validatie / regel |
|---|---|---|---|---|---|---|---|---|
| SCH-BEH-05-04-F01 | Welkomsttitel | Welkomsttitel | TeacherFrontpageTitleInput | ContentBlocks | Databasewaarde uit ContentBlocks met DomainType=FrontPage, ContextType=Teacher en een codevaste ReferenceKey voor FrontpageTitle. | string / rich text | Ja | Title en/of Text zijn beheerbaar binnen invoergrenzen; HTML/rich-text moet veilig worden gesanitized. De bloklocatie blijft codevast. |
| SCH-BEH-05-04-F02 | Introductietekst | Introductietekst | TeacherFrontpageIntroTextInput | ContentBlocks | Databasewaarde uit ContentBlocks met DomainType=FrontPage, ContextType=Teacher en een codevaste ReferenceKey voor FrontpageIntroText. | string / rich text | Ja | Title en/of Text zijn beheerbaar binnen invoergrenzen; HTML/rich-text moet veilig worden gesanitized. De bloklocatie blijft codevast. |
| SCH-BEH-05-04-CHK01 | Zichtbare onderdelen > Introblok | Introblok | TeacherShowIntroBlockToggle | Applicatieconfiguratie via vooraf bekende frontpage-visibility setting key | Berekende/persistente bool voor DomainType=FrontPage, ContextType=Teacher en onderdeel Introblok; niet opgeslagen als ContentBlocks.IsVisible. | bool | Ja | Schakelt alleen zichtbaarheid van het codevaste blok binnen deze context. Mag geen onderliggende feature, autorisatie of domeindata aanpassen. |
| SCH-BEH-05-04-CHK02 | Zichtbare onderdelen > Leerlingenoverzicht | Leerlingenoverzicht | TeacherShowStudentsOverviewToggle | Applicatieconfiguratie via vooraf bekende frontpage-visibility setting key | Berekende/persistente bool voor DomainType=FrontPage, ContextType=Teacher en onderdeel Leerlingenoverzicht; niet opgeslagen als ContentBlocks.IsVisible. | bool | Ja | Schakelt alleen zichtbaarheid van het codevaste blok binnen deze context. Mag geen onderliggende feature, autorisatie of domeindata aanpassen. |
| SCH-BEH-05-04-CHK03 | Zichtbare onderdelen > Oefenaanbod | Oefenaanbod | TeacherShowExerciseCatalogToggle | Applicatieconfiguratie via vooraf bekende frontpage-visibility setting key | Berekende/persistente bool voor DomainType=FrontPage, ContextType=Teacher en onderdeel Oefenaanbod; niet opgeslagen als ContentBlocks.IsVisible. | bool | Ja | Schakelt alleen zichtbaarheid van het codevaste blok binnen deze context. Mag geen onderliggende feature, autorisatie of domeindata aanpassen. |
| SCH-BEH-05-04-S04 | Preview & publicatie | Preview & publicatie | TeacherFrontpagePreviewSection | ContentBlocks + applicatieconfiguratie + actieve tabstate | Runtime-samenvatting van ContextType=Teacher, laatste wijziging en previewdoel. | object / composite | Nee | Mockupdatums en namen zijn voorbeelddata; productie toont actuele audit-/gebruikersinformatie. |
| SCH-BEH-05-04-B01 | Preview openen | Preview openen | OpenTeacherFrontpagePreviewButton | Niet primair databasegebonden | Applicatieactie die een preview rendert voor ContextType=Teacher. | action | Ja | Alleen beschikbaar voor beheerder; preview mag geen wijzigingen opslaan. |
| SCH-BEH-05-04-B02 | Wijzigingen opslaan | Wijzigingen opslaan | SaveTeacherFrontpageChangesButton | ContentBlocks + applicatieconfiguratie + auditvelden | Opslagactie voor gewijzigde contentvelden en zichtbaarheid binnen ContextType=Teacher. | action | Ja | Valideert verplichte velden, invoergrenzen, beheerderautorisatie en concurrency vóór definitieve opslag. |
| SCH-BEH-05-04-T01 | Geschiedenis | Geschiedenis | TeacherFrontpageHistoryList | ContentBlockHistory + relevante auditinformatie van zichtbaarheid/configuratie | Chronologische history voor DomainType=FrontPage en ContextType=Teacher. | list / collection | Nee | Toont minimaal actor, tijdstip, gewijzigd veld, oude waarde en nieuwe waarde. Historyrecords worden niet aangepast of verwijderd via de GUI. |
6.4.6 Schermtrace naar SRS en acceptatiecriteria
De onderstaande tabel legt per schermrequirement de koppeling naar het centrale schermrequirements-trace-register, SRS-requirements en acceptatiecriteria vast. De normatieve requirementtekst staat in de SRS; dit schermdocument beschrijft alleen de lokale schermcontext.
Deze tabel bevat alleen schermtraceability. De normatieve requirementtekst en acceptatiecriteria staan centraal in de SRS.
| Schermrequirement | Dekt | Schermcontext |
|---|---|---|
REQ-SCH-BEH-05-04-01 | SRS-CNT-001 AC-CNT-001 | Voor de context Docent beheerbare velden tonen voor welkomsttitel en introductietekst van de docentfrontpage |
REQ-SCH-BEH-05-04-02 | SRS-CNT-001 AC-CNT-001 | In de context Docent de zichtbaarheid van introblok, leerlingenoverzicht en oefenaanbod afzonderlijk beheerbaar maken |
REQ-SCH-BEH-05-04-03 | SRS-CNT-001 AC-CNT-001 | Het systeem mag runtime docentwaarden zoals leerlingen, niveaus en oefenaanbod niet als vaste frontpagetekst opslaan |
REQ-SCH-BEH-05-04-04 | SRS-AUTH-001 SRS-CNT-001 AC-AUTH-001 AC-CNT-001 | Docentgerichte frontpageblokken server-side beperken tot gegevens waarvoor de betreffende docentcontext geautoriseerd is |
REQ-SCH-BEH-05-04-05 | SRS-CNT-001 AC-CNT-001 | Gecombineerde rolfrontpages runtime samenstellen uit basiscontexten en niet als zelfstandige docentcombinatie in deze beheerpagina opslaan |
REQ-SCH-BEH-05-04-06 | SRS-NFR-AUD-001 SRS-CNT-001 AC-NFR-AUD-001 AC-CNT-001 | Wijzigingen in de context Docent als beheerbare contentblok- of zichtbaarheidwijzigingen worden opgeslagen en historisch herleidbaar blijven |
REQ-SCH-BEH-05-04-07 | SRS-CNT-001 AC-CNT-001 | Alle waarden in de context Docent dynamisch laden voor de actieve context en mag voorbeeldwaarden uit de mockup niet als vaste productiegegevens gebruiken |
REQ-SCH-BEH-05-04-08 | SRS-AUTH-001 SRS-CNT-001 AC-AUTH-001 AC-CNT-001 | Toegang tot de tab Docent en alle opslagacties server-side beperken tot gebruikers met een actieve beheerdercontext |
REQ-SCH-BEH-05-04-09 | SRS-CNT-001 AC-CNT-001 | Voorkomen dat onopgeslagen wijzigingen in de tab Docent ongemerkt verloren gaan bij tabwissel, navigatie of reload |
6.5 Leerling
6.5.1 Schermafbeelding

6.5.2 Scherm meta data
| Veld | Waarde |
|---|---|
| Scherm-ID | SCH-BEH-05-05 |
| Schermnaam | Site instellingen — Frontpage — Tab 05 — Leerling |
| Doelgroep / onderdeel | Beheerder |
| Bronbestand | oefenhub_beheerder_05_sys_01_frontpage_V1_9.html |
| Mockupversie | V1.9 |
| Screenshotbestand | oefenhub_beheerder_05_sys_01_frontpage_v1_9_tab_05_leerling.png |
| Processtap / context | Beheerpagina binnen Site instellingen voor de frontpage-context Leerling; beheerder configureert hier de leerlingfrontpage. |
| Documentatiestatus | Uitgewerkt op basis van HTML-mockup, PNG-screenshot, Functioneel Ontwerp, Technisch Ontwerp, Software Requirements Specification en ondersteunende documentatie. |
| Opmerkingen | Header, beheerdernavigatie, berichteningang, profielmenu en footer vallen buiten scope. Contexttabs die niet actief zijn, zijn alleen navigatie naar een andere tab binnen dezelfde beheerpagina. |
| Route / URL-patroon | Functioneel routepatroon: site-instellingen/frontpage met actieve contexttab Leerling; de technische route wordt door de applicatieroutering bepaald. |
| Autorisatie / vereiste rol-context | Actieve beheerdercontext; toegang en opslag worden server-side beperkt tot gebruikers met beheerderrechten. |
| Primair domeinobject / hoofdentiteit | Frontpagebeheer voor context Student, met beheerbare leerlinggerichte contentblokken en zichtbaarheid van categorie-, voortgangs- en statistiekblokken. |
| Gerelateerde schermen / navigatie | Site instellingen, live leerlingfrontpage, oefencatalogus, oefenruns, voortgang en overige frontpage-contexttabs. |
| Data-karakter | Beheerbare content, contextspecifieke zichtbaarheid, runtime-previewinformatie en audit-/geschiedenisinformatie. Zichtbare mockupwaarden zijn dynamisch of voorbeelddata. |
6.5.3 Functionele beschrijving
Deze tab beheert de leerlingvariant van de frontpage. De frontpage is gericht op motivatie, snelle hervatting en compacte voortgangsinformatie binnen de actieve leerlingcontext.
De beheerder beheert hier de tekstuele begeleiding en de zichtbaarheid van blokken zoals recente categorieën, populaire categorieën en statistieken. De daadwerkelijke categorieën, oefeningen en statistische waarden zijn dynamische runtime-afleidingen uit oefenruns, niveaucontext en autorisaties.
Wanneer een leerling in een actieve oefenrun zit, blijven afleidende globale meldingsindicatoren buiten de oefencontext verborgen. Dat gedrag hoort bij de generieke header-/runlogica en wordt in dit frontpagebeheer niet als contentwaarde opgeslagen.
Bij het openen van deze tab wordt alleen de actieve context inhoudelijk getoond en bewerkt. Wisselen van tab verandert de beheercontext; het is geen gecombineerde weergave van alle frontpages tegelijk. Niet-actieve tabs mogen geen onopgeslagen wijziging van de actieve tab overschrijven. Wanneer er onopgeslagen wijzigingen bestaan, moet de applicatie voorkomen dat die ongemerkt verloren gaan door opslaan, annuleren of een expliciete bevestiging af te dwingen.
De velden in het blok voor tekst en uitleg zijn beheerbaar en worden opgeslagen als frontpagecontent. De schakelaars bij zichtbare onderdelen sturen uitsluitend de aanwezigheid van codevaste blokken binnen deze context. Zij wijzigen niet de inhoud, autorisaties of onderliggende domeindata van die blokken.
De rechterkolom met preview, publicatie-informatie en geschiedenis is ondersteunend. Preview openen toont de frontpagevariant zoals die voor deze context wordt gerenderd, met mockup- en runtimewaarden opnieuw bepaald vanuit de actuele context. Wijzigingen opslaan verwerkt alleen de velden en zichtbaarheid van de actieve tab. De geschiedenis toont auditregels met minimaal actor, tijdstip, gewijzigd veld en oude/nieuwe waarde.
Leegstaten en foutstaten horen expliciet afgehandeld te worden. Wanneer een contentblok nog niet bestaat, blijft de vaste renderlocatie bestaan maar wordt er geen automatisch seedrecord aangemaakt. Wanneer opslaan mislukt door validatie, autorisatie, concurrency of serverfout, blijven invoerwaarden zichtbaar en krijgt de beheerder een duidelijke foutmelding. Wanneer geschiedenis ontbreekt, wordt een lege maar geldige geschiedenisweergave getoond.
Alle opslag en previewacties worden server-side gecontroleerd op actieve beheerdercontext. Frontend-zichtbaarheid van deze beheerpagina of van een tab is niet voldoende beveiliging.
6.5.4 UI-elementen en velddefinities
| Element-ID | Type | GUI-verwijzing | Omschrijving | Zichtbaar label | Opmerking | Technische naam |
|---|---|---|---|---|---|---|
| SCH-BEH-05-05-TAB01 | TAB | Contexttabs | Selecteert de frontpage-context Leerling binnen Frontpagebeheer. | Leerling | De andere contexttabs zijn zichtbaar als navigatie, maar niet inhoudelijk actief. | StudentFrontpageTab |
| SCH-BEH-05-05-S01 | S | Doelgroep / Focus / Hoofdacties | Read-only contextsamenvatting die uitlegt voor welke gebruikerssituatie deze frontpagevariant bedoeld is. | DOELGROEP / FOCUS / HOOFDACTIES | Informerende contextkaarten; niet bedoeld als invoer. | StudentFrontpageContextSummarySection |
| SCH-BEH-05-05-S02 | S | Teksten & uitleg | Bewerkbaar hoofdblok voor de tekstuele content van de context Leerling. | Teksten & uitleg | Beheert alleen vooraf bepaalde tekst- en labelvelden. | StudentFrontpageContentSection |
| SCH-BEH-05-05-F01 | F | Welkomsttitel | Bewerkbaar veld binnen de frontpagecontext Leerling. | Welkomsttitel | Tekstueel beheerbaar; de renderlocatie en het gebruik van het veld blijven codegedreven. | StudentFrontpageTitleInput |
| SCH-BEH-05-05-F02 | F | Introductietekst | Bewerkbaar veld binnen de frontpagecontext Leerling. | Introductietekst | Tekstueel beheerbaar; de renderlocatie en het gebruik van het veld blijven codegedreven. | StudentFrontpageIntroTextInput |
| SCH-BEH-05-05-S03 | S | Zichtbare onderdelen | Blok met contextspecifieke zichtbaarheidskeuzes voor de frontpagevariant Leerling. | Zichtbare onderdelen | Beheert alleen zichtbaarheid van codevaste blokken, niet de layout of volgorde. | StudentFrontpageVisibilitySection |
| SCH-BEH-05-05-CHK01 | FORM | Zichtbare onderdelen > Introblok | Welkomstblok bovenaan de pagina met korte motivatie. | Introblok | Toggle binnen de actieve context; zichtbaarheid mag niet als vrij contentblok worden geïnterpreteerd. | StudentShowIntroBlockToggle |
| SCH-BEH-05-05-CHK02 | FORM | Zichtbare onderdelen > Recente categorieën | Helpt leerlingen sneller opnieuw te starten. | Recente categorieën | Toggle binnen de actieve context; zichtbaarheid mag niet als vrij contentblok worden geïnterpreteerd. | StudentShowRecenteCategorieënToggle |
| SCH-BEH-05-05-CHK03 | FORM | Zichtbare onderdelen > Populaire categorieën | Laat veelgebruikte of aanbevolen categorieën zien. | Populaire categorieën | Toggle binnen de actieve context; zichtbaarheid mag niet als vrij contentblok worden geïnterpreteerd. | StudentShowPopulaireCategorieënToggle |
| SCH-BEH-05-05-CHK04 | FORM | Zichtbare onderdelen > Statistieken | Alleen tonen als leerlingstatistieken functioneel beschikbaar zijn. | Statistieken | Toggle binnen de actieve context; zichtbaarheid mag niet als vrij contentblok worden geïnterpreteerd. | StudentShowStatisticsToggle |
| SCH-BEH-05-05-S04 | S | Preview & publicatie | Read-only blok met actieve previewcontext en laatste publicatie- of wijzigingsinformatie. | Preview & publicatie | Controle-/inzagefunctie; geen contentveld. | StudentFrontpagePreviewSection |
| SCH-BEH-05-05-B01 | B | Preview openen | Opent de preview voor de actieve frontpagecontext. | Preview openen | Preview moet de actuele context gebruiken en geen andere tab renderen. | OpenStudentFrontpagePreviewButton |
| SCH-BEH-05-05-B02 | B | Wijzigingen opslaan | Slaat wijzigingen in de actieve tab op. | Wijzigingen opslaan | Verwerkt alleen gewijzigde velden en zichtbaarheid van de actieve context. | SaveStudentFrontpageChangesButton |
| SCH-BEH-05-05-T01 | T | Geschiedenis | Chronologische lijst van recente wijzigingen voor de actieve frontpagecontext. | Geschiedenis | Read-only historielijst met actor, tijdstip, veld en oude/nieuwe waarde. | StudentFrontpageHistoryList |
6.5.5 Waardelagen
| Element-ID | GUI-verwijzing | Zichtbaar label | Technische naam | Databron | Waardebron | Datatype | Bewerkbaar | Validatie / regel |
|---|---|---|---|---|---|---|---|---|
| SCH-BEH-05-05-F01 | Welkomsttitel | Welkomsttitel | StudentFrontpageTitleInput | ContentBlocks | Databasewaarde uit ContentBlocks met DomainType=FrontPage, ContextType=Student en een codevaste ReferenceKey voor FrontpageTitle. | string / rich text | Ja | Title en/of Text zijn beheerbaar binnen invoergrenzen; HTML/rich-text moet veilig worden gesanitized. De bloklocatie blijft codevast. |
| SCH-BEH-05-05-F02 | Introductietekst | Introductietekst | StudentFrontpageIntroTextInput | ContentBlocks | Databasewaarde uit ContentBlocks met DomainType=FrontPage, ContextType=Student en een codevaste ReferenceKey voor FrontpageIntroText. | string / rich text | Ja | Title en/of Text zijn beheerbaar binnen invoergrenzen; HTML/rich-text moet veilig worden gesanitized. De bloklocatie blijft codevast. |
| SCH-BEH-05-05-CHK01 | Zichtbare onderdelen > Introblok | Introblok | StudentShowIntroBlockToggle | Applicatieconfiguratie via vooraf bekende frontpage-visibility setting key | Berekende/persistente bool voor DomainType=FrontPage, ContextType=Student en onderdeel Introblok; niet opgeslagen als ContentBlocks.IsVisible. | bool | Ja | Schakelt alleen zichtbaarheid van het codevaste blok binnen deze context. Mag geen onderliggende feature, autorisatie of domeindata aanpassen. |
| SCH-BEH-05-05-CHK02 | Zichtbare onderdelen > Recente categorieën | Recente categorieën | StudentShowRecenteCategorieënToggle | Applicatieconfiguratie via vooraf bekende frontpage-visibility setting key | Berekende/persistente bool voor DomainType=FrontPage, ContextType=Student en onderdeel RecenteCategorieën; niet opgeslagen als ContentBlocks.IsVisible. | bool | Ja | Schakelt alleen zichtbaarheid van het codevaste blok binnen deze context. Mag geen onderliggende feature, autorisatie of domeindata aanpassen. |
| SCH-BEH-05-05-CHK03 | Zichtbare onderdelen > Populaire categorieën | Populaire categorieën | StudentShowPopulaireCategorieënToggle | Applicatieconfiguratie via vooraf bekende frontpage-visibility setting key | Berekende/persistente bool voor DomainType=FrontPage, ContextType=Student en onderdeel PopulaireCategorieën; niet opgeslagen als ContentBlocks.IsVisible. | bool | Ja | Schakelt alleen zichtbaarheid van het codevaste blok binnen deze context. Mag geen onderliggende feature, autorisatie of domeindata aanpassen. |
| SCH-BEH-05-05-CHK04 | Zichtbare onderdelen > Statistieken | Statistieken | StudentShowStatisticsToggle | Applicatieconfiguratie via vooraf bekende frontpage-visibility setting key | Berekende/persistente bool voor DomainType=FrontPage, ContextType=Student en onderdeel Statistieken; niet opgeslagen als ContentBlocks.IsVisible. | bool | Ja | Schakelt alleen zichtbaarheid van het codevaste blok binnen deze context. Mag geen onderliggende feature, autorisatie of domeindata aanpassen. |
| SCH-BEH-05-05-S04 | Preview & publicatie | Preview & publicatie | StudentFrontpagePreviewSection | ContentBlocks + applicatieconfiguratie + actieve tabstate | Runtime-samenvatting van ContextType=Student, laatste wijziging en previewdoel. | object / composite | Nee | Mockupdatums en namen zijn voorbeelddata; productie toont actuele audit-/gebruikersinformatie. |
| SCH-BEH-05-05-B01 | Preview openen | Preview openen | OpenStudentFrontpagePreviewButton | Niet primair databasegebonden | Applicatieactie die een preview rendert voor ContextType=Student. | action | Ja | Alleen beschikbaar voor beheerder; preview mag geen wijzigingen opslaan. |
| SCH-BEH-05-05-B02 | Wijzigingen opslaan | Wijzigingen opslaan | SaveStudentFrontpageChangesButton | ContentBlocks + applicatieconfiguratie + auditvelden | Opslagactie voor gewijzigde contentvelden en zichtbaarheid binnen ContextType=Student. | action | Ja | Valideert verplichte velden, invoergrenzen, beheerderautorisatie en concurrency vóór definitieve opslag. |
| SCH-BEH-05-05-T01 | Geschiedenis | Geschiedenis | StudentFrontpageHistoryList | ContentBlockHistory + relevante auditinformatie van zichtbaarheid/configuratie | Chronologische history voor DomainType=FrontPage en ContextType=Student. | list / collection | Nee | Toont minimaal actor, tijdstip, gewijzigd veld, oude waarde en nieuwe waarde. Historyrecords worden niet aangepast of verwijderd via de GUI. |
6.5.6 Schermtrace naar SRS en acceptatiecriteria
De onderstaande tabel legt per schermrequirement de koppeling naar het centrale schermrequirements-trace-register, SRS-requirements en acceptatiecriteria vast. De normatieve requirementtekst staat in de SRS; dit schermdocument beschrijft alleen de lokale schermcontext.
Deze tabel bevat alleen schermtraceability. De normatieve requirementtekst en acceptatiecriteria staan centraal in de SRS.
| Schermrequirement | Dekt | Schermcontext |
|---|---|---|
REQ-SCH-BEH-05-05-01 | SRS-CNT-001 AC-CNT-001 | Voor de context Leerling beheerbare velden tonen voor welkomsttitel en introductietekst van de leerlingfrontpage |
REQ-SCH-BEH-05-05-02 | SRS-CNT-001 AC-CNT-001 | In de context Leerling de zichtbaarheid van introblok, recente categorieën, populaire categorieën en statistieken afzonderlijk beheerbaar maken |
REQ-SCH-BEH-05-05-03 | SRS-CNT-001 AC-CNT-001 | Het systeem mag dynamische leerlingwaarden zoals recente oefeningen, populaire categorieën en statistieken niet als vaste ContentBlocks opslaan |
REQ-SCH-BEH-05-05-04 | SRS-AUTH-001 SRS-CNT-001 AC-AUTH-001 AC-CNT-001 | Leerlingfrontpagegegevens runtime afleiden binnen het actieve niveau en binnen de geldende docent-/relatieautorisaties |
REQ-SCH-BEH-05-05-05 | SRS-CNT-001 AC-CNT-001 | Zichtbaarheid van leerlinggerichte blokken beheren binnen Frontpagebeheer en niet als losse sitebrede featuretoggle op de Features-pagina |
REQ-SCH-BEH-05-05-06 | SRS-NFR-AUD-001 SRS-CNT-001 AC-NFR-AUD-001 AC-CNT-001 | Wijzigingen in de context Leerling als beheerbare contentblok- of zichtbaarheidwijzigingen worden opgeslagen en historisch herleidbaar blijven |
REQ-SCH-BEH-05-05-07 | SRS-CNT-001 AC-CNT-001 | Alle waarden in de context Leerling dynamisch laden voor de actieve context en mag voorbeeldwaarden uit de mockup niet als vaste productiegegevens gebruiken |
REQ-SCH-BEH-05-05-08 | SRS-AUTH-001 SRS-CNT-001 AC-AUTH-001 AC-CNT-001 | Toegang tot de tab Leerling en alle opslagacties server-side beperken tot gebruikers met een actieve beheerdercontext |
REQ-SCH-BEH-05-05-09 | SRS-CNT-001 AC-CNT-001 | Voorkomen dat onopgeslagen wijzigingen in de tab Leerling ongemerkt verloren gaan bij tabwissel, navigatie of reload |
6.6 Schermtrace naar SRS en acceptatiecriteria
De onderstaande tabel legt per schermrequirement de koppeling naar het centrale schermrequirements-trace-register, SRS-requirements en acceptatiecriteria vast. De normatieve requirementtekst staat in de SRS; dit schermdocument beschrijft alleen de lokale schermcontext.
Deze tabel bevat alleen schermtraceability. De normatieve requirementtekst en acceptatiecriteria staan centraal in de SRS.
| Schermrequirement | Dekt | Schermcontext |
|---|---|---|
REQ-SCH-BEH-05-00-01 | SRS-CNT-001 AC-CNT-001 | Frontpagebeheer aanbieden als contexttab-gestuurde beheerpagina waarbij per keer precies één frontpagecontext actief en beheerbaar is |
REQ-SCH-BEH-05-00-02 | SRS-CNT-001 AC-CNT-001 | Minimaal de gemockte contexttabs Niet ingelogd, Zonder rol, Beheerder, Docent en Leerling ondersteunen binnen deze beheerpagina |
REQ-SCH-BEH-05-00-03 | SRS-AUTH-001 SRS-CNT-001 AC-AUTH-001 AC-CNT-001 | Technisch rekening houden met de contextwaarde Guardian voor de Nederlandstalige rolcontext Ouder/voogd, zonder in deze V1.9-mockup een niet-gemockte Ouder/voogd-tab te documenteren als bestaande UI |
REQ-SCH-BEH-05-00-04 | SRS-CNT-001 AC-CNT-001 | Gecombineerde rolfrontpages runtime samenstellen uit de onderliggende basiscontexten volgens de geldende prioriteitsregels en geen voor iedere rolcombinatie een zelfstandig frontpageontwerp afdwingen |
REQ-SCH-BEH-05-00-05 | SRS-CNT-001 AC-CNT-001 | De structurele layout, blokvolgorde en vormgeving van frontpages codegedreven houden; Frontpagebeheer mag geen vrije pagebuilder worden |
REQ-SCH-BEH-05-00-06 | SRS-CNT-001 AC-CNT-001 | ContentBlocks gebruiken voor tekstuele beheerinhoud van frontpages met DomainType=FrontPage, ContextType en ReferenceKey als functionele sleutel |
REQ-SCH-BEH-05-00-07 | SRS-CNT-001 AC-CNT-001 | Zichtbaarheid van frontpageonderdelen gescheiden houden van tekstuele content; zichtbaarheid geen impliciet als ContentBlocks.IsVisible worden verwerkt |
REQ-SCH-BEH-05-00-08 | SRS-NFR-AUD-001 SRS-CNT-001 AC-NFR-AUD-001 AC-CNT-001 | Frontpagewijzigingen historisch herleidbaar vastleggen met minimaal uitvoerende beheerder, tijdstip, gewijzigd veld, oude waarde en nieuwe waarde |
REQ-SCH-BEH-05-00-09 | SRS-RDM-003 SRS-RDM-004 SRS-RDM-006 SRS-RDM-007 SRS-RDM-002 SRS-RDM-001 SRS-CNT-001 AC-RDM-003 AC-RDM-004 AC-RDM-006 AC-RDM-007 AC-RDM-002 AC-RDM-001 AC-CNT-001 | Runtime-afgeleide waarden op live frontpages, zoals tellers, recente oefeningen, populaire categorieën, meldingen of statistieken, nooit als vaste frontpagecontent opslaan |
REQ-SCH-BEH-05-00-10 | SRS-AUTH-001 SRS-CNT-001 AC-AUTH-001 AC-CNT-001 | Opslag- en previewacties binnen Frontpagebeheer server-side autoriseren op actieve beheerdercontext |
6.7 Technische koppeling
Voor technische uitwerking van frontpagebeheer zijn vooral relevant:
- 05 Autorisatie, policies en server-side contextcontrole voor beheerdertoegang en contextspecifieke mutaties.
- 13 Berichten, systeemberichten, notificaties en privéberichten voor samenhang met systeemnotificaties en communicatieblokken wanneer frontpagecontent daarnaar verwijst.
- 17 Readmodels, tellers, badges, caching en materialisatie voor contextspecifieke frontpageweergaven en eventuele afgeleide statuswaarden.
- 19 Logging, audit, securitylogging en technische foutafhandeling voor auditbare wijzigingen in beheerbare frontpagecontent.
- 21 Beheerbeleid, monitoring, backup, restore en operatie voor beheerbeleid rondom publicatie en herstel van sitecontent.
- 24 Frontend, Blazor, routing, state en componentopbouw voor contexttabs, preview, validatiestate en responsieve contentblokken.
- 25 Privacy, retentie, anonimisering en gegevensbescherming voor privacygrenzen bij contextspecifieke frontpage-inhoud.