Requirements

Requirements specify a condition or capability needed by a user to solve a problem or achieve an objective. They are typically split into functional requirementswhat the system should do – and non-functional requirementshow well it should do it.

The discipline of eliciting, analyzing, specifying, and validating requirements is called requirements engineering.