Archive

Archive for the ‘Agile’ Category

Agile Project Mgmt

December 22, 2006 Pari Leave a comment

I first stumbled upon the Agile philosophy back in 2002 when I came across Kent Beck’s book on Extreme Programming. Since then (well officially since 2004), I’ve used the Agile Methodology as applied to project management as well as software development. It works better than any traditional project management or software development model (in particular I’ve been through RUP a number of times, as well as some high-ceremony methodologies). So here’s my two cents on why Agile works, particularly because lot of managers still follow the old school model (and still suffer from all the pitfalls and artifacts that accompany it).

Traditional software development methodologies have failed because they have been using a completely inappropriate process control model. The error of traditional software development comes from making the assumption that software development is a well-defined system. A characteristic of a well defined (i.e. discrete) system is repeatability and predictability. That is, given a well-defined set of inputs, the same output is generated every time. All subsystems or activities in a well defined system are also well-defined.

This is not the case in software development. It is unpredictable: being influence by stakeholders, company policies, compliances, resource availability, environmental changes, programmer efficiency, communications, team work, etc most of which is not easily quantifiable in a predictable and repeatable manner.

Agile Methodologies propose the empirical approach to software development. It is based on a feedback and error-correction (i.e. adaptive process control, a closed loop control system). This often involves short sprints or iterations, at the end of which an assessment is made, the results of which are used to modify the scope of the next sprint (i.e. in the case of the time-boxing based approach, as in Scrum).

I recommend these three excellent books:

  1. Agile Software Development with Scrum – Ken Schwaber, Mike Beedle
  2. Agile Project Management – Jim Highsmith
  3. Extreme Programming Explained – Kent Beck
Categories: Agile