UML Explained
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