Dia is a Visio-like tool released under the Gnu Public License (GPL). It was written using the GTK+ (GIMP tool kit), and it is an easy-to-use, inexpensive way to create professional-looking diagrams, from workflows and network maps to UML diagrams and circuits. Dia’s author, Alexander Larsson, says he feels that Dia is ready for active use, and it's obvious to me that this is a mature product. I encountered no problems while using it.
Once you get over the standard GTK menus (see Figure A)—which means you should be prepared to right-click to access menus you would normally find listed along the top of your window and double-click on items to see a properties menu—you’ll find that Dia is full-featured and fairly easy to use. It's available for a number of platforms, including Windows, IRIX, Debian, and Linux.
|Dia main toolbar menu|
In addition to saving and printing Dia diagrams as you would any document, Dia also provides a variety of means for loading, exporting, and saving data from various formats, such as XML, EPS, and SVG. This makes adding new symbols and sheets of symbols very convenient and simple.
As you would expect from commercial products, each type of object in Dia has configurable attributes associated with it to make diagrams and flowcharts a useful part of planning software architecture or projects. Figure B provides one example with properties displayed for a UML class object.
|UML Class properties dialogue box|
Using Dia, I found I could do everything I needed to easily create professional-quality diagrams within a user-friendly interface. Since Dia is open source, any tweaks or modifications you might want to add to the product are within your grasp, such as adding support for database ER diagrams. If you choose to run it as-is, which does make for a great application, you can download it for free from the Dia home page.
The application interface itself may not look as slick as some of the more expensive diagram creation programs; however, I found the controls to be bug-free and even easier to use in some cases than Visio. If you need an application for creating charts and diagrams and your company doesn't have funds for an expensive one, try using Dia—it's one of the better open source diagramming applications I’ve found to date.
Open source spotlight
What open source products do you use? Post your selections in the discussion below, or send recommendations to our editors via e-mail.