• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

Does UML sometimes make more confusion than helps?

 
Ranch Hand
Posts: 701
2
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
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?
 
author
Posts: 24
5
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
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
 
Author and all-around good cowpoke
Posts: 13078
6
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
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
 
Bartender
Posts: 4568
9
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
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.
 
Sheriff
Posts: 17644
300
Mac Android IntelliJ IDE Eclipse IDE Spring Debian Java Ubuntu Linux
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
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.
 
Matt Weisfeld
author
Posts: 24
5
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
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.
 
Ranch Hand
Posts: 88
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
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
 
Matt Weisfeld
author
Posts: 24
5
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
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.
reply
    Bookmark Topic Watch Topic
  • New Topic