It's a question of granularity. Can your developers deal with high level requirements and fill in the details, do they require every detail to be spec'd out? It's also a question of does the management trust the developers to fill in the detail without an agreed on spec or will management freak out if the developer decided to get creative? Ideally both developers and management are mature enough to trust developers to interpret needs and create solutions rather than grinding away at one small task at time.