A bit late to the party. Been trying to send this for the last day...
If you aren't using the <abbr> element to surround the part of the word that is visible in the document, then surrounding with <expan> is very useful for demarcating the extent of the abbreviated word. It also serves as a container for the <am> (abbreviation marker) element.
It's possible to use a script as James has already described to put in the full encoding for the expan/abbr/ex cluster if words are unambiguous, or to fill out the tags and supplement ambiguities by hand.
It's easier for encoders to only use the <ex>, and perhaps should be part of encoding practice, but that shouldn't necessarily determine the resulting encoding.