Here it is:
http://www.java-gaming.org/cgi-bin/JGNetForums/YaBB.cgi?board=Offtopic;action=display;num=1081895929
Blah^3h, check the EssModel at http://essmodel.sourceforge.net/. It seems very cool.
Just a quick question: would you recommend using UML even in small personal projects? Or is it unnecessary (as I think)?
Thanks, will have a look next time I’m using UML (probably in a couple of weeks).
Absolutely! It really does reduce your development time, allowing you to think about what you’re about to do in a graphical way much more quickly than if you’re doing it as you go along whilst writing interfaces (and anyone who does it as they go whilst writing classes obviously has time to burn and hairs to lose :O).
The problem is…a bad UML editor will burn up all the “up-front” stress-reduction, so that it feels as though using UML is actually making the project harder, slower, and less enjoyable - although, even with a bad editor, you will save time in the long run.
I haven’t yet found an editor I could classify as “good” and also “free”. Fujaba is not “bad” as described above, and is great for getting your diagram quickly from source, and it does non-class-diagrams automatically too, which is cool (if you need them). It also has very clear and non-confusing GUI - but it still has too many bugs in the editing process to be satisfactory; you will not feel very stressed whilst using it, and you will actually feel you are saving time, but you will also keep thinking “I’m sure it could be easier than this…”.
Have you check the UML resources page at:
Im using the community edition of visual-paradigm which has a plugin for Netbeans, Eclipse and many other known IDEs.
From all i have tested yet (every one you mentionned) omodo is the one i would pick. It’s powerfull, functional and thought out to work hand in hand with Eclipse, which makes his great strength and weakness together. It’s very complete but has some flaws once you go out of the path it should be used. However, it’s still the best.
But maybe some of the other uml tools have improved since my last visit, one year ago…
However, my conclusion was: mind + pen & paper is still the best!
That’s the one where they have no docs, and no statement explaining whether or not Eclipse is actually necessary, yes?
Perhaps (as a user) you could confirm for me whether it works without Eclipse (note: Eclipse won’t run on my workstations. It uses that stupid SWT which is sufficiently buggy that even the Eclipse installer just crashes on our Mandrake systems!)
I run eclipse 2.1 & 3M9 on my mandrake 9.2 without problem …
Omodo need eclipse cause it’s an eclipse plugin 8)
So which one’s the best now?
I still work with Paradigm Community Version for my Java (hobby) projects.
However at work I’d like to use the same UML editor for C++, if possible.
Is there an UML editor which supports both languages: Java and C++? OK, Together does (its J and C version), but something more cheaper or free maybe?
To be more precise: of course UML is not dependant on C++ or Java syntax, but many UML editors also allow to import projects and then it is.
Anybody with Poseidon experience? (According to its feature matrix some versions can handle C++ code?)
I believe that to get anything other than Java in Posidon you need to buy it, rather than use the comunity edition.
Don’t know how it compares to other editors though, I quite like the CE version but don’t use it as much as I should at home. Personally I prefer it o Rose which is the only other main experience I have had with work.
Dan.
No, it sucks :(.
It’s windows-only and hasn’t been updated in more than a year (and was written in Pascal, which suggests it’s not very likely to get picked up by other programmers…)
You cannot possibly restrict yourself to a windows-only editor for something as fundamental as UML - this prevents anyone you ever do development work with from using any OS other than windows :(. Since it doesn’t appear to support the industry-standard UML file-format (although very few of the free ones do ) you’re in a bit of a proprietary hell.
That was the first on the page.
Anyway, hacked-off with Fujaba 4.1 for a larger project (some idiot removed the “zoom” feature that was in version 1! and now it’s useless for large UML projects >:( ) I went back to see if Paradigm actually works now.
Part 1:
First of all, their website is still a car-crash: designed by someone who likes to give surfers stress-headaches, who comes from the “the more information you can put on the same page, all in different places, with lots of unformatted text, all referring to unrelated things … the better!” school of thought. (Paradigm - please fire your webmaster; do it NOW!).
They’ve also got this irritating “send us your email address so we can spam you hahahahaha” thing I remember from last time - although I thought it was optional last time I tried it. Doesn’t seem to be optional any more…
In an attempt to show the world just what a moron he is, their webmaster has also made the website reload the page every time you click anywhere. That might sound like normal, but I mean that if you ctrl-click to open a link in a new window then the ORIGINAL page also reloads. Arrgh. Dumb-ass web-morons thinking the sun shines out of their arses and that they have some god-given right to override the decisions that the surfer makes when using their web-browser .
On to the program. Well, not quite. First we need to use their documentation, because they now offer:
- windows-only
- linux-only
- OS-X-only
- java
- “no-install” ??? (?)
versions. WTF is the no-install version? Well, don’t ask me. I clicked on the “what’s this?” link and it popped up two paragrpahs of BS that said nothing. The third para was a “click here to learn more” and redirected to a new page showing you how to click on a download link to download the no-install version (wow, man!), and had a link to tell you what it was all about. That link…redirects to section A of an alphabetic glossary. Great; paradigm: score for documentation? 0 out of 10.
So I picked the Java version. For reference, this is version 3.2, build 5th July 2004. Part 2 I’ll post when it’s downloaded. All 61.1Mb of it (ugh; makes me think of Rational Rose all over again…)
[quote]I believe that to get anything other than Java in Posidon you need to buy it, rather than use the comunity edition.
Don’t know how it compares to other editors though
[/quote]
Whilst I’m waiting for Paradigm to download, I can quickly comment on this. Poseidon (free version) is useless. According to their docs:
BS! Look at what’s missing:
So, in fact, you can create UML diagrams manually (which is the exception rather than the rule) but you can’t do anything except look at them on screen, take a screenshot, copy/paste into your paint program, crop, then save, and finally import into some other document.
OK, so if you’re happy jumping through that hoop all the time then you can at least USE the diagrams. Hmm. Perhaps we should make a webpage telling people how to do this and then the vendor would at least get sensible about the copy/paste issue?
As far as I am concerned, a UML editor is NOT a UML editor if it cannot/will not convert from code to UML (and it’s only a half-arsed editor if it won’t go the other way as well, i.e. “round-trip”)
A UML editor that is not “round trip” is nothing more than Visio or some other structured drawing program… it is almost useless for developers.
I am still willing to bet there is no good UML editor/plugin/ide thingy at ANY price.
It’s too bad, UML might actually be useful if there were tools to support it. As it stands UML is a tremendous waste of time. You will have your program written and debugged before you make a decent UML diagram with any of the existing tools.
[quote]A UML editor that is not “round trip” is nothing more than Visio or some other structured drawing program… it is almost useless for developers.
[/quote]
The only reason for me allowing some leeway there is that it’s slightly easier to find one way importers than round-trippers, and right now (as you mention below) it’s so hard to get anything that even simply works that my standards have been dropping :(.
FUJABA is tolerable for diagrams up to 15 or so classes + interfaces. FUJABA does the round-trip engineering, but there are one or two bugs in that some less common java code gets wiped (like “public static final” vars inside interface definitions) and it forces it’s own automatic layout algorithm on your code (which is good, but not perfect).
Seeing as FUJABA version 1 used to do similar things but had about 20-30 options IIRC for things like controlling the layout algorithm, and deciding what it would ignore, I have high hopes that the next version (4.2) might reach the point of being “good” for small diagrams. If they bring back the zoom feature from version 1, then it would also be OK for medium and large diagrams! >:( >:(
Not quite…UML is still valuable, it’s just that these days you’ll probably have to wait until you’ve done some coding before auto-generating the UML and then doing your design work on the UML before manually adding the code to implement that design.
If your design is not detailed, you can certainly use most tools (like FUJABA) to generate java code; Fujaba’s always compiles, it’s just it has annoying bugs like mentioend above :(.
[/quote]
LOL yes. These days I find it quicker to prototype 20 interfaces and reverse engineer them into UML than to use any of the crappy UML editor interfacs to build the diagram manually :(.
[quote]As it stands UML is a tremendous waste of time. You will have your program written and debugged before you make a decent UML diagram with any of the existing tools.
[/quote]
Yes, unfortunately. It’s my experience too.
However, I did and do work with some project managers (who have been developers many years ago) which insist on “nice” UML class diagrams just before we are allowed to do any coding.
OK, of course there needs to be architectural plans before the code development starts. However with UML class diagrams we tend to need soooo long - and this time lacks later when it comes to code/development.
c.f. my earlier comment about how it feels like it’s taking a lot more time that it does (with bad tools), and you are always in fact saving time.
Having thought about this a bit more, I can see that perhaps if you’re not really comfortable with UML then it would take a lot longer - but that’s just like not being comfortable with OOP: it’s a skill that you need to learn and practice, and until you do you will go slowly, but once you have learnt it well you should be able to use OOP faster than a C programmer working purely procedurally, even on small projects.
I find that designing with a UML diagram isn’t practical. The diagrams are simply not as malleable as the code. The rigid UML diagrams are difficult to adapt to the discoveries that happen when you actually start coding and realize that things will need to change to take new information into account. It’s one reason that I believe in an iterative (extreme?) design model. Complete up-front design is great when it works, and can be disastrous if new information discovered during the coding phase can’t fit the plan.
And there is ALWAYS something that you don’t find out until you start the implementation.
I love UML diagrams for understanding and visualizing existing code and assisting with the refactoring process.
[quote]And there is ALWAYS something that you don’t find out until you start the implementation.
I love UML diagrams for understanding and visualizing existing code and assisting with the refactoring process.
[/quote]
These are exactly my obersavtions, too.
I think there is another aspect of UML that you might be overlooking. UML is a language designed to help people communicate, its not just method of writing code faster. E.g. if you look at the following page, the communication aspect seems to be one of the main selling points.
still no evaluation of Poseidon?
( http://www.gentleware.com )
I sometimes use it. I used to make graphs with ArgoUML, and bitched Poseidon often for the two last year because of their huge bugs and slowness of the GUI. Nevertheless, i gave it a chance last week and i have to admit i’m favorably ‘impressed’. they made some progress. I still miss the ‘alt’ panning method of argoUML, but still it’s getting better.