Il Software Requirement Specification (SRS) è un documento nel quale vengono specificati i requisiti (funzionali e non) che il sistema deve avere. Ad esempio un sistema di controllo di una banca deve poter permettere di fare prelievi e depositi e altre cose. Inoltre possono esserci requisiti di sicurezza, disponibilità, fault tolerance, ecc.. (per l'appunto, i requisiti non funzionali).
Fra l'altro l'SRS ha anche valore legale se non sbaglio!! Se alla fine il sistema che produci non rispetta i requisiti specificati nell'SRS (il quale dice cosa il sistema deve essere in grado di fare) allora il committente può agire per vie legali!