Software Engineering | Classification of Software Requirements. According to IEEE standard 729, a requirement is defined as follows: A condition or capability needed by a user to solve a problem or achieve an objective. ... A documented representation of a condition or capability as in 1 and 2.