umlx a pragmatic solution to documenting design ernest micklei emicklei@philemonworks com
Download
Skip this Video
Download Presentation
UMLX: a pragmatic solution to documenting design Ernest Micklei [email protected]

Loading in 2 Seconds...

play fullscreen
1 / 14

UMLX: a pragmatic solution to documenting design Ernest Micklei [email protected] - PowerPoint PPT Presentation


  • 56 Views
  • Uploaded on

UMLX: a pragmatic solution to documenting design Ernest Micklei [email protected] 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. Typical iteration.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' UMLX: a pragmatic solution to documenting design Ernest Micklei [email protected]' - barrett-morse


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
umlx a pragmatic solution to documenting design ernest micklei emicklei@philemonworks com
UMLX: a pragmatic solution to documenting design

Ernest Micklei

[email protected]

Ernest Micklei, PhilemonWorks.com

motivation
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
Typical iteration

Code

Design

Doc

Ernest Micklei, PhilemonWorks.com

motivation ii
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
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

slide6
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
Class in UMLX

<class name="Point3D" superclass="Point">

<attribute name="x" type="Number"/>

<operation name="rotateBy" return="Point3D">

<parameter name="rotationPoint" type="Point3D"/>

</operation>

</class>

Ernest Micklei, PhilemonWorks.com

package in umlx
Package in UMLX

<package name="ExpressionSupport">

<class file="MessageSendNode.class.umlx"/>

<class file="ArgumentsNode.class.umlx"/>

<class file="ExpressionNode.class.umlx"/>

<class file="ConstantNode.class.umlx"/>

<class file="BracketedNode.class.umlx"/>

<class file="VariableNode.class.umlx"/>

<class file="UnaryNode.class.umlx"/>

<class file="FunctionNode.class.umlx"/>

<class file="BinaryNode.class.umlx"/>

<class file="ExpressionParser.class.umlx"/>

</package>

Ernest Micklei, PhilemonWorks.com

design in umlx
Design in UMLX

<model name="Wizard Design">

<package file="WizardSupport" />

<association

class1="Wizard"

class2="WizardProgram"

role2="program"

cardinality2="1" />

</model>

Ernest Micklei, PhilemonWorks.com

diagram
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
Using UMLX

producing UMLX

- using a text editor

- generating jumpstarts from classes

- collecting strings using methods

Diagrams

making a Diagram

- read UMLX files

- decide which elements to show

- layout them + export HTML,GIF,SVG

XML-files

Ernest Micklei, PhilemonWorks.com

using umlx ii
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
Status
  • UMLX for class diagrams
  • UMLX documentation ( Open )
    • http://www.philemonworks.com/UMLX
    • http://philemon.swiki.net for comments
  • SUMO, simple UMLX diagramming tool ( Free )
    • http://www.philemonworks.com/SUMO
  • OMA, an archive of reusable models
    • http://www.philemonworks.com/OMA
  • SDK on its way (exporter,classes,meta model)
    • http://www.philemonworks.com/UMLX

Ernest Micklei, PhilemonWorks.com

thanx
Thanx

Ernest Micklei, PhilemonWorks.com

ad