
Steven Thomas
London, UK
Contact me
Website, articles, blogs, books and more that I recommend for software development project managers and those who are interested in knowing more about Pragmatic Agile, Agile Project Management, and Agile Software Development.
If you're interested in Agile methods or wondered what they are, and why they're needed then checkout Martin Fowler's article The New Methodology. I particularly like it as it expressed my own observations and concerns about applying traditional project management to software development in a way I never could.
Reading the Agile Manifesto and Principles Behind the Agile Manifesto is a must.
Generic Agile is on the rise: InfoQ: Interview with Rachel Davies on Generic Agile. Rachel is from Agile Experience.
Increasingly I'm conscious that the biggest risk to my projects is poor Product Management. To quote one of my colleagues "we are delivering but I'm not sure we're delivering the right thing". A great project delivering a poor product is a waste of time and money.
Marty Cagan of the Silicon Valley Product Group has a great blog on effective product management. His courses are good too.
This is Mary Poppendieck linking Agile to the Japanese TQM movement. You still have to read the XP, Scrum, DSDM etc to know what to do, but I like the rationale for why these methods work.
I used to love this stuff, but I've become more cynical largely due to the excessive hype associated with XP. It includes some pragmatic project management techniques, and some sensible technical ideas (e.g. Xunit), but I suggest you take it with a grain of salt - an XP project can easily get way out of control.
Check out a couple of official XP sites by official XP gurus: xProgramming and ExtremeProgramming.
Also check out The Costs and Benefits of Pair Programming by Alistar Cocburn and Laurie Williams. I've more material on the Evidence for Agile.
But most importantly have a look at the work by Matt Stephens and Doug Rosenberg. They are extremely anti-XP, so much so that they've released a book Extreme Programming Refactored: The Case Against XP, but also have some material on the web. In particular check out Matt Stephens: The Case against Extreme Programming. He has Links to other anti-XP stuff. XP Refactored is my summary of the XP-like process they recommend
Scrum concentrates on management of software development, and unlike XP has nothing to say on programming techniques. It is a good place to start looking if you're interested in Agile methods, but it really is similar to the Planning Game of XP. Check out ControlChaos and Jeff Sutherland: Scrum.
DSDM by the DSDM Consortium is the most formal of the published Agile methods. It's current incarnation is DSDM Atern; this is the same basic model but they're rationalised the terminology to be more obvious. It is a Framework so nominally XP or Scrum could sit within it. You can get certified in the method and the DSDM Consortium site has additional resources for paid up members.
Chief programmers and all that. Peter Coad has the original Description of Feature Driven Development on-line.
Alistair Cockburn describes his family of methods as the lightest of light. "Use them when you give up on XP".
There are alternatives but my teams use automated unit tests based on Xunit, automated build scripts using ANT or NANT and automated integration using Cruise Control.
Junit is a framework for automated unit testing in Java, based on concepts introduced by XP practitioners. ClarkWare has a simple intro to junit. For an explanation of the XP testing framework try xprogramming: software.
ANT or NANT are the the Java and .NET build tools respectively.
Once you have automated tests and a nightly build then the next step is continuous integration with a tool like Cruise Control.
For some practical testing advice look to ...
Brett Pettichord's Software Testing Hotlist. Not Agile per se, but has great links to lots of good testing material.
Testing: XP Testing is a description of how XP testing works. The trick is that acceptance testing happens in parallel with development, and hence ends with development!
Testing: Agile has links to more sites about testing in an Agile world.
Antony Marcano of Testing Reflections has interesting Agile insights as does Brian Marrick at Exampler.
Rachel Davies of Agile Experience and Liz Sedly of Agile Coach have some material on retrospectives.
Training is not enough to get people to change behaviour. You also need coaching. This is one of the Services I offer.