views:

74

answers:

7
+1  Q: 

Learning Modelling

Is there a good book which I can follow to learn modelling/doing architecture? Good samples?

What would you do if you have to learn modelling from very basics?

Thanks

+1  A: 

Martin Fowler is the god of design patterns to me. But that is a bit more advanced.

For the basics, go with the "Gang Of Four" (just google for it and you'll find it). Its a very old book, and sometimes has too much details, but it covers all basic design patterns.

Martin Fowler is more focused on domain based modelling, so if you're looking for that, give it a try (with google books perhaps)

And by the way, there is a "Design Patterns for Dummies", sounds ridiculous, but it is actually quite a nice and easy intro to the subject of design patterns (which is not the same as modeling btw)

Henri
Design patterns for dummies is pretty bad imho.
Gabriel Ščerbák
+1  A: 

I recommend

Domain-Driven Design by Eric Evans ISBN# 0321125215

Streamlined Object Modeling by Jill Nicola, Mark Mayfield, and Mike Abney ISBN# 0130668397

Scott Saunders
A: 

I think by learning and understanding UML you will gain the knowledge needed to model anything. So I recommend UML Distilled book by fowler UML Diagrams to master:

  • Use Case
  • Class
  • Sequence
  • Component
  • State
  • Activity

As for architecture GOF is the best book out there Designed Patterns Explained.

Nix
A: 

I can't name many books specifically; although +1 Henri for the Martin Fowler books. One thing to bear in mind is that there are a couple of things you’re learning at the same time:

  • Modelling syntax / language; UML would be the obvious one there, but you don't need to know all of UML inside out to model a system. There's lots of good UML books and web sites - the O'Rielly UML in a Nutshell is a good one, with some useful cheat-sheets / starter guides, if I remember correctly.
  • Modelling a system - learning to separate the different views. The biggest challenge I found early on was cleanly separating the different views into different diagrams (logical, physical, data, etc).
  • Modelling the technical intricacies of the system at hand - which patterns to use, and so on.
Adrian K
A: 

A good way to learn modeling is to study and change existing samples. You didn't said what you want to model, but in case you are looking for process or business modeling, you can take a look at our site where we got over 130 sample models. In the past weeks, we did a modeling contest where we asked people to submit their favorite cooking recipes as process models. Those contest entries might be a good starting point for you:

http://www.ariscommunity.com/group/cooking-with-bpmn

ARIS Community
A: 

Also, Craig Larman book "Introduction to Object-Oriented Analysis and Design" is a good place to start

Jordi Cabot
A: 

If you are interested into architecture check out Patterns of Enterprise Application Architecture by Martin Fowler and/or Pattern oriented software architecture series.

Gabriel Ščerbák