Een software requirements specification, meestal SRS genoemd, is een document dat precies opschrijft wat een stuk software moet doen, afgesproken voordat er een regel code geschreven is. Het legt de functies, de regels en de voorwaarden vast waar het eindproduct aan moet voldoen, in taal die een ondernemer kan lezen en bevestigen in plaats van dichte technische details.

Zie het als de opdracht die je een aannemer geeft. Als je alleen zegt ‘ik wil een keuken’, krijg je misschien iets waar je een hekel aan hebt. Maar als je de maat, de indeling, de apparatuur en het budget benoemt, deelt iedereen hetzelfde plaatje en zijn er geen nare verrassingen bij oplevering. Een SRS doet dat voor software: het vertaalt vage ideeën naar heldere, controleerbare uitspraken. Het voedt meestal direct het software design document, en het is de meetlat die later bij user acceptance testing wordt gebruikt om te bevestigen dat de software doet wat beloofd was.

Het doel is geen dik pak papier om het pak papier. Het is gedeelde duidelijkheid. Een korte, precieze specificatie wint elke keer van een lange, vage, omdat er minder ruimte voor misverstanden overblijft.

Een valkuil om op te letten is de eis die je niet kunt testen. ‘De app moet snel zijn’ klinkt prima tot je het wilt bewijzen; ‘pagina’s laden binnen twee seconden op een normale verbinding’ is wél te controleren. Datzelfde geldt voor scope. Opschrijven wat de software deze ronde níét doet, is vaak net zo nuttig als de functielijst, want het zijn de stille aannames die voor ruzie zorgen.

Bij TopDevs spreken we de requirements vooraf en op papier met je af, zodat de software die we opleveren past bij wat je echt nodig hebt en niet bij wat wij aannamen.