Products by TogetherSoft; currently the main one is TogetherControlCenter, an IDE which through the clever use of hidden side information can generate UML diagrams from code and vice versa, and reflect updates in one view into the other. See TogetherJava, TogetherJtool and various UML-related pages for a discussion of its quality and merits.