UML Reverse Engineering ... not so important in reald world project?
A nice comment from Jack for an older entry "Drawing UML diagrams in ...netbeans 5.5", motivated me to write this entry.
I use mostly UML as a whiteboard with standardized shapes and extension mechanism. The real killer-feature of every UML-tool I know (also Netbeans-UML) is the ability to provide many views to the same element in the repository. If you change the element, the changes are visible in every view (=diagram). This is the main advantage over the "Power Point" approach. It is very efficient to capture the ideas and architectural patterns (I described this in my latest book) this way - especially in case stereotypes and tagged values are "standardized" or at least well known in a group or company.
Reverse engineering of existing source into diagrams is, in my opinion, only useful in case:
- You need several thousands of pages (documentation), but probably no one will read them.
- You are trying to understand a piece of software, which comes without documentation, only source.
After the creation of such diagrams, the main job is to filter out the uninteresting information.
A third point would be:
3. You are switching from normal development to model driven development.
Admittedly ;-) - it's not quite elegant to do this, but in some cases there is a need to start the MDSD bottom up with a model created out of your existing code...
Robert
Posted by Robert Herschke on August 06, 2007 at 03:00 PM CEST #
Robert,
thanks. But your point 3. has from my perspective the number 2.5. :-).
But your are right, especially for the reverse engineering of the persistence layer, UML could be helpful,
regards,
Posted by Adam Bien on August 06, 2007 at 03:24 PM CEST #
Agreed 100%...
Posted by Fabrizio Giudici on August 07, 2007 at 09:38 PM CEST #