Trying to use one tool as both a reporting-to-management system and a communication medium for the people actually doing the work, is a great way to make it fucking useless for both purposes. And yet, that's the norm with ticketing systems.
Don't forget trying to use it for "productivity metrics".
* A task with a title that can be understood in context (by the implementer/stakeholder) is sufficient.
* Pointing/effort estimate is even better. Ideally, everything should have points because it helps the team manage workflow and set expectations.
* A description is nice, but often completely unnecessary. In fact, I'd prefer no description to a stale description.
From there, individual teams/developers should choose whatever tools they prefer for actually implementing a feature.