Today, Agile is such a buzzword that even teams outside software development try to incorporate it into their workflow. But Agile is not for everyone.

For example, a marketing agency can never implement Agile, because clients don't want to pay for a half-finished marketing campaign and iterate. There are revisions, but their number is clearly specified in the contract. Plus, there's no such thing as "working increments" - you either have the deliverables, or you don't.

Agile isn't the right approach for every software project, either. If you don't have access to customers, can't iterate, or if you have a complex organizational structure, it's very difficult to adhere to Agile principles.

Agile works best when:

  • You can't estimate the time you'll need and don't know the full scope of requirements
  • You don't know whether there's a need on the market for your software
  • You can't map out the business needs, so the design needs to emerge through trial and error
  • You have unlimited access to your customer who's ready for extensive involvement
  • You can afford to iterate and don't need to deliver a fully functional software at once
  • Neither you nor your client has a complex bureaucracy that delays decision-making
  • Clients don't have a fixed budget/schedule
  • You need to capture the market before there's any competition
  • Your customers don't have trouble updating their software (or don't even notice it, e.g., they use a web app)

You must be logged in to post a comment

Log in