Matt | 04 March 2020

The History Of Agile Testing

Agile testing has been around for many years and is now a very well-known methodology when it comes to software development. A huge number of development teams have adopted Agile testing in recent years, particularly those teams with a focus on continuous delivery.

Agile testing generally involves high-level flexibility and collaboration between teams, as well as an iterative environment where requirements can change along with the needs of the project. If you’re new to the concept of Agile, courses such as our Introduction to Agile Testing focus on the basics of Agile and how it can help development teams work to faster delivery times.

Whilst Agile is a popular approach; not many people are aware of how it came about. Understanding the history of Agile can help to better understand the methodology behind it, which is why we are exploring how it all began.

The Software Development Crisis

Back in the early 90s, computing was on the rise and software development faced some real challenges. Known during the time as the ‘application delivery lag’ or ‘application development crisis’, it was estimated that for an application to be produced it would take roughly three years from the business need actually being presented.

The big issue that developers had was that businesses and their requirements were moving faster than they could. In the three years that it would take to develop an application, the systems, requirements and businesses would change completely.

Many development projects were cancelled partway through, and those that were completed often didn’t meet the businesses current requirements. In some industries, this lag time was much more than the three-year average. Aerospace and defence companies could have to wait decades for a complex system to be developed. For example, the Space Shuttle program, which was launched for use in 1982, was created using processing technologies and information from the 1960s.

Frustration Among Leaders

These long lead times in development meant that many business owners and leaders were becoming increasingly frustrated. There was a growing number of engineers that knew there must be a better way to develop software in a more timely manner. This frustration lead to 17 software thought leaders joining forces to come up with ways of developing software in a simpler process.

They met informally to discuss ideas and shared ideas of how to develop without the documentation and processes involved with waterfall and other conventional software techniques.

The Creation Of Agile

The software engineers meeting to discuss frustrations included Jon Kern, Ward Cunningham, Kent Beck, Arie van Bennekum, Alistair Cockburn and others which are well known today within the Agile community. In 2001, they held the famed Snowbird meeting in Utah, in which they discussed the ideas of ‘light’ and ‘lightweight’ development techniques.

These early iterations of Agile were discussed as ways to quickly build working software in order to get it to the end-user in less time.

A fast delivery approach to software development offered businesses a range of benefits, with the main one being that they would receive the new software faster. Another key benefit was that the development team could receive rapid feedback on the software and change its direction and scope if necessary. It was this willingness to change and deploy rapid feedback techniques that ended up being some of the key features of Agile. This method of working meant that very little of the project was set in stone at the beginning, and the development team could listen to the customer feedback to create the best possible software.

The Agile Manifesto

During the 2001 Snowbird meeting, the Agile Manifesto was created. Although the goals of the group were not clear, the Agile Manifesto was very succinct and clear as a purpose of the approach. This resulted in the software development community embracing the Agile Manifesto and the 12 principles that were included as the beginning of the Agile methodology.

It is likely that many teams were using a hybrid model that included some elements of Agile and some of the traditional waterfall methods. The fact that development teams identified so wholly with the Agile ideology was a strong testament to the power of the movement.

Beyond Agile

The development of Agile was vital for getting software development to where it is today. It is still in use across thousands of teams, with new teams embracing it regularly. The benefits of Agile are clear, and there are many reasons why it has been so successful since being created back in 2001.

It is important to bear in mind that Agile is not the end and can be better seen as a first step to where software development might one day end up. In the future, it is expected that Agile will eventually offer continuous, effective software changes, without the need for software releases to be a planned-for event.

It is expected that Agile will continue evolving and embracing its own core principles and values. As software development teams and business needs change, Agile is anticipated to change with it, meaning there are likely to be several more chapters in the history of Agile that are yet to come.

Embracing Agile Today

For software developers, testers and managers to fully understand everything that Agile can offer a business, it is essential to have good background knowledge. As Agile is expected to continue to develop over the years, getting a good grasp on the subject today will help to keep in the loop and on the pulse of latest changes.

Here at TSG Training, we are offering a free webinar which will cover the Agile way of thinking and the role of a Product Owner. For more in-depth training on Agile, software testers can take part in our Accelerated Learning ISTQB Foundation in Software Testing & ISTQB Agile Extension course. The 3.5-day course is an intense training option with an exam at the end to gain the foundation qualification. The BCS Systems Development Essentials Using Agile course is another option for gaining valuable knowledge on Agile and the concepts involved.

To find out which is the right training course for you, speak to the team at TSG Training who will be happy to assist you and your specific training requirements.

Don't forget to share this post!