Home > Software development > Has Agile made software development better?

Has Agile made software development better?

In February 2001, a group of programmers met and agreed the framework for a different way of working. This was called the Agile Manifesto. Ten years on from this, Techworld ask: Has iterative, collaborative development made things better?

The key principles within the manifesto can be condensed into the following:

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

…..all with the goal of delivering usable software to the business faster, with a closer level of fit to the business needs, first time, more of the time.

There seems to be a (almost) consensus regarding the Agile methodology. Representative of these views are Ward Cunningham, a signatory to the Manifesto:

I’d say we transformed the industry

and Scott Ambler, from IBM Rational:

It’s had a pretty significant effect on the industry

Criticism of Agile essentially takes 2 forms. The first is the rather obvious that it has to be applied properly. Ian McLeod of SmartBear Software points out:

You still have to do it well… You can do agile poorly

The second critique is not dissimilar, except that it claims Agile is structurally predestined to fail. Bill Miller argues that Agile is undisciplined; worse still: it promotes this ill discipline as a virtue. This is illustrated throughout the development of software; from a lack of documentation to the dramatic shift of requirements – Miller believes that if requirements need to revised significantly this shows poor leadership.

In the software development world, it does seem that Agile can be a bit like Marmite – you either love it or hate it – and practitioners tend to staunchly sit on only one side of the debate. But as if often the case, the real benefit probably lies somewhere in the middle – drawing on the best practices from traditional and alternative methods to suit the size and complexity of project & most importantly the expectations & involvement of the end user.

There is a general agreement that it is a method that is quite difficult to comprehend at the beginning and it certainly presents organisations with significant challenges to reap the full benefit. Agile delivers usable software to the business much quicker than previously and offers the opportunity to get software that more closely fits the business need. This may be achieved only if, as noted by Ian McLeod, it is done properly.

The answer to the above question, has Agile made software development better?, is ‘yes’, but it is not a ‘magic pill’. Agile methods do rely on having the right skills in the development team for delivering a more collaborative style of delivery and of course, the business users being able to commit to a higher level of engagement which in today’s difficult business environment can be a challenge.

Advertisements
Categories: Software development
  1. No comments yet.
  1. No trackbacks yet.

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: