uml distilled: a brief guide to the standard object modeling language addison-wesley professional