MagicDraw UML and SysML Plugin eSchool
Motto: "Learn good ways to work with MagicDraw UML and its SysML Plugin !"
About the eSchool
UML2 in MagicDraw
MagicDraw UML tips
MagicDraw SysML Plugin
MagicDraw for Java
MagicDraw for XML
Advanced UML and SysML Training

Converting object reference attributes to graphical Property ends of Associations

I've dragged out some atttributes typed by Thing, Thing_, and Factory (except for the static CLASSY_THING which we'll examine later).

It is of course not good practice to have references to specific implementations like the default implementation Thing_, as that approach blocks dependency injection and breaks the golden rule of design-by-contract,  it is much better to only ever obtain a Thing Interface from a Factory, however in this demonstration at least a non-null Thing is provided by default in operation getThing(), which uses an implementation-specific field thing_ to hold a Thing_. (We'll examine the factories later.)

Already the graphical, associative approach is helping to wire the system up nicely, and in fact it even highlights the lack of design-by-contract in some methods. Let's break it down further using package overview diagrams and focus diagrams ..

Image: 
Search
MagicDraw UML for Java software engineering