What are some concrete suggestions and techniques for communicating with management?
My premise for this question is that as programmers we think in a much more granular/detail-oriented way than managers. It's not that managers can't think at this level, it's just that their decision making and judgement applies to a different spectrum.
Where the manager may think in terms of "done" / "not done" the developer may think in terms of individual features, test cases, or bugs. Where a manager may be thinking "lots of bugs" / "bug free" a developer may think in terms of a ratio of feature to bugs or feature complexity or test coverage.