Open Source Design Tools?
mbogosian asks: "Recently, my broadened responsibilities have me doing some database design and modeling, and I'm happy for the new knowledge and experience, but I'm a bit frustrated about the tool selection. I know most of us have had plenty of experience with at least a handful of all the wonderful Open Source development tools out there (like GCC, GNU Make, Subversion , and Perl to name a few). My question is this: where are OpenSource design tools? I've tried what I could find on SourceForge, but (as usual?) most of the projects that sounded promising were either still in the planning stages or seemed abandoned. Of course something which allowed be to create nifty class charts and output them to UML and/or SQL would be really cool, but I've yet to find something that works (especially in Linux). What are your favorite Open Source design tools and what do you like about them?"
Poseidon for UML Community Edition from Gentleware is a really nice modeling and reverse-engineering tool. It's Java-based (a *tad* slow on startup) and has great support.
Mind the gap...
I can strongly suggest using Dia in conjunction with tedia2sql. You can do the graphical design in Dia and then convert the result to SQL for various databases (Oracle/MySQL/PostgreSQL/...). ...
It is really fast and stable, it supports tables with indexes, primary keys, foreign keys,
ArgoUML is a Java based (and biased) UML development toolkit - well worth investigating
Tigris itself contains many other open source software engineering tools for design, construction, testing, deployment and more
Synopsis:
Tigris.org Community Scope
Tigris.org is a mid-sized open source community focused on building better tools for collaborative software development.
You will not find thousands of unrelated projects here: every project fits into the Tigris vision.
You will not find dead projects here: every project is welcomed into the community with a commitment to see it through and active developers cycle among related projects.
Tigris.org is hosted by CollabNet, but the Tigris vision is one for the entire open source movement and one that has attracted senior open source developers from many organizations.
I tried Dia some time ago and found it very frustating to use, with most of built in objects being too restrictive and lacking enough variety of connection points to terminate lines and arrows.
For line diagrams (e.g. for documenting 3D graphics algorithms), I've moved on to qcad, which is a 2D CAD package.
For OO design, you can try doing this backwards : prototype the interfaces and classes and run doxygen (with dot) to generate inheritance and collaboration diagrams or XML output for post-processing. This probably fits in more with an extreme programming prototype/refactor style methodology than a complete up-front design methodology.
For state diagrams, I've had some success using dot on its own.
Using doxygen and dot has the significant additional feature that the files you edit are all plain-text files, so you can use your existing source revision control system (e.g. CVS)
Even with these packages however, I usually still find a pen and paper (or a white-board or blackboard if available) the easiest and fastest option for sketching out an initial design, or during discussions of various design alternatives with colleagues.
Try eclipse from (http://wwww.eclipse.org) which is opensource along with Omondo Plugin from (http://www.omondo.com) free for developing, not open source.
. jsp
u gins.jsp? category=UML
More plugin for eclipse are listed here
http://eclipse-plugins.2y.net/eclipse/index
for other UML Plugins
http://eclipse-plugins.2y.net/eclipse/pl
Dome I'm just using it for DFD/ERD but it handles most diagrams I've ever heard of.