Author Topic: UML book recommendations?  (Read 6928 times)

mikewhit

  • EA User
  • **
  • Posts: 608
  • Karma: +0/-0
  • Accessing ....
    • View Profile
Re: UML book recommendations?
« Reply #15 on: January 18, 2007, 09:56:39 am »
Original question was book-oriented. There may be stuff in this forum, but I can't claim any credit if so. Wind up Search max age to a few years (back to 2001).
« Last Edit: January 18, 2007, 10:01:11 am by mikewhit »

wharley

  • EA Novice
  • *
  • Posts: 16
  • Karma: +0/-0
  • I love YaBB 1G - SP1!
    • View Profile
Re: UML book recommendations?
« Reply #16 on: January 18, 2007, 10:29:30 am »
Quote
Original question was book-oriented. There may be stuff in this forum, but I can't claim any credit if so. Wind up Search max age to a few years (back to 2001).


I like books because I can sit on the sofa (or in the, ahem, thinking room) and read 'em; it's higher bandwidth than web pages.  But I'll take whatever I can get at this point.

I set max age to 5000 days and searched for anything with the words "java example".  Other than this thread, almost all the hits were abstract, and to my eye somewhat arcane, philosophical discussions.  I didn't find any pointers to examples of UML models of systems implemented in Java.

But there was also nothing older than January 2004.  I wonder if older messages got archived at some point?

dhait

  • EA Novice
  • *
  • Posts: 10
  • Karma: +0/-0
  • I love YaBB 1G - SP1!
    • View Profile
Re: UML book recommendations?
« Reply #17 on: January 20, 2007, 06:36:42 pm »
I just got "Use Case Driven Object Modeling with UML Theory and Practice" by David Rosenberg & Matt Stephens.

I think it's pretty good for first-timer.

wharley

  • EA Novice
  • *
  • Posts: 16
  • Karma: +0/-0
  • I love YaBB 1G - SP1!
    • View Profile
Re: UML book recommendations?
« Reply #18 on: January 21, 2007, 08:42:58 pm »
Quote
I just got "Use Case Driven Object Modeling with UML Theory and Practice" by David Rosenberg & Matt Stephens.


Thanks.  Does it have any substantial Java examples, or does it try to stay language-neutral?

jjyoung

  • EA User
  • **
  • Posts: 25
  • Karma: +0/-0
    • View Profile
Re: UML book recommendations?
« Reply #19 on: January 25, 2007, 05:13:41 am »
Another possibility of finding out how UML and Java relate, try taking one of your Java applications and importing it into EA using reverse engineering.  It'll show your classes and how some of the classes interrelate.  One think you need to understand is that the mapping of associations, esp w.r.t. 0..* multiplicity, is really a function of how you setup the code generator.  Also, association, aggregation and composition are often implemented using the same way.

You can find some simple comparisions between UML and Java in various design patterns books.  Check out "Applied Java Patterns" as one example.  It contains some minimal class and sequence diagrams.

Joel

sl@sh

  • EA User
  • **
  • Posts: 86
  • Karma: +0/-0
    • View Profile
Re: UML book recommendations?
« Reply #20 on: February 02, 2007, 12:41:46 am »
@wharley: You keep asking for Java-specific UML books. You won't find them. Or if you do, *please* let me know  ;)

However, to some degree your request is not unreasonable: UML has been developed from a software design language to a universal process modelling language, and that encompasses much more than what a mere programmer or even a systems architect would be interested in. What you should be asking for is a UML book focussing on programmers' modelling tasks, i. e. class diagrams, activity diagrams, sequence diagrams, and maybe state diagrams, depending on what kind of applications you have in mind. If someone knows such a book, I would be *very* interested, too!

Depending on you're goals you might be interested in other diagrams, but they are not very helpful in most projects, unless they're really big (but that's just my experience). And anyway: until you get a feel for the different kind of relations and what exactly you need when, they are bound to cause confusion unless explained in detail (which in my eyes makes these diagrams mostly useless to anyone but skilled UML designers).

wharley

  • EA Novice
  • *
  • Posts: 16
  • Karma: +0/-0
  • I love YaBB 1G - SP1!
    • View Profile
Re: UML book recommendations?
« Reply #21 on: February 02, 2007, 10:43:55 am »
Quote
You keep asking for Java-specific UML books. You won't find them. Or if you do, *please* let me know


As I mentioned in an earlier post, there are a number of these books, I just wasn't sure which one to start with.

I arbitrarily chose to buy Robert Martin's "UML for Java Programmers," ISBN 0-13-142848-9.  (Martin is also known for his book on agile programming.)  I'd been waiting until I was completely through reading it to review it here, but since you ask, I'll jump the gun.

The book is excellent, and precisely addresses my concern.  From the foreword to the book, written by Pete McBreen: "this book covers all of the diagrams I use on real projects.  It omits all of the diagrams I have to remind teams not to use.... UML for Java Programmers is the first book I have ever read that treats the UML as a tool for programmers to help them make their day job easier.  A welcome change from all of the UML books that assume you want to become a language lawyer."

The book is broken down into chapters describing the various UML diagrams that are relevant to Java programmers, giving Java-based examples of each, showing the source code alongside the UML diagram and explaining what UML elements are useful or not in that context.  

Martin has a strong emphasis on avoiding over-specification.  Unlike the case with blueprints and buildings, writing source code is not intrinsically more difficult than writing equally-detailed UML.  Not every field and method should be shown; not every association should be diagrammed.  Throughout the book are scattered cautionary examples of excessive detail.  

A strong point of the book is that it's good at explaining places where a Java programmer should not need to go.  For instance, in discussing aggregation and composition in class diagrams, Martin says "Aggregation... is indistinguishable [in a Java implementation] from association... various programmers and analysts adopt their own pet definitions.... I don't use the relationship at all, and I recommend that you avoid it as well."  "Composition... does not have a lot of use in a Java program.  C++ developers, on the other hand, find a lot of use for it."  Gems like this are exactly why I was looking for a Java-specific book.

The book closes with a worked example of 60+ pages of Java source listing comprising a remotely invokable code generator for state machines, along with corresponding UML diagrams.  Again, being able to see real-world UML documentation for a system of real-world complexity is invaluable.

I'd highly recommend this book to any Java programmer trying to figure out how to make practical use of the UML.
« Last Edit: February 05, 2007, 04:32:13 pm by wharley »

sl@sh

  • EA User
  • **
  • Posts: 86
  • Karma: +0/-0
    • View Profile
Re: UML book recommendations?
« Reply #22 on: February 07, 2007, 05:21:41 am »
Heh, your comments make me want to take an immediate look at this book. Unfortunately at work I'm currently stuck with C++ and I'm not sure how to explain my interest in a book titled 'Java' at work, so I'll have to wait for the weekend. ;)

Actually I might not be working on Java projects for some time to come, but I think this book might still be very helpful - it's not like C++ and Java have that many differences. Yes, many Java projects deal with totaly different topics and use totally different ideas than C++ projects, but that is mostly not a consequence of the language itself, just born by the fact that Java is the younger language and it's history isn't packed with old style C-coding algorithms. I'd wish people would design C++ programs more the way Java programs are designed. And here is where this book comes in :)

wharley

  • EA Novice
  • *
  • Posts: 16
  • Karma: +0/-0
  • I love YaBB 1G - SP1!
    • View Profile
Re: UML book recommendations?
« Reply #23 on: February 07, 2007, 08:04:33 am »
I worked in C++ for many years, though for the last few I've just been working in Java.  As you say, the languages are very similar.  I would say that the book would still be quite useful to a C++ developer.

tadanderson

  • EA User
  • **
  • Posts: 52
  • Karma: +1/-0
  • The more I learn the less I know....
    • View Profile
Re: UML book recommendations?
« Reply #24 on: February 07, 2007, 06:25:38 pm »

wharley

  • EA Novice
  • *
  • Posts: 16
  • Karma: +0/-0
  • I love YaBB 1G - SP1!
    • View Profile
Re: UML book recommendations?
« Reply #25 on: February 07, 2007, 06:38:08 pm »
Quote
http://www.corporatewebbing.com/rwsa/OOADReading.htm


Judging by the titles, the books recommended on that site all seem to be about UML in general, rather than about UML in specific regard to programming in Java.  Sorry, I know the title of the thread doesn't say that's what I'm looking for, but I hope it's evident by now from the content.  (Also, it's important to me that the UML diagrams in the book correspond reasonably well to the diagrams that EA is able to produce.)

Are the titles misleading me?  

tadanderson

  • EA User
  • **
  • Posts: 52
  • Karma: +1/-0
  • The more I learn the less I know....
    • View Profile
Re: UML book recommendations?
« Reply #26 on: February 07, 2007, 07:05:50 pm »
Every book here uses java except 2 and 3 they are mixed:
http://www.corporatewebbing.com/rwsa/PatternReading.htm

These also use Java:
http://www.corporatewebbing.com/rwsa/PatternReading.htm

Click the links under the books....

tadanderson

  • EA User
  • **
  • Posts: 52
  • Karma: +1/-0
  • The more I learn the less I know....
    • View Profile
Re: UML book recommendations?
« Reply #27 on: February 08, 2007, 05:06:18 am »
Quote
UML in specific regard to programming in Java.


This original post also contains a link to a collection of links which has a section on Patterns that lead to a lot of the books pattern catalogs to give you a feel for the author's style.

http://realworldsa.dotnetdevelopersjournal.com/net_20_patterns_architecture_ooad_books_and_links.htm

wharley

  • EA Novice
  • *
  • Posts: 16
  • Karma: +0/-0
  • I love YaBB 1G - SP1!
    • View Profile
Re: UML book recommendations?
« Reply #28 on: February 08, 2007, 11:06:42 am »
Quote
Every book here uses java except 2 and 3 they are mixed:
http://www.corporatewebbing.com/rwsa/PatternReading.htm

These also use Java:
http://www.corporatewebbing.com/rwsa/PatternReading.htm



Thanks!  BTW, those two links are identical; can you edit or re-post?

tadanderson

  • EA User
  • **
  • Posts: 52
  • Karma: +1/-0
  • The more I learn the less I know....
    • View Profile
Re: UML book recommendations?
« Reply #29 on: February 08, 2007, 11:30:16 am »

Woops   ;D

Every book here uses java except 2 and 3 they are mixed:
http://www.corporatewebbing.com/rwsa/PatternReading.htm

These also use Java:
http://www.corporatewebbing.com/rwsa/OOADReading.htm