Learnings From A Decade Of Agile In Practice

27 Jun

http://www.slideshare.net/SunilMundra/learnings-from-a-decade-of-agile-in-practice

 

Agile completed 10 years of formal existence in Feb 2011, from the time the Agile Manifesto and Principles were agreed upon and signed off in Feb 2001.

In these 10 years, as Agile adoption increased gradually, learnings have happened, which were perhaps not so explicitly known when Agile was born. Some of these are as follows:

1. Agile Is An Adjective

Agile is not a noun. ‘Doing’ Agile does not yield results. ‘Being’ Agile does.

2. Agile Is Value Focused

Agile focuses on Business Value, and not Tasks. Success and Progress are measured based on delivery of Business Value, and not on Task Completion. As a result, metrics used in Agile are quite different from those used traditionally.

3. Practices Should Be Tailored To Context

Application of Agile Practices is context dependent. A ‘one size fits all’ approach does not work for Agile practices.

4. Agile Is Scalable

It was thought that Agile can succeed only with small teams. However, experience has proven that it works with reasonably large sized teams as well. Several projects successfully executed by ThoughtWorks are testimony to this fact.

5. Works In Distributed Teams

Distributed development is now a reality and it was initially thought that Agile will not work in this environment, as it hinders communication. However, Agile has proven to work in this set up as well. In fact, it is an enabler to Distributed  Development, as it helps to scale without sacrificing quality, reduces project risk through greater visibility etc.

6. Tools Are Helpful

Tools help in multiple ways:

a. They radiate information real time across locations

b. They provide visibility within the team and to the client

c. They help automate testing and build activities, whose repeatability is critical for Agility

7. Documentation Is Sometimes Necessary

It is a misconception that stories are fleshed out only to the extent that fit in the Story Card. Stories need to be detailed enough to facilitate shared understanding not only between various roles on the Agile team, but also between the team and the client.So while the high level story may be written on a card, separate documentation is necessary for detailing them.

Sometimes statutory requirements may mandate additional documentation.

8. Organization Ecosystem Needs To Change

Changes required to adopt Agile and maximize benefits from it should not be limited only to the Project team. There are many changes that need to happen at the Organization level, for the change to succeed, e.g. metrics used by management for monitoring project progress and measuring project success, Performance Appraisal Systems, Seating arrangements, Hiring policies etc.

9. Need ‘Different’ Type Of People

Agile invokes a lot of collaboration, communication and feedback. This implies that people in all roles, including the tech roles, have to be good at not only the core skills required to perform their role, but also be good at soft skills as stated above.

10. Needs Collaborative Work Culture

In Agile, the focus shifts from individuals to team, with focus on high level of interactions between people. This implies that the work culture needs to be collaborative and that of high trust. People should feel fearless enough to deliver bad news early, and this requires a different culture than what prevails under a ‘command and control’ structure.

11. Team Buy In Is Critical

Agile does not work if it is imposed. Hence, its success is limited without the team buy in. The team needs to be convinced about the benefits of Agile and needs to adapt to Agile values. As stated earlier, doing Agile does not work, Being Agile does. Imposition will cause the team to merely Do Agile.

12. Coaching Should Follow Training

Many people attend training programs, obtain certifications and believe that they can apply Agile. However, given that Agile process and practices are context sensitive, adoption of Agile will yield maximum benefits if Training/Certification is coupled with Coaching. Training in helps in bringing about shared understanding of concepts. Coaching helps to internalize them, and apply them to respective context.

 

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: