What is Agile?
You may have come across the term Agile recently as it seems to be the current buzzword within the software world but what is Agile?
Well to be Agile means the ability to think quickly, use well coordinated movement and to be active. These same principles are transferred into Agile Software Development.
Previous methods of software development were considered as heavily regimented and slow. This led to a small group of innovators getting together in the mid 1990’s to develop new methods. These new methods enabled them to react quickly to new challenges and embrace changes from original strategies.
The term “Agile software development” was first used in a Ski resort in Utah in 2001 when the Agile Manifest was drafted by a group of innovators who met to ski, eat and change the way we work.
That group consisted of Mike Beedle, Arie Van Brennekum, Alastair Cockburn, Ward Cunningham, Martin Fowler, Jim Highsmith, Andrew Hunt, Ron Jeffries, Jon Kern, Brian Marick, Robert C. Martin, Ken Scwaber, Jeff Sutherland and Dave Thomas.
If you are interested in finding out more about this group of pioneers The Agile Manifesto website has a informative bio on them all.
Here at Headforwards we pride ourselves on following 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:
- Individual and interactions over processes and tools
- Working software over comprehensive documentation
- Customer collaboration over contract negotiation
- Responding to change over following a plan
This manifesto is based on 12 principles:
- Customer satisfaction by rapid delivery of useful software
- Welcome changing requirements, even in late development
- Working software is delivered frequently (weeks rather than months)
- Close, daily cooperation between business people and developers
- Projects are built around motivated individuals, who should be trusted
- Face to face conversation is the best form of communication (co-location)
- Working software is the principal measure of progress
- Sustainable development, able to maintain a constant pace
- Continuous attention to technical excellence and good design
- Simplicity- the art of maximising the amount of work not done- is essential
- Self-organising teams
- Regular adaptions to changing circumstances
Agile isn’t just one way of doing things, it groups together a variety of different software development methods ensuring you can taylor it to suit your team.
Essentially Agile empowers your team to put the emphasis of a project on collaboration whilst constantly revising and checking their work. If something isn’t working, they change tact quickly irradiating the waterfall effect. This regular inspection helps ensure the product is of high quality and the incremental release of software helps with products speed to market.
However good project management is key, the team leader plays an important part and is essential for making this process work. Communication and transparency are really important and that is why the ‘Stand up meetings’ really help to facilitate the process.
If you have any questions or would like to become part of the team here at Headforwards please get it touch. Lets get social.