Software: ArgoUML

The software is called ArgoUML, and is freely available from its homepage at http://argouml.tigris.org/.

ArgoUML is a Java CASE tool, used for UML modeling. It is written in Java itself, and thus runs on just about any platform with a JVM. I tested it under Debian GNU/Linux (as well as Windows) and it works beautifully.

It supports v1.3 of the UML standard, and uses the XMI interchange format for sharing UML models between different tools. It also suports the Object Constraint Language (OCL), although I haven't tested that support yet.

One very novel feature that I quite like is the dynamic Todo list. It appears at the bottom of the screen, and offers suggestions on how to improve your design (called the critics) and reminders on steps in the modeling process you may have forgotten (or just not got around to completing).

It supports a number of views, and you can easily customise the workspace to suit your needs.

At the moment, only rudimentary support for generating Java code is provided. Perhaps someone with a little time could jump in and help? It's an Open Source project after all!

Anyway, ArgoUML is a most worthy UML modeling tool, and promises to be a formidable contender to the commercial offerings in the near future...

Check it out - it's free!

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

ArgoUML

Gavin, Does it keep the code and model in synch?

Jeff De Luca's picture

argo and code synch

Given he says "...only rudimentary support for generating Java code is provided..." I'd assume the answer is NO. But, I've never played with Argo myself.

Code <-> Model

The current version only generates code from the model - it doesn't yet have two-way updating (the way something like TogetherCC does). However it is in the works:

Source code for the selected model element is shown in the "Source" tab if appropriate. In the future, ArgoUML will parse what the designer types here and update the model.

(From the ArgoUML Tour on their website.)

The developers seem to be very active, so this may not be too far off. It certainly has many other nice features that make it worth a look. There are also some companies offering some commercial extensions to it (more info on the main website).

steve palmer's picture

Last time I looked

I looked at Argo earlier a couple months ago - some nice ideas but not ready for prime time yet.

Never attribute to malice what can adequately be ascribed to incompetence

Poseidon, ArgoUML's big brother

A company called Gentleware makes a production-ready enterprise UML CASE tool built on top of ArgoUML. The name of the product is Poseidon and it is feature-full, plus it is offered in a Community edition flavour (for those of you like me that can afford Together or Rose unless a client provides it).

Check it out at http://www.gentleware.com , there is a Java Web Start version which does away with installation and all that.

Brian

PHP4/5 Support

I'm starting to use FDD with my PHP applications. A year or so ago I started using ArgoUML to develop my models because it was free and easy to use for a newcomer to OOP. I initally used it just for designing the models, producing the code manually. Happily I found not too long after that Argo will output your model as PHP4/5 classes if you download the ArgoUML-0.16-modules.tar.gz file from the website and unzip it into your ArgoUML directory. Saves a LOT of time, let me tell you. Also, Argo will output the comments, etc, that you enter into it.