Skip to main content

Requirementconventies

2.1 Requirement-ID

Functionele requirement-ID's volgen dit patroon:

SRS-<DOMEIN>-<VOLGNUMMER>

Niet-functionele requirement-ID's volgen dit patroon:

SRS-NFR-<THEMA>-<VOLGNUMMER>

Voorbeelden:

PrefixDomein
SRS-AUTHRollen, context en autorisatie
SRS-ACCAccount, profiel en voorkeuren
SRS-RELRelatiebeheer
SRS-CATOefencatalogus, niveaus, categorieën en oefeningen
SRS-LRNLeerling oefenen, voortgang en resultaten
SRS-SHRGedeelde oefeningen
SRS-TCHDocentfunctionaliteit
SRS-GUAOuder-/voogdfunctionaliteit
SRS-ADMBeheerderfunctionaliteit
SRS-MSGBerichten, communicatie en notificaties
SRS-TICMeldingen en ticketafhandeling
SRS-LIVELive meekijken
SRS-CNTContentbeheer
SRS-POPPopups, templates, features en systeemnotificaties
SRS-PDFPDF-export en resultaatpresentatie
SRS-MODOefenmodules en modulepayloads
SRS-RDMReadmodels, tellers en afgeleide schermwaarden
SRS-ARCHFunctionele architectuurcontext
SRS-NFRNiet-functionele requirements

2.2 Requirementtype

TypeBetekenis
FunctioneelZichtbaar of domeingericht systeemgedrag.
Functioneel/SecurityFunctioneel gedrag met expliciete autorisatie- of securitygrens.
Functioneel/PrivacyFunctioneel gedrag rond persoonsgegevens, anonimisering, retentie of zichtbaarheid.
Functioneel/DataGedrag rond bron-van-waarheid, historische context of datamutatie.
Functioneel/AuditFunctioneel gedrag waarbij auditregistratie expliciet vereist is.
Functioneel/UXFunctioneel zichtbaar gedrag, presentatievolgorde of gebruikersrust zonder pixel-perfect UI-specificatie.
Functioneel/ArchitectuurFunctionele systeem- of containergrens zonder technische implementatiedetail.
Niet-functioneel/SecuritySecurity-eis die toetsbaar moet worden gemaakt.
Niet-functioneel/PrivacyPrivacy-, dataminimalisatie- of anonimiseringseis.
Niet-functioneel/AuditLogging-, audit- of herleidbaarheidseis.
Niet-functioneel/PerformancePrestatie-, schaalbaarheids- of efficiëntie-eis.
Niet-functioneel/BeschikbaarheidEis rond beschikbaarheid, foutafhandeling bij externe afhankelijkheden of herstelbaarheid.
Niet-functioneel/BetrouwbaarheidEis rond consistentie, bron-van-waarheid of fallback bij gemiste transportevents.
Niet-functioneel/ToegankelijkheidToegankelijkheids- of bedienbaarheidseis.
Niet-functioneel/LoggingEis rond technische logging, logtoegang of payloadbeperking.

Een requirement krijgt één primair type. Wanneer een eis meerdere aspecten raakt, wordt het meest bepalende aspect gekozen en wordt de rest in bron, opmerking of acceptatiecriterium benoemd.

2.3 Prioriteit

PrioriteitBetekenis
MustVereist voor de eerste acceptabele SRS-baseline of voor veilige werking.
ShouldBelangrijk voor de beoogde eerste productervaring, maar kan onder productbesluit gefaseerd worden.
CouldOptioneel of latere uitbreiding.
Won'tBewust niet in huidige scope; alleen gebruiken met bron of besluit.

2.4 Status

StatusBetekenis
VastgesteldOpgenomen in de actuele SRS-baseline en bruikbaar voor ontwerp, implementatie, testvoorbereiding en acceptatie.
OpenInhoudelijk nog niet voldoende beslist voor baseline-opname.
UitgesteldBewust buiten de actuele SRS-baseline geplaatst, bijvoorbeeld richting Technisch Ontwerp, beleid of latere scope.
VervallenNiet langer van toepassing, met reden in wijzigingshistorie of reviewbesluit.

2.5 Acceptatiecriterium

Acceptatiecriteria worden bij voorkeur geschreven in Given/When/Then-vorm:

Gegeven ...
Wanneer ...
Dan ...
En ...

Een requirement is pas reviewbaar wanneer minimaal één toetsbaar acceptatiecriterium bestaat.

2.6 Schermrequirements (REQ-SCH-*)

De SRS is de enige normatieve bron voor centrale requirementtekst, prioriteit en acceptatiecriteria. REQ-SCH-*-items in de schermdocumentatie zijn schermspecifieke verwijzingen en ankers. Zij zijn niet leidend voor centrale requirementtekst, prioriteit of acceptatie.

Iedere REQ-SCH-* wordt via het schermrequirements-trace-register gekoppeld aan een centrale SRS-requirement, als schermspecifiek geclassificeerd of als vervallen/dubbel gemarkeerd. Wanneer een schermrequirement een domeinbrede regel, autorisatiegrens, lifecycle, datamutatie, statusregel, privacyregel, auditverplichting of bron-van-waarheid introduceert die nog niet centraal bestaat, wordt deze als promotiekandidaat gemarkeerd en pas na review als centrale SRS-requirement opgenomen. De eerste promotieronde is verwerkt in SRS-RDM-* voor readmodels, tellers en afgeleide schermwaarden.

In de schermdocumentatie zelf wordt een REQ-SCH-* daarom vastgelegd als traceanker met de kolommen Schermrequirement, Dekt en Schermcontext. De kolom Dekt verwijst naar centrale SRS-*- en AC-*-items; de kolom Schermcontext beschrijft alleen waar het scherm de centrale eis toepast, toont of toetst.

ClassificatieGebruik
Gedekt door SRSDe schermrequirement is traceerbaar naar een bestaande centrale SRS-requirement of bestaand acceptatiecriterium.
Promoveren naar SRSDe schermrequirement bevat mogelijk een ontbrekende centrale eis en vraagt SRS-aanvulling na review.
SchermspecifiekDe regel blijft in de schermdocumentatie als UI-, label-, veld-, kolom-, tooltip-, schermvalidatie- of layoutcontextanker.
Vervallen/dubbelDe regel is dubbel, verouderd of verkeerd geformuleerd en wordt niet centraal overgenomen.

2.7 Oefenmodule-eisen (REQ-SCH-MOD-*)

Oefenmodule-eisen vormen een bijzondere requirementslaag voor technische oefenmodules. Zij zijn belangrijker en normatiever dan gewone schermankers, omdat nieuwe oefenmodules na de eerste productversie naar verwachting vaker worden toegevoegd dan dat de generieke applicatie ingrijpend wijzigt. Tegelijk zijn zij niet hetzelfde als centrale SRS-*-requirements: centrale requirements, prioriteiten en acceptatiecriteria blijven in de SRS-tabellen staan.

REQ-SCH-MOD-*-items worden vastgelegd en geclassificeerd in het oefenmodule-eisenregister. Een module-eis kan twee soorten waarde hebben:

ClassificatieGebruik
Moduleplatform-eisGenerieke eis aan het OefenHub-moduleplatform, zoals registratie, selectie, opslag, voortgang, autorisatie of historische beschikbaarheid.
Modulecontract-eisEis waaraan iedere technische module moet voldoen om veilig door de generieke engine gebruikt te kunnen worden.
Moduleplatform-toepassingToepassing van het generieke platformcontract binnen één concrete module.
Concrete module-eisModulespecifieke configuratie-, generatie-, validatie- of renderingeis voor één benoemde module.

Wanneer een module-eis een generieke regel introduceert die voor alle modules of de engine geldt en nog niet door SRS-MOD-*, SRS-CAT-*, SRS-LRN-*, SRS-LIVE-*, SRS-PDF-* of relevante NFR's is gedekt, moet deze als kandidaat voor centrale SRS-promotie worden beoordeeld. Concrete module-eisen blijven in de moduledocumentatie en het module-eisenregister, zodat nieuwe modules later zelfstandig kunnen worden gespecificeerd zonder de centrale SRS-index onnodig te laten groeien.

2.8 Usecase-afleidingen (REQ-UC-* en UC-*-REQ-*)

Usecase-afleidingen zijn procesgerichte traceankers. Zij mogen niet uitgroeien tot een tweede normatieve requirementlaag naast de SRS. De centrale requirementtekst, prioriteit en acceptatiecriteria staan uitsluitend in de SRS.

Iedere usecase-afleiding wordt via het usecase-requirements traceability-register gekoppeld aan centrale SRS-*- en AC-*-items, als usecase-specifiek geclassificeerd of als vervallen/dubbel gemarkeerd. Wanneer een usecase-afleiding een domeinbrede regel, autorisatiegrens, lifecycle, datamutatie, statusregel, privacyregel, auditverplichting of bron-van-waarheid introduceert die nog niet centraal bestaat, wordt deze als promotiekandidaat gemarkeerd en pas na review als centrale SRS-requirement opgenomen.

In usecases zelf wordt hoofdstuk 19 daarom vastgelegd als SRS-trace met de kolommen Usecase-afleiding, Dekt en Usecasecontext. De kolom Dekt verwijst naar centrale SRS-*- en AC-*-items; de kolom Usecasecontext beschrijft alleen waar het proces de centrale eis toepast, controleert of muteert.

ClassificatieGebruik
Gedekt door SRSDe usecase-afleiding is traceerbaar naar een bestaande centrale SRS-requirement of bestaand acceptatiecriterium.
Promoveren naar SRSDe usecase-afleiding bevat mogelijk een ontbrekende centrale eis en vraagt SRS-aanvulling na review.
Usecase-specifiekDe regel blijft procescontext, afbakening of flowinformatie en wordt niet als centrale SRS-eis opgenomen.
Vervallen/dubbelDe regel is dubbel, verouderd of verkeerd geformuleerd en wordt niet centraal overgenomen.

2.9 Readmodel- en tellerdefinities (RDM-*)

Concrete teller- en readmodeldefinities worden vastgelegd in het readmodel- en tellerdefinitieregister.

RDM-*-ID's zijn geen nieuwe centrale requirements en krijgen daarom geen eigen prioriteit of acceptatie-ID. Zij zijn functionele uitwerkingen van bestaande SRS-RDM-* requirements en bijbehorende domeinrequirements. De SRS blijft leidend voor de betekenis van de teller; het Technisch Ontwerp bepaalt de queryvorm, indexering, caching, materialisatie en performance-aanpak.

Een RDM-*-definitie moet minimaal vastleggen:

AspectRegel
WaardeWelke zichtbare teller, badge, samenvatting of lijstwaarde wordt bedoeld.
ContextBinnen welke rol-, relatie-, niveau-, object- of schermcontext de waarde geldt.
MeetellogicaWelke records, statussen en tijdvensters meetellen.
UitsluitingWelke records niet meetellen, zoals testdata, soft-deleted records, verlopen contexten of ongeautoriseerde objecten.
TraceWelke centrale SRS-*- en waar relevant AC-*-items de definitie dekken.

Meetbare gedragsgrenzen voor readmodels en tellers staan niet per RDM-*-rij herhaald, maar centraal in SRS-NFR-RDM-* en de bijbehorende acceptatiecriteria. Die grenzen bepalen onder meer actualiteit na mutaties, consistentie met detailoverzichten, veilige fallback en gebruikersgerichte responstijd. Het Technisch Ontwerp mag zelf bepalen of dit via directe queries, caching, materialized readmodels, events of jobs wordt gerealiseerd, zolang de functionele betekenis en meetbare SRS-grenzen behouden blijven.

2.10 NFR-meetwaarden

Het NFR-meetwaardenregister bundelt toetsbare grenzen voor bestaande niet-functionele requirements. Dit register introduceert geen nieuwe requirement-ID’s en vervangt geen acceptatiecriteria. Het maakt expliciet welke grens in de SRS thuishoort en welke technische invulling, monitoring, loadtestopzet, retrystrategie of infrastructuur-SLO in het Technisch Ontwerp of beheerbeleid thuishoort.

2.11 Requirementkwaliteit

ControlepuntRegel
EenduidigheidEen requirement beschrijft één toetsbare verwachting.
BronIedere requirement verwijst minimaal naar FO of een duurzame bron.
AutoriseerbaarheidRequirements mogen FO-autorisatiegrenzen niet verruimen.
TestbaarheidEen reviewer moet kunnen bepalen of het systeem aan de eis voldoet.
Geen implementatiedetailServices, tabellen, codeklassen en infrastructuur worden alleen genoemd wanneer zij functioneel bron-van-waarheid of context bepalen.