tags:

views:

266

answers:

11

Hi I'm going to start learning and using UML.

I need to know what considerations do you suggest for me? What is the best way to learn effectively it do you think?

Thank you

+1  A: 

First, get a book/tutorial and try to understand the basics (definitions, models drawing, ...) then, learn by example and practice, imagine or use a real problem and try to model it.

Soufiane Hassou
A: 

This link is a great reference with lots of examples too.

derek
A: 
  • I have several UML books, UML Distilled book from Addison Wesley comes to mind,
  • then it all gets familiar when you start reading Design Pattern books that illustrates the concepts using UML Diagrams.
  • I also use UML when I sketch a design.
Bakkal
A: 

I read Martin Fowler's UML Distilled. That's all you need. It's thin, dense book that's unmatched on that topic.

duffymo
+1  A: 

I never did, and I never will. Modelling is not about mastering a type of discipline, good models don't need UML to be understood.

John Leidegren
UML is about unifying a modeling method so that everybody can understand what you are meaning by your model. Yes you can have a good model without UML but will everybody understand it?
Soufiane Hassou
My argument is that if everybody can't understand it, it's not a good model (with or without knowledge of UML). That's not to say that a model can't be complex. It takes time and effort to understand the model, that however, won't change just becuase you try to unify how your chose to represent your model with something like UML.
John Leidegren
+1 for adding some balance to the answers. While UML has its uses, it is not the be-all-and-end-all that many others would suggest. (The way people talk about UML now reminds me of how people used to talk about flow diagrams!).
Jason Williams
A: 

You can only focus on 2 diagrams and start modeling almost immediately. Usecase diagrams require reading but class diagram can be done at the same time as the code. It means that in less than 3 hours you can model.

Usecase diagram is simple and will help you to define the scope of your project.

Class diagram will define the physical architecture and can therefore be learned at the same time as codding if you use a tool having live code and model synchronization.

Don't spend time on model driven and code generation from a model because nobody really use it today !!

A: 

I started by reading an introductory book - Martin Fowler UML Distilled was quite good. Than I decided I really want to know how to use it, so I read a book about UML2 and UP (Unified Process) by Jim Arlow and Ila Neustadt. Afterward I had opportunity to take software engineering basics lecture at university which made me create simple specification with few diagrams. Afterward I took UML lecture, where I had again to create some UML diagrams. Now I am in the phase when UML is clear and I feel I need more knowledge about OO modeling, so I read a book on object oriented data modeling and object oriented programming and there are Use Cases by Alistair Cockbourne and some analytical patterns ahead for me. In between I read much of the model driven stuff and listened to SE Radio about all UML stuff - http://www.se-radio.net/tags/uml .

Gabriel Ščerbák
+1  A: 

UML Distilled by Martin Fowler together with Applying UML And Patterns by Craig Larman, makes you understand the concept of UML and how to use it - as well the whole process with UP and so forth.

Björn
+1  A: 

In a class named SE101- Software Engineering 1A at CPIT in New Zealand.

In my opinion, you'll find that sequence and use case diagrams will be essential for getting ideas across to non-programmers, and class diagrams (and object diagrams, to a lesser extent), for communicating ideas to other code-monkeys.

Plus, many programming books that you may read in the future, Design Patterns, for example, will use UML diagrams (class and object, mostly) to show the structure of the patterns. Knowing UML will make understanding these books a lot easier. Documentation, too, to a lesser extent.

GlenCrawford
A: 

Inventor. Sequence diagrams look more like business processes and usecases rather unstandardized.

LarsOn
+1  A: 

I'd suggest "UML2 and the unified process" Jim Arlow and Ila Neustadt as a text box. After that, you need a project and a UML tool to practice.

Red Koda Software