3. Meldingen overzicht
3.1 Schermafbeelding
3.1.1 Normale weergave

3.1.2 Alles open

3.2 Scherm meta data
| Veld | Waarde |
|---|---|
| Scherm-ID | SCH-BEH-02-01 |
| Schermnaam | Meldingen overzicht |
| Doelgroep / onderdeel | Beheerder |
| Bronbestand | oefenhub_beheerder_02_meldingen_overzicht_v1_6.html |
| Mockupversie | V1.6 |
| Screenshotbestand | oefenhub_beheerder_02_meldingen_overzicht_v1_6.png en oefenhub_beheerder_02_meldingen_overzicht_v1_6_alles_open.png |
| Processtap / context | Beheerder opent de centrale meldingenwerkpagina om meldingen te zoeken, filteren, selecteren, behandelen, bespreken, oplossen, sluiten, heropenen of door te zetten naar een docent. |
| Documentatiestatus | Uitgewerkt op basis van HTML-mockup, PNG-screenshot, Functioneel Ontwerp, Technisch Ontwerp, Software Requirements Specification en databasedocumentatie. |
| Opmerkingen | De twee schermafbeeldingen horen bij dezelfde view. De variant Alles open toont dezelfde pagina met de uitklapbare detailsecties geopend. Header, beheerdernavigatie, profielmenu, berichtenteller en footer vallen buiten deze schermspecifieke uitwerking. Alle zichtbare namen, aantallen, datums, meldingsnummers, teksten en statuslabels zijn dynamische voorbeeldwaarden. |
| Route / URL-patroon | Functioneel routepatroon: /beheer/meldingen of gelijkwaardige beheerroute voor het meldingenoverzicht. |
| Autorisatie / vereiste rol-context | Actieve beheerdercontext. Alleen gebruikers met een actieve beheerderrol mogen dit overzicht openen en meldingen beheren. |
| Primair domeinobject / hoofdentiteit | Tickets met gerelateerde status, categorie, beheerderkoppelingen, discussie, sluitregistraties, heropenverzoeken, docentdoorzettingen, technische momentopname en geschiedenis. |
| Gerelateerde schermen / navigatie | Beheerder-frontpage, gebruikerspagina Meldingen, gebruikersdetailpagina Melding details, berichtenoverzicht, docent ondersteuning, privébericht-thread naar docent bij doorzetten. |
| Data-karakter | Operationele beheer- en mutatiepagina; de lijst, detailgegevens, tellerwaarden, filterresultaten, discussies, assignments, sluitingen, heropeningen en doorzetacties zijn dynamisch en server-side geautoriseerd. |
3.3 Functionele beschrijving
Het scherm Meldingen overzicht is de centrale beheerderwerkpagina voor het meldingen- en ticketsysteem van OefenHub. Beheerders gebruiken deze pagina om meldingen te beoordelen, te verdelen, inhoudelijk op te volgen, externe communicatie met de melder te voeren, interne afstemming vast te leggen, oplossingen te registreren, meldingen te sluiten, gesloten meldingen te heropenen en specifieke meldingen door te zetten naar een docent wanneer de oorzaak in docent- of moduleconfiguratie ligt.
De pagina combineert links een zoek- en filterbaar overzicht van meldingen met rechts het detailpaneel van de geselecteerde melding. De geselecteerde melding bepaalt welke kerngegevens, inhoud, discussie, oplossing, doorzetting, technische momentopname en geschiedenis zichtbaar zijn. De beheerder hoeft daardoor niet eerst naar een aparte detailpagina te navigeren om de meeste opvolgacties uit te voeren.
De normale schermafbeelding toont de basisstaat met de secties Kerngegevens en Melding geopend. De schermafbeelding Alles open toont dezelfde pagina met de secties Discussie, Oplossing, Doorzetten naar docent, Geavanceerd en Geschiedenis geopend. Deze tweede afbeelding is bedoeld om de inhoud van de uitklapbare secties volledig zichtbaar te maken; het is geen aparte view en krijgt geen eigen scherm-ID.
3.3.1 Scope van deze schermdocumentatie
Binnen scope vallen:
- het introductieblok met beheerdergerichte toelichting en tellerwaarden;
- zoeken en filteren binnen de meldingenlijst;
- meldingskaarten en selectiegedrag;
- het detailpaneel van de geselecteerde melding;
- beheerderkoppelingen en statusmutaties;
- interne en externe discussie;
- oplossing en formele sluiting;
- heropenen van gesloten meldingen door beheer;
- doorzetten naar docent;
- technische momentopname;
- compacte geschiedenis;
- leegstaten, foutstaten en server-side autorisatie.
Buiten scope vallen de generieke header, beheerdernavigatie, profielmenu-indicaties, berichtenteller en footer. Als in de mockup in de header of het profielmenu een meldingenindicatie staat, wordt die hier niet opnieuw uitgewerkt. Die indicaties zijn generieke navigatie- of attentiecomponenten en geen onderdeel van de beheerderwerkpagina zelf.
3.3.2 Interpretatie van mockupwaarden
Alle waarden in de mockup zijn voorbeelddata. Voorbeelden zoals 2 open meldingen, 1 aan mij toegewezen, #MP-2026-041, Emma Jansen, Noor van Dijk, Daan Vermeer, datums, snippets, reactieaantallen, docentnamen, browsergegevens en historyregels zijn dynamisch.
De mockup toont hoe de pagina zich gedraagt en welke gegevenslagen nodig zijn. Productiegegevens worden altijd opgehaald uit de onderliggende tickets-, gebruikers-, assignment-, discussie-, sluitings-, heropen-, doorzet-, snapshot- en historygegevens.
3.3.3 Hoofdopbouw
De hoofdinhoud bestaat uit:
-
Introblok Meldingen
Toont de paginatitel, een korte toelichting en tellerwaarden voor open meldingen en meldingen die actief aan de huidige beheerder zijn gekoppeld. -
Zoek- en filterbalk
Bevat een zoekveld en filtertabs. Zoeken werkt altijd binnen de actieve filtercontext. -
Meldingenoverzicht links
Toont een kaartlijst met meldingen die passen bij de actieve zoekterm en filterselectie. -
Detailpaneel rechts
Toont de geselecteerde melding met statuschips, kerngegevens en uitklapbare detailsecties. -
Uitklapbare detailsecties
Bevatten inhoudelijke en technische onderdelen van dezelfde melding: Kerngegevens, Melding, Discussie, Oplossing, Doorzetten naar docent, Geavanceerd en Geschiedenis.
3.3.4 Autorisatie en gegevensbereik
Alle beheerders mogen in deze beheerweergave alle meldingen zien en behandelen. Binnen de rol beheerder wordt geen onderscheid gemaakt tussen subrollen of escalatieniveaus. Dit betekent dat iedere beheerder meldingen mag openen, lezen, koppelen, ontkoppelen, bespreken, status wijzigen, oplossen, sluiten, heropenen, doorzetten naar docent en de volledige interne discussie, technische momentopname en geschiedenis bekijken.
Deze rechten moeten server-side worden afgedwongen. Het verbergen van knoppen in de frontend is nooit voldoende beveiliging. Iedere mutatie controleert minimaal:
- of de actor een actieve beheerdercontext heeft;
- of de melding bestaat;
- of de melding op het moment van de actie nog in een status staat waarin de gevraagde actie toegestaan is;
- of verplichte velden zijn ingevuld;
- of optimistic concurrency of een gelijkwaardig mechanisme voorkomt dat verouderde schermdata een recentere mutatie overschrijft.
3.3.5 Statusmodel en statusafleiding
Het beheerdersoverzicht werkt op backend-processtatussen:
New/ Nieuw;InProgress/ In behandeling;WaitingForUser/ Wachten op gebruiker;Closed/ Gesloten.
Opgelost is geen aparte backendstatus. Voor de reguliere gebruiker kan een gesloten melding tijdelijk als Opgelost worden weergegeven wanneer de meest recente sluiting nog een actieve heropen-deadline heeft. In het beheerderoverzicht blijft de onderliggende backendstatus leidend, aangevuld met sluitinformatie uit TicketClosures.
Status Nieuw is alleen geldig zolang geen actieve beheerderkoppeling bestaat. Zodra minimaal één beheerder actief gekoppeld is, wordt de melding functioneel behandelbaar en ligt In behandeling of een andere toegestane behandelstatus voor de hand. Een statuswijziging naar Wachten op gebruiker is alleen functioneel correct wanneer vanuit beheer om aanvullende informatie wordt gevraagd via een extern bericht naar de melder.
3.3.6 Zoeken en filteren
De zoekfunctie werkt binnen de actieve filtertab. De zoekactie ondersteunt minimaal:
- meldingsnummer;
- onderwerp;
- categorie;
- discussie-inhoud.
Zoeken in Geschiedenis is niet onderdeel van deze zoekfunctie. Geschiedenis is een compacte auditlaag en geen doorzoekbaar inhoudsdomein.
De filtertabs in deze view zijn:
- Nieuw;
- Wacht op gebruiker;
- Aan mij toegewezen;
- Alles;
- Gesloten.
Het tabblad Nieuw toont meldingen met backendstatus New. Het tabblad Wacht op gebruiker toont meldingen met backendstatus WaitingForUser. Het tabblad Aan mij toegewezen toont meldingen met een actieve TicketAssignments-koppeling naar de ingelogde beheerder. Het tabblad Alles toont alle meldingen waarvoor de beheerder autorisatie heeft. Het tabblad Gesloten toont meldingen met backendstatus Closed.
Automatisch samenvoegen van dubbele meldingen is geen onderdeel van deze eerste versie. Meerdere meldingen over dezelfde situatie mogen dus naast elkaar bestaan.
3.3.7 Meldingskaarten en selectie
Elke meldingskaart toont compacte herkenningsinformatie:
- categorie;
- actuele status;
- eventuele indicatie Aan mij;
- meldingsnummer;
- onderwerp;
- preview of samenvatting;
- datum of laatste activiteit;
- reactie- of toewijzingsindicatie.
De volledige kaart is selecteerbaar. Selectie laadt rechts het detailpaneel van die melding. Technische identifiers zoals GUID's worden niet getoond; de gebruiker ziet het mensleesbare meldingsnummer.
Wanneer de actieve filter- en zoekselectie geen meldingen oplevert, toont de lijst een lege staat met uitleg. Het detailpaneel toont dan geen oude geselecteerde melding uit een vorige filtercontext.
3.3.8 Kerngegevens en beheerderkoppelingen
De sectie Kerngegevens toont de formele basisinformatie van de melding: melder, aanmaakmoment, categorie, actief gekoppelde beheerders en status. Een melding kan nul, één of meerdere actieve beheerderkoppelingen hebben.
De beheerder kan:
- zichzelf ontkoppelen via Ontkoppel mij;
- een andere gekoppelde beheerder ontkoppelen via de
[X]achter de naam; - een andere beheerder koppelen via Wijs aan iemand toe.
Bij ontkoppelen is een reden verplicht. De reden wordt vastgelegd op de assignmentlaag en kan als intern discussie-item of tijdlijnitem zichtbaar worden gemaakt. Koppelen of ontkoppelen levert altijd auditinformatie op. Wanneer relevant kan een intern systeemgegenereerd discussie-item worden toegevoegd, zoals in de mockup zichtbaar is bij het koppelen van Daan Vermeer.
Een beheerder mag niet dubbel actief aan dezelfde melding gekoppeld worden. Een poging tot dubbele actieve koppeling moet server-side worden afgewezen.
3.3.9 Status wijzigen
De statusdropdown toont alleen statussen die op dat moment functioneel toegestaan zijn. Voor een open melding kunnen beheerstatussen zoals In behandeling en Wachten op gebruiker beschikbaar zijn. Gesloten wordt niet als gewone statuswissel behandeld wanneer daar een formele oplossing, afsluitstatus, sluitregistratie en heropen-deadline bij horen.
Bij een statuswijziging registreert het systeem minimaal een TicketHistory-regel. Wanneer de statuswijziging inhoudelijke communicatie naar de gebruiker vereist, zoals Wachten op gebruiker, moet een extern discussiebericht of een gelijkwaardige externe communicatiehandeling worden vastgelegd.
3.3.10 Sectie Melding
De sectie Melding toont het onderwerp en de volledige beschrijving zoals de gebruiker deze heeft ingediend. Deze inhoud is read-only voor beheerders. Correcties, vragen en toelichtingen worden niet in de oorspronkelijke meldingstekst overschreven, maar via discussie, oplossing, history of gespecialiseerde subtabellen vastgelegd.
3.3.11 Sectie Discussie
De sectie Discussie toont de inhoudelijke communicatie rond de melding. Discussieberichten kunnen intern, extern of systeemgegenereerd zijn.
- Intern is uitsluitend zichtbaar voor beheerders.
- Extern is zichtbaar voor de melder en beheerders.
- Systeemgegenereerd markeert functionele gebeurtenissen binnen de discussie, maar vervangt nooit de formele auditlaag
TicketHistory.
De beheerder kiest bij het plaatsen van een nieuw bericht tussen Intern en Extern. De standaardkeuze in de mockup is Intern. Een extern beheerderbericht wordt richting gebruiker generiek als Beheerder weergegeven; de individuele beheerdernaam blijft wel technisch vastgelegd voor audit en beheer.
Wanneer een beheerder een extern bericht plaatst met het doel aanvullende informatie te vragen, kan de melding naar Wachten op gebruiker worden gezet. De gebruiker ontvangt dan een systeembericht of actie-indicatie met verwijzing naar dezelfde melding. Interne berichten veroorzaken geen gebruikersmelding.
Berichtinhoud moet server-side worden gevalideerd en veilig gerenderd. Vrije HTML, JavaScript of actieve inhoud is niet toegestaan.
3.3.12 Sectie Oplossing en formeel sluiten
De sectie Oplossing bevat:
- oplossingstekst;
- keuze voor afsluitstatus;
- optie Sluit melding;
- actie Verstuur oplossing;
- toelichting dat de gebruiker na formele sluiting gedurende de reactietermijn kan reageren wanneer het probleem toch niet opgelost blijkt.
De afsluitstatussen zijn vaste waarden uit TicketResolutionTypes. Voor de beheerder zijn minimaal zichtbaar:
- Technisch opgelost;
- Workaround voorgesteld;
- Niet reproduceerbaar;
- Functioneel verwacht gedrag;
- Overige maar opgelost;
- Overige maar niet opgelost;
- Module configuratie.
Het resolutietype Gesloten door gebruiker is bedoeld voor gebruikerssluitingen of het accepteren van een oplossing en wordt niet als reguliere beheerderkeuze in deze oplossingssectie aangeboden.
Wanneer Sluit melding actief is en de beheerder de oplossing verstuurt, wordt een formele sluitregistratie vastgelegd in TicketClosures. Daarbij worden minimaal de sluitende beheerder, het sluitmoment, de afsluitstatus, de oplossingstekst en de heropen-deadline opgeslagen. De actuele ticketstatus wordt Closed. De gebruiker ziet de melding tijdens de heropentermijn als Opgelost en kan binnen die termijn heropenen.
Wanneer Sluit melding niet actief is, wordt de oplossingstekst niet als formele sluiting behandeld. De tekst kan dan alleen als externe update of verdere communicatie binnen de melding worden verwerkt, mits deze functionele route expliciet door de applicatie wordt ondersteund. Er ontstaat in dat geval geen TicketClosures-record en geen nieuwe heropen-deadline.
3.3.13 Heropenen door beheerder
Wanneer een gesloten melding in het beheerderoverzicht wordt geselecteerd, moet de reguliere bewerkflow worden aangepast aan de gesloten toestand. Gewone statuswijzigingen, nieuwe oplossingen en doorzetacties zijn dan niet beschikbaar tenzij de melding eerst wordt heropend.
Een beheerder kan een gesloten melding handmatig heropenen via de actie Heropen. Na klikken opent een bevestigingspopup met de vraag of de beheerder zeker weet dat de melding heropend moet worden. De popup waarschuwt dat alle actief gekoppelde beheerders worden ontkoppeld en dat de melding opnieuw de hoofdstatus Nieuw krijgt. Het veld Reden van heropenen is verplicht.
Bij bevestigen registreert het systeem:
- een
TicketReopenRequests-record metRequestSource = Admin; - indien van toepassing de verwijzing naar de vorige sluitregistratie;
- statuswijziging naar Nieuw;
- ontkoppeling van alle actief gekoppelde beheerders;
- minimaal twee aparte geschiedenisregels: het heropenen van de melding en het ontkoppelen van de eerder actief gekoppelde beheerders.
De heropenreden hoeft niet als los fysiek discussiebericht te worden opgeslagen. In de beheerweergave mag de reden wel zichtbaar worden gemaakt als intern tijdlijn- of discussie-item op basis van TicketReopenRequests en/of TicketHistory.
3.3.14 Doorzetten naar docent
De sectie Doorzetten naar docent is bedoeld voor situaties waarin beheer vaststelt dat de oorzaak waarschijnlijk in docent- of moduleconfiguratie ligt. Deze actie is geen gewone discussieactie, maar een samengestelde domeinactie.
De dropdown Selecteer docent toont alleen docenten die functioneel relevant zijn voor de melder en de context van de melding, bijvoorbeeld docenten die gekoppeld zijn aan de leerling of aan de onderwijscontext waarop de melding betrekking heeft. Docenten mogen niet willekeurig uit alle accounts gekozen worden wanneer zij geen relatie of context hebben met de melder.
De waarschuwing in de mockup is functioneel verplicht: de beheerder moet bewust controleren of de geselecteerde docent verantwoordelijk was voor de oefening of configuratie en dat het niet om een gedeelde oefening gaat waarvoor een andere context leidend is.
De beheerder vult verplicht Begeleidende toelichting in. Bij bevestigen via Sluit en zet door naar docent gebeurt in één samenhangende transactie minimaal:
- aanmaak van
TicketForwardedToTeacher; - formele sluiting met afsluitstatus Module configuratie;
- aanmaak van
TicketClosuresmet verwijzing naar de doorzetactie; - systeembericht aan de gebruiker met uitleg;
- privébericht aan de geselecteerde docent namens de gebruiker;
TicketHistory-registratie;- waar relevant externe of interne discussie-/tijdlijnweergave.
Het privébericht aan de docent blijft technisch onderdeel van het centrale privéberichtendomein. Het is geen apart ticketberichttype. De afzenderweergave moet duidelijk maken dat het bericht door beheer namens de gebruiker is geplaatst.
3.3.15 Sectie Geavanceerd
De sectie Geavanceerd toont technische en contextuele snapshotgegevens van het moment waarop de melding is aangemaakt. De waarden zijn bedoeld voor beheer, analyse en debugging.
Minimaal relevant zijn:
- laatst gezien;
- browser of user agent;
- pagina waarop de melding werd gedaan;
- IP-adres, waar nodig gemaskeerd;
- rollen van de gebruiker als momentopname.
De mockup toont daarnaast voorbeeldwaarden zoals apparaattype, schermresolutie, sessiereferentie en moduleversie. Zulke waarden mogen alleen getoond worden wanneer zij daadwerkelijk als snapshot beschikbaar zijn of betrouwbaar uit de vastgelegde snapshot kunnen worden afgeleid. Zij mogen niet achteraf live worden herberekend uit de actuele gebruikers-, module- of pagina-inrichting.
De reguliere gebruiker ziet deze technische momentopname niet op de gebruikersdetailpagina.
3.3.16 Sectie Geschiedenis
De sectie Geschiedenis toont compacte auditregels met datum/tijd, actor en actie. Geschiedenis is bedoeld voor herleidbaarheid en reconstructie, niet voor uitgebreide inhoudelijke communicatie.
Lange toelichtingen, redenen en vrije tekst horen niet in TicketHistory, maar in de daarvoor bedoelde laag:
- discussie-inhoud in
TicketDiscussionMessages; - oplossingstekst in
TicketClosures; - ontkoppelreden in
TicketAssignments.UnassignReason; - heropenreden in
TicketReopenRequests; - doorzettoelichting in
TicketForwardedToTeacher.AdminExplanation.
Historyregels worden niet hard verwijderd en worden niet gebruikt als gebruikersgerichte statusgeschiedenis.
3.3.17 Leegstaten, foutstaten en disabled states
Relevante leegstaten en foutstaten zijn:
- geen meldingen binnen de actieve filterselectie;
- geen melding geselecteerd;
- geselecteerde melding is gewijzigd of verwijderd uit de actuele lijstcontext;
- geen actieve beheerderkoppelingen;
- geen discussie-items behalve de initiële melding;
- geen technische snapshot beschikbaar;
- geen historyregels buiten de aanmaakactie;
- fout bij laden van lijst of detailpaneel;
- fout bij opslaan door validatie, autorisatie of verouderde schermdata.
Relevante disabled states zijn:
- statusdropdown uitgeschakeld voor gesloten meldingen;
- Verstuur uitgeschakeld bij lege discussie-invoer;
- Verstuur oplossing uitgeschakeld wanneer verplichte oplossingstekst of afsluitstatus ontbreekt;
- Sluit en zet door naar docent uitgeschakeld wanneer docent of begeleidende toelichting ontbreekt;
- Heropen alleen zichtbaar of actief bij gesloten meldingen;
- ontkoppelactie uitgeschakeld wanneer de beheerderkoppeling niet meer actief bestaat;
- Wijs aan iemand toe blokkeert selectie van al actief gekoppelde beheerders.
3.3.18 Responsief gedrag
Bij voldoende schermbreedte staan meldingenlijst en detailpaneel naast elkaar. Bij smallere schermen mag het detailpaneel onder de lijst worden geplaatst. De geselecteerde melding moet duidelijk herkenbaar blijven. Uitklapbare secties blijven afzonderlijk bedienbaar en mogen niet achter de lijst of footer schuiven.
3.4 UI-elementen en velddefinities
| Element-ID | Type | GUI-verwijzing | Omschrijving | Zichtbaar label | Opmerking | Technische naam |
|---|---|---|---|---|---|---|
| SCH-BEH-02-01-S01 | S | Introblok meldingen | Introblok met titel, uitleg en samenvattende tellerwaarden. | Meldingen | Header en footer vallen buiten scope. | AdminTicketsIntroSection |
| SCH-BEH-02-01-F01 | F | Introblok — open meldingen | Teller van meldingen die nog niet backendstatus Closed hebben. | Open meldingen | Dynamische samenvattingswaarde. | OpenTicketsSummaryValue |
| SCH-BEH-02-01-F02 | F | Introblok — aan mij toegewezen | Teller van meldingen met actieve koppeling naar de huidige beheerder. | Aan mij toegewezen | Dynamische samenvattingswaarde. | AssignedToMeSummaryValue |
| SCH-BEH-02-01-S02 | S | Zoek- en filterbalk | Sectie voor zoeken en filteren van de meldingenlijst. | Zoek op meldingsnummer, categorie of discussie | Zoeken werkt binnen actieve filter. | TicketSearchAndFilterSection |
| SCH-BEH-02-01-F03 | F | Zoekveld | Vrij tekstveld voor zoeken op meldingsnummer, onderwerp, categorie en discussie-inhoud. | Zoek op meldingsnummer, categorie of discussie | Placeholder in mockup noemt niet alle ondersteunde zoekvelden. | TicketSearchText |
| SCH-BEH-02-01-TAB01 | TAB | Filtertab | Filtert op backendstatus New. | Nieuw | Standaard actief in de mockup. | NewTicketsFilterTab |
| SCH-BEH-02-01-TAB02 | TAB | Filtertab | Filtert op backendstatus WaitingForUser. | Wacht op gebruiker | Komt functioneel overeen met wachten op reactie van de gebruiker. | WaitingForUserTicketsFilterTab |
| SCH-BEH-02-01-TAB03 | TAB | Filtertab | Filtert op actieve koppeling aan huidige beheerder. | Aan mij toegewezen | Gebruikergebonden filter binnen beheerdercontext. | AssignedToMeTicketsFilterTab |
| SCH-BEH-02-01-TAB04 | TAB | Filtertab | Toont alle meldingen binnen beheerderautorisatie. | Alles | Beheerder ziet alle meldingen. | AllTicketsFilterTab |
| SCH-BEH-02-01-TAB05 | TAB | Filtertab | Filtert op backendstatus Closed. | Gesloten | Inclusief meldingen die gebruikersgericht nog als Opgelost kunnen gelden. | ClosedTicketsFilterTab |
| SCH-BEH-02-01-S03 | S | Meldingenoverzicht | Linkerkolom met kaartlijst van meldingen. | Meldingenoverzicht | Resultaat van zoek- en filterselectie. | TicketOverviewSection |
| SCH-BEH-02-01-F04 | F | Lijsttelling | Toont aantal meldingen binnen actuele lijstcontext. | aantal open meldingen | Dynamisch; label volgt filtercontext. | TicketListCountDisplay |
| SCH-BEH-02-01-T01 | T | Meldingskaartenlijst | Herhalende kaartlijst met samenvatting per melding. | Meldingenoverzicht | Geen vaste mockupdata overnemen. | TicketCardList |
| SCH-BEH-02-01-F05 | F | Meldingskaart — categorie | Tag voor meldingscategorie. | Technisch probleem / Inhoudelijke fout / Wijziging aanvragen / Overig | Afgeleid uit TicketCategories. | TicketCategoryTag |
| SCH-BEH-02-01-F06 | F | Meldingskaart — status | Tag voor actuele status. | Nieuw / In behandeling / Wachten op gebruiker / Gesloten | Afgeleid uit TicketStatuses en closurecontext. | TicketStatusTag |
| SCH-BEH-02-01-F07 | F | Meldingskaart — assignment | Indicatie dat de huidige beheerder gekoppeld is. | Aan mij | Alleen tonen bij actieve assignment naar huidige beheerder. | AssignedToMeTag |
| SCH-BEH-02-01-F08 | F | Meldingskaart — nummer | Mensleesbaar meldingsnummer. | #MP-2026-041 | Dynamische waarde, geen GUID. | TicketNumberDisplay |
| SCH-BEH-02-01-F09 | F | Meldingskaart — onderwerp | Onderwerp van de melding. | onderwerp | Afkomstig uit gebruikerinput. | TicketSubjectDisplay |
| SCH-BEH-02-01-F10 | F | Meldingskaart — snippet | Korte samenvatting of preview van melding of recente activiteit. | tekstfragment | Veilig afkappen en encoden. | TicketSnippetDisplay |
| SCH-BEH-02-01-F11 | F | Meldingskaart — datum | Datum of laatste activiteit in compacte notatie. | datum | Lokaal geformatteerd op basis van UTC. | TicketCardDateDisplay |
| SCH-BEH-02-01-F12 | F | Meldingskaart — indicatie | Toewijzings- of reactie-indicatie. | 1 reactie nieuw / Nog niet toegewezen | Dynamisch. | TicketCardAttentionDisplay |
| SCH-BEH-02-01-A01 | A | Meldingskaart | Selecteert melding en laadt detailpaneel. | Kaartselectie | Volledige kaart is selecteerbaar. | SelectTicketAction |
| SCH-BEH-02-01-S04 | S | Detailpaneel | Rechterpaneel met geselecteerde melding. | meldingsnummer | Toont statuschips en detailsecties. | SelectedTicketDetailPanel |
| SCH-BEH-02-01-F13 | F | Detailkop — meldingsnummer | Meldingsnummer van geselecteerde melding. | #MP-2026-041 | Mensleesbare referentie. | SelectedTicketNumberDisplay |
| SCH-BEH-02-01-F14 | F | Detailkop — categorie/status | Categorie- en statuschips bij geselecteerde melding. | Inhoudelijke fout / In behandeling | Dynamisch. | SelectedTicketHeaderTags |
| SCH-BEH-02-01-S05 | S | Kerngegevens | Detailsectie met formele basisgegevens en beheerderkoppelingen. | Kerngegevens | Open in normale mockup. | TicketCoreDataSection |
| SCH-BEH-02-01-F15 | F | Kerngegevens — gemeld door | Naam van de melder. | Gemeld door | Read-only. | ReporterDisplayName |
| SCH-BEH-02-01-F16 | F | Kerngegevens — gemeld op | Aanmaakmoment van de melding. | Gemeld op | UTC-bron lokaal tonen. | TicketCreatedAtDisplay |
| SCH-BEH-02-01-F17 | F | Kerngegevens — categorie | Categorie van de melding. | Categorie | Read-only. | TicketCategoryDisplay |
| SCH-BEH-02-01-F18 | F | Kerngegevens — toegewezen aan | Lijst met actief gekoppelde beheerders. | Toegewezen aan | Nul, één of meerdere beheerders mogelijk. | AssignedAdminsList |
| SCH-BEH-02-01-A02 | A | Kerngegevens — ontkoppel mij | Ontkoppelt huidige beheerder na verplichte reden. | Ontkoppel mij | Opent bevestiging/modal met reden. | UnassignCurrentAdminAction |
| SCH-BEH-02-01-A03 | A | Kerngegevens — ontkoppel beheerder | Ontkoppelt een andere actieve beheerder na verplichte reden. | [X] | Opent bevestiging/modal met reden. | UnassignAdminAction |
| SCH-BEH-02-01-A04 | A | Kerngegevens — toewijzen | Opent flow om beheerder te koppelen. | Wijs aan iemand toe | Dubbele actieve koppeling blokkeren. | AssignAdminAction |
| SCH-BEH-02-01-DD01 | F | Kerngegevens — status | Statusdropdown met toegestane statuswaarden. | Status | Niet gebruiken als vervanging van formele sluitactie. | TicketStatusDropdown |
| SCH-BEH-02-01-S06 | S | Melding | Detailsectie met oorspronkelijke meldinginhoud. | Melding | Read-only. | TicketMessageSection |
| SCH-BEH-02-01-F19 | F | Melding — onderwerp | Oorspronkelijk onderwerp. | Onderwerp | Niet overschrijven vanuit beheer. | TicketSubjectValue |
| SCH-BEH-02-01-F20 | F | Melding — beschrijving | Oorspronkelijke beschrijving. | Beschrijving | Veilig renderen. | TicketDescriptionValue |
| SCH-BEH-02-01-S07 | S | Discussie | Uitklapbare sectie met interne/externe discussie en invoer. | Discussie | Open in alles-open screenshot. | TicketDiscussionSection |
| SCH-BEH-02-01-T02 | T | Discussielijst | Lijst met interne, externe en systeemgegenereerde berichten. | Discussie | Scrollbaar bij veel berichten. | TicketDiscussionMessageList |
| SCH-BEH-02-01-F21 | F | Discussiebericht | Actor, zichtbaarheid, datum/tijd en inhoud van één bericht. | Intern / Extern | Dynamische lijstregel. | TicketDiscussionMessageItem |
| SCH-BEH-02-01-FORM01 | FORM | Discussieformulier | Formulier voor nieuw discussiebericht. | Plaats een bericht in de discussie | Geen conceptopslag. | TicketDiscussionForm |
| SCH-BEH-02-01-F22 | F | Discussieformulier — bericht | Tekstinvoer voor nieuw discussiebericht. | Plaats een bericht in de discussie | Verplicht bij versturen. | DiscussionMessageBodyInput |
| SCH-BEH-02-01-FILTER01 | FILTER | Discussieformulier — zichtbaarheid | Keuze tussen intern en extern bericht. | Intern / Extern | Intern standaard in mockup. | DiscussionVisibilitySelector |
| SCH-BEH-02-01-B01 | B | Discussieformulier — verzenden | Verstuurt discussiebericht. | Verstuur | Server-side sanitizing en autorisatie. | SendDiscussionMessageButton |
| SCH-BEH-02-01-S08 | S | Oplossing | Uitklapbare sectie voor oplossing, afsluitstatus en sluiting. | Oplossing | Open in alles-open screenshot. | TicketSolutionSection |
| SCH-BEH-02-01-FORM02 | FORM | Oplossingsformulier | Formulier voor oplossingstekst, afsluitstatus en sluitoptie. | Oplossing | Mutatieformulier. | TicketSolutionForm |
| SCH-BEH-02-01-F23 | F | Oplossing — tekst | Oplossingstekst richting gebruiker. | Typ hier de oplossing die naar de gebruiker verstuurd wordt. | Verplicht bij formele sluiting. | SolutionTextInput |
| SCH-BEH-02-01-FILTER02 | FILTER | Oplossing — afsluitstatus | Keuze voor inhoudelijke afsluitstatus. | Afsluitstatus | Vaste waardelijst. | ResolutionTypeSelector |
| SCH-BEH-02-01-F24 | F | Oplossing — reactietermijn | Toelichting op heropenbaarheid na sluiten. | Na het versturen kan de gebruiker nog 7 dagen reageren... | Dagenwaarde moet uit systeeminstelling/configuratie komen als die beheerbaar is. | ReopenDeadlineHint |
| SCH-BEH-02-01-F25 | F | Oplossing — sluitkeuze | Checkbox voor formele sluiting. | Sluit melding | Leidt tot TicketClosures wanneer actief. | CloseTicketCheckbox |
| SCH-BEH-02-01-B02 | B | Oplossing — versturen | Verstuurt oplossing en verwerkt eventueel formele sluiting. | Verstuur oplossing | Gedrag afhankelijk van sluitkeuze. | SendSolutionButton |
| SCH-BEH-02-01-MOD01 | MOD | Heropenmodal | Bevestigingspopup voor heropenen van gesloten melding. | Heropen melding | Alleen bij gesloten melding. | ReopenTicketModal |
| SCH-BEH-02-01-F26 | F | Heropenmodal — reden | Verplicht veld voor heropenreden. | Reden van heropenen | Wordt vastgelegd in TicketReopenRequests. | AdminReopenReasonInput |
| SCH-BEH-02-01-B03 | B | Heropenmodal — bevestigen | Bevestigt heropenen. | Heropen | Ontkoppelt actieve beheerders en zet status op Nieuw. | ConfirmReopenTicketButton |
| SCH-BEH-02-01-S09 | S | Doorzetten naar docent | Uitklapbare sectie voor docentdoorzetting. | Doorzetten naar docent | Samengestelde domeinactie. | ForwardToTeacherSection |
| SCH-BEH-02-01-FORM03 | FORM | Doorzetformulier | Formulier met docentselectie en toelichting. | Doorzetten naar docent | Open in alles-open screenshot. | ForwardToTeacherForm |
| SCH-BEH-02-01-DD02 | F | Doorzetten — docent | Selectie van relevante docent. | Selecteer docent | Alleen contextueel relevante docenten tonen. | TeacherSelectionDropdown |
| SCH-BEH-02-01-M01 | M | Doorzetten — waarschuwing | Waarschuwing over verantwoordelijkheid en gedeelde oefening. | Let op: Weet je zeker dat deze docent verantwoordelijk was voor deze oefening en dat dit niet een gedeelde oefening betreft?! | Bewuste controle voor beheerder. | ForwardToTeacherWarning |
| SCH-BEH-02-01-F27 | F | Doorzetten — toelichting | Verplichte toelichting richting docent. | Begeleidende toelichting | Opslag in doorzetregistratie. | TeacherForwardExplanationInput |
| SCH-BEH-02-01-B04 | B | Doorzetten — uitvoeren | Sluit melding en zet door naar docent. | Sluit en zet door naar docent | Sluit met afsluitstatus Module configuratie. | ForwardToTeacherButton |
| SCH-BEH-02-01-S10 | S | Geavanceerd | Uitklapbare sectie met technische snapshot. | Geavanceerd | Alleen beheerder. | TicketAdvancedSection |
| SCH-BEH-02-01-F28 | F | Geavanceerd — snapshot | Technische momentopname van meldmoment. | Laatst gezien / Browser / Meldingpagina / IP-adres / Rollen van gebruiker | Read-only. | TicketTechnicalSnapshotDisplay |
| SCH-BEH-02-01-S11 | S | Geschiedenis | Uitklapbare sectie met auditregels. | Geschiedenis | Compacte auditlaag. | TicketHistorySection |
| SCH-BEH-02-01-T03 | T | Geschiedenislijst | Chronologische compacte auditregels. | Geschiedenis | Geen vrije teksthistorie. | TicketHistoryList |
| SCH-BEH-02-01-M02 | M | Lege lijst | Leegstaat wanneer zoek/filter geen meldingen oplevert. | Geen meldingen gevonden | Contextafhankelijk. | EmptyTicketListMessage |
| SCH-BEH-02-01-M03 | M | Foutmelding | Foutstaat bij laad- of mutatiefout. | Melding kon niet worden geladen / wijziging kon niet worden opgeslagen | Tekst afhankelijk van fouttype. | TicketErrorMessage |
3.5 Waardelagen
| Element-ID | GUI-verwijzing | Zichtbaar label | Technische naam | Databron | Waardebron | Datatype | Bewerkbaar | Validatie / regel |
|---|---|---|---|---|---|---|---|---|
| SCH-BEH-02-01-F01 | Introblok — open meldingen | Open meldingen | OpenTicketsSummaryValue | Tickets.StatusId + TicketStatuses.Code | Berekend aantal tickets waarvan status niet Closed is | Integer | Nee | Alleen actuele tickets tellen mee; mockupaantal niet hardcoded gebruiken. |
| SCH-BEH-02-01-F02 | Introblok — aan mij toegewezen | Aan mij toegewezen | AssignedToMeSummaryValue | TicketAssignments.AdminUserId, TicketAssignments.IsActive | Berekend aantal actieve assignments voor huidige beheerder | Integer | Nee | Alleen actieve koppelingen aan de ingelogde beheerder tellen mee. |
| SCH-BEH-02-01-F03 | Zoekveld | Zoek op meldingsnummer, categorie of discussie | TicketSearchText | Gebruikersinput; query op Tickets.TicketNumber, Tickets.Subject, TicketCategories.Name, TicketDiscussionMessages.Body | User input voor lijstfilter | String | Ja | Zoeken binnen actieve filter; geschiedenis wordt niet doorzocht; invoer veilig behandelen. |
| SCH-BEH-02-01-TAB01 | Filtertab Nieuw | Nieuw | NewTicketsFilterTab | TicketStatuses.Code = New | Filterwaarde | Enum | Ja | Alleen tickets met status New; status Nieuw is alleen geldig zonder actieve assignment. |
| SCH-BEH-02-01-TAB02 | Filtertab Wacht op gebruiker | Wacht op gebruiker | WaitingForUserTicketsFilterTab | TicketStatuses.Code = WaitingForUser | Filterwaarde | Enum | Ja | Toont meldingen waarbij actie van de gebruiker verwacht wordt. |
| SCH-BEH-02-01-TAB03 | Filtertab Aan mij toegewezen | Aan mij toegewezen | AssignedToMeTicketsFilterTab | TicketAssignments.AdminUserId, TicketAssignments.IsActive | Filterwaarde | Enum / user context | Ja | Toont tickets met actieve assignment naar huidige beheerder. |
| SCH-BEH-02-01-TAB04 | Filtertab Alles | Alles | AllTicketsFilterTab | Tickets | Filterwaarde | Enum | Ja | Beheerder ziet alle meldingen binnen beheerautorisatie. |
| SCH-BEH-02-01-TAB05 | Filtertab Gesloten | Gesloten | ClosedTicketsFilterTab | TicketStatuses.Code = Closed, TicketClosures | Filterwaarde | Enum | Ja | Beheerweergave gebruikt backendstatus; gebruikersgerichte Opgelost-status is afgeleid. |
| SCH-BEH-02-01-T01 | Meldingskaartenlijst | Meldingenoverzicht | TicketCardList | Tickets, TicketCategories, TicketStatuses, TicketAssignments, TicketDiscussionMessages, TicketClosures | Samengesteld read model per kaart | Collection | Nee | Alleen dynamische lijstregels; kaartselectie bepaalt detailpaneel. |
| SCH-BEH-02-01-F05 | Meldingskaart — categorie | Technisch probleem / Inhoudelijke fout / Wijziging aanvragen / Overig | TicketCategoryTag | TicketCategories.Code, TicketCategories.Name | Database lookup | String / enum | Nee | Alleen gedefinieerde categorieën tonen. |
| SCH-BEH-02-01-F06 | Meldingskaart — status | Nieuw / In behandeling / Wachten op gebruiker / Gesloten | TicketStatusTag | TicketStatuses.Code, TicketClosures.ReopenDeadlineUtc | Databasewaarde en eventueel afgeleide sluitcontext | String / enum | Nee | Opgelost is geen backendstatus; niet als TicketStatuses opslaan. |
| SCH-BEH-02-01-F07 | Meldingskaart — assignment | Aan mij | AssignedToMeTag | TicketAssignments.AdminUserId, TicketAssignments.IsActive | Afgeleid uit huidige beheerdercontext | Boolean/display | Nee | Alleen tonen bij actieve assignment aan huidige beheerder. |
| SCH-BEH-02-01-F08 | Meldingskaart — nummer | #MP-2026-041 | TicketNumberDisplay | Tickets.TicketNumber | Databasewaarde | String | Nee | Uniek mensleesbaar nummer; geen GUID tonen. |
| SCH-BEH-02-01-F09 | Meldingskaart — onderwerp | onderwerp | TicketSubjectDisplay | Tickets.Subject | Databasewaarde uit gebruikerinput | String | Nee | Veilig encoden; zoeken ondersteunen. |
| SCH-BEH-02-01-F10 | Meldingskaart — snippet | tekstfragment | TicketSnippetDisplay | Tickets.Description, TicketDiscussionMessages.Body, Tickets.LastActivityAtUtc | Afgeleid previewveld | String | Nee | Preview veilig afkappen; geen actieve HTML renderen. |
| SCH-BEH-02-01-F11 | Meldingskaart — datum | datum | TicketCardDateDisplay | Tickets.CreatedAtUtc of Tickets.LastActivityAtUtc | Lokaal geformatteerde UTC-waarde | Date/time display | Nee | Consistente lokale weergave. |
| SCH-BEH-02-01-F12 | Meldingskaart — indicatie | 1 reactie nieuw / Nog niet toegewezen | TicketCardAttentionDisplay | TicketDiscussionMessages, TicketAssignments, Tickets.LastActivityAtUtc | Berekende attentie- of assignmentweergave | String | Nee | Geen vaste tekst; afhankelijk van actuele ticketcontext. |
| SCH-BEH-02-01-F13 | Detailkop — meldingsnummer | #MP-2026-041 | SelectedTicketNumberDisplay | Tickets.TicketNumber | Databasewaarde van geselecteerde melding | String | Nee | Moet overeenkomen met geselecteerde kaart. |
| SCH-BEH-02-01-F15 | Kerngegevens — gemeld door | Gemeld door | ReporterDisplayName | Tickets.CreatedByUserId, Users | Naamweergave melder | String | Nee | Alleen in beheerweergave; reguliere gebruiker ziet geen beheerderdata terug. |
| SCH-BEH-02-01-F16 | Kerngegevens — gemeld op | Gemeld op | TicketCreatedAtDisplay | Tickets.CreatedAtUtc | Lokaal geformatteerde UTC-waarde | Date/time display | Nee | Niet achteraf wijzigen. |
| SCH-BEH-02-01-F17 | Kerngegevens — categorie | Categorie | TicketCategoryDisplay | Tickets.CategoryId, TicketCategories | Database lookup | String | Nee | Categorie niet vrij bewerkbaar in dit scherm. |
| SCH-BEH-02-01-F18 | Kerngegevens — toegewezen aan | Toegewezen aan | AssignedAdminsList | TicketAssignments, Users | Actieve beheerderkoppelingen | Collection | Nee | Kan nul, één of meerdere actieve beheerders bevatten. |
| SCH-BEH-02-01-A02 | Ontkoppel mij | Ontkoppel mij | UnassignCurrentAdminAction | TicketAssignments | Mutatie van assignmentlaag | Action | Ja | Reden verplicht; IsActive = false, UnassignedAtUtc, UnassignedByUserId en UnassignReason vastleggen. |
| SCH-BEH-02-01-A03 | Ontkoppel beheerder | [X] | UnassignAdminAction | TicketAssignments | Mutatie van assignmentlaag | Action | Ja | Reden verplicht; alleen actieve assignment ontkoppelen. |
| SCH-BEH-02-01-A04 | Wijs aan iemand toe | Wijs aan iemand toe | AssignAdminAction | Users, UserRoles, TicketAssignments | Nieuwe actieve beheerderkoppeling | Action | Ja | Alleen actieve beheerders selecteerbaar; actieve combinatie ticket + beheerder is uniek. |
| SCH-BEH-02-01-DD01 | Status | Status | TicketStatusDropdown | Tickets.StatusId, TicketStatuses | Mutatie van actuele hoofdstatus | Enum / lookup | Ja | Alleen toegestane transities; Closed niet als simpele dropdownmutatie verwerken wanneer formele sluiting vereist is. |
| SCH-BEH-02-01-F19 | Melding — onderwerp | Onderwerp | TicketSubjectValue | Tickets.Subject | Databasewaarde | String | Nee | Oorspronkelijke meldinginhoud blijft read-only. |
| SCH-BEH-02-01-F20 | Melding — beschrijving | Beschrijving | TicketDescriptionValue | Tickets.Description | Databasewaarde | Text | Nee | Veilig renderen; niet overschrijven vanuit beheer. |
| SCH-BEH-02-01-T02 | Discussielijst | Discussie | TicketDiscussionMessageList | TicketDiscussionMessages, Users | Chronologische discussie binnen ticket | Collection | Nee | Interne berichten alleen beheerder; externe berichten ook melder. |
| SCH-BEH-02-01-F21 | Discussiebericht | Intern / Extern | TicketDiscussionMessageItem | TicketDiscussionMessages.MessageType, Visibility, Body, CreatedAtUtc, CreatedByUserId | Databasewaarde + displaylogica | Composite | Nee | External beheerderberichten tonen aan gebruiker generiek als Beheerder. |
| SCH-BEH-02-01-F22 | Discussieformulier — bericht | Plaats een bericht in de discussie | DiscussionMessageBodyInput | User input; bij verzenden naar TicketDiscussionMessages.Body | User input | Text | Ja | Verplicht bij versturen; server-side sanitizing; geen conceptopslag. |
| SCH-BEH-02-01-FILTER01 | Discussieformulier — zichtbaarheid | Intern / Extern | DiscussionVisibilitySelector | User input; bij verzenden naar TicketDiscussionMessages.Visibility | User input | Enum | Ja | Alleen Internal of External; interne berichten nooit naar gebruiker tonen. |
| SCH-BEH-02-01-B01 | Verstuur discussiebericht | Verstuur | SendDiscussionMessageButton | TicketDiscussionMessages, eventueel SystemMessages | Mutatie | Action | Ja | External bericht kan gebruikersmelding of actie-indicatie veroorzaken. |
| SCH-BEH-02-01-F23 | Oplossing — tekst | Typ hier de oplossing die naar de gebruiker verstuurd wordt. | SolutionTextInput | User input; bij sluiting naar TicketClosures.SolutionText | User input | Text | Ja | Verplicht bij formele sluiting; veilig opslaan en renderen. |
| SCH-BEH-02-01-FILTER02 | Oplossing — afsluitstatus | Afsluitstatus | ResolutionTypeSelector | TicketResolutionTypes | Vaste lookupkeuze | Enum / lookup | Ja | Alleen actieve, vooraf gedefinieerde resolutietypen; ClosedByUser niet als beheerderoplossing tonen. |
| SCH-BEH-02-01-F24 | Oplossing — reactietermijn | Na het versturen kan de gebruiker nog 7 dagen reageren... | ReopenDeadlineHint | Systeeminstelling of configuratiewaarde voor heropentermijn, plus TicketClosures.ReopenDeadlineUtc na sluiting | Configuratie en berekening | String / date display | Nee | Aantal dagen niet hardcoded wanneer configureerbaar; sluiting legt concrete deadline vast. |
| SCH-BEH-02-01-F25 | Sluit melding | Sluit melding | CloseTicketCheckbox | User input | Frontend keuze voor formele sluiting | Boolean | Ja | Alleen bij actief vinkje ontstaat TicketClosures en status Closed. |
| SCH-BEH-02-01-B02 | Verstuur oplossing | Verstuur oplossing | SendSolutionButton | TicketClosures, TicketDiscussionMessages, TicketHistory, SystemMessages | Mutatie afhankelijk van sluitkeuze | Action | Ja | Bij formele sluiting resolutietype, oplossingstekst en heropen-deadline verplicht. |
| SCH-BEH-02-01-MOD01 | Heropenmodal | Heropen melding | ReopenTicketModal | Geselecteerde gesloten Tickets-record | Runtime state | Modal | Ja | Alleen beschikbaar bij gesloten melding. |
| SCH-BEH-02-01-F26 | Heropenreden | Reden van heropenen | AdminReopenReasonInput | User input; bij bevestiging naar TicketReopenRequests.Reason | User input | Text | Ja | Verplicht; requestsource Admin; vorige sluiting koppelen indien beschikbaar. |
| SCH-BEH-02-01-B03 | Heropen bevestigen | Heropen | ConfirmReopenTicketButton | TicketReopenRequests, Tickets, TicketAssignments, TicketHistory | Samengestelde mutatie | Action | Ja | Zet status op New, ontkoppelt actieve beheerders en schrijft minimaal twee historyregels. |
| SCH-BEH-02-01-DD02 | Doorzetten — docent | Selecteer docent | TeacherSelectionDropdown | Users, UserRoles, relaties/docentcontext van melder | Contextuele lookup | Lookup | Ja | Alleen relevante docenten selecteerbaar; selectie verplicht. |
| SCH-BEH-02-01-F27 | Doorzetten — toelichting | Begeleidende toelichting | TeacherForwardExplanationInput | User input; bij bevestiging naar TicketForwardedToTeacher.AdminExplanation | User input | Text | Ja | Verplicht; veilig opslaan. |
| SCH-BEH-02-01-B04 | Doorzetten uitvoeren | Sluit en zet door naar docent | ForwardToTeacherButton | TicketForwardedToTeacher, TicketClosures, TicketHistory, SystemMessages, PrivateMessageThreads, PrivateMessages | Samengestelde transactie | Action | Ja | Sluit met resolutietype ModuleConfiguration; genereert systeem- en privébericht. |
| SCH-BEH-02-01-F28 | Geavanceerd — snapshot | Geavanceerd | TicketTechnicalSnapshotDisplay | TicketTechnicalSnapshots | Snapshot van meldmoment | Object / display | Nee | Niet live herberekenen; reguliere gebruiker ziet deze gegevens niet. |
| SCH-BEH-02-01-T03 | Geschiedenis | Geschiedenis | TicketHistoryList | TicketHistory | Compacte auditregels | Collection | Nee | Geen lange toelichtingen; ActionType-gedreven weergave. |
| SCH-BEH-02-01-M02 | Lege lijst | Geen meldingen gevonden | EmptyTicketListMessage | Actieve query/filter | Runtime state | Message | Nee | Geen oude selectie tonen die niet meer bij filter past. |
| SCH-BEH-02-01-M03 | Foutmelding | Melding kon niet worden geladen / wijziging kon niet worden opgeslagen | TicketErrorMessage | Backendvalidatie, autorisatie, netwerk- of concurrencyfout | Runtime state | Message | Nee | Duidelijke melding zonder technische stacktrace. |
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-02-01-01 | SRS-AUTH-001 SRS-TIC-003 AC-AUTH-001 AC-TIC-003 | Het beheerdersoverzicht voor meldingen uitsluitend tonen aan gebruikers met een actieve beheerdercontext |
REQ-SCH-BEH-02-01-02 | SRS-TIC-003 AC-TIC-003 | In één beheerderview een zoek- en filterbare meldingenlijst links en een detailpaneel voor de geselecteerde melding rechts kunnen tonen |
REQ-SCH-BEH-02-01-03 | SRS-TIC-002 AC-TIC-002 | De normale schermafbeelding en de schermafbeelding Alles open als dezelfde view worden beschouwd; geopende detailsecties krijgen geen aparte scherm-ID |
REQ-SCH-BEH-02-01-04 | SRS-RDM-004 SRS-RDM-007 SRS-RDM-002 SRS-RDM-001 SRS-NFR-AUD-001 SRS-TIC-006 AC-RDM-004 AC-RDM-007 AC-RDM-002 AC-RDM-001 AC-NFR-AUD-001 AC-TIC-006 | Alle zichtbare namen, aantallen, datums, meldingsnummers, snippets, statuslabels, discussie-inhoud en historyregels dynamisch opbouwen uit de actuele ticketcontext |
REQ-SCH-BEH-02-01-05 | SRS-RDM-004 SRS-RDM-007 SRS-RDM-002 SRS-RDM-001 SRS-TIC-003 AC-RDM-004 AC-RDM-007 AC-RDM-002 AC-RDM-001 AC-TIC-003 | Header, beheerdernavigatie, profielmenu, berichtenteller en footer mogen in dit schermdocument niet als schermspecifieke elementen worden behandeld |
REQ-SCH-BEH-02-01-06 | SRS-RDM-004 SRS-RDM-007 SRS-RDM-002 SRS-RDM-001 SRS-TIC-007 AC-RDM-004 AC-RDM-007 AC-RDM-002 AC-RDM-001 AC-TIC-007 | Het introblok minimaal de teller Open meldingen tonen op basis van alle niet-gesloten meldingen |
REQ-SCH-BEH-02-01-07 | SRS-RDM-004 SRS-RDM-007 SRS-RDM-002 SRS-RDM-001 SRS-TIC-003 AC-RDM-004 AC-RDM-007 AC-RDM-002 AC-RDM-001 AC-TIC-003 | Het introblok minimaal de teller Aan mij toegewezen tonen op basis van actieve TicketAssignments voor de huidige beheerder |
REQ-SCH-BEH-02-01-08 | SRS-TIC-006 AC-TIC-006 | Zoeken binnen de actieve filtercontext ondersteunen op minimaal meldingsnummer, onderwerp, categorie en discussie-inhoud |
REQ-SCH-BEH-02-01-09 | SRS-NFR-AUD-001 SRS-TIC-002 AC-NFR-AUD-001 AC-TIC-002 | Zoeken in TicketHistory mag geen onderdeel zijn van de reguliere zoekfunctie in het meldingenoverzicht |
REQ-SCH-BEH-02-01-10 | SRS-TIC-007 AC-TIC-007 | Filtertabs ondersteunen voor minimaal Nieuw, Wacht op gebruiker, Aan mij toegewezen, Alles en Gesloten |
REQ-SCH-BEH-02-01-11 | SRS-TIC-002 AC-TIC-002 | Het tabblad Nieuw alleen meldingen tonen met backendstatus New |
REQ-SCH-BEH-02-01-12 | SRS-TIC-002 AC-TIC-002 | Het tabblad Wacht op gebruiker alleen meldingen tonen met backendstatus WaitingForUser |
REQ-SCH-BEH-02-01-13 | SRS-TIC-003 AC-TIC-003 | Het tabblad Aan mij toegewezen alleen meldingen tonen met een actieve assignment naar de ingelogde beheerder |
REQ-SCH-BEH-02-01-14 | SRS-TIC-007 AC-TIC-007 | Het tabblad Gesloten meldingen tonen met backendstatus Closed, ongeacht of de melder deze gebruikersgericht nog als Opgelost ziet |
REQ-SCH-BEH-02-01-15 | SRS-TIC-002 AC-TIC-002 | Het systeem hoeft in de eerste versie geen automatische samenvoeging van dubbele meldingen te ondersteunen |
REQ-SCH-BEH-02-01-16 | SRS-TIC-002 AC-TIC-002 | Iedere meldingskaart minimaal categorie, status, meldingsnummer, onderwerp, snippet, datum/laatste activiteit en een reactie- of toewijzingsindicatie kunnen tonen |
REQ-SCH-BEH-02-01-17 | SRS-TIC-002 AC-TIC-002 | De volledige meldingskaart selecteerbaar zijn en het detailpaneel altijd de actueel geselecteerde melding tonen |
REQ-SCH-BEH-02-01-18 | SRS-AUTH-004 SRS-TIC-006 AC-AUTH-004 AC-TIC-006 | Het systeem mag technische GUID's of interne database-ID's niet zichtbaar tonen in het meldingenoverzicht |
REQ-SCH-BEH-02-01-19 | SRS-TIC-002 AC-TIC-002 | Een lege staat tonen wanneer de actieve zoek- en filterselectie geen meldingen oplevert |
REQ-SCH-BEH-02-01-20 | SRS-TIC-006 AC-TIC-006 | Het detailpaneel minimaal de secties Kerngegevens, Melding, Discussie, Oplossing, Doorzetten naar docent, Geavanceerd en Geschiedenis ondersteunen |
REQ-SCH-BEH-02-01-21 | SRS-TIC-003 AC-TIC-003 | De sectie Kerngegevens minimaal melder, aanmaakmoment, categorie, actief gekoppelde beheerders en actuele status tonen |
REQ-SCH-BEH-02-01-22 | SRS-TIC-003 AC-TIC-003 | Een melding mag nul, één of meerdere actieve beheerderkoppelingen hebben |
REQ-SCH-BEH-02-01-23 | SRS-TIC-003 AC-TIC-003 | Een beheerder geen meer dan één actieve assignment op dezelfde melding hebben |
REQ-SCH-BEH-02-01-24 | SRS-NFR-AUD-001 SRS-TIC-003 AC-NFR-AUD-001 AC-TIC-003 | Beheerders kunnen koppelen aan een melding en dit vastleggen in TicketAssignments met auditinformatie |
REQ-SCH-BEH-02-01-25 | SRS-TIC-003 AC-TIC-003 | Beheerders kunnen ontkoppelen van een melding en daarbij verplicht een reden vastleggen |
REQ-SCH-BEH-02-01-26 | SRS-NFR-AUD-001 SRS-TIC-003 AC-NFR-AUD-001 AC-TIC-003 | Koppelen en ontkoppelen van beheerders minimaal een TicketHistory-regel opleveren en mag daarnaast een intern systeemgegenereerd discussie-item tonen |
REQ-SCH-BEH-02-01-27 | SRS-TIC-003 AC-TIC-003 | Status Nieuw mag alleen geldig zijn zolang er geen actieve beheerderkoppeling bestaat |
REQ-SCH-BEH-02-01-28 | SRS-TIC-002 AC-TIC-002 | De statusdropdown alleen statussen tonen of accepteren die voor de actuele meldingtoestand toegestaan zijn |
REQ-SCH-BEH-02-01-29 | SRS-TIC-004 AC-TIC-004 | De status Gesloten geen als gewone statusdropdown-mutatie worden gebruikt wanneer een formele sluitactie met oplossing, afsluitstatus en heropen-deadline vereist is |
REQ-SCH-BEH-02-01-30 | SRS-TIC-006 AC-TIC-006 | Een statuswijziging naar Wacht op gebruiker samenhangen met externe communicatie waarin om reactie van de gebruiker wordt gevraagd |
REQ-SCH-BEH-02-01-31 | SRS-TIC-002 AC-TIC-002 | De sectie Melding onderwerp en volledige beschrijving van de oorspronkelijke melding read-only tonen |
REQ-SCH-BEH-02-01-32 | SRS-NFR-AUD-001 SRS-TIC-003 AC-NFR-AUD-001 AC-TIC-003 | Beheerders mogen oorspronkelijke meldingtekst niet overschrijven; correcties en opvolging via discussie, oplossing, history of gespecialiseerde records worden vastgelegd |
REQ-SCH-BEH-02-01-33 | SRS-TIC-006 AC-TIC-006 | De sectie Discussie interne, externe en systeemgegenereerde discussieberichten kunnen tonen |
REQ-SCH-BEH-02-01-34 | SRS-TIC-003 AC-TIC-003 | Interne discussieberichten mogen uitsluitend zichtbaar zijn voor beheerders |
REQ-SCH-BEH-02-01-35 | SRS-TIC-003 AC-TIC-003 | Externe discussieberichten zichtbaar zijn voor de melder en voor beheerders |
REQ-SCH-BEH-02-01-36 | SRS-TIC-003 AC-TIC-003 | Wanneer een beheerder een extern bericht plaatst, de melder dit gebruikersgericht als bericht van Beheerder zien en niet met de individuele beheerdernaam |
REQ-SCH-BEH-02-01-37 | SRS-TIC-003 AC-TIC-003 | Een extern beheerderbericht een systeembericht of actie-indicatie richting de melder kunnen veroorzaken wanneer reactie of kennisname nodig is |
REQ-SCH-BEH-02-01-38 | SRS-AUTH-001 SRS-TIC-006 AC-AUTH-001 AC-TIC-006 | Discussieberichten server-side worden gevalideerd en veilig worden gerenderd zonder vrije HTML of actieve scripts |
REQ-SCH-BEH-02-01-39 | SRS-TIC-007 AC-TIC-007 | De sectie Oplossing oplossingstekst, afsluitstatuskeuze, sluitkeuze en de actie Verstuur oplossing ondersteunen |
REQ-SCH-BEH-02-01-40 | SRS-TIC-003 AC-TIC-003 | Beheeractie: alleen vooraf gedefinieerde actieve TicketResolutionTypes kiezen die geschikt zijn voor beheerderoplossingen |
REQ-SCH-BEH-02-01-41 | SRS-TIC-003 AC-TIC-003 | ClosedByUser / Gesloten door gebruiker geen als reguliere beheerderoplossing in deze sectie worden aangeboden |
REQ-SCH-BEH-02-01-42 | SRS-TIC-007 AC-TIC-007 | Wanneer Sluit melding actief is, Verstuur oplossing een formele sluitregistratie in TicketClosures aanmaken |
REQ-SCH-BEH-02-01-43 | SRS-TIC-003 AC-TIC-003 | Een formele beheerder-sluitactie minimaal sluitende beheerder, sluitmoment, afsluitstatus, oplossingstekst en concrete heropen-deadline vastleggen |
REQ-SCH-BEH-02-01-44 | SRS-TIC-007 AC-TIC-007 | Na formele sluiting de backendstatus van de melding Closed worden |
REQ-SCH-BEH-02-01-45 | SRS-TIC-004 AC-TIC-004 | De gebruikersgerichte status Opgelost geen als aparte backendstatus worden opgeslagen maar wordt afgeleid uit de meest recente sluiting en de heropen-deadline |
REQ-SCH-BEH-02-01-46 | SRS-TIC-007 AC-TIC-007 | Wanneer Sluit melding niet actief is, mag geen formeel TicketClosures-record ontstaan |
REQ-SCH-BEH-02-01-47 | SRS-TIC-004 AC-TIC-004 | Een gesloten melding vanuit beheer kunnen worden heropend via een aparte actie Heropen |
REQ-SCH-BEH-02-01-48 | SRS-TIC-003 AC-TIC-003 | Heropenen door beheer een bevestigingspopup tonen met waarschuwing dat actieve beheerderkoppelingen worden ontkoppeld en dat de melding status Nieuw krijgt |
REQ-SCH-BEH-02-01-49 | SRS-TIC-004 AC-TIC-004 | Heropenen door beheer een verplichte Reden van heropenen vragen |
REQ-SCH-BEH-02-01-50 | SRS-TIC-004 AC-TIC-004 | Heropenen door beheer wordt vastgelegd in TicketReopenRequests met RequestSource = Admin |
REQ-SCH-BEH-02-01-51 | SRS-TIC-003 AC-TIC-003 | Heropenen door beheer alle actieve beheerderkoppelingen ontkoppelen en de melding opnieuw status New geven |
REQ-SCH-BEH-02-01-52 | SRS-TIC-003 AC-TIC-003 | In de geschiedenis bij heropenen door beheer minimaal twee aparte acties zichtbaar zijn: heropenen van de melding en ontkoppelen van de eerder actief gekoppelde beheerders |
REQ-SCH-BEH-02-01-53 | SRS-TIC-002 AC-TIC-002 | De sectie Doorzetten naar docent alleen docenten tonen die functioneel relevant zijn voor de melder en de meldingscontext |
REQ-SCH-BEH-02-01-54 | SRS-TIC-002 AC-TIC-002 | Doorzetten naar docent een verplichte begeleidende toelichting vragen |
REQ-SCH-BEH-02-01-55 | SRS-TIC-003 AC-TIC-003 | Doorzetten naar docent de waarschuwing tonen dat de beheerder controleren of de geselecteerde docent verantwoordelijk was en dat het niet om een gedeelde oefening gaat |
REQ-SCH-BEH-02-01-56 | SRS-NFR-AUD-001 SRS-TIC-002 AC-NFR-AUD-001 AC-TIC-002 | Doorzetten naar docent in één samenhangende transactie TicketForwardedToTeacher, TicketClosures, TicketHistory, een systeembericht aan de gebruiker en een privébericht aan de docent verwerken |
REQ-SCH-BEH-02-01-57 | SRS-TIC-007 AC-TIC-007 | Doorzetten naar docent de melding formeel sluiten met afsluitstatus Module configuratie |
REQ-SCH-BEH-02-01-58 | SRS-TIC-002 AC-TIC-002 | Het privébericht aan de docent bij doorzetten als regulier privébericht worden opgeslagen en gebruikersgericht duidelijk maken dat het namens de melder door beheer is geplaatst |
REQ-SCH-BEH-02-01-59 | SRS-TIC-002 AC-TIC-002 | De sectie Geavanceerd technische snapshotgegevens van het moment van melden tonen en mag deze waarden niet live herberekenen uit de actuele context |
REQ-SCH-BEH-02-01-60 | SRS-TIC-003 AC-TIC-003 | Technische snapshotgegevens mogen alleen aan beheerders worden getoond en niet aan de reguliere melder |
REQ-SCH-BEH-02-01-61 | SRS-NFR-AUD-001 SRS-TIC-002 AC-NFR-AUD-001 AC-TIC-002 | De sectie Geschiedenis compacte auditregels tonen met datum/tijd, actor en actie |
REQ-SCH-BEH-02-01-62 | SRS-NFR-AUD-001 SRS-TIC-004 AC-NFR-AUD-001 AC-TIC-004 | TicketHistory mag geen lange toelichtingen, oplossingsteksten, discussie-inhoud, heropenreden of doorzettoelichting als vrije teksthistorie dupliceren |
REQ-SCH-BEH-02-01-63 | SRS-AUTH-001 SRS-NFR-AUD-001 AC-AUTH-001 AC-NFR-AUD-001 | Mutaties op meldingen server-side autorisatie, validatie en auditregistratie afdwingen |
REQ-SCH-BEH-02-01-64 | SRS-TIC-002 AC-TIC-002 | Bij gelijktijdige wijzigingen het systeem voorkomen dat verouderde schermdata recentere ticketmutaties overschrijft |
REQ-SCH-BEH-02-01-65 | SRS-TIC-003 AC-TIC-003 | De beheerderweergave bij laad- of opslagfouten een begrijpelijke foutmelding tonen zonder technische stacktrace |
REQ-SCH-BEH-02-01-66 | SRS-TIC-002 AC-TIC-002 | De layout bij kleinere schermbreedte de meldingenlijst en het detailpaneel onder elkaar kunnen plaatsen zonder informatieverlies |
3.7 Technische koppeling
Voor technische uitwerking van het meldingenoverzicht zijn vooral relevant:
- 05 Autorisatie, policies en server-side contextcontrole voor server-side controle op beheerdertoegang tot meldingen en statusacties.
- 13 Berichten, systeemberichten, notificaties en privéberichten voor communicatie rondom meldingen en eventuele berichtkoppelingen.
- 14 Meldingen, tickets en beheerafhandeling voor ticketstatussen, discussie, oplossing, heropenen en doorzetten naar docent.
- 17 Readmodels, tellers, badges, caching en materialisatie voor meldingtellers, filteroverzichten en badgewaarden.
- 19 Logging, audit, securitylogging en technische foutafhandeling voor historie, audittrail en foutafhandeling bij beheeracties.
- 21 Beheerbeleid, monitoring, backup, restore en operatie voor operationele beheerafhandeling en escalatiecontext.
- 24 Frontend, Blazor, routing, state en componentopbouw voor filters, selectie, detailpanelen en disabled states.
- 25 Privacy, retentie, anonimisering en gegevensbescherming voor minimale persoonsgegevens in tickets en discussiehistorie.