ArgoUML and Poseidon for UML


Table of Contents

1. Frequently Asked Questions

Chapter 1. Frequently Asked Questions

1.1. General Questions
Q: What is Java Web Start?
Q: What are the names of the various work screens?
Q: Where do I get the code for ArgoUML?
Q: Is there commercial support for ARGO?
1.2. Diagrams
1.2.1. Class Diagrams
1.2.2. Activity Diagrams
Q: How do I create an activity diagram?
1.2.3. State Diagrams
Q: How do I create a state diagram?
Q: How do I arrange my diagram elements?
Q: How can I look at different diagrams at the same time?
1.3. Loading and Saving
Q: Do Argo and Poseidon save .xmi files?
Q: How do I import an .xmi into ARGO and what formats are known to be supported?
Q: If i design a model by using ARGO UML how I can generate XMI format?
1.4. Code Generation
Q: Is the generated code meant to be able to compile?
1.5. Reverse Engineering
Q: What reverse engineering functionality is available?
Q: Can I reverse engineer a .jar file with ARGO .9.3?
1.6. Roundtrip Engineering
1.7. Grafics and Printing
Q: What does GEF mean?
Q: What is PGML?
Q: What applications open PGML?
Q: What does SVG stand for?
Q: How can I print my diagrams?

1.1. General Questions

A: JWS = Java Webstart, some Sun technology which allows you start Java Applications via the web. You can start ArgoUML as well as Poseidon for UML Community Edition from www.argouml.org and www.gentleware, respecitvely. Just click on the provided link (after installing JWS).

A: The different screens are called panes. They all have an individual name, Navigation Pane, Diagram Pane, ToDo Pane and Details Pane, as shown in the following table.

Table 1.1.

Navigation PaneDiagram Pane
ToDo PaneDetails Pane

A: You can download the latest release of Argo in source from www.argouml.org. Or you can get the must current code from CVS. You can reach it via normal cvs command (either in a tool or on the command line). The server is the same as for ARGOUML (try :pserver:guest@cvs.tigris.org:/cvs) and the name of the repository is gef/src. This is the GEF repository. The Argo rep (for 0.9.x versions) is argouml/src_new.

A: Yes there is, Gentleware provides enhanced versions of Argo as well as support. It was founded by some to the core developers of ArgoUML. See http://www.gentleware.com.

1.2. Diagrams

A: There are several ways to easily and elegantly move diagram elements.

  • Select the elements you want to move. By holding down the controll key you can select several. Now hit your arrow keys. Your elements move a little with every key stroke. If you also hold down the shift key, they move a bit faster.
  • Or click on the broom button, move your mouse to the diagram pane, right click and hold. Now moving your mouse side ways (or up and down) will allign elements.
  • There also is the menu item arrage where you can allign, group or nodge (move a little bit) elements.

A: You can 'spawn' a panel by double-clicking on the tab. It will then show as individual window and you can put it next to another.

1.2.2. Activity Diagrams

A: Select a use case or class, then you can create an activity diagram.

1.2.3. State Diagrams

A: Select a class, then you can create a state diagram.

1.3. Loading and Saving

A: Yes! They save the model information in an .xmi-file, the diagram information in a .pgml-file and information about the project in a .argo file. All of these are then zipped to a .zargo-file. You can easily extract the .xmi from the .zargo file using any old generic ZIP application. Give it a try and look into the magic of ARGO! Be aware that double clicking will launch a ZIP utility, if one is installed, and NOT ARGO.

A: Because of the variety of .xmi formats being generated you will encounter problems using other .xmis generated from other applications. ARGOUML's native storage format is another implementation of XMI (Curt Arnold believes that it has been hacked so it can also read the Unisys variant). He recommends that if you are comfortable with XSLT, you can typically transform one variant of UML + XMI to another, plus MetaIntegrations (http://www.metaintegrations.net) makes a version of their Bridge product available to transform between XMI flavors.

A: Check out the .zargo file. Open it and Voila! It's tucked inside...

1.4. Code Generation

A: Yes, it is possible to compile your generated code from Poseidon. You still need to implement method bodies, though, to get usable results.

1.5. Reverse Engineering

A: Since version 0.9.3 Argo supports reverse engineering. The menu item to import sources is in Files->Import. There are various weaknesses in the layout and parsing algorithms so if you track down a bug please submit a bug report. Also, you should not expect ARGO to reverse engineer non-compiling code.

A: Currently, ArgoUML as well as Poseidon cannot RE .jar Files. When we talk about traditional jar files, which are but a collection of class files (*.class). Reverse engineering relies on Source Files (*.java), which should be syntactically correct, i.e. they can be compiled.

1.7. Grafics and Printing

A: GEF = Graph Editing Framework - the thing which is hidden in gef.jar and is responsible for displaying the graphs and which gives you the the ability to move things around. GEF used to be closely interwoven with Argo, but is now more or less seperate as far as I know. The sources are also available via www.tigris.org

A: PGML is the saving format for diagram information used in Argo and Poseidon. Although this is outdated a little, it shows why we chose PGML in the first place. In the future, PGML will be replaced by an extended XMI format which will include graphical representation. PGML is shortcut for Precision Graphics Markup Language. In April 1998 Adobe Systems proposed a new Standard for Vector Graphics to the World Wide Web Consortium (W3C), which should faciliate the creation and usage of image material in the World Wide Web. It will be replaced by SVG. We will support SVG by generating it from the XMI in the future.

A: PGML is a predecessor of SVG. It was droped by the W3C Consortium. Currently there are no other tools that we know of working on PGML. We will move to SVG soon. And THAT will be read by many tools.

A: A super cool vector graphics format (like MM Flash) that is totally open and is gaining enormous ground in the graphics world. Find out more at the www.W3C.org

A: Select a diagram, then go to File->Export Diagrams. You can generate gif, postscript, eps or svg format.