Visual Paradigm for UML 4.1(http://www.visual-paradigm.com/vpuml.php
) is my Ideal UML CASE Tool. It supports UML 2.0 notation , integration with lots of IDEs , modeling with Visio Stencil , auto diagram layout...
It lets you build the software system more easily and efficiency.
So what would be in an ideal CaseTool
for the UnifiedModelingLanguage
A beer-soaked napkin and a pen you had to ask around for.
Or perhaps a good sized white board.
I agree with the second solution. If only you could draw things on a whiteboard and tell something to "pretty up the lines" and print it out. I know that PrintableWhiteboard
s exist, but the problem is that the output always looks like a fuzzy fax. --KyleBrown
Better yet, see ElectronicWhiteboard
for a list of UML CASE tools.
My ideal UML tool would be an electronic whiteboard, a combination of a
LCD display and a cordless digitizer pen. See
for a small example, a 10-inch 1024x768 LCD display with integrated cordless
digitizer pen. That's too small still, but make it say 20-inch and double
the resolution and we'd already have something rather useful. Wall-sized
would be even better. Imagine a whiteboard
where you could save your diagrams, recall and edit them later, and paste
them into design documents and PowerPoint
Paper and pen. And, when I say "pen", I mean anything without an eraser. I just want something to jot my design thoughts down. I use UML when I want someone else to be able to understand my design (in a common notation). If I have an eraser I am tempted to pretty up
the picture. Design isn't about pretty pictures. I also like paper because it prevents me from creating wall sized (highly-detailed and interconnected) class models. No one can read those anyway. With 8x11 you are forced to be as concise as possible. You only diagram what is important. You can't have extra noise (detailed classes) bleeding into the margins. You capture concept instead of implementation (which is where coding comes in). If I can't fit a complete concept (package/module/subsystem/etc) on 1 page, it is way too complex to implement anyway.
If the design picture is worth saving, then once it is coded I redraw the design using something like Visio.
In a recent job interview one of the TA's interviewing me asked what tool I preferred for this sort of thing (can't remember if he said "doing design", or drawing diagrams). So I waved my fountain pen in his face, I'd been taking notes in the interview, and said "this one is hard to beat". He gave me a very disapproving look. But I got an offer. -- KeithBraithwaite
All I can say, Todd, is the boxes on your whiteboard must be a lot
smaller than mine :)
Seriously, the 7+-2 rule is a very good one. I just happen to draw big diagrams, so effectively I can fit the same amount of information on a wallboard as I can an 8 1/2 by 11 sheet of paper.
I find wallboards especially useful when you're using them in groups -- it's hard to get 5 people gathered around a standard sheet of paper.
Has anyone else used Together/J from Peter Coad's Object International? I find it outstanding. Visit:
to get and try the free whiteboard edition.
I've been using RationalRose
98i (patched) and it seems to work fairly well for the basics. I find it doesn't support all the UML as well as it could which I find surprising since it is the Rational product.
When I was evaluating tools I kind of liked the Together/J product too but there was a need at the time for a tool that would handle C++ as well and Rational fit the bill. (We have been assured that it will become more conformant (?) soon.
Since I am a product manager of one of the UML CASE tools, I would like
to present you another choice over Rational Rose or Together/J.
), is UML tool written in Java, I'm
sure it supports more UML diagramming than Rational Rose and is more robust.
You are welcome to try out the demo version. Recently I have tried Together/J
3.0 and can say that MagicDraw
at this point performs much better - you have to have a 700 PIII in order to use TJ.
Saulius Kaukenas (mailto:email@example.com
Just a quick plug from a user - I've used MagicDraw UML and found it a very useful tool. There is a 'standard' version, so you can avoid wasting time and money on RoundTripEngineering, and it's a hell of a lot cheaper than Rose - a very important concern for the small developer!
TogetherJava 3.0 is out. It can "embed" GangOfFour patterns into a design.
Actually, it's up to 5.0 now.
Just GoF patterns, or can you make your own too? --LukeGorrie
You can make custom patterns, modelling rules, etc. though not with the free version
Anything has to be more enjoyable to use than RationalRose
. I even prefer Visio. I've never much cared for RoundTripEngineering
, but I suppose if it was done well without markers I wouldn't hate it. I like TogetherJava
, but didn't understand its rules on what detail it decides to elide. --RobertDiFalco
There is one major problem with nearly every UML tool on the market. To put an level of detail on any diagram type, especially class diagrams, you have to do too much clicking, clicking, clicking. Click to add a member function ,then type in it's name. Click to add a single parameter to that method you just added, then type in it's name and type or another click to select it's type. This gets repeated for every parameter. Click, type, click, type, click, type.... 4 dialogs, 200 widgets and 400 clicks later you've got a class with a method. Ok, I'm exaggerating, but it is ridiculous. This slows the designer to a crawl.
Only one tool that I've ever seen avoids this. Type click a button to add a new method, typing in all details, visibility, name, parameters and their types, method (return)type and stereotypes. The tool then parses all of this and stores the information. One click and some typing. The tool was called Class Designer but one of the big tools vendors bought it and killed it. Too bad. Such a simple but effective design. Why can't one of the big vendors put this feature in their UML tools?
Now, this was a peeve of mine using Dia. Too much clicking and tabbing and thinking about what to put in which box. For thinking through an idea, I'm really moving toward the whiteboard or pen/paper approach. OTOH, having a tool to parse actual code seems like a good idea. --DavidJaquay
I've switched to white boards and notebooks. The price is right;)
UmLet seems to be what you want. --FalkBruegmann
is quite good (And free!)
BOUML - http://bouml.free.fr