What is a requirements specification?
Requirements specification is a document that contains a set of requirements for a software product. The requirements describe the logic of the product (functional requirements), its appearance (user interface), constraints in development, and non-functional requirements. Use cases are often used to describe functional requirements. Use cases include options for how a user can interact with the software. Non-functional requirements describe constraints on the product design and implementation (product performance, security, reliability, compatibility, design constraints, quality standards).