An appropriate software engineering activity is customer directed. From that all else must follow. Since requirements are the derived form of customer desires, they must be a transformation of the customer desires into the technical language of software engineering necessary to implement them. If not, then the software engineering activity fails to be customer directed and, hence, is not appropriate. My observations over thirty years as a software professional and user, indicate that the typical software engineering activity has not been appropriate, and still isn't .
Most commercial software fails to gain adequate market share .
Value is the measure of customer choice. Value is defined by the primary dimensions of quality and cost. Quality is defined by the customer. To be competitive, delivered software must have high value. This means software must be delivered at the appropriate time with lower cost than the competition or higher quality than the competition or both.