... This book is fine if you are going to implement Agile Modelling at work - or if you are exploring to your current processes. However from the point of view of personal development I wouldn't say that this is an essential purchase, and there are probably better investments for your reading time. Part 4, the section on the AM and the Unified Process, is particularly disappointing. The overview of the process is unclear, and the book concentrates on the Enterprise Unified Process - the author's own super set of the ubiquituous Rational Unified Process. The author is also very shy of the "Use Case Driven" concept of the RUP. To be fair he explains why, and I entirely agree with his assessment, however because he doesn't describe the RUP in it's own terminology it's difficult to reconcile his description with the process as I know it. When it comes down to implementation detail there is plenty of material, so it's not all bad news. This book may have more appeal if you are an AM/XP convert, but for me Part 4 aimed at the right target, but missed!
This is a very weak book. It is repetitive, and the author demonstrates little knowledge of the UML or its effective use in modeling software systems. There seems to be little real substance to Agile Modeling. Don't bother with modeling tools, code generation, model driven architecture etc. - just sketch your designs on a whiteboard and she'll be right! That seems to me to be the core message of this book. I've given the book 2 stars because the author does present a few useful ideas and has some genuinely interesting things to say. The book could be greatly improved if it was edited down to about a quarter of it's current thickness. Leave in all the useful bits and get rid of the repetition. I don't feel that this book lives up to its title, "Effective Practices for Extreme Programming and the Unified Process".
This is a good book on an important topic. If anyone has been involved in modelling complex software systems using a heavyweight process like RUP they will have found that they spent either all their time keeping their models current or ignoring them because they were not. It is very unlikely that anyone is going to be in a better position to model software written halfway though a project than just before it is needed and agile modeling addresses this. The one star here is missing for the author not following his own advice for conciseness and simplicity when preparing the text. I often found myself reading the same information at different points in the text. As a 200 page book it might have been easier to persuade others to read it. This contrasts with Kent Becks book eXtreme Programming explained which says about as much but manages to stay below 200 pages. Buy this book, it will be bring benefits but dont be scared to skip a few pages here and there.