Designing Models
Creating "good" data model designs is a art rather than a science. Within the context of the IVOA reusing existing recommended models is a prerequisite for a model be considered good.
TBC
Testing serialization.
The java runtime has some functionality for roundtrip testing the various serializations which can be a good first level test as to whether your model is a "good design".