A manager wades in...
Managers aren't as irrational as many developers would have you believe. If the managers are questioning things then it's likely because they don't have confidence in how things are. To improve things for both groups - developers and managers - you need to work out what the real issue management have (I'm guessing lack of confidence in the way the project is progressing) and how best to address that issue at minimum cost to the developers. Providing information up to management is, however tedious you find it, part of a developers job. The trick is to find a mechanism that allows you to do so at minimum cost to you.
I'd also add that in many cases the manage is either the "client" or at least the client's representative and as such it is their right to change their mind and interfere. It may "damage" the project or lead to inefficiencies but better to change direction half way through than, for the sake of "the development" continue with something which no longer meets the business need.
I've spent a decade as a programmer and a decade as a team leader / manager and I can honestly say that most (not all) of the things management did which annoyed me as a programmer weren't unreasonable when viewed from the management perspective.
Organisations are large and messy and, even in software development houses, it's hard to set the whole thing up to produce an ideal set up for developers. Outside of software houses in organisations where producing code is a by-product of the business rather than the key aim, it's all but impossible as it will always be secondary to the key aims of the business.
It's irritating but there is a reason you're paid to go to work and ultimately it's because you're doing what someone else needs in the way someone else needs you to do it rather than what you want how you want.
The trick is to improve things where you can, and learn to live with the things you can't and not let it stress you out.