DoUML is a UML diagram editor capable of generating/reversing code in a multitude of programming languages(namely - C++, Java, Python, idl, Php).
DoUML is a fork of the original Bouml editor by Bruno Pages that was born when Bouml's development abruptly came to a stop due to author's conflict with wikipedia administration.
Not wanting to lose (possibly) best free UML modelling software an effort was made to port the original to Qt4 and continue developing it as a community.
DoUML is based on a source code of Bouml 4.22 but can read projects saved with versions up to 4.23 patch 7. Support for later, commercial versions, of Bouml is possible but sample projects will be required.