This week's giveaway is in the Android forum.
We're giving away four copies of Android Security Essentials Live Lessons and have Godfrey Nolan on-line!
See this thread for details.
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 Android Security Essentials Live Lessons this week in the Android 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

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?

Matt Weisfeld

Joined: May 01, 2013
Posts: 24

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 Weisfeld
William Brogden
Author and all-around good cowpoke

Joined: Mar 22, 2000
Posts: 12761
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.

Matthew Brown

Joined: Apr 06, 2010
Posts: 4344

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

Joined: Feb 26, 2001
Posts: 4446

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

Joined: May 01, 2013
Posts: 24
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: 73
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
Matt Weisfeld

Joined: May 01, 2013
Posts: 24
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.
It is sorta covered in the JavaRanch Style Guide.
subject: Does UML sometimes make more confusion than helps?
Similar Threads
Developer driven
EMF + UML 2 Tools [model to java code]
UML Component diagram
* Winners: Java/J2EE Job Interview Companion
EMF Advantages?