The process of eliciting, analyzing, specifying, validating, and managing the requirements for a system.