First let me say that I think that an agile process can work because of the following underlying principles:

  • It brings focus
  • Limits the noise which really brings focus

Secondly I am wondering what are the initial conditions needed so that an Agile process can succeed? For example do we need to have:

  • No existing bugs
  • Fully automated test process or at least a highly automated test process
  • People dedicated to the project
  • More clearly defined new development
  • Development that is not make it faster or more stable
  • ?

So what do you need to make it successful? Are there different Agile implementations that better handle not having some of these initial conditions?

3 Answers 3


People at all levels of the business who truly and utterly believe in the Agile Manifesto

We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value:

  • Individuals and interactions over processes and tools
  • Working software over comprehensive documentation
  • Customer collaboration over contract negotiation
  • Responding to change over following a plan

That is, while there is value in the items on the right, we value the items on the left more.

And when I say believe in the Agile Manifesto, I mean all of the Agile Manifesto. You cannot ignore the last part. There is still value in the items on the right.

If you have those people, as programmers, as managers, as customers, you can make some variation of Agility work. If you don't, you will struggle.


At a minimum

First and foremost, you must have top down sponsorship that understands the principals and believes in them enough to enforce them down the chain, and believes that Agile is applicable to your situation.

Having senior management that doesn't believe in the process, will ultimately undermine it because they will allow subordinates to pervert, distort, pollute, undermine or worse sabatoge the process.

If senior management don't understand the principals they will start demanding short cuts and compromises that pervert the process. Then when things break down, the naysayers can say "I told you so, Agile doesn't work!" back to the death march!

This is worse than not adopting Agile, it is typically referred to as "Agile But ...". Management uses the Agile term, "But ..." throws out all the actual principals and continues to do what they were doing before, "But ..." now call it Agile. Which gives Agile a bad name to those that don't know any better.

nice side effects

The things you list like, no bugs, automated tests, clearly defined development, dedicated people, etc. are all nice positive side effects to Agile.

Agile, isn't a silver bullet or panacea, but it does promote transparency at all levels ( customer <-> management <-> developers ) and makes those people that are problems to productivity stand out quickly; especially specific implementations of Agile like Scrum.


A few things that come to mind:

  • Professional team cohesion - Are these people that are open to playing well with others? Are they mature, responsible people that can be given some autonomy in their work?

  • Communication culture and policies - How well do people express concerns, thoughts, and opinions in the organization?

  • Understanding what Agile is and isn't - Do those external stakeholders know enough about the process to accept the responsibility on their end? If not, then this can make for pseudo-agile. Similarly, is there a clearly defined Product Owner and ScrumMaster to help organize some things?

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.