|
I think the book is equally targeted towards managers, engineers, and business analysts. At some points, I was certain that the book was originally titled "The Art of Extreme Programming".As far as (2), well, that remains to be seen.
(1) I was looking for a new job and most of my target companies claimed to do agile development. I wanted to be able to talk the talk during an interview.
I had two reasons for reading this book. One caveat though - this book is very focused on the extreme programming branch of agile development.
(2) Once I started at a company, I wanted to hit the ground running in their agile development environment.As far as (1), this book was great. It gave me a good understanding of the concepts behind pair programming, daily stand-up meetings, stories, test driven development, iteration demos, velocity, etc.
After two weeks at the new job, my impression is that "we do agile development" really means "we incorporate a few of the agile practices that we like".On the whole, I certainly recommend this book to anyone who is working in an agile environment or who is considering making their project "agile". I want to add that I think some of the concepts are unreasonable, particularly throwing away code if you can't integrate by the end of the day, but that is more a criticism of agile development, rather than of this book.
I know programming practice is not sexy but it can certainly be engaging.The best parts of this book are short anecdotes about the anthers experience and nods to other, much better reading material like "The Mythical Man-Month". Being an SCM manager I am familiar with the good ideas and the problems of agile development. contraindications." Ok, first off, if you have an idea or set of practices to improve programming, stick to you guns. It reads more like a huge power point presentation. The treatement of each individual practice is simply too shallow to be thought provoking or entertaining in any way. The first 200 pages of the book are literally a maelstrom of agile "buzzwords" broken up into recommendations of XP (extreme programming). This book is great training if you want to just spit out a bunch of buzzwords in agile programming but not really understand them.
One thing that is repeated for every single XP practice is the following "THIS_PRACTICE is a prerequisite for agile (or XP) but if you can not THIS_PRACTICE you can still be effective. and here are alternatives. I just can't stand reading this book. Each chapter is also padded with all of the "if you can't do this." sub-chapters which like most of the book just repeats the same conceits. There are many good points in the book but its simply not interesting to read. Touching on hundreds of ideas and highlighting them. This book is just a primer on XP and a poorly written one at that. This will give you a good background.
I am also familiar with the managers who like to use catch phrases to motivate and fix every issue with development. I admit I could not suffer the entire book but I did read some of the later chapters and the writing style is just as fractured and annoying as 10 or so chapters I did read. With all the alternatives and wishy washy commitment in the writing of this book, I would conclude that the idea of XP is not that good in the first place.The structure of the book is painfully chopped up into small pieces and the exact same concepts, practices and advice are repeated over, and over, and over. Its maddening. The authors do appear to have a good understanding of agile practice but they are not that familiar with writing a well structured book.My advice would be to look at other books on the subject of programming and managing software projects.
It explains every concept with golden words without putting unnecessary keywords to expand book's page size. It takes you from what is the motivation behind agile to how to practically live with it. If you are starting to agile methodologies but don't know where to start from this is it. It is brief and useful at best.Also, it's like a patterns book. And in the end how to tune it to suit your extreme needs.The book is about extreme programming mostly but does not limit its scope to there. Other houses of agile community will also find this book practical and to the point. Authors have put a tiny box on each subject to other related subjects. This advances your mind links for each topic.The tips coming from authors' real life experiences and also contains further references to other books and articles in case you are in need to receive more information.I recommend this book for new comers to agile and experienced people who wants to tune their practices to their extreme cases.
The "Getting Started" section provides a solid foundation for understanding agile mechanics and even deciding if it is right for your situation. James Shore and Shane Warden consolidate years of experience with agile practices based primarily on Extreme Programming (XP), which has long been considered a good set of engineering practices to compliment the management practices of Scrum. The specific practices are well organized, clearly explained, extensively cross-references and presented in an appealing "pattern language" format. The "Mastering Agility" section gives a good description of the values and principles that make agile work. This makes a good concluding section because it provides a good roadmap for developing more agile maturity once you've had some success applying the specific practices.
Having not been exposed to Agile, I found "The Art of Agile Development" a very good read. They also had answers and responses to my "but what about." thoughts in the Questions and Contraindications section for each practice. Shore and Warden described Agile practices in a way that was easy to read and more entertaining than I expected (compared to most of the technical books that I read). I believe they presented the practices very well. I also appreciate the extensive list of References for further knowledge and reading. As the title says, I do find this a good addition to my library.
|