CSSE 374 – Software Architecture and Design I
Diagramming Tools
Homework
Homework assignments in the course are focused on learning the notation and practicing the concepts. As such, you are free to turn in scans of neatly drawn pen and paper sketches for homework. There is a scanner in F217 that will generate PDF documents.
Projects
For team project milestones, we require professional quality diagrams. There are numerous tools to choose from for drawing the diagrams. The list below captures all the ones that we’ve heard about. It seems like everyone has a different favorite, so feel free to choose whatever tool works best for you.
Tools
Here are all the tools we know about. If you know of another tool, or would like to share a sentence or two of commentary about one of the tools listed, please email your instructor.
-
ArgoUML: Free, open-source. Does standard UML 1.4 diagrams. Available for Windows and Mac. Possibly available for Linux, though untested (by us anyway).
-
Dia: Free, open-source. Built on GTK. Available for Unix (Mac?), Linux, and Windows.
-
diagrammr: Web-based tool for simple diagrams, including sequence diagrams (probably only good for SSDs, though). Ajaxy interface.
-
OmniGraffle: Commercial application. Very good for class diagrams (see the UML Stencils). Can do other diagrams, but is awkward for them. Mac-only; available on the F217 and F225 lab Macs.
-
NClass: Free, open-source. Only does class diagrams. Available for Windows, Mac, and Linux.
-
Quick Sequence Diagram Editor: Extremely complete sequence diagram generator, with support for things as esoteric as multithreading. Various output formats. Available for any platform that runs Java.
-
Violet Free, Java application. Does all standard UML diagrams but offers very little control over line routing, so the diagrams are quite clunky. Available for any platform that runs Java.
-
Visio: Commercial application. Very powerful but tends to have its own ideas about how to do things. Windows-only; available without additional charge through Microsoft Developers Network Academic Alliance (MSDNAA) by following the ROSEportal link from the ANGEL main page.
-
websequencediagrams: Free web-application. Only does simple sequence diagrams. Seems to encourage a range of errors, based on diagrams students have turned in on homework and projects. Available for any platform with a web browser.
-
yUML beta: Tasty, free web-application. Creates (very basic) class, activity, and use case diagrams. Appropriate for quickly creating really simple diagrams, but not much more than that. Available for any platform with a web browser.