Ernest Micklei, PhilemonWorks.com UMLX: a pragmatic solution to documenting design Ernest Micklei
Ernest Micklei, PhilemonWorks.com Motivation keep design (UML) and code better synchronized single point of definition separate view from model textual readable/writeable notation but not yet another UML tool
Ernest Micklei, PhilemonWorks.com Typical iteration Code DesignDoc
Ernest Micklei, PhilemonWorks.com Motivation (ii) Extracting design from code is impossible –need original abstraction level –implementation diagrams are not of interest (to us) Keep design info where the code is –UMLX in class methods or in files Use (external) tools to create diagrams –e.g. SUMO
Ernest Micklei, PhilemonWorks.com UML "formats" Rose-mdl/petal, XMI, UXF, others... Targeted at exchange between Tools Proprietary Not meant for "maintenance" by hand All in one big file (views and models)
Ernest Micklei, PhilemonWorks.com UMLX UML notation in XML, but... Readable by developer Writable by developer Simplest structure possible –no xml namespaces Separate files, external to IDE –MyClass.class.umlx –MyPackage.package.umlx –MyModel.model.umlx
Ernest Micklei, PhilemonWorks.com Class in UMLX
Ernest Micklei, PhilemonWorks.com Package in UMLX
Ernest Micklei, PhilemonWorks.com Design in UMLX <association class1="Wizard" class2="WizardProgram" role2="program" cardinality2="1" />
Ernest Micklei, PhilemonWorks.com Diagram is just a representation (view) on a design –can have multiple diagrams on single design can be separated from the design specification –not part of UMLX building it is a time-consuming activity
Ernest Micklei, PhilemonWorks.com Using UMLX XML-files producing UMLX - using a text editor - generating jumpstarts from classes - collecting strings using methods making a Diagram - read UMLX files - decide which elements to show - layout them + export HTML,GIF,SVG Diagrams
Ernest Micklei, PhilemonWorks.com Using UMLX (ii) store as class methods in classes,packages –export to files generate from code and edit (strip) manually –UMLClassBuilder input for tools to build diagrams from UMLX –e.g. SUMO input for tools to generate initial source code converter (XSL) to/from XMI...
Ernest Micklei, PhilemonWorks.com Status UMLX for class diagrams UMLX documentation ( Open ) – – for comments SUMO, simple UMLX diagramming tool ( Free ) – OMA, an archive of reusable models – SDK on its way (exporter,classes,meta model) –
Ernest Micklei, PhilemonWorks.com Thanx Get it from Send comments to