红联Linux门户
Linux帮助

The Art of Agile Development

发布时间:2009-03-27 15:33:54来源:红联作者:jerry520
I suppose I have more than a casual interest in reviewing this book. The software development team I work with operates using agile development. Reviewing this book is for me, a way of becoming more familiar with the people I work with and how they work. I'm not a developer...not in the software sense anyway. They call me a developer of content and that's what I do...provide help files, white papers, and any other documentation to describe the products developed by the folks I work with. While I have had agile development explained to me and have seen it in action every workday of the week for the past two-and-a-half months, it will be interesting to see the "official" version presented by Shore and Warden.



Actually, there's more than one way to practice agile development, but this book only describes one way, based on the authors' experience with Extreme Programming (XP). That isn't the version that my team uses so I figured the book would seem both familiar and unfamiliar depending on how close the XP flavor was to what I'm used to.



The book seems to describe XP as equal parts of art and technology. Depending on what kind of developer you are in terms of your outlook and philosophy, the "art" part may strike you as a bit ethereal or insubstantial. Fear not, there are plenty of "nuts and bolts" in this book to satisfy the most serious software "mechanic".



The philopsophy of the book is based on an old joke:

Q: How do you get to Carnegie Hall?

A: Practice, man...practice.



The idea (and it's not a new one) is that if you want to master a particular process or skill set, you need to learn it and do it over and over again until you get good at it. Seems simple and even boring. After all, when I want to learn something, I just want to put my hands on it and make it work. Unfortunately, I'm not a genius at anything particular and if I want to learn something, I have to "practice, man...practice".



The book actually starts out where you'd expect...with a high level description of agile software development. The concept can be simply (maybe too simply) expressed as a frequent set of feedback loops involving all of the stakeholders in the development process including the developers themselves, product management, and quality assurance. Instead of product management outlining a set of goals for a software product to development and then waiting months for the first version to be demo-ed to see if they're even close to what PM envisioned, all involved parties meet very frequently, including daily (not for very long, thankfully) to describe what has been done yesterday and what is planned to be done today.



Ok, it's a lot more involved than that, but moving forward in small steps, reviewing those steps every inch of the way prevents nasty surprises from cropping up months down the line. Ideally, everyone involved knows what's happening at each marker in the road. The job of this book is to describe this process in a way that development teams can take this model and integrate it into their development method. Frankly, that's a daunting task, especially since any pre-existing team already has some sort of process they are using and to some degree, are committed to. The challenge and the goal is to present agile development as a better way to build a mouse trap.



It seems (in my humble opinion) that Shore and Warden achieve this goal quite well, at least on paper. I suppose the true test of this book would be to walk into a development team meeting, drop a copy of the book down on the conference table and tell them to read and then do. Would the book be enough of a map to guide the team into the new territory of agile development?



The only way to find out would be to try it out and I'm not in a position to do it. I can say that based on my experience with this book and my experience (brief though it may be) working with a team utilizing this model, that the map does seem to describe the terrain quite well. Fortunately, the authors are not only well versed in the art and practice of agile development but they can actually write and not put their audience to sleep in the process.



If you're already involved in an agile process, this book may help you smooth out some of the rough spots and make it run better. If you aren't "agile" but would like to be, then picking up a copy of The Art of Agile Development is a great way to become introduced to this method and just as good a way to start implementing it in your team's development practice. Have a look and see for yourself.
文章评论

共有 0 条评论