Technology has been making leaps and bounds in recent years. Everything moves and changes at an electric pace, it’s tough to keep up. Though, not only has technology itself been advancing, but how we develop technology, the methods and processes used to build software and hardware has changed as well. One of the most impactful changes in software development is the introduction of Agile development. It’s quite the buzzword these days, and you’d hardly hear any new technology start up that has not heard of Agile or adopted it. The word itself rolls off the tongue smoothly and implies action, speed and flexibility. But what does it actually mean and where did it originate from?
How to do it wrong
For years, HOW software was developed was set in stone and the same all over the world. For decades companies, developers, stakeholders and project managers have followed the industry standard “Waterfall Model” and would not even consider that there were any other alternatives.
[Here’s a helpful and concise explanation of the Waterfall Model]
Especially on bigger scale projects, some serious problems routinely show up and crash the party, namely, it was extremely difficult and costly to change requirements after the planning stage and the product would only be delivered right at the end in a do-or-die fashion. So this high risk and rigid process consistently delivered projects that ended in missed deadlines, burst budgets, products that did not meet expectations and disgruntled developers, managers and stakeholders.
Consistently delivered projects that ended in missed deadlines, burst budgets, products that did not meet expectations and disgruntled developers, managers and stakeholders.
Software Development Projects Comic
The Birth of Agile
After over three decades of projects ending badly, people finally started to wonder if there was a better way to do things. This led to the birth of Agile Software Development. A group of 17 independent thought leaders in software development met together in the year 2000 to discuss alternatives to the industry standard sluggish, heavily documented and inflexible development processes.
Naming themselves the “Agile Alliance”, they agreed and penned the “Agile Manifesto” and the “12 Principles of Agile Software” in February 2001. If this is the first time you’re hearing of Agile; in a sentence, it is valuing people, products and re-prioritising, over processes, paperwork and plans.
Agile is valuing people, products and re-prioritising, over processes, paperwork and plans.
Since then, the manifesto has gained widespread popularity and has been translated into over 60 languages. The manifesto serves as a set of guidelines and values on communication, change management, interaction, code quality, efficiency and sustainability, in the hope of producing better products and value for the customer.
Agile at Suria Labs
At Suria Labs, we deeply believe in Agile Development and have been using it from day one. It is a major step up from the traditional Waterfall Model and it benefits both us and our clients.
- We are able to easily respond to changing requirements
- Self-organising teams keep our developers happy and motivated
- Trust makes micromanagement a non-necessity, which keeps our Project Managers and Scrum Masters happy and motivated
- Communication channels internally and externally are open and friendly
- We’re able to obtain valuable client feedback often
- Clients are able to test their product within two weeks of development
- Code is more robust due to Test-Driven-Development and the other code quality tools we use
- Impediments are picked up and dealt with quickly
- The team regularly reflects and improves
- There is little to no unnecessary documentation overhead
That’s a summary of how Agile came about and why we at Suria Labs conform to it. The Agile Manifesto is easily accessible on the net and I highly recommend you read it if you’re interested in using this approach or adopting Scrum, Kanban, XP, Crystal or any other Agile methodology.