Agile Project Management
bas says : As the year is ending I am going to make the rounds again to see what is emerging within project management... for starters a short intro to agile project management... please all your comments.
Cheers
Bas
---------
[font=Arial>Agile Project Management[/font>
[font=Arial> [/font>
[font=Arial> [/font>
[font=Arial>The last couple of years the agile movement is getting more and more momentum, or at least publicity. “Agile” is a reaction to traditional methods surrounding software development that are considered too heavy on prescriptions, too much focussed on how things should be done. The assumption of agile methods is that these heavy-weigth methods are counterproductive. It states that increased control does not cause increased order.[/font>
[font=Arial> [/font>
[font=Arial>The term “agile project management” is also appearing in the spot lights. Agile principles applied to the field of project management.[/font>[font=Arial>[/font>
[font=Arial>[size=3> [/size>[/font>
[font=Arial> [/font>
[font=Arial>complex adaptive systems[/font>
[font=Arial> [/font>
[font=Arial>The basis for all agile can be found in the study of complex adaptive systems (CAS). Systems like this are the economy, the weather and human interaction. In a CAS a very large group of small components or agents are interacting with eachother. These local interactions are following some general rules. The collective of all these interactions, the sum if you want, determine the behavior of the whole system.[/font>
[font=Arial> [/font>
[font=Arial>So, you can try to describe the general rules for the entire system, but that doesn’t bring you much. It is actually too complex (hence the name). The behavior is determined at the local level, in this is therefor the level you should focus on. And as it turns out, it is easier to describe the rules on the agent level, then trying for the whole system.[/font>
[font=Arial> [/font>
[font=Arial>The interactions between the agents can alter the state or properties of this entity. A change in an agent can trigger a new interaction with another agent, which can lead to an alteration in the second agent, and so on. This is the “adaptive” part in complex adaptive systems.[/font>
[font=Arial> [/font>
[font=Arial> [/font>
[font=Arial>And now project management[/font>
[font=Arial> [/font>
[font=Arial>What does this mean for project management? The people involved in the project and its surroundings are considered the “agent”. It is the human interaction between all those stakeholders that determines the overall behavior of the project. Nothing new here. But, applying CAS literaly means that rules aren’t applied to the project as a whole, but the focus should be the individual interactions between people.[/font>
[font=Arial> [/font>
[font=Arial>The most striking consequence is to not use the traditional command-and-control structure, but for example letting people do their own planning and monitoring:[/font>
[font=Arial>(example from [color=#800080>http://www.ccpace.com/Resources/documents/AgileProjectManagement.pdf[/color>)[/font>[font=Arial>[/font>
[font=Arial>[size=3> [/size>[/font>
[font=Arial>“For example, XP teams create and monitor their own iteration plans in collaboration with the customers. The customer creates stories (features) and prioritizes them based on business value. The developers divide up the tasks themselves as they work and measures progress for each iteration (time-boxed development cycle), adjusting plans with the customer as necessary.”[/font>
[font=Arial> [/font>
[font=Arial>However, agile project management assumes still a role for the project manager, it is not all complete self-organization. The role of the project manager is to inspire people, keep them motivated, keep everyone in line as a coherent entity. [/font>
[font=Arial> [/font>
[font=Arial>The guidelines for project managers to establish this can be found in[/font>
[font=Arial>[color=#800080>http://www.ccpace.com/Resources/documents/AgileProjectManagement.pdf[/color>[/font>
[list>
[*>[font=Arial>Establish a guiding vision for the project and continuously reinforce it through words and actions.[/font>
[*>[font=Arial>Facilitate collaboration and teamwork through relationships and community.[/font>
[*>[font=Arial>Establish and support the team’s set of guiding practices.[/font>
[*>[font=Arial>Provide open access to information.[/font>
[*>[font=Arial>Apply just enough control to foster emergent order.[/font>
[/list>[font=Arial>6. Constantly monitor and adjust.[color=black>[/color>[/font>
bas says : Here is someting worth quoting from [size=2>Alistair Cockburn, agile guru, in an interview with a Cutter Consortium newsletter (www.cutter.com):[/size>
[size=2>[QUOTE>[size=2>
Q. How do agile methodologies fit with other non-agile or heavy methodologies?
There is a natural tension between them, which means that there is not going to be a resolution. Agile is a mindset. It's not a set of techniques. There is a library of techniques, but it is not the techniques; it's the decision that agility and maneuverability are important. Agile is a declaration that a certain value is a top priority.
[/size>[size=2>[/size>
[/size>
insidepmeditor says : Bas, the quotes you made from the CCPACE website were by Sanjiv Augustine. He provided a quite thorough introductory chapter on the topic of CAS and Agile in the new book Managing Agile Projects just released by Multi-Media Publications Inc.. You also quoted Alistair Cockburn -- he also provides a chapter in the book.
These two (and many more) authors contributed their work to this book so that the author royalties could be donated to the International Red Cross disaster relief fund. So, check out the book and help a good cause!


