Skip to main content

UC-GEN-TIC-011 — Extern bericht plaatsen

1. Kerngegevens

VeldWaarde
Usecase-IDUC-GEN-TIC-011
NaamExtern bericht plaatsen
DomeinMeldingen
Primaire actorBeheerder
Secundaire actor(en)Melder, systeem, meldingenservice, berichtensysteem, database
RolcontextIngelogde gebruiker met actieve beheerdercontext en geldige behandelcontext voor de melding
Betrokken schermenSCH-BEH-02-01 — Meldingenoverzicht beheerder; SCH-GEN-06-02 — Melding details; SCH-GEN-04 — Open bericht
Gerelateerde usecasesUC-GEN-TIC-003 — Melding details bekijken; UC-GEN-TIC-004 — Reageren op melding; UC-GEN-TIC-008 — Beheerdersoverzicht meldingen bekijken; UC-GEN-TIC-009 — Melding openen als beheerder; UC-GEN-TIC-010 — Beheerder koppelen of ontkoppelen; UC-GEN-TIC-012 — Intern bericht plaatsen; UC-GEN-TIC-013 — Melding oplossen of sluiten
Primaire entiteitenTickets, TicketDiscussionMessages, SystemMessages, TicketHistory
Secundaire entiteiten / eventsTicketAssignments, Users, TicketExternalMessageAdded, TicketStatusChanged, SystemMessageCreated, TicketActionIndicatorRecalculated, TicketExternalMessageFailed
Gerelateerde popupsPOP-GEN-TIC-EXTERNAL-NOT-ALLOWED, POP-GEN-TIC-EXTERNAL-FAILED, POP-GEN-TIC-NOT-AVAILABLE
PopupregisterOntwerpbronnen — Popup-register
MoSCoWMust have

2. Omschrijving

Een beheerder plaatst vanuit de beheerderdetailweergave van een melding een extern zichtbaar bericht aan de melder. Het bericht wordt opgeslagen als TicketDiscussionMessages met Visibility = External en is daarna zichtbaar voor de melder op het tabblad Discussie van de meldingdetailpagina.

De beheerder kiest bij het plaatsen van het externe bericht expliciet dat het bericht extern zichtbaar is. Externe berichten mogen geen interne beheerinformatie, technische analyse of namen van individuele beheerders aan de melder tonen. In de gebruikersweergave wordt een extern beheerbericht daarom generiek als Beheerder weergegeven.

Wanneer het externe bericht bedoeld is om aanvullende informatie van de melder te vragen, markeert de beheerder dat de melding op reactie van de gebruiker wacht. In dat geval zet het systeem de melding naar status Wachten op reactie (WaitingForUser). De gebruiker ontvangt een systeembericht met een klikbare verwijzing naar dezelfde melding. Deze verwijzing opent de meldingdetailpagina en, wanneer de status Wachten op reactie actief is, direct het tabblad Discussie.

Wanneer het externe bericht alleen een voortgangsupdate of uitleg is zonder gevraagde reactie, blijft de actuele behandelstatus ongewijzigd. Ook dan ontvangt de melder een systeembericht zodat de externe communicatie vindbaar is vanuit het berichtensysteem.

Deze usecase beschrijft uitsluitend externe beheerdercommunicatie binnen een bestaande melding. Interne beheerdersdiscussie, gebruikersreacties, oplossing plaatsen, sluiten, heropenen en doorzetten naar docent vallen buiten deze usecase.

3. Scope

Deze usecase beschrijft:

  • het openen van de externe berichtactie vanuit de beheerderdetailweergave;
  • het expliciet kiezen of bevestigen dat het bericht extern zichtbaar is;
  • het invoeren en valideren van het externe bericht;
  • het optioneel markeren dat een reactie van de gebruiker nodig is;
  • het server-side controleren van sessie, featurestatus, actieve beheerdercontext, tickettoegang, ticketstatus en behandelcontext;
  • het opslaan van een extern TicketDiscussionMessages-record;
  • het generiek tonen van de afzender als Beheerder in de gebruikersweergave;
  • het aanmaken van een SystemMessages-record voor de melder met EntityType = Ticket en EntityId = TicketId;
  • het wijzigen van de ticketstatus naar WaitingForUser wanneer expliciet een reactie van de gebruiker nodig is;
  • het vastleggen van compacte auditinformatie in TicketHistory;
  • het opnieuw afleiden van gebruikersgerichte actie-indicaties zoals Wacht op mij;
  • foutpaden wanneer de melding niet beschikbaar is, de actie niet toegestaan is, de berichttekst ongeldig is of de transactie faalt.

Deze usecase beschrijft niet:

  • het aanmaken van een nieuwe melding;
  • het algemene openen van de beheerderdetailweergave;
  • het koppelen of ontkoppelen van beheerders;
  • interne beheerdersberichten;
  • reguliere gebruikersreacties;
  • het accepteren van een oplossing;
  • het oplossen of sluiten van een melding;
  • het heropenen van een melding;
  • het doorzetten naar docent;
  • vrije privéberichten buiten de meldingscontext;
  • beheer van systeemberichtsjablonen, popupteksten of seeddata.

4. Pre-condities

IDVoorwaarde
PRE-001De beheerder is ingelogd.
PRE-002De beheerder heeft een actieve beheerdercontext.
PRE-003De meldingenfunctionaliteit is sitebreed beschikbaar.
PRE-004De beheerderdetailweergave van een melding is geopend of er is een geldige ticketreferentie beschikbaar.
PRE-005De melding bestaat als Tickets-record.
PRE-006De melding is niet functioneel gesloten.
PRE-007De melding bevindt zich in een actieve behandelcontext. Een melding met status Nieuw moet eerst via UC-GEN-TIC-010 aan minimaal één beheerder gekoppeld worden voordat externe communicatie wordt geplaatst.
PRE-008De beheerder mag de melding in beheercontext lezen en behandelen.
PRE-009De beheerder kan een externe berichttekst invoeren.
PRE-010De beheerder kiest expliciet of met het bericht een reactie van de gebruiker gevraagd wordt.
PRE-011De applicatie kan discussiebericht, eventuele statusupdate, systeembericht, history en afgeleide actie-indicatie transactioneel verwerken.

5. Post-condities

IDResultaat
POST-001Er is een TicketDiscussionMessages-record aangemaakt met Visibility = External.
POST-002Het externe bericht is zichtbaar voor de melder op het tabblad Discussie van de meldingdetailpagina.
POST-003Het externe bericht is zichtbaar voor beheerders in de beheerderdetailweergave.
POST-004De gebruikersweergave toont de afzender generiek als Beheerder.
POST-005De naam van de individuele beheerder wordt niet zichtbaar aan de melder.
POST-006Er is een SystemMessages-record aangemaakt voor de melder met verwijzing naar de melding.
POST-007Het systeembericht gebruikt EntityType = Ticket en EntityId = TicketId.
POST-008Wanneer reactie van de gebruiker is gevraagd, heeft de melding status WaitingForUser.
POST-009Wanneer geen reactie van de gebruiker is gevraagd, blijft de bestaande behandelstatus ongewijzigd.
POST-010Wanneer status WaitingForUser actief is, wordt de actie-indicatie Wacht op mij opnieuw afgeleid voor de melder.
POST-011Er is minimaal één compacte TicketHistory-regel vastgelegd voor het externe bericht.
POST-012Wanneer de status is gewijzigd, is ook deze statuswijziging auditbaar.
POST-013Interne beheerdersinformatie wordt niet in de externe gebruikersweergave opgenomen.
POST-014Er wordt geen privéberichtthread aangemaakt door deze usecase.
POST-015Er wordt geen TicketClosure aangemaakt.
POST-016Er wordt geen TicketReopenRequest aangemaakt.
POST-017Bij een niet-toegestane of mislukte mutatie blijft de bestaande ticket-, discussie-, systeembericht- en historietoestand ongewijzigd.
POST-018Bij een transactionele fout ontstaat geen half verwerkt extern bericht zonder bijbehorende notificatie- en auditcontext.

6. Trigger

De beheerder opent de beheerderdetailweergave van een melding en kiest in de sectie Discussie voor het plaatsen van een extern bericht aan de melder.

7. Normale processtroom

StapActorScherm / componentActieSysteemresponsData / regel
1BeheerderSCH-BEH-02-01 — Detailpaneel / DiscussieBekijkt de discussiecontext van de melding.Het systeem toont interne en externe berichten volgens beheerderrechten.Beheerderdetail openen valt onder UC-GEN-TIC-009.
2BeheerderDiscussieactieKiest voor een nieuw extern bericht.Het systeem toont het invoerveld voor een extern bericht of activeert de externe berichtmodus.Externe zichtbaarheid moet expliciet zijn.
3BeheerderExtern berichtformulierVoert de berichttekst in.Het systeem houdt de invoer lokaal beschikbaar totdat de beheerder verzendt.Berichttekst wordt nog niet opgeslagen.
4BeheerderExtern berichtformulierGeeft aan of een reactie van de gebruiker nodig is.Het systeem bewaart de keuze als onderdeel van de verzendactie.Bij reactie nodig volgt status WaitingForUser.
5BeheerderExtern berichtformulierKiest Verstuur of een gelijkwaardige actie.Het systeem start server-side verwerking.Alleen de server bepaalt definitief of verzenden is toegestaan.
6SysteemAutorisatielaagControleert sessie, featurestatus en actieve beheerdercontext.De verwerking gaat alleen verder bij geldige beheerautorisatie.Frontend-zichtbaarheid is geen beveiligingslaag.
7SysteemMeldingenserviceControleert de actuele melding.De verwerking gaat alleen verder wanneer de melding bestaat, behandelbaar is en niet functioneel gesloten is.Tickets.Status en afgeleide sluitcontext zijn leidend.
8SysteemMeldingenserviceControleert de actieve behandelcontext.De actie gaat alleen verder wanneer de melding minimaal één actieve beheerderkoppeling heeft.Een melding met status Nieuw moet eerst via UC-GEN-TIC-010 worden gekoppeld.
9SysteemValidatielaagValideert de berichttekst.Lege, te lange of onveilige invoer wordt geweigerd met inline validatie.Sanitizing en encoding zijn verplicht.
10SysteemDatabase / transactieSlaat het externe discussiebericht op.Er ontstaat een TicketDiscussionMessages-record met Visibility = External.Afzender is de beheerder, maar gebruikersweergave toont Beheerder.
11SysteemStatusserviceVerwerkt de keuze of reactie nodig is.Bij reactie nodig wijzigt de status naar WaitingForUser; anders blijft status ongewijzigd.Statuswijziging is alleen nodig bij gevraagde gebruikersreactie.
12SysteemBerichtensysteemMaakt een systeembericht voor de melder.De melder ontvangt een systeembericht met klikbare verwijzing naar de melding.SystemMessages.EntityType = Ticket; EntityId = TicketId.
13SysteemAudit / historyLegt de externe communicatie vast.Er ontstaat een compacte TicketHistory-regel.Volledige vrije tekst staat in TicketDiscussionMessages, niet in history.
14SysteemReadmodels / actie-indicatieHerberekent laatste activiteit, gebruikersstatus en eventuele actie-indicatie.De melding verschijnt bij de gebruiker onder Wacht op mij wanneer WaitingForUser actief is.De indicatie is afgeleid en wordt niet als losse tellerwaarheid opgeslagen.
15SysteemBeheerderdetailweergaveVerverst de discussie en statusinformatie.De beheerder ziet het geplaatste externe bericht en de actuele status.Geen privébericht aangemaakt.
16MelderSysteembericht / meldingdetailOpent later het systeembericht of de meldingdetailpagina.Het systeem toont de melding en bij WaitingForUser direct de context van het tabblad Discussie.Het reageren zelf valt onder UC-GEN-TIC-004.

8. Alternatieve en exceptionele processtromen

IDVanaf stapSituatieSysteemgedragPopup / meldingDatamutatie
ALT-0016De sessie is verlopen of ontbreekt.Het systeem start de generieke loginflow.Generieke loginflow.Geen.
ALT-0026De gebruiker heeft geen actieve beheerdercontext.Het systeem weigert de beheeractie.Generieke toegang-geweigerd-afhandeling.Geen.
ALT-0037De melding bestaat niet of is niet beschikbaar.Het systeem toont geen ticketdetails en verwerkt geen mutatie.POP-GEN-TIC-NOT-AVAILABLE.Geen.
ALT-0047De melding is functioneel gesloten.Het systeem blokkeert externe communicatie via deze usecase.POP-GEN-TIC-EXTERNAL-NOT-ALLOWED.Geen.
ALT-0058De melding heeft status Nieuw en er is geen actieve beheerderkoppeling.Het systeem weigert de externe communicatie en verwijst functioneel naar eerst koppelen.POP-GEN-TIC-EXTERNAL-NOT-ALLOWED.Geen.
ALT-0069De berichttekst is leeg of bestaat alleen uit whitespace.Het systeem toont inline validatie en verwerkt de actie niet.Inline validatie in het formulier.Geen.
ALT-0079De berichttekst overschrijdt de toegestane maximale lengte.Het systeem toont inline validatie en verwerkt de actie niet.Inline validatie in het formulier.Geen.
ALT-0089De berichttekst bevat niet-toegestane of onveilige inhoud.Het systeem sanitizet of weigert de invoer volgens de centrale rich-textregels.Inline validatie of veilige melding.Geen bij weigeren; gesanitized opslag bij toegestane correctie.
ALT-00910Het externe discussiebericht kan niet worden opgeslagen.Het systeem rolt de transactie terug.POP-GEN-TIC-EXTERNAL-FAILED.Geen blijvende mutatie.
ALT-01011De statuswijziging naar WaitingForUser kan niet worden verwerkt.Het systeem rolt de volledige transactie terug.POP-GEN-TIC-EXTERNAL-FAILED.Geen blijvende mutatie.
ALT-01112Het systeembericht kan niet worden aangemaakt.Het systeem rolt de volledige transactie terug, zodat geen extern bericht zonder notificatie ontstaat.POP-GEN-TIC-EXTERNAL-FAILED.Geen blijvende mutatie.
ALT-01213Historyregistratie kan niet worden aangemaakt.Het systeem rolt de volledige transactie terug, omdat audit verplicht is.POP-GEN-TIC-EXTERNAL-FAILED.Geen blijvende mutatie.
ALT-01314De actie-indicatie kan niet direct worden ververst, maar de transactie is geslaagd.Het systeem bewaart de brondata en laat de indicatie bij de volgende read opnieuw afleiden.Geen domeinspecifieke popup nodig.Extern bericht, systeembericht en history blijven staan.
ALT-01416De melder klikt later op het systeembericht maar heeft geen toegang meer tot de melding.Het systeem weigert toegang tot de meldingdetailcontext.POP-GEN-TIC-NOT-AVAILABLE of generieke toegang-geweigerd-afhandeling afhankelijk van routecontext.Geen.
ALT-0156-13Race condition door gelijktijdige sluiting, heropening of statuswijziging.Het systeem gebruikt de actuele server-side tickettoestand en verwerkt alleen een geldige mutatie.POP-GEN-TIC-EXTERNAL-NOT-ALLOWED of POP-GEN-TIC-EXTERNAL-FAILED.Alleen een consistente mutatie blijft bestaan.

9. Business rules

IDRegel
BR-001Alleen gebruikers met actieve beheerdercontext mogen externe berichten bij meldingen plaatsen.
BR-002Een extern bericht bij een melding is zichtbaar voor de melder en voor beheerders.
BR-003Interne beheerinformatie mag niet in een extern bericht aan de melder worden gelekt.
BR-004De gebruikersweergave toont externe beheerberichten generiek als afkomstig van Beheerder.
BR-005De naam van de individuele beheerder is alleen zichtbaar binnen de beheercontext.
BR-006Externe berichten worden opgeslagen als TicketDiscussionMessages met Visibility = External.
BR-007Een extern bericht mag alleen worden geplaatst bij een niet-functioneel gesloten melding.
BR-008Externe communicatie vereist een actieve behandelcontext; een melding met status Nieuw moet eerst aan minimaal één beheerder worden gekoppeld.
BR-009Wanneer de beheerder aanvullende informatie van de gebruiker vraagt, krijgt de melding status WaitingForUser.
BR-010Wanneer het externe bericht geen gebruikersreactie vraagt, wijzigt de bestaande ticketstatus niet automatisch.
BR-011Elk extern beheerbericht aan de melder veroorzaakt een systeembericht met EntityType = Ticket en EntityId = TicketId.
BR-012Het systeembericht bevat geen losse database-URL; routering gebeurt via EntityType en EntityId.
BR-013Elk extern beheerbericht moet auditbaar zijn via TicketHistory.
BR-014Volledige vrije berichttekst hoort in TicketDiscussionMessages; TicketHistory blijft compact.
BR-015De actie-indicatie Wacht op mij wordt afgeleid uit Tickets.CreatedByUserId = huidige gebruiker en Tickets.Status = WaitingForUser.
BR-016Deze usecase maakt geen privébericht aan en vervangt geen vrije chatfunctie met beheerders.
BR-017Externe berichten worden niet gebruikt om een melding formeel op te lossen of te sluiten; daarvoor bestaat de sluit-/oplosflow.
BR-018Invoer van externe berichten moet server-side worden gevalideerd, gesanitized en veilig gerenderd.

10. Datavalidatie

Veld / objectValidatie
TicketId / ticketreferentieVerplicht, geldig formaat en bestaand Tickets-record.
Actieve gebruikerMoet ingelogd zijn en actieve beheerdercontext hebben.
FeaturestatusMeldingenfunctionaliteit moet beschikbaar zijn.
Tickets.StatusMoet een bekende status zijn en mag niet functioneel gesloten zijn.
Actieve behandelcontextEr moet minimaal één actieve beheerderkoppeling bestaan voordat externe communicatie wordt geplaatst.
BerichttekstVerplicht, niet leeg, niet alleen whitespace en begrensd volgens de geldende maximale tekstlengte.
Berichtinhoud / rich textAlleen toegestane veilige opmaak is toegestaan; invoer wordt server-side gesanitized en veilig geëncodeerd.
Externe zichtbaarheidMoet resulteren in Visibility = External.
Reactie nodigMoet expliciet als boolean of gelijkwaardige keuze worden verwerkt.
SysteemberichtverwijzingMoet EntityType = Ticket en EntityId = TicketId gebruiken.
Actor bij mutatieMoet worden vastgelegd voor discussie, history en herleidbaarheid.
TijdstippenWorden server-side in UTC vastgelegd.
Gebruikersweergave afzenderMoet generiek als Beheerder worden weergegeven, niet als individuele beheerdernaam.

11. Datamutaties en events

StapTypeEntiteit / eventMutatie
10CreateTicketDiscussionMessagesExtern discussiebericht wordt opgeslagen met Visibility = External.
10EventTicketExternalMessageAddedDomeinevent of afgeleide eventregistratie voor geplaatst extern bericht.
11UpdateTicketsStatus wijzigt naar WaitingForUser wanneer reactie van gebruiker nodig is.
11EventTicketStatusChangedAlleen wanneer de ticketstatus daadwerkelijk wijzigt.
12CreateSystemMessagesSysteembericht voor de melder wordt aangemaakt met EntityType = Ticket en EntityId = TicketId.
12EventSystemMessageCreatedDomeinevent of afgeleide eventregistratie voor het systeembericht.
13CreateTicketHistoryCompacte auditregel voor extern beheerbericht wordt vastgelegd.
14Readmodel / afleidingGebruikersstatus en actie-indicatieWacht op mij wordt opnieuw afgeleid wanneer status WaitingForUser actief is.
14EventTicketActionIndicatorRecalculatedAlleen wanneer zulke afgeleide events expliciet geregistreerd worden.
ALT-009 t/m ALT-012 / ALT-015EventTicketExternalMessageFailedAlleen wanneer fout- of technische events worden geregistreerd.

12. Geen datamutaties

EntiteitReden
TicketAssignmentsExterne communicatie wijzigt niet welke beheerders gekoppeld zijn.
TicketClosuresEen extern bericht lost of sluit de melding niet formeel op.
TicketReopenRequestsEen extern bericht heropent geen gesloten melding.
TicketForwardedToTeacherEen extern bericht zet de melding niet door naar docent.
PrivateMessageThreads / PrivateMessagesExterne ticketcommunicatie is geen privéberichtthread.
TicketTechnicalSnapshotsTechnische meldcontext blijft de oorspronkelijke snapshot van aanmaakmoment.
Interne TicketDiscussionMessagesDeze usecase maakt geen intern beheerbericht aan.
Gebruikersprofiel van de melderExterne communicatie wijzigt geen profiel- of voorkeurgegevens.

13. State diagram — extern bericht en meldingstatus

14. Decision flow — extern bericht plaatsen

15. Data lifecycle diagram — extern bericht en systeembericht

16. Sequence diagrammen

16.1 Extern bericht zonder gevraagde reactie

16.2 Extern bericht met gevraagde reactie

16.3 Transactionele fout bij extern bericht

17. Popupverwijzingen

PopupKeyMomentVariantDoel
POP-GEN-TIC-NOT-AVAILABLEWanneer de melding niet bestaat, niet beschikbaar is of niet geopend mag worden.InfoOnlyVoorkomen dat beheerder handelt op een ontbrekende of ontoegankelijke melding.
POP-GEN-TIC-EXTERNAL-NOT-ALLOWEDWanneer extern bericht plaatsen niet is toegestaan, bijvoorbeeld bij gesloten melding of ontbreken van actieve behandelcontext.InfoOnlyUitleggen dat de externe berichtactie niet kan worden uitgevoerd.
POP-GEN-TIC-EXTERNAL-FAILEDWanneer opslaan van extern bericht, statusupdate, systeembericht of history transactioneel mislukt.InfoOnlyVeilige foutmelding tonen zonder technische details.

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

DoeldocumentAfleiding
Functioneel OntwerpBeschrijft externe beheerdercommunicatie als onderdeel van de beheerderdetailweergave, inclusief expliciete keuze extern, generieke afzenderweergave Beheerder, status WaitingForUser bij gevraagde reactie en systeembericht naar de melder.
Functioneel OntwerpBeschrijft dat externe berichten zichtbaar zijn in de gebruikersdetailweergave op het tabblad Discussie, terwijl interne beheerberichten verborgen blijven.
Functioneel OntwerpBeschrijft dat een melding met status Nieuw eerst aan minimaal één beheerder gekoppeld moet zijn voordat externe communicatie wordt geplaatst.
Technisch OntwerpTechnisch Ontwerp: meldingen, tickets en beheerafhandeling, communicatie, background jobs en logging en foutafhandeling beschrijven de technische uitwerking. Beschrijft de transactionele verwerking uit voor TicketDiscussionMessages, eventuele Tickets.Status-update, SystemMessages, TicketHistory en afgeleide readmodels.
Technisch OntwerpTechnisch Ontwerp: meldingen, tickets en beheerafhandeling, communicatie, background jobs en logging en foutafhandeling beschrijven de technische uitwerking. Beschrijf dat SystemMessages voor meldingen routeren via EntityType = Ticket en EntityId = TicketId, niet via losse URL's.
Technisch OntwerpTechnisch Ontwerp: meldingen, tickets en beheerafhandeling, communicatie, background jobs en logging en foutafhandeling beschrijven de technische uitwerking. Beschrijf server-side validatie, sanitizing en veilige rendering van externe berichttekst.
Software Requirements SpecificationBeschrijft requirements voor externe berichten, statuswijziging bij gevraagde reactie, systeembericht aan melder, auditregistratie, autorisatie en transactionele consistentie.
Database-informatieControleer dat TicketDiscussionMessages, SystemMessages, TicketHistory en Tickets.Status de benodigde velden en verwijzingen bevatten voor deze flow.
PopupregisterNeem POP-GEN-TIC-EXTERNAL-NOT-ALLOWED en POP-GEN-TIC-EXTERNAL-FAILED op; hergebruik POP-GEN-TIC-NOT-AVAILABLE.

19. SRS-trace

Deze usecase bevat geen normatieve requirementtekst. De centrale eis en acceptatiecriteria staan in de SRS; onderstaande tabel koppelt de usecase-afleiding alleen aan centrale SRS-*- en AC-*-items.

Usecase-afleidingDektUsecasecontext
REQ-UC-GEN-TIC-011-001SRS-MSG-001
SRS-TIC-003
SRS-ADM-001
AC-MSG-001
AC-TIC-003
AC-ADM-001
Alleen gebruikers met actieve beheerdercontext toestaan om externe berichten bij meldingen te plaatsen
REQ-UC-GEN-TIC-011-002SRS-AUTH-001
SRS-TIC-003
SRS-ADM-002
SRS-ADM-001
AC-AUTH-001
AC-TIC-003
AC-ADM-002
AC-ADM-001
Vóór verwerking server-side controleren of de melding bestaat en door de beheerder behandeld mag worden
REQ-UC-GEN-TIC-011-003SRS-MSG-001
SRS-TIC-002
AC-MSG-001
AC-TIC-002
Voorkomen dat externe berichten worden geplaatst bij functioneel gesloten meldingen
REQ-UC-GEN-TIC-011-004SRS-TIC-003
AC-TIC-003
Externe communicatie alleen toestaan wanneer de melding een actieve behandelcontext heeft
REQ-UC-GEN-TIC-011-005SRS-TIC-003
SRS-ADM-001
AC-TIC-003
AC-ADM-001
Een melding met status Nieuw eerst via beheerderkoppeling in behandelcontext brengen voordat externe communicatie wordt geplaatst
REQ-UC-GEN-TIC-011-006SRS-MSG-001
SRS-TIC-003
SRS-ADM-001
AC-MSG-001
AC-TIC-003
AC-ADM-001
De beheerder expliciet laten kiezen of het bericht extern zichtbaar is
REQ-UC-GEN-TIC-011-007SRS-TIC-003
SRS-ADM-001
AC-TIC-003
AC-ADM-001
De beheerder expliciet laten aangeven of een reactie van de gebruiker nodig is
REQ-UC-GEN-TIC-011-008SRS-MSG-001
SRS-TIC-002
AC-MSG-001
AC-TIC-002
Externe berichttekst verplicht stellen
REQ-UC-GEN-TIC-011-009SRS-AUTH-001
SRS-MSG-001
SRS-TIC-002
SRS-NFR-SEC-001
AC-AUTH-001
AC-MSG-001
AC-TIC-002
AC-NFR-SEC-001
Externe berichttekst server-side valideren, sanitizen en veilig renderen
REQ-UC-GEN-TIC-011-010SRS-MSG-001
SRS-TIC-002
AC-MSG-001
AC-TIC-002
Een extern bericht opslaan als TicketDiscussionMessages met Visibility = External
REQ-UC-GEN-TIC-011-011SRS-MSG-001
SRS-TIC-003
SRS-ADM-001
AC-MSG-001
AC-TIC-003
AC-ADM-001
Externe beheerberichten in de gebruikersweergave generiek tonen als afkomstig van Beheerder
REQ-UC-GEN-TIC-011-012SRS-TIC-003
SRS-ADM-001
AC-TIC-003
AC-ADM-001
De naam van de individuele beheerder niet tonen aan de melder bij externe beheercommunicatie
REQ-UC-GEN-TIC-011-013SRS-MSG-001
SRS-TIC-001
SRS-ADM-001
AC-MSG-001
AC-TIC-001
AC-ADM-001
Bij elk extern beheerbericht een systeembericht voor de melder aanmaken
REQ-UC-GEN-TIC-011-014SRS-MSG-001
SRS-TIC-002
AC-MSG-001
AC-TIC-002
Het systeembericht moet verwijzen met EntityType = Ticket en EntityId = TicketId
REQ-UC-GEN-TIC-011-015SRS-MSG-001
SRS-TIC-005
AC-MSG-001
AC-TIC-005
De ticketstatus naar WaitingForUser zetten wanneer met het externe bericht een reactie van de gebruiker wordt gevraagd
REQ-UC-GEN-TIC-011-016SRS-MSG-001
SRS-TIC-005
AC-MSG-001
AC-TIC-005
De bestaande ticketstatus behouden wanneer het externe bericht geen reactie van de gebruiker vraagt
REQ-UC-GEN-TIC-011-017SRS-RDM-001
SRS-TIC-002
AC-RDM-001
AC-TIC-002
De gebruikersgerichte actie-indicatie Wacht op mij opnieuw kunnen afleiden na status WaitingForUser
REQ-UC-GEN-TIC-011-018SRS-MSG-001
SRS-TIC-002
SRS-ADM-001
SRS-NFR-AUD-001
AC-MSG-001
AC-TIC-002
AC-ADM-001
AC-NFR-AUD-001
Elk extern beheerbericht auditbaar vastleggen in TicketHistory
REQ-UC-GEN-TIC-011-019SRS-MSG-001
SRS-TIC-002
SRS-NFR-AUD-001
AC-MSG-001
AC-TIC-002
AC-NFR-AUD-001
Volledige vrije berichttekst buiten TicketHistory houden en in TicketDiscussionMessages opslaan
REQ-UC-GEN-TIC-011-020SRS-MSG-001
SRS-TIC-006
SRS-ADM-001
SRS-NFR-AUD-001
AC-MSG-001
AC-TIC-006
AC-ADM-001
AC-NFR-AUD-001
Externe beheercommunicatie transactioneel verwerken met discussiebericht, eventuele statusupdate, systeembericht en history
REQ-UC-GEN-TIC-011-021SRS-MSG-001
SRS-TIC-002
SRS-SHR-001
SRS-NFR-AVL-001
AC-MSG-001
AC-TIC-002
AC-SHR-001
AC-NFR-AVL-001
Bij mislukte transactionele verwerking geen gedeeltelijk extern bericht zichtbaar maken
REQ-UC-GEN-TIC-011-022SRS-TIC-002
AC-TIC-002
Bij niet-beschikbare melding POP-GEN-TIC-NOT-AVAILABLE gebruiken
REQ-UC-GEN-TIC-011-023SRS-TIC-002
AC-TIC-002
Bij niet-toegestane externe communicatie POP-GEN-TIC-EXTERNAL-NOT-ALLOWED gebruiken
REQ-UC-GEN-TIC-011-024SRS-TIC-002
AC-TIC-002
Bij technische of transactionele fout POP-GEN-TIC-EXTERNAL-FAILED gebruiken
REQ-UC-GEN-TIC-011-025SRS-MSG-001
SRS-TIC-001
AC-MSG-001
AC-TIC-001
Bij externe ticketcommunicatie geen PrivateMessageThreads of PrivateMessages aanmaken
REQ-UC-GEN-TIC-011-026SRS-RDM-001
SRS-RDM-007
SRS-MSG-007
SRS-TIC-006
AC-RDM-001
AC-RDM-007
AC-MSG-007
AC-TIC-006
Het openen van het systeembericht door de melder moet de meldingdetailpagina kunnen openen en bij WaitingForUser de discussiecontext tonen
REQ-UC-GEN-TIC-011-027SRS-MSG-001
SRS-TIC-006
SRS-ADM-001
AC-MSG-001
AC-TIC-006
AC-ADM-001
Voorkomen dat interne beheerinformatie via externe berichten of gebruikersweergave zichtbaar wordt voor de melder