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.
Source code: https://github.com/DoUML/douml
Issues track: https://github.com/DoUML/douml/issues