UML Backlash (UML = “Unified Modeling Language”)

The 13 reasons for UML’s descent article on Reddit today is pretty right on.  But one note:  he says:

I think most programmers still use only the class diagram and maybe occasionally when they write a document the sequence diagram.

This is true, but I just wanted to give a shout out to the sequence diagram.   I love it.  It’s clear, it’s concise.  It communicates a really perfect level of detail–actors, cause and effect, data movement, timing, etc.  The sequence diagram is probably the most useful tool I discovered during various graduate computer courses that focused on UML.

On a side note, I once lost points on an exam because my arrow tips on a sequence diagram that included an asynchronous callback weren’t correct.  They needed to be half heads or something ridiculous.  Whatever.  I rarely use UML in my day to day world.

6 comments ↓

#1 Yanic on 05.17.08 at 12:44 am

Hi,

Good to read you’re a sequence diagram fan (or were at least :o), they’re usually overlooked.

I think they’re essential in understanding the dynamics of a system. Unfortunately, because of their layout constraints they can be a pain to draw in most tools.

I decided to do something about that and rolled my own. So if you ever need to create some sequence diagrams, have a look at Trace Modeler. Here’s a 30 sec demo :

http://www.tracemodeler.com/download/index.html#demo

If you do, let me know what you think of it, I’m always looking forward to feedback!

Best regards,
Yanic

#2 Reid on 05.17.08 at 9:11 am

Yanic — I normally hate comments with product links BUT in this case I took a look at the demo and downloaded the beast.

Very nice.

I haven’t done anything meaningful with it yet and so am curious about how it handles complex interactions with lots of stages. I’ll have to give it a shot and see what the PDFs etc look like.

The export to clipboard feature is sweet.

For anyone curious: it’s Java based and I tested it on a MacBook with w/OS 10.5.

#3 Yanic on 05.22.08 at 12:44 am

Hi Reid,

I’m not familiar with ’stages’ on sequence diagrams?

If you’re interested in seeing how it performs with large diagrams be sure to get the new v1.4. It is *a lot* faster once you get to hundreds of targets and messages.

Might be an interesting test case, let me know if you need some large sample diagrams.

(btw, I’m still looking for someone who can help me improve OSX integration)

#4 Reid on 05.22.08 at 4:10 am

By “stages” I simply mean a complex diagram, not an additional entity type. Sorry for any confusion.

#5 Reid on 08.02.08 at 10:59 pm

Update — have purchased this and generally like it. In use in a regular basis.

#6 An Apex Developer’s Ten Commandments on 08.04.08 at 6:10 am

[...] Design before you code. I like use cases and for complex interactions I like sequence diagrams. Anything that helps you walk though what the code should do is a good thing. Your design should [...]

Leave a Comment