La principale différence entre l'exigence et la spécification en génie logiciel est qu'une exigence est un besoin d'une partie prenante que le logiciel doit aborder tandis qu'une spécification est un document technique avec les exigences analysées. Une spécification décrit les fonctionnalités et le comportement d'un logiciel.
Le génie logiciel est la discipline de développement méthodique d'un logiciel. Les exigences sont la base du logiciel. La collecte et l'analyse des exigences constituent une phase majeure du développement logiciel. SRS est le document qui contient les exigences analysées. Les phases de développement telles que la conception, la mise en œuvre utilisent SRS.