InfoQ

InfoQ

News

My Bookmarks

Login or Register to enable bookmarks for unlimited time.

The content has been bookmarked!

There was an error bookmarking this content! Please retry.

Why do Agile Adoptions Fail?

Posted by Geoffrey Wiseman on Sep 05, 2007

Sections
Process & Practices
Topics
Agile ,
Adopting Agile ,
Agile Techniques ,
Agile in the Enterprise
Tags
Continuous Improvement ,
Antipatterns ,
Management ,
Retrospectives

Although agilists focus much of their energy on helping their agile projects succeed, it is helpful to periodically stop and consider what causes some agile projects and agile adoptions to fail. Armed with this knowledge, perhaps one can avoid these same pitfalls.

Jean Tabaka lists 11 Ways Agile Adoptions Fail

Agile methodologies have been taking some heat for when they appear to have failed to deliver expected benefits to an organization. In my travels as an agile coach, what I have found to be the case is that agile practices don't fail, rather the variations on agile adoption fail. Here are my top eleven failure modes. See which ones look painfully familiar to you

She lists her top 11, and describes each:

  1. Ineffective use of the retrospective
  2. Inability to get everyone in the planning meetings
  3. Failure to pay attention to the infrastructure required
  4. Bad ScrumMasters
  5. Product Owner is Consistently Unavailable or There are Too Many Owners Who Disagree
  6. Reverting to Form
  7. Obtaining Only "Checkbook Commitments" from Executive Management
  8. Teams Lacking Authority and Decision-Making Ability
  9. Not Having an Onsite Evangelist for Remote Locations
  10. A Culture that Does Not Support Learning
  11. Denial is Embraced Instead of the Brutal Truth

Are some (or all of these) familiar from your experiences with agile software development? Would you add to this list?

Tom Hume describes the Why Agile Teams Fail event, summarizing the message as, "if it doesn't work, you aren't doing it right, or your people aren't any cop". QA Strategies itemizes some challenges in agile adoption, from fear of micromanagement to overzealous teams. Kevin Brady thinks agile methods don't account for human psychology:

  • People will always put their own interests ahead of the interests of the group.
  • People are self-interested
  • Commercial production decisions are based on rational expectations.
  • Karl Popper's "First law of collective action". You can never get more than 5 people to agree on anything.

Eric D. Brown agrees that it's about the people, goes a different direction: "It isn't the process or methodology used... it is the people involved that will help a project succeed. Of course, processes help, but without good people and an organization that helps those people succeed, any project management methodology will most likely fail."

For more information, listen to the podcast interview with Jean Tabaka or tell us at InfoQ's agile community what you think causes agile adoptions to fail, and how you deal these issues.

Excellent list by Machiel Groeneveld Posted
Re: Excellent list by Geoffrey Wiseman Posted
Re: Excellent list by Maurizio Turatti Posted
My first reason by Franco Martinig Posted
Re: My first reason by Amr Elssamadisy Posted
  1. Back to top

    Excellent list

    by Machiel Groeneveld

    In my experience these things are exactly what is hard about agile adoption. I haven't seen agile adoption fail yet, but it does take longer because of these impediments. It's a great list to use when evaluating the progress I'm making in agile adoption!

  2. Back to top

    Re: Excellent list

    by Geoffrey Wiseman

    Actually, I've seen many of these same pain points outside of an Agile environment; many of these could be "What causes software projects to fail?" candidates, even leaving Agile aside.

  3. Back to top

    My first reason

    by Franco Martinig

    I will say that the first reason why adopting something fails is when organizations adopt it because it is the "trend" ;o)

  4. Back to top

    Re: My first reason

    by Amr Elssamadisy

    As long as we're on first reasons - I'd have to say the #1 reason for success or failure I've come across is (lack of) individual responsibility. The 'do what it takes' attitude that highly effective teams have.

    Of course, you could say (and would be right), that personal responsibility is the #1 reason for any effective team - Agile or not.

    <articlePlug> Read more about it in Personal Agility for Potent Agile Adoption </articlePlug>

  5. Back to top

    Re: Excellent list

    by Maurizio Turatti

    These items would cause the failure of a project regardless of any methodology, I can't see why they should be related to Agile. If you spend time fighting with business users, there is not a customer's project owner, team members are not skilled enough and your project manager is a monkey I'd like to understand how a project could survive. I have seen projects failing because of political games and lack of communication more than for technical reasons.
    I would however add to the list "stick to a clearly wrong technology". It's when you understand that you are using the wrong tool for the job but customer or your manager says "we need to use this one because we bought it". Some PM could sink a whole project because he can't tell the management that some decision must be reconsidered. This, however, is related to "individual responsibility" mentioned by Amr.

Educational Content

Collaboration: At the Extremities of Extreme

Jason Ayers share the observations he made watching a team of developers collaborating in real time on the same code base, pushing XP, pair programming and continuous integration to their extremes.

Yesod Web Framework

Michael Snoyman presents Yesod, a web framework written in Haskell and containing a web server, templating, ORM, libraries (templating, gravatar, etc.).

Transactions without Transactions

Richard Kreuter and Kyle Banker on how to avoid classical RDBMS transactional systems by using compensation mechanisms, transactional messaging or transactional procedures.

Attila Szegedi on JVM and GC Performance Tuning at Twitter

Attila Szegedi talks about performance tuning Java and Scala programs at Twitter: how to approach GC problems, the importance of asynchronous I/O, when to use MySQL/Cassandra/Redis, and much more.

10 tips on how to prevent business value risk

One category of risk that project teams need to ensure they address is business value failure – delivering a product that fails to provide value for the business investor.

Interview: Software Systems Architecture: Working With Stakeholders Using Viewpoints and Perspectives

InfoQ spoke to the authors of Software Systems Architecture on a couple of new topics, the System Context viewpoint and Agile, which have been added to the second edition.

Beauty Is in the Eye of the Beholder

Alex Papadimoulis discusses ugly code, where it comes from, how to avoid it, and how to get rid of it.

Architecting Visa for Massive Scale and Continuous Innovation

John Davies examines Visa’s architecture and shows how enterprises have architected complex integrations incorporating Hadoop, memcached, Ruby on Rails, and others to deliver innovative solutions.