Once upon a time, in my university life, I was searching a free tool for UML modelling. After searching, I found a nice tool. Some features of it:
BOUML is a free UML 2 tool box (under development) allowing you to specify and generate code in C++, Java, Idl, Php and Python.
BOUML runs under Unix/Linux/Solaris, MacOS X(Power PC and Intel) and Windows.
BOUML is very fast and doesn’t require much memory to manage several thousands of classes, see benchmark.
BOUML is extensible, and the external tools named plug-outs can be written in C++ or Java, using BOUML for their definition as any other program. The code generators and reverses are ones of the pre-defined plug-outs included in the BOUML distribution. See features.
BOUML is distributed in the hope that it will be useful, but without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose.
Copyright (C) 2004-2008 by Bruno Pagès.
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version.
Install it in Ubuntu:
sudo apt-get install bouml
In windows or other operating system: