File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
http://aspose.com/file-tools
The moose likes OO, Patterns, UML and Refactoring and the fly likes Does UML sometimes make more confusion than helps? Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of JavaScript Promises Essentials this week in the JavaScript forum!
JavaRanch » Java Forums » Engineering » OO, Patterns, UML and Refactoring
Bookmark "Does UML sometimes make more confusion than helps?" Watch "Does UML sometimes make more confusion than helps?" New topic
Author

Does UML sometimes make more confusion than helps?

Rogerio Kioshi
Ranch Hand

Joined: Apr 12, 2005
Posts: 689
Once I tried to use class diagram to represent my model, but most of the people (specially older ones) doesn't understand nothing about it (composition, agregation, association, etc)... they just understand relational database models. In these cases using UML should be avoided?


SCEA 5 (part 1), SCBCD, SCWCD, SCJP, CLP, CLS
Matt Weisfeld
author
Greenhorn

Joined: May 01, 2013
Posts: 24
    
    5
Hi,

In my writings and when I teach programming, I like to use UML class diagrams as a graphical way to assist in the learning process. I find that UML class diagrams are really good for demonstrating how to model systems and show relationships between classes.

Matt


Matt Weisfeld
William Brogden
Author and all-around good cowpoke
Rancher

Joined: Mar 22, 2000
Posts: 12821
    
    5
Confusion? Man! You should have seen the confusion before UML came along.

Every OO consultant / teacher had his own diagramming notation with clouds, boxes, vectors, dotted lines, you name it and somebody was pushing it and claiming proprietary rights to it.

See this Wikipedia article for some history.

Bill
Matthew Brown
Bartender

Joined: Apr 06, 2010
Posts: 4457
    
    8

If you're trying to illustrate an object-oriented design to people that only understand relational models, I'd suggest that it isn't the particular notation that you're using that is the problem.
Junilu Lacar
Bartender

Joined: Feb 26, 2001
Posts: 4989
    
    8

If you are trying to communicate with someone who understands only French, should you avoid speaking to them in German? Absolutely! It's the same deal with UML. The goal is to communicate ideas, not to draw. That being said, you can still start off with simpler UML diagrams and slowly educate other members of your team on the finer points of UML.


Junilu - [How to Ask Questions] [How to Answer Questions]
Matt Weisfeld
author
Greenhorn

Joined: May 01, 2013
Posts: 24
    
    5
Again, I do like using the UML class diagrams to represent the models. Basically, I can model the attributes (public/private) and methods in a small, concise manner. I can also represent inheritance and composition (aggregations and associations) relationships in a straightforward manner. Since there are only several concepts involved: attributes, methods, inheritance and composition, I find the class diagrams to be pretty useful.
Sunderam Goplalan
Ranch Hand

Joined: Oct 10, 2011
Posts: 75
Yes, UML diagrams are useful to depict the model of a System, both to the business users and developers. As an architect, I firmly believe that an understanding of UML is essential
to communicate our ideas succinctly.

1) Describing the System in words in the English language can be ambiguous. UML diagrams cannot be ambigious. For instance, if one were to draw Use case diagrams, one can
clearly show what each actor's role is and what that role means.
2) Class diagram is useful to show the Object model to the developers. Some tools simple generate the boilerplate model code from the fields in the UML.
3) It's easy to explain the flow of messages to business users using Sequence diagrams. When I read sequence diagram of a new system, it becomes clear to me as to what the system seeks to accomplish.
I dont want to read a 10 page document -
4) Component diagrams are helpful in communicating the architecture to the developers. Developers can take the component diagrams and implement the functionality without much help


SCJP 5.0 , SCEA Java EE 5, TOGAF Certified
Matt Weisfeld
author
Greenhorn

Joined: May 01, 2013
Posts: 24
    
    5
My approach is to use several different types of tools to try and help people understand object concepts. For some people, the light bulb may go on by writing small bits of code and seeing what works and what doesn't. For others, something more graphical in nature might do the trick. The bottom line for me as I have been training/teaching is to use several techniques to try and explain the concepts in the hopes that one technique or a combination of the techniques will do the job.
 
I agree. Here's the link: http://aspose.com/file-tools
 
subject: Does UML sometimes make more confusion than helps?