Whether you are writing functional requirements, non-functional requirements, business requirements, or constraints, your requirements must meet certain characteristics to be beneficial to an organization. The characteristics of good requirements are:
Attainable
Valuable
Concise
Design free
Complete
Clear, consistent, and unambiguous
Verifiable
Traceable
Measurable
Atomic
Prioritized
I have always been a believer in pushing the development team to the very edge of their capabilities, resulting in products they did not even believe they could create. However, there is a fine line between pushing the team to the limits of their abilities and asking for the impossible, or for something the organization is not able to support with the right resources. The result will be a frustrated development team and friction between the development team and the marketing/business team.