A Software Requirement is a documented need, condition, capability, constraint, or quality that software must satisfy.
Software requirements guide design, implementation, testing, validation, acceptance, traceability, and change control.
Related concepts include Acceptance Criteria, Traceability Matrix and Software Validation.