tags:

views:

987

answers:

20

From implementing Scrum in an organization to Test Driven Development, what books would you recommend for beginners, advanced and trainers in Agile development methodologies?

+8  A: 
  • Agile Principles, Patterns, Practices (in C#) by Bob Martin
  • Test Driven Development by Kent Beck
  • Agile Project Management with Scrum by Ken Schwaber
  • Agile Estimating and Planning by Mike Cohn

Those are just 4 of my favs.

Ben Scheirman
+1  A: 

Agile Development with ICONIX Process

JohnIdol
+2  A: 

Not strictly agile but many of the practices fall in line with agile

  • The Pragmatic Programmer - Andrew Hunt & Dave Thomas

Also

  • Refactoring - Improving the Design of Existing Code - Fowler, Beck, et. al.
JoshReedSchramm
+15  A: 

The Art of Agile Development by James Shore and Shane Warden

The text of this book is being made available at James Shore's website

Bedwyr Humphreys
+7  A: 

The best writer on the subject is definitely Mike Cohn:

These books give you a great overview of the Agile development process and most importantly allow you to understand the concept behind it.

Also they are very easy to read which is definitely a plus in such a book

Ilya Kochetov
A: 

"Practices of an agile developer" is nice. Tells developers common pitfalls (illustrated with a devil whispering bad advice - "Go ahead and do a little cut and paste here, there isn't time to refactor..."), and good agile practices (illustrated by an angel of course), as well as telling you "how it should feel" when you are doing agile right.

"The pragmatic programmer" isn't only about agile, but covers a lot of it anyway.

Lars Westergren
+1  A: 

I would heartily recommend the Pragmatic programmers starter kit

Einar
+4  A: 

The one that exposed me to agile development was Agile Software Development: Principles, Patterns, and Practices by Robert Martin. He uses case studies to demonstrate agile practices and patterns, which is the best way to learn the material, in my opinion.

Ryan Thames
+6  A: 
mattruma
A: 
rohancragg
+3  A: 

I'm a big fan of lean software development, so Lean Software Development: An Agile Toolkit, and Implementing Lean Software Development.

Kief
+2  A: 

My vote goes to Mike Cohn and his book 'User Stories Applied'. Very readable, talks sense in that there are loads of 'Why aren't we doing it like this already' moments. His companion book 'Agile Estimating and Planning' is also very good and goes into more depth but still keeps it readable.

As a beginner they're a 'must have' read.

DaveF
+3  A: 

Getting Real

This is the book from the 37signals Team, the folks that created Ruby on Rails.

The book is short, 170 pages with lots of whitespace and heavy quoting, but if you ever used any of their web app (Basecamp, Tadalist, Whiteboard), you know how that's it's a very practical knowledge.

A nice manifesto that can be read for free online. Sometimes a bit irritating, but never boring.

e-satis
A: 

My favorites (warning, I'm a Pragmatic Bookshelf groupie)

  • The Pragmatic Programmer (started with this one)
  • Practices of an Agile Developer
  • The Art of Agile Development
  • Pragmatic Version Control with Subversion
  • Ant in Action (for automating builds)
  • Pragmatic Project Automation (for automating builds and continuous integration)
  • Continuous Integration: Improving Software Quality and Reducing Risk
  • Ship it!: A Practical Guide to Successful Software Projects
  • Refactoring - Improving the Design of Existing Code
  • The Productive Programmer
  • Clean Code (only just started but am liking it already)

With all these books you'd think I'd be able to answer more questions...

spilth
+3  A: 

Seeing as this hasn't already been mentioned...

Scrum and XP from the trenches

So why is it so good? Well, many (agile) process books are a bit like reading a book the theory of design patterns - a lot of it is abstract. This book is more like digging through source code that makes some good uses of interesting patterns - a lot of concrete examples. This means that it’s very specific to a single instance of a Scrum/XP team and that team’s specific problems and how they addressed them.

The author, Henrik Kniberg, is pretty clear about what worked really well and what worked not so well as well as what they tried and what’s speculation on his part. The bits I really liked were:

Lots of good ideas on how to run multiple teams (Ch. 15). We struggled with this when building a process for the VSTO Team. Henrik covers many of the options we considered and also suggests the idea of a firefighting team - I wish we’d considered this as another option to protect our feature crews from asks from other teams for sustained engineering and Vista migration work. We sort of did but didn’t think about it in the same way. The how we do sprint planning chapter (Ch. 4) is very clear. Not many new ideas here for me but I think it’s a good explanation of how I would do this - although they were co-located so not much help here for distributed teams. Like a lot of people they’ve struggled with being “done done” inside a sprint (Ch. 14) and in that respect some of they differ from idea Scrum but there’s some good ideas here on reducing the amount of deferred test work.

Ade Miller
+1  A: 
Gishu
A: 

Kent Beck's books are not about Scrum, but are indeed the best on Extreme Programming, I highly recommend the "Explained" one or the "Installed" one by Ron Jeffries even if you're mainly looking into Scream related books.

Billy
+1  A: 

Just managed to sneak some time off to read Domain Driven Design by Eric Evans.

The book was like a mini-revelation. All the things I wanted to tell some struggling teams but didn't have the right words. e.g. teams getting stuck in writing next-gen infrastructure code but not attacking the domain problems that the customer is actually trying to solve.

Especially the Strategic Design part. Be warned though this is the "hard" agile. But no pain.. no gain. Fits with XP without compromising on design like most teams do.. Details the constant-design fine print that is mostly unwritten/unpublished . Have a couple of chapters to go but "Must Read/Highly Recommended".

Gishu
A: 

Becoming Agile: ...in an imperfect world by Greg Smith and Ahmed Sidky

ratkok