As Im making some progress in ColdSpring/Reactor, I need some modelling to be able to visualise things much better and to help the team understand. Here is a very good post regarding Use Case Diagrams and Activity Diagrams that Doug wrote.

Some UML Tools:
ArgoUML
– hard to copy and paste objects

Poseidon for UML5.0.1 – without JRE
– cannot save

cfcxmi convert XML models to CFC

Visio 2003 UML Class Export Tool
`

  1. Open your class diagram at a page with a class you wish to export.
  2. Control+click each class you wish to export
  3. Open the Visual Basic Editor (Alt+F11)
  4. Double click on “ThisDocument” if no script is currently loaded
  5. Paste the script below here into the empty page
  6. Edit the “LogFileLocation” string to tell it where you wish to save your file. (Note: this must exist before the script runs)
  7. Hit F5 to run the script
  8. Enter a name for the file in the popup box
  9. Hit OK
    `
Sub ExportShapes()
    Const LogFileLocation As String = "C:\visioExportFiles\"
    Dim selObj As Visio.Selection 'Shapes selection collection
    Dim shpObj As Visio.Shape 'A shape instance
    Dim i As Integer
    Dim myClassDef As String
    Dim LogFileName As String
    Dim FileNum As Integer
 
    myClassDef = "<classes>"
    Set selObj = Visio.ActiveWindow.Selection
    For i = 1 To selObj.Count
        Set shpObj = selObj(i)
        myClassDef = myClassDef & "<class>"
        myClassDef = myClassDef & "
<properties>
<property>" & Replace(shpObj.Shapes.Item(6).Text, Chr(10), "</property>
<property>") & "</property></properties>"
        myClassDef = myClassDef & "<methods><method>" & Replace(shpObj.Shapes.Item(5).Text, Chr(10), "</method><method>") & "</method></methods>"
        myClassDef = myClassDef & "</class>"
    Next i
    myClassDef = myClassDef & "</classes>"
    'Begin export
    LogFileName = InputBox("What is the file name you wish to use (exclude the .xml extension)?", "Export Classes")
    MsgBox (myClassDef)
    If Len(LogFileName) Then
 
        FileNum = FreeFile ' next file number
        Open LogFileLocation & LogFileName & ".xml" For Output As #FileNum ' creates the file if it doesn't exist
        Print #FileNum, myClassDef ' write information at the end of the text file
        Close #FileNum ' close the file
    Else
        MsgBox ("Bad file name")
    End If
 
End Sub